license.bot | f003cfe | 2008-08-24 09:55:55 +0900 | [diff] [blame^] | 1 | // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved.
|
| 2 | // Use of this source code is governed by a BSD-style license that can be
|
| 3 | // found in the LICENSE file.
|
| 4 |
|
| 5 | #include "base/sys_string_conversions.h"
|
| 6 |
|
| 7 | #include "base/string_piece.h"
|
| 8 | #include "base/string_util.h"
|
| 9 |
|
| 10 | namespace base {
|
| 11 |
|
| 12 | std::string SysWideToUTF8(const std::wstring& wide) {
|
| 13 | // In theory this should be using the system-provided conversion rather
|
| 14 | // than our ICU, but this will do for now.
|
| 15 | return WideToUTF8(wide);
|
| 16 | }
|
| 17 | std::wstring SysUTF8ToWide(const StringPiece& utf8) {
|
| 18 | // In theory this should be using the system-provided conversion rather
|
| 19 | // than our ICU, but this will do for now.
|
| 20 | std::wstring out;
|
| 21 | UTF8ToWide(utf8.data(), utf8.size(), &out);
|
| 22 | return out;
|
| 23 | }
|
| 24 |
|
| 25 | std::string SysWideToNativeMB(const std::wstring& wide) {
|
| 26 | // TODO(evanm): we can't assume Linux is UTF-8.
|
| 27 | return SysWideToUTF8(wide);
|
| 28 | }
|
| 29 |
|
| 30 | std::wstring SysNativeMBToWide(const StringPiece& native_mb) {
|
| 31 | // TODO(evanm): we can't assume Linux is UTF-8.
|
| 32 | return SysUTF8ToWide(native_mb);
|
| 33 | }
|
| 34 |
|
| 35 | } // namespace base
|
| 36 |
|