Struct CodePointTrieHeader

struct CodePointTrieHeader { ... }

This struct contains the fixed-length header fields of a CodePointTrie.

Fields

high_start: u32

The code point of the start of the last range of the trie. A range is defined as a partition of the code point space such that the value in this trie associated with all code points of the same range is the same.

For the property value data for many Unicode properties, often times, high_start is U+10000 or lower. In such cases, not reserving space in the index array for duplicate values is a large savings. The "highValue" associated with the high_start range is stored at the second-to-last position of the data array. (See impl_const::HIGH_VALUE_NEG_DATA_OFFSET.)

shifted12_high_start: u16

A version of the high_start value that is right-shifted 12 spaces, but is rounded up to a multiple 0x1000 for easy testing from UTF-8 lead bytes.

index3_null_offset: u16

Offset for the null block in the "index-3" table of the index array. Set to an impossibly high value (e.g., 0xffff) if there is no dedicated index-3 null block.

data_null_offset: u32

Internal data null block offset, not shifted. Set to an impossibly high value (e.g., 0xfffff) if there is no dedicated data null block.

null_value: u32

The value stored in the trie that represents a null value being associated to a code point.

trie_type: TrieType

The enum value representing the type of trie, where trie type is as it is defined in ICU (ex: Fast, Small).

Implementations

impl Clone for CodePointTrieHeader

fn clone(self: &Self) -> CodePointTrieHeader

impl Copy for CodePointTrieHeader

impl Debug for CodePointTrieHeader

fn fmt(self: &Self, f: &mut Formatter<'_>) -> Result

impl Eq for CodePointTrieHeader

impl Freeze for CodePointTrieHeader

impl PartialEq for CodePointTrieHeader

fn eq(self: &Self, other: &CodePointTrieHeader) -> bool

impl RefUnwindSafe for CodePointTrieHeader

impl Send for CodePointTrieHeader

impl StructuralPartialEq for CodePointTrieHeader

impl Sync for CodePointTrieHeader

impl Unpin for CodePointTrieHeader

impl UnsafeUnpin for CodePointTrieHeader

impl UnwindSafe for CodePointTrieHeader

impl<'a> Yokeable for CodePointTrieHeader

fn transform(self: &Self) -> &<Self as >::Output
fn transform_owned(self: Self) -> <Self as >::Output
unsafe fn make(this: <Self as >::Output) -> Self
fn transform_mut<F>(self: &'a mut Self, f: F)
where
    F: 'static + for<'b> FnOnce(&'b mut <Self as >::Output)

impl<'zf> ZeroFrom for CodePointTrieHeader

fn zero_from(this: &'zf Self) -> Self

impl<T> Any for CodePointTrieHeader

fn type_id(self: &Self) -> TypeId

impl<T> Borrow for CodePointTrieHeader

fn borrow(self: &Self) -> &T

impl<T> BorrowMut for CodePointTrieHeader

fn borrow_mut(self: &mut Self) -> &mut T

impl<T> CloneToUninit for CodePointTrieHeader

unsafe fn clone_to_uninit(self: &Self, dest: *mut u8)

impl<T> ErasedDestructor for CodePointTrieHeader

impl<T> From for CodePointTrieHeader

fn from(t: T) -> T

Returns the argument unchanged.

impl<T> ToOwned for CodePointTrieHeader

fn to_owned(self: &Self) -> T
fn clone_into(self: &Self, target: &mut T)

impl<T, U> Into for CodePointTrieHeader

fn into(self: Self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of [From]<T> for U chooses to do.

impl<T, U> TryFrom for CodePointTrieHeader

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

impl<T, U> TryInto for CodePointTrieHeader

fn try_into(self: Self) -> Result<U, <U as TryFrom<T>>::Error>