An implementation of RFC 3492 Punycode. More...
Classes | |
| class | sourcemeta::core::PunycodeError |
Functions | |
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto | sourcemeta::core::utf32_to_punycode (std::u32string_view input) -> std::string |
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto | sourcemeta::core::utf8_to_punycode (std::istream &input, std::ostream &output) -> void |
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto | sourcemeta::core::utf8_to_punycode (const std::string_view input) -> std::string |
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto | sourcemeta::core::punycode_to_utf32 (const std::string_view input) -> std::u32string |
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto | sourcemeta::core::punycode_to_utf8 (std::istream &input, std::ostream &output) -> void |
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto | sourcemeta::core::punycode_to_utf8 (const std::string_view input) -> std::string |
An implementation of RFC 3492 Punycode.
This functionality is included as follows:
| class sourcemeta::core::PunycodeError |
An error that represents a Punycode encoding or decoding failure
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto sourcemeta::core::punycode_to_utf32 | ( | const std::string_view | input | ) | -> std::u32string |
Decode Punycode to Unicode code points (UTF-32). For example:
Note that stream-based overloads for UTF-32 are not provided because the C++ standard library does not define the required locale facets (std::ctype<char32_t>) for std::basic_istream<char32_t> and std::basic_ostream<char32_t> to function properly.
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto sourcemeta::core::punycode_to_utf8 | ( | const std::string_view | input | ) | -> std::string |
Decode Punycode to UTF-8. For example:
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto sourcemeta::core::punycode_to_utf8 | ( | std::istream & | input, |
| std::ostream & | output ) -> void |
Decode Punycode to UTF-8 using streams. For example:
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto sourcemeta::core::utf32_to_punycode | ( | std::u32string_view | input | ) | -> std::string |
Encode Unicode code points (UTF-32) to Punycode. For example:
Note that stream-based overloads for UTF-32 are not provided because the C++ standard library does not define the required locale facets (std::ctype<char32_t>) for std::basic_istream<char32_t> and std::basic_ostream<char32_t> to function properly.
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto sourcemeta::core::utf8_to_punycode | ( | const std::string_view | input | ) | -> std::string |
Encode UTF-8 to Punycode. For example:
| SOURCEMETA_CORE_PUNYCODE_EXPORT auto sourcemeta::core::utf8_to_punycode | ( | std::istream & | input, |
| std::ostream & | output ) -> void |
Encode UTF-8 to Punycode using streams. For example: