OLD | NEW |
1 // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "base/string_util.h" | 5 #include "base/string_util.h" |
6 | 6 |
7 #include <string.h> | 7 #include <string.h> |
8 #include <vector> | 8 #include <vector> |
9 | 9 |
10 #include "base/basictypes.h" | 10 #include "base/basictypes.h" |
(...skipping 512 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
523 u_strToWCS(buffer, 64, &length, ustr.getBuffer(), ustr.length() , &error); | 523 u_strToWCS(buffer, 64, &length, ustr.getBuffer(), ustr.length() , &error); |
524 if (U_FAILURE(error)) { | 524 if (U_FAILURE(error)) { |
525 NOTREACHED(); | 525 NOTREACHED(); |
526 // As a fallback, just return the raw number in a string. | 526 // As a fallback, just return the raw number in a string. |
527 return StringPrintf(L"%lld", number); | 527 return StringPrintf(L"%lld", number); |
528 } | 528 } |
529 return std::wstring(buffer, static_cast<std::wstring::size_type>(length)); | 529 return std::wstring(buffer, static_cast<std::wstring::size_type>(length)); |
530 #endif // defined(WCHAR_T_IS_UTF32) | 530 #endif // defined(WCHAR_T_IS_UTF32) |
531 } | 531 } |
532 | 532 |
| 533 TrimPositions TrimWhitespaceUTF8(const std::string& input, |
| 534 TrimPositions positions, |
| 535 std::string* output) { |
| 536 // This implementation is not so fast since it converts the text encoding |
| 537 // twice. Please feel free to file a bug if this function hurts the |
| 538 // performance of Chrome. |
| 539 DCHECK(IsStringUTF8(input)); |
| 540 std::wstring input_wide = UTF8ToWide(input); |
| 541 std::wstring output_wide; |
| 542 TrimPositions result = TrimWhitespace(input_wide, positions, &output_wide); |
| 543 *output = WideToUTF8(output_wide); |
| 544 return result; |
| 545 } |
| 546 |
OLD | NEW |