| 121 | } |
| 122 | |
| 123 | StaticStringUTF16Storage StaticString::utf16Storage() const { |
| 124 | switch (encoding()) { |
| 125 | case StaticString::Encoding::UTF8: { |
| 126 | auto pair = utf8ToUtf16(utf8Data(), size()); |
| 127 | return StaticStringUTF16Storage(pair.first, pair.second); |
| 128 | } |
| 129 | case StaticString::Encoding::UTF16: |
| 130 | return StaticStringUTF16Storage(utf16Data(), size()); |
| 131 | case StaticString::Encoding::UTF32: { |
| 132 | auto pair = utf32ToUtf16(reinterpret_cast<const uint32_t*>(utf32Data()), size()); |
| 133 | return StaticStringUTF16Storage(pair.first, pair.second); |
| 134 | } |
| 135 | } |
| 136 | } |
| 137 | |
| 138 | StaticStringUTF32Storage StaticString::utf32Storage() const { |
| 139 | switch (encoding()) { |