|
constexpr | grapheme (grapheme const &) noexcept=default |
|
constexpr | grapheme (grapheme &&) noexcept=default |
|
constexpr grapheme & | operator= (grapheme const &) noexcept=default |
|
constexpr grapheme & | operator= (grapheme &&) noexcept=default |
|
constexpr | grapheme (std::in_place_t, value_type value) |
|
constexpr value_type & | intrinsic () noexcept |
|
constexpr value_type const & | intrinsic () const noexcept |
|
constexpr | grapheme (char32_t code_point) noexcept |
| Encode a single code-point.
|
|
constexpr | grapheme (char ascii_char) noexcept |
|
constexpr grapheme & | operator= (char32_t code_point) noexcept |
| Encode a single code-point.
|
|
constexpr grapheme & | operator= (char ascii_char) noexcept |
| Encode a single code-point.
|
|
template<typename CodePoints > |
constexpr | grapheme (composed_t, CodePoints &&code_points) noexcept |
| Encode a grapheme from a list of code-points.
|
|
constexpr | grapheme (std::u32string_view code_points) noexcept |
| Encode a grapheme from a list of code-points.
|
|
constexpr uint32_t | index () const noexcept |
| Get the codepoint/index part of the grapheme.
|
|
constexpr iso_639 | language () const noexcept |
|
constexpr void | set_language (iso_639 rhs) noexcept |
|
constexpr iso_15924 | starter_script () const noexcept |
| Get the script of the starter code-point.
|
|
constexpr iso_15924 | starter_script (iso_15924 default_script) const noexcept |
| Get the script of the starter code-point.
|
|
constexpr iso_15924 | script () const noexcept |
|
constexpr void | set_script (iso_15924 rhs) noexcept |
| Set the script of the grapheme.
|
|
constexpr void | set_script () noexcept |
| Get the script of the grapheme to the starter script.
|
|
constexpr iso_3166 | region () const noexcept |
|
constexpr void | set_region (iso_3166 rhs) noexcept |
|
constexpr hi::language_tag | language_tag () const noexcept |
|
constexpr void | set_language_tag (hi::language_tag rhs) noexcept |
|
constexpr hi::phrasing | phrasing () const noexcept |
|
constexpr void | set_phrasing (hi::phrasing rhs) noexcept |
|
constexpr std::size_t | size () const noexcept |
| Return the number of code-points encoded in the grapheme.
|
|
constexpr char32_t | starter () const noexcept |
|
constexpr bool | is_ascii () const noexcept |
|
constexpr std::u32string | composed () const noexcept |
| Get a list of code-point normalized to NFC.
|
|
constexpr std::u32string | decomposed (unicode_normalize_config config=unicode_normalize_config::NFD()) const noexcept |
| Get a list of code-point normalized to NFD.
|
|
|
constexpr bool | operator== (grapheme const &lhs, grapheme const &rhs) noexcept |
| Compare equivalence of two graphemes.
|
|
constexpr bool | operator== (grapheme const &lhs, char32_t const &rhs) noexcept |
|
constexpr bool | operator== (grapheme const &lhs, char const &rhs) noexcept |
|
constexpr std::strong_ordering | operator<=> (grapheme const &lhs, grapheme const &rhs) noexcept |
| Compare two graphemes lexicographically.
|
|
constexpr std::strong_ordering | operator<=> (grapheme const &lhs, char32_t const &rhs) noexcept |
|
constexpr std::strong_ordering | operator<=> (grapheme const &lhs, char const &rhs) noexcept |
|
constexpr std::string | to_string (grapheme const &rhs) noexcept |
|
constexpr std::wstring | to_wstring (grapheme const &rhs) noexcept |
|
constexpr std::u32string | to_u32string (grapheme const &rhs) noexcept |
|
A grapheme-cluster, what a user thinks a character is.
A grapheme should not include typographical ligatures such as 'fi' as the font should handle creating ligatures.
If a grapheme is initialized with more than 1 code-points a long_grapheme is allocated. This grapheme is never deleted from memory.
This class is trivial and constant-destructible so that it can be used as a character class in std::basic_string
and used as a non-type template parameter.