| 417 | |
| 418 | |
| 419 | std::basic_string<char16_t> StringUtil::convertUTF8To16( |
| 420 | const std::basic_string<char>& str) { |
| 421 | std::basic_string<char16_t> out; |
| 422 | |
| 423 | const char* cur = str.data(); |
| 424 | const char* end = cur + str.length(); |
| 425 | char16_t chr; |
| 426 | while ((chr = UTF8::nextCodepoint(&cur, end)) > 0) { |
| 427 | out += chr; |
| 428 | } |
| 429 | |
| 430 | return out; |
| 431 | } |
| 432 | |
| 433 | std::basic_string<char> StringUtil::convertUTF32To8( |
| 434 | const std::basic_string<char32_t>& str) { |