diff options
Diffstat (limited to 'base/utf_string_conversions.h')
-rw-r--r-- | base/utf_string_conversions.h | 39 |
1 files changed, 7 insertions, 32 deletions
diff --git a/base/utf_string_conversions.h b/base/utf_string_conversions.h index 7069f83..71e2cb2 100644 --- a/base/utf_string_conversions.h +++ b/base/utf_string_conversions.h @@ -8,26 +8,10 @@ #include <string> #include "base/string16.h" -#include "base/string_piece.h" -// Like the conversions below, but also takes an offset into the source string, -// which will be adjusted to point at the same logical place in the result -// string. If this isn't possible because it points past the end of the source -// string or into the middle of a multibyte sequence, it will be set to -// std::wstring::npos. |offset_for_adjustment| may be NULL. -bool UTF8ToWideAndAdjustOffset(const char* src, - size_t src_len, - std::wstring* output, - size_t* offset_for_adjustment); -std::wstring UTF8ToWideAndAdjustOffset(const base::StringPiece& utf8, - size_t* offset_for_adjustment); - -bool UTF16ToWideAndAdjustOffset(const char16* src, - size_t src_len, - std::wstring* output, - size_t* offset_for_adjustment); -std::wstring UTF16ToWideAndAdjustOffset(const string16& utf16, - size_t* offset_for_adjustment); +namespace base { +class StringPiece; +} // These convert between UTF-8, -16, and -32 strings. They are potentially slow, // so avoid unnecessary conversions. The low-level versions return a boolean @@ -44,22 +28,13 @@ std::wstring UTF16ToWideAndAdjustOffset(const string16& utf16, // some situations. bool WideToUTF8(const wchar_t* src, size_t src_len, std::string* output); std::string WideToUTF8(const std::wstring& wide); -inline bool UTF8ToWide(const char* src, size_t src_len, std::wstring* output) { - return UTF8ToWideAndAdjustOffset(src, src_len, output, NULL); -} -inline std::wstring UTF8ToWide(const base::StringPiece& utf8) { - return UTF8ToWideAndAdjustOffset(utf8, NULL); -} +bool UTF8ToWide(const char* src, size_t src_len, std::wstring* output); +std::wstring UTF8ToWide(const base::StringPiece& utf8); bool WideToUTF16(const wchar_t* src, size_t src_len, string16* output); string16 WideToUTF16(const std::wstring& wide); -inline bool UTF16ToWide(const char16* src, size_t src_len, - std::wstring* output) { - return UTF16ToWideAndAdjustOffset(src, src_len, output, NULL); -} -inline std::wstring UTF16ToWide(const string16& utf16) { - return UTF16ToWideAndAdjustOffset(utf16, NULL); -} +bool UTF16ToWide(const char16* src, size_t src_len, std::wstring* output); +std::wstring UTF16ToWide(const string16& utf16); bool UTF8ToUTF16(const char* src, size_t src_len, string16* output); string16 UTF8ToUTF16(const std::string& utf8); |