Module codepointtrie

Source
Expand description

This module provides a data structure for an time-efficient lookup of values associated to code points.

It is an implementation of the existing ICU4C UCPTrie / ICU4J CodePointTrie API.

§Architecture

ICU4X CodePointTrie is designed to provide a read-only view of CodePointTrie data that is exported from ICU4C. Detailed information about the design of the data structure can be found in the documentation for the CodePointTrie struct.

§Examples

§Querying a CodePointTrie

use icu::collections::codepointtrie::planes;
let trie = planes::get_planes_trie();

assert_eq!(0, trie.get32(0x41)); // 'A' as u32
assert_eq!(0, trie.get32(0x13E0)); // 'Ꮰ' as u32
assert_eq!(1, trie.get32(0x10044)); // '𐁄' as u32

Re-exports§

pub use CodePointTrieError as Error;

Modules§

planes
Sample data for CodePointTrie that returns the code point’s plane number.

Structs§

CodePointMapRange
Represents a range of consecutive code points sharing the same value in a code point map. The start and end of the interval is represented as a RangeInclusive<u32>, and the value is represented as T.
CodePointMapRangeIterator
A custom Iterator type specifically for a code point trie that returns CodePointMapRanges.
CodePointTrie
This struct represents a de-serialized CodePointTrie that was exported from ICU binary data.
CodePointTrieHeader
This struct contains the fixed-length header fields of a CodePointTrie.

Enums§

CodePointTrieError
A custom error type for CodePointTrie.
TrieType
The type of trie represents whether the trie has an optimization that would make it smaller or faster.

Traits§

TrieValue
A trait representing the values stored in the data array of a CodePointTrie. This trait is used as a type parameter in constructing a CodePointTrie.