1*635a8641SAndroid Build Coastguard Worker // Copyright (c) 2011 The Chromium Authors. All rights reserved. 2*635a8641SAndroid Build Coastguard Worker // Use of this source code is governed by a BSD-style license that can be 3*635a8641SAndroid Build Coastguard Worker // found in the LICENSE file. 4*635a8641SAndroid Build Coastguard Worker 5*635a8641SAndroid Build Coastguard Worker #ifndef BASE_I18N_NUMBER_FORMATTING_H_ 6*635a8641SAndroid Build Coastguard Worker #define BASE_I18N_NUMBER_FORMATTING_H_ 7*635a8641SAndroid Build Coastguard Worker 8*635a8641SAndroid Build Coastguard Worker #include <stdint.h> 9*635a8641SAndroid Build Coastguard Worker 10*635a8641SAndroid Build Coastguard Worker #include "base/i18n/base_i18n_export.h" 11*635a8641SAndroid Build Coastguard Worker #include "base/strings/string16.h" 12*635a8641SAndroid Build Coastguard Worker 13*635a8641SAndroid Build Coastguard Worker namespace base { 14*635a8641SAndroid Build Coastguard Worker 15*635a8641SAndroid Build Coastguard Worker // Return a number formatted with separators in the user's locale. 16*635a8641SAndroid Build Coastguard Worker // Ex: FormatNumber(1234567) => "1,234,567" in English, "1.234.567" in German 17*635a8641SAndroid Build Coastguard Worker BASE_I18N_EXPORT string16 FormatNumber(int64_t number); 18*635a8641SAndroid Build Coastguard Worker 19*635a8641SAndroid Build Coastguard Worker // Return a number formatted with separators in the user's locale. 20*635a8641SAndroid Build Coastguard Worker // Ex: FormatDouble(1234567.8, 1) 21*635a8641SAndroid Build Coastguard Worker // => "1,234,567.8" in English, "1.234.567,8" in German 22*635a8641SAndroid Build Coastguard Worker BASE_I18N_EXPORT string16 FormatDouble(double number, int fractional_digits); 23*635a8641SAndroid Build Coastguard Worker 24*635a8641SAndroid Build Coastguard Worker // Return a percentage formatted with space and symbol in the user's locale. 25*635a8641SAndroid Build Coastguard Worker // Ex: FormatPercent(12) => "12%" in English, "12 %" in Romanian 26*635a8641SAndroid Build Coastguard Worker BASE_I18N_EXPORT string16 FormatPercent(int number); 27*635a8641SAndroid Build Coastguard Worker 28*635a8641SAndroid Build Coastguard Worker namespace testing { 29*635a8641SAndroid Build Coastguard Worker 30*635a8641SAndroid Build Coastguard Worker // Causes cached formatters to be discarded and recreated. Only useful for 31*635a8641SAndroid Build Coastguard Worker // testing. 32*635a8641SAndroid Build Coastguard Worker BASE_I18N_EXPORT void ResetFormatters(); 33*635a8641SAndroid Build Coastguard Worker 34*635a8641SAndroid Build Coastguard Worker } // namespace testing 35*635a8641SAndroid Build Coastguard Worker 36*635a8641SAndroid Build Coastguard Worker } // namespace base 37*635a8641SAndroid Build Coastguard Worker 38*635a8641SAndroid Build Coastguard Worker #endif // BASE_I18N_NUMBER_FORMATTING_H_ 39