Struct icu::collections::codepointtrie::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<'de> Deserialize<'de> for CodePointTrieHeader
impl<'de> Deserialize<'de> for CodePointTrieHeader
source§fn deserialize<__D>(
__deserializer: __D
) -> Result<CodePointTrieHeader, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>( __deserializer: __D ) -> Result<CodePointTrieHeader, <__D as Deserializer<'de>>::Error>where __D: Deserializer<'de>,
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 Serialize for CodePointTrieHeader
impl Serialize for CodePointTrieHeader
source§fn serialize<__S>(
&self,
__serializer: __S
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>( &self, __serializer: __S ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where __S: Serializer,
source§impl TryFrom<&CodePointTrieToml> for CodePointTrieHeader
impl TryFrom<&CodePointTrieToml> for CodePointTrieHeader
source§fn try_from(
cpt_data: &CodePointTrieToml
) -> Result<CodePointTrieHeader, <CodePointTrieHeader as TryFrom<&CodePointTrieToml>>::Error>
fn try_from( cpt_data: &CodePointTrieToml ) -> Result<CodePointTrieHeader, <CodePointTrieHeader as TryFrom<&CodePointTrieToml>>::Error>
source§impl<'a> Yokeable<'a> for CodePointTrieHeader
impl<'a> Yokeable<'a> for CodePointTrieHeader
§type Output = CodePointTrieHeader
type Output = CodePointTrieHeader
Self
with the 'static
replaced with 'a
, i.e. Self<'a>
source§fn transform(&self) -> &<CodePointTrieHeader as Yokeable<'a>>::Output
fn transform(&self) -> &<CodePointTrieHeader as Yokeable<'a>>::Output
source§fn transform_owned(self) -> <CodePointTrieHeader as Yokeable<'a>>::Output
fn transform_owned(self) -> <CodePointTrieHeader as Yokeable<'a>>::Output
source§unsafe fn make(
this: <CodePointTrieHeader as Yokeable<'a>>::Output
) -> CodePointTrieHeader
unsafe fn make( this: <CodePointTrieHeader as Yokeable<'a>>::Output ) -> CodePointTrieHeader
Self<'a>
’s lifetime. Read moresource§fn transform_mut<F>(&'a mut self, f: F)where
F: 'static + for<'b> FnOnce(&'b mut <CodePointTrieHeader as Yokeable<'a>>::Output),
fn transform_mut<F>(&'a mut self, f: F)where F: 'static + for<'b> FnOnce(&'b mut <CodePointTrieHeader as Yokeable<'a>>::Output),
self
between &'a mut Self<'static>
and &'a mut Self<'a>
,
and pass it to f
. Read moresource§impl<'zf> ZeroFrom<'zf, CodePointTrieHeader> for CodePointTrieHeader
impl<'zf> ZeroFrom<'zf, CodePointTrieHeader> for CodePointTrieHeader
source§fn zero_from(this: &'zf CodePointTrieHeader) -> CodePointTrieHeader
fn zero_from(this: &'zf CodePointTrieHeader) -> CodePointTrieHeader
C
into a struct that may retain references into C
.