If ZTD_TEXT_UNICODE_CODE_POINT_DISTINCT_TYPE <config-ZTD_TEXT_UNICODE_CODE_POINT_DISTINCT_TYPE>
is turned on, this type definition points to an internal class which implements the invariant of being a unicode code point <unicode code point>
. Otherwise, it is simply char32_t
.
A unicode code point is stored as an at least 32-bit value, but may occupy more space depending on the architecture. It requires 21 bits of space to fit the required unicode code point definition. If the distinct type is used, then this type will trap (abort
/assert
) if the value is greater than the allowed 21 bits.
ztd::text::unicode_code_point
Warning
ztd::text::__txt_impl::__unicode_code_point