summaryrefslogtreecommitdiffstats
path: root/base/utf_string_conversions.h
diff options
context:
space:
mode:
Diffstat (limited to 'base/utf_string_conversions.h')
-rw-r--r--base/utf_string_conversions.h39
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);