| OLD | NEW |
| 1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 // This file defines utility functions for working with strings. | 5 // This file defines utility functions for working with strings. |
| 6 | 6 |
| 7 #ifndef BASE_STRINGS_STRING_UTIL_H_ | 7 #ifndef BASE_STRINGS_STRING_UTIL_H_ |
| 8 #define BASE_STRINGS_STRING_UTIL_H_ | 8 #define BASE_STRINGS_STRING_UTIL_H_ |
| 9 | 9 |
| 10 #include <ctype.h> | 10 #include <ctype.h> |
| (...skipping 340 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 351 } | 351 } |
| 352 | 352 |
| 353 template <typename Char> | 353 template <typename Char> |
| 354 inline bool IsHexDigit(Char c) { | 354 inline bool IsHexDigit(Char c) { |
| 355 return (c >= '0' && c <= '9') || | 355 return (c >= '0' && c <= '9') || |
| 356 (c >= 'A' && c <= 'F') || | 356 (c >= 'A' && c <= 'F') || |
| 357 (c >= 'a' && c <= 'f'); | 357 (c >= 'a' && c <= 'f'); |
| 358 } | 358 } |
| 359 | 359 |
| 360 template <typename Char> | 360 template <typename Char> |
| 361 inline Char HexDigitToInt(Char c) { | 361 inline char HexDigitToInt(Char c) { |
| 362 DCHECK(IsHexDigit(c)); | 362 DCHECK(IsHexDigit(c)); |
| 363 if (c >= '0' && c <= '9') | 363 if (c >= '0' && c <= '9') |
| 364 return c - '0'; | 364 return static_cast<char>(c - '0'); |
| 365 if (c >= 'A' && c <= 'F') | 365 if (c >= 'A' && c <= 'F') |
| 366 return c - 'A' + 10; | 366 return static_cast<char>(c - 'A' + 10); |
| 367 if (c >= 'a' && c <= 'f') | 367 if (c >= 'a' && c <= 'f') |
| 368 return c - 'a' + 10; | 368 return static_cast<char>(c - 'a' + 10); |
| 369 return 0; | 369 return 0; |
| 370 } | 370 } |
| 371 | 371 |
| 372 // Returns true if it's a whitespace character. | 372 // Returns true if it's a whitespace character. |
| 373 inline bool IsWhitespace(wchar_t c) { | 373 inline bool IsWhitespace(wchar_t c) { |
| 374 return wcschr(base::kWhitespaceWide, c) != NULL; | 374 return wcschr(base::kWhitespaceWide, c) != NULL; |
| 375 } | 375 } |
| 376 | 376 |
| 377 // Return a byte string in human-readable format with a unit suffix. Not | 377 // Return a byte string in human-readable format with a unit suffix. Not |
| 378 // appropriate for use in any UI; use of FormatBytes and friends in ui/base is | 378 // appropriate for use in any UI; use of FormatBytes and friends in ui/base is |
| (...skipping 141 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 520 #elif defined(WCHAR_T_IS_UTF32) | 520 #elif defined(WCHAR_T_IS_UTF32) |
| 521 typedef uint32 Unsigned; | 521 typedef uint32 Unsigned; |
| 522 #endif | 522 #endif |
| 523 }; | 523 }; |
| 524 template<> | 524 template<> |
| 525 struct ToUnsigned<short> { | 525 struct ToUnsigned<short> { |
| 526 typedef unsigned short Unsigned; | 526 typedef unsigned short Unsigned; |
| 527 }; | 527 }; |
| 528 | 528 |
| 529 #endif // BASE_STRINGS_STRING_UTIL_H_ | 529 #endif // BASE_STRINGS_STRING_UTIL_H_ |
| OLD | NEW |