| OLD | NEW |
| 1 // Copyright 2006-2008 The Chromium Authors. All rights reserved. | 1 // Copyright 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 #ifndef MINI_CHROMIUM_BASE_STRINGS_STRING16_H_ | 5 #ifndef MINI_CHROMIUM_BASE_STRINGS_STRING16_H_ |
| 6 #define MINI_CHROMIUM_BASE_STRINGS_STRING16_H_ | 6 #define MINI_CHROMIUM_BASE_STRINGS_STRING16_H_ |
| 7 | 7 |
| 8 #include <stdint.h> | 8 #include <stdint.h> |
| 9 #include <stdio.h> | 9 #include <stdio.h> |
| 10 | 10 |
| 11 #include <string> | 11 #include <string> |
| 12 | 12 |
| 13 namespace base { |
| 14 |
| 13 typedef uint16_t char16; | 15 typedef uint16_t char16; |
| 14 | 16 |
| 15 namespace base { | |
| 16 | |
| 17 int c16memcmp(const char16* s1, const char16* s2, size_t n); | 17 int c16memcmp(const char16* s1, const char16* s2, size_t n); |
| 18 size_t c16len(const char16* s); | 18 size_t c16len(const char16* s); |
| 19 const char16* c16memchr(const char16* s, char16 c, size_t n); | 19 const char16* c16memchr(const char16* s, char16 c, size_t n); |
| 20 char16* c16memmove(char16* s1, const char16* s2, size_t n); | 20 char16* c16memmove(char16* s1, const char16* s2, size_t n); |
| 21 char16* c16memcpy(char16* s1, const char16* s2, size_t n); | 21 char16* c16memcpy(char16* s1, const char16* s2, size_t n); |
| 22 char16* c16memset(char16* s, char16 c, size_t n); | 22 char16* c16memset(char16* s, char16 c, size_t n); |
| 23 | 23 |
| 24 struct string16_char_traits { | 24 struct string16_char_traits { |
| 25 typedef char16 char_type; | 25 typedef char16 char_type; |
| 26 typedef int int_type; | 26 typedef int int_type; |
| (...skipping 54 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 81 | 81 |
| 82 static bool eq_int_type(const int_type& c1, const int_type& c2) { | 82 static bool eq_int_type(const int_type& c1, const int_type& c2) { |
| 83 return c1 == c2; | 83 return c1 == c2; |
| 84 } | 84 } |
| 85 | 85 |
| 86 static int_type eof() { | 86 static int_type eof() { |
| 87 return static_cast<int_type>(EOF); | 87 return static_cast<int_type>(EOF); |
| 88 } | 88 } |
| 89 }; | 89 }; |
| 90 | 90 |
| 91 } // namespace base | |
| 92 | |
| 93 extern template class std::basic_string<char16, base::string16_char_traits>; | |
| 94 | |
| 95 typedef std::basic_string<char16, base::string16_char_traits> string16; | 91 typedef std::basic_string<char16, base::string16_char_traits> string16; |
| 96 | 92 |
| 97 namespace base { | |
| 98 | |
| 99 extern std::ostream& operator<<(std::ostream& out, const string16& str); | 93 extern std::ostream& operator<<(std::ostream& out, const string16& str); |
| 100 | 94 |
| 101 } // namespace base | 95 } // namespace base |
| 102 | 96 |
| 97 extern template class std::basic_string<base::char16, |
| 98 base::string16_char_traits>; |
| 99 |
| 103 #endif // MINI_CHROMIUM_BASE_STRINGS_STRING16_H_ | 100 #endif // MINI_CHROMIUM_BASE_STRINGS_STRING16_H_ |
| OLD | NEW |