Struct icu_collections::codepointtrie::cptrie::CodePointTrieHeader
source · pub struct CodePointTrieHeader {
pub high_start: u32,
pub shifted12_high_start: u16,
pub index3_null_offset: u16,
pub data_null_offset: u32,
pub null_value: u32,
pub trie_type: TrieType,
}
Expand description
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).
Trait Implementations§
source§impl Clone for CodePointTrieHeader
impl Clone for CodePointTrieHeader
source§fn clone(&self) -> CodePointTrieHeader
fn clone(&self) -> CodePointTrieHeader
1.0.0 · source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read moresource§impl Debug for CodePointTrieHeader
impl Debug for CodePointTrieHeader
source§impl PartialEq for CodePointTrieHeader
impl PartialEq for CodePointTrieHeader
source§fn eq(&self, other: &CodePointTrieHeader) -> bool
fn eq(&self, other: &CodePointTrieHeader) -> bool
self
and other
values to be equal, and is used
by ==
.source§impl<'a> Yokeable<'a> for CodePointTrieHeaderwhere
Self: Sized,
impl<'a> Yokeable<'a> for CodePointTrieHeaderwhere
Self: Sized,
§type Output = CodePointTrieHeader
type Output = CodePointTrieHeader
Self
with the 'static
replaced with 'a
, i.e. Self<'a>