| Index: base/strings/string_util.cc
|
| diff --git a/base/strings/string_util.cc b/base/strings/string_util.cc
|
| index 725d86da8ac7c64693f566c0fdb7b9cd23968b44..19c38d593dcc26f390b577b279c32209c21db115 100644
|
| --- a/base/strings/string_util.cc
|
| +++ b/base/strings/string_util.cc
|
| @@ -148,6 +148,44 @@ bool IsWprintfFormatPortable(const wchar_t* format) {
|
| return true;
|
| }
|
|
|
| +namespace {
|
| +
|
| +template<typename StringType>
|
| +StringType ToLowerASCIIImpl(BasicStringPiece<StringType> str) {
|
| + StringType ret;
|
| + ret.reserve(str.size());
|
| + for (size_t i = 0; i < str.size(); i++)
|
| + ret.push_back(ToLowerASCII(str[i]));
|
| + return ret;
|
| +}
|
| +
|
| +template<typename StringType>
|
| +StringType ToUpperASCIIImpl(BasicStringPiece<StringType> str) {
|
| + StringType ret;
|
| + ret.reserve(str.size());
|
| + for (size_t i = 0; i < str.size(); i++)
|
| + ret.push_back(ToUpperASCII(str[i]));
|
| + return ret;
|
| +}
|
| +
|
| +} // namespace
|
| +
|
| +std::string ToLowerASCII(StringPiece str) {
|
| + return ToLowerASCIIImpl<std::string>(str);
|
| +}
|
| +
|
| +string16 ToLowerASCII(StringPiece16 str) {
|
| + return ToLowerASCIIImpl<string16>(str);
|
| +}
|
| +
|
| +std::string ToUpperASCII(StringPiece str) {
|
| + return ToUpperASCIIImpl<std::string>(str);
|
| +}
|
| +
|
| +string16 ToUpperASCII(StringPiece16 str) {
|
| + return ToUpperASCIIImpl<string16>(str);
|
| +}
|
| +
|
| template<class StringType>
|
| int CompareCaseInsensitiveASCIIT(BasicStringPiece<StringType> a,
|
| BasicStringPiece<StringType> b) {
|
|
|