pub enum TrieType {
Fast = 0,
Small = 1,
}Expand description
The type of trie represents whether the trie has an optimization that would make it smaller or faster.
Regarding performance, a trie being a small or fast type affects the number of array lookups
needed for code points in the range [0x1000, 0x10000). In this range, Small tries use 4 array lookups,
while Fast tries use 2 array lookups.
Code points before the interval (in [0, 0x1000)) will always use 2 array lookups.
Code points after the interval (in [0x10000, 0x10FFFF]) will always use 4 array lookups.
Regarding size, Fast type tries are larger than Small type tries because the minimum size of
the index array is larger. The minimum size is the “fast max” limit, which is the limit of the range
of code points with 2 array lookups.
See the document Unicode Properties and Code Point Tries in ICU4X.
Also see UCPTrieType in ICU4C.
Variants§
Fast = 0
Represents the “fast” type code point tries for the
TrieType trait. The “fast max” limit is set to 0xffff.
Small = 1
Represents the “small” type code point tries for the
TrieType trait. The “fast max” limit is set to 0x0fff.