diff options
author | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-07-31 17:47:09 +0000 |
---|---|---|
committer | brettw@chromium.org <brettw@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2010-07-31 17:47:09 +0000 |
commit | f1d8192134f870445ae76be8c16b1566981c9cce (patch) | |
tree | 99a0bc223c4e8a7715479f7c35cd95c8e85a2f98 /base/utf_string_conversions.h | |
parent | 34877b3b302e3cb456a705b4b45dd72ae6947c79 (diff) | |
download | chromium_src-f1d8192134f870445ae76be8c16b1566981c9cce.zip chromium_src-f1d8192134f870445ae76be8c16b1566981c9cce.tar.gz chromium_src-f1d8192134f870445ae76be8c16b1566981c9cce.tar.bz2 |
Move ASCIIToWide and ASCIIToUTF16 to utf_string_conversions.h. I've found it
weird that UTF8ToWide is in utf_string_conversions, but ASCIIToWide is in
string_util.h. This should help some dependencies since string_util changes
much more frequently than utf_string_conversions and fewer files will now need
string_utils.
Since this requires a lot of changes, this keeps a forward-declaration in
string_util so I can update the entire project incrementally. This change
updates base and net only.
I removed some includes of string_util from header files in net. In particular,
url_request_context which involved creating a new .cc file to implement a
function (already virtual so there's no speed penalty). It turns out a lot of
files were getting string_util from this include, so I had to update a bunch of
random files to now explicitly include string_util.h
TEST=it compiles
BUG=none
Review URL: http://codereview.chromium.org/3076013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54456 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'base/utf_string_conversions.h')
-rw-r--r-- | base/utf_string_conversions.h | 14 |
1 files changed, 14 insertions, 0 deletions
diff --git a/base/utf_string_conversions.h b/base/utf_string_conversions.h index 0ffd480..6c49b41 100644 --- a/base/utf_string_conversions.h +++ b/base/utf_string_conversions.h @@ -48,4 +48,18 @@ std::string UTF16ToUTF8(const string16& utf16); # define UTF16ToWideHack UTF16ToWide #endif +// These convert an ASCII string, typically a hardcoded constant, to a +// UTF16/Wide string. +// +// Note that this doesn't use StringPiece because it's very common to need +// ASCIIToUTF16("foo"), and either we have to include it in this file, or +// forward declare it and force all callers to include string_piece.h. Given +// that string_piece brings in complicated stuff like <algorithm>, it's +// easier to just duplicate these very simple definitions for the two calling +// cases we actually use. +std::wstring ASCIIToWide(const char* ascii); +std::wstring ASCIIToWide(const std::string& ascii); +string16 ASCIIToUTF16(const char* ascii); +string16 ASCIIToUTF16(const std::string& ascii); + #endif // BASE_UTF_STRING_CONVERSIONS_H_ |