pub struct PropertyEnumToValueNameSparseMapper<T> {
map: DataPayload<ErasedEnumToValueNameSparseMapV1Marker>,
markers: PhantomData<fn(_: T)>,
}
Expand description
A struct capable of looking up a property name from a value
Access its data by calling Self::as_borrowed()
and using the methods on
PropertyEnumToValueNameSparseMapperBorrowed
.
This mapper is used for properties with sparse values, like CanonicalCombiningClass
.
It may be obtained using methods like CanonicalCombiningClass::get_enum_to_long_name_mapper()
.
The name returned may be a short ("KV"
) or long ("Kana_Voicing"
) name, depending
on the constructor used.
§Example
use icu::properties::CanonicalCombiningClass;
let lookup = CanonicalCombiningClass::enum_to_long_name_mapper();
assert_eq!(
lookup.get(CanonicalCombiningClass::KanaVoicing),
Some("Kana_Voicing")
);
assert_eq!(
lookup.get(CanonicalCombiningClass::AboveLeft),
Some("Above_Left")
);
Fields§
§map: DataPayload<ErasedEnumToValueNameSparseMapV1Marker>
§markers: PhantomData<fn(_: T)>
Implementations§
source§impl<T: TrieValue> PropertyEnumToValueNameSparseMapper<T>
impl<T: TrieValue> PropertyEnumToValueNameSparseMapper<T>
sourcepub fn as_borrowed(&self) -> PropertyEnumToValueNameSparseMapperBorrowed<'_, T>
pub fn as_borrowed(&self) -> PropertyEnumToValueNameSparseMapperBorrowed<'_, T>
Construct a borrowed version of this type that can be queried.
This avoids a potential small underlying cost per API call (like get_static()
) by consolidating it
up front.
sourcepub(crate) fn from_data<M>(data: DataPayload<M>) -> Selfwhere
M: DataMarker<Yokeable = PropertyEnumToValueNameSparseMapV1<'static>>,
pub(crate) fn from_data<M>(data: DataPayload<M>) -> Selfwhere
M: DataMarker<Yokeable = PropertyEnumToValueNameSparseMapV1<'static>>,
Construct a new one from loaded data
Typically it is preferable to use methods on individual property value types
(like [Script::TBD()
]) instead.