| 196 | } |
| 197 | |
| 198 | std::pair<const uint32_t*, size_t> utf16ToUtf32(const char16_t* utf16String, size_t len) { |
| 199 | thread_local static std::vector<uint32_t> tBuffer; |
| 200 | auto& buffer = tBuffer; |
| 201 | buffer.clear(); |
| 202 | |
| 203 | for (std::u16string::size_type i = 0; i < len;) { |
| 204 | buffer.emplace_back(utf16Decode(utf16String, i)); |
| 205 | } |
| 206 | |
| 207 | return std::make_pair(buffer.data(), buffer.size()); |
| 208 | } |
| 209 | |
| 210 | std::pair<const char*, size_t> utf32ToUtf8(const uint32_t* utf32String, size_t length) { |
| 211 | thread_local static std::vector<char> tBuffer; |
no test coverage detected