| Index: base/string_number_conversions.h
|
| ===================================================================
|
| --- base/string_number_conversions.h (revision 78949)
|
| +++ base/string_number_conversions.h (working copy)
|
| @@ -8,6 +8,7 @@
|
| #include <string>
|
| #include <vector>
|
|
|
| +#include "base/base_api.h"
|
| #include "base/basictypes.h"
|
| #include "base/string16.h"
|
|
|
| @@ -27,21 +28,21 @@
|
|
|
| // Number -> string conversions ------------------------------------------------
|
|
|
| -std::string IntToString(int value);
|
| -string16 IntToString16(int value);
|
| +BASE_API std::string IntToString(int value);
|
| +BASE_API string16 IntToString16(int value);
|
|
|
| -std::string UintToString(unsigned value);
|
| -string16 UintToString16(unsigned value);
|
| +BASE_API std::string UintToString(unsigned value);
|
| +BASE_API string16 UintToString16(unsigned value);
|
|
|
| -std::string Int64ToString(int64 value);
|
| -string16 Int64ToString16(int64 value);
|
| +BASE_API std::string Int64ToString(int64 value);
|
| +BASE_API string16 Int64ToString16(int64 value);
|
|
|
| -std::string Uint64ToString(uint64 value);
|
| -string16 Uint64ToString16(uint64 value);
|
| +BASE_API std::string Uint64ToString(uint64 value);
|
| +BASE_API string16 Uint64ToString16(uint64 value);
|
|
|
| // DoubleToString converts the double to a string format that ignores the
|
| // locale. If you want to use locale specific formatting, use ICU.
|
| -std::string DoubleToString(double value);
|
| +BASE_API std::string DoubleToString(double value);
|
|
|
| // String -> number conversions ------------------------------------------------
|
|
|
| @@ -57,29 +58,30 @@
|
| // - No characters parseable as a number at the beginning of the string.
|
| // |*output| will be set to 0.
|
| // - Empty string. |*output| will be set to 0.
|
| -bool StringToInt(const std::string& input, int* output);
|
| -bool StringToInt(std::string::const_iterator begin,
|
| - std::string::const_iterator end,
|
| - int* output);
|
| -bool StringToInt(const char* begin, const char* end, int* output);
|
| +BASE_API bool StringToInt(const std::string& input, int* output);
|
| +BASE_API bool StringToInt(std::string::const_iterator begin,
|
| + std::string::const_iterator end,
|
| + int* output);
|
| +BASE_API bool StringToInt(const char* begin, const char* end, int* output);
|
|
|
| -bool StringToInt(const string16& input, int* output);
|
| -bool StringToInt(string16::const_iterator begin,
|
| - string16::const_iterator end,
|
| - int* output);
|
| -bool StringToInt(const char16* begin, const char16* end, int* output);
|
| +BASE_API bool StringToInt(const string16& input, int* output);
|
| +BASE_API bool StringToInt(string16::const_iterator begin,
|
| + string16::const_iterator end,
|
| + int* output);
|
| +BASE_API bool StringToInt(const char16* begin, const char16* end, int* output);
|
|
|
| -bool StringToInt64(const std::string& input, int64* output);
|
| -bool StringToInt64(std::string::const_iterator begin,
|
| - std::string::const_iterator end,
|
| - int64* output);
|
| -bool StringToInt64(const char* begin, const char* end, int64* output);
|
| +BASE_API bool StringToInt64(const std::string& input, int64* output);
|
| +BASE_API bool StringToInt64(std::string::const_iterator begin,
|
| + std::string::const_iterator end,
|
| + int64* output);
|
| +BASE_API bool StringToInt64(const char* begin, const char* end, int64* output);
|
|
|
| -bool StringToInt64(const string16& input, int64* output);
|
| -bool StringToInt64(string16::const_iterator begin,
|
| - string16::const_iterator end,
|
| - int64* output);
|
| -bool StringToInt64(const char16* begin, const char16* end, int64* output);
|
| +BASE_API bool StringToInt64(const string16& input, int64* output);
|
| +BASE_API bool StringToInt64(string16::const_iterator begin,
|
| + string16::const_iterator end,
|
| + int64* output);
|
| +BASE_API bool StringToInt64(const char16* begin, const char16* end,
|
| + int64* output);
|
|
|
| // For floating-point conversions, only conversions of input strings in decimal
|
| // form are defined to work. Behavior with strings representing floating-point
|
| @@ -87,7 +89,7 @@
|
| // NaN and inf) is undefined. Otherwise, these behave the same as the integral
|
| // variants. This expects the input string to NOT be specific to the locale.
|
| // If your input is locale specific, use ICU to read the number.
|
| -bool StringToDouble(const std::string& input, double* output);
|
| +BASE_API bool StringToDouble(const std::string& input, double* output);
|
|
|
| // Hex encoding ----------------------------------------------------------------
|
|
|
| @@ -97,20 +99,21 @@
|
| // you suspect that the data you want to format might be large, the absolute
|
| // max size for |size| should be is
|
| // std::numeric_limits<size_t>::max() / 2
|
| -std::string HexEncode(const void* bytes, size_t size);
|
| +BASE_API std::string HexEncode(const void* bytes, size_t size);
|
|
|
| // Best effort conversion, see StringToInt above for restrictions.
|
| -bool HexStringToInt(const std::string& input, int* output);
|
| -bool HexStringToInt(std::string::const_iterator begin,
|
| - std::string::const_iterator end,
|
| - int* output);
|
| -bool HexStringToInt(const char* begin, const char* end, int* output);
|
| +BASE_API bool HexStringToInt(const std::string& input, int* output);
|
| +BASE_API bool HexStringToInt(std::string::const_iterator begin,
|
| + std::string::const_iterator end,
|
| + int* output);
|
| +BASE_API bool HexStringToInt(const char* begin, const char* end, int* output);
|
|
|
| // Similar to the previous functions, except that output is a vector of bytes.
|
| // |*output| will contain as many bytes as were successfully parsed prior to the
|
| // error. There is no overflow, but input.size() must be evenly divisible by 2.
|
| // Leading 0x or +/- are not allowed.
|
| -bool HexStringToBytes(const std::string& input, std::vector<uint8>* output);
|
| +BASE_API bool HexStringToBytes(const std::string& input,
|
| + std::vector<uint8>* output);
|
|
|
| } // namespace base
|
|
|
|
|