Struct icu_properties::WordBreak
source · #[repr(transparent)]pub struct WordBreak(pub u8);
Expand description
Enumerated property Word_Break.
See “Default Word Boundary Specification” in UAX #29 for the summary of each property value: https://www.unicode.org/reports/tr29/#Default_Word_Boundaries.
The numeric value is compatible with UWordBreakValues
in ICU4C.
Tuple Fields§
§0: u8
Implementations§
source§impl WordBreak
impl WordBreak
pub const Other: WordBreak = _
pub const ALetter: WordBreak = _
pub const Format: WordBreak = _
pub const Katakana: WordBreak = _
pub const MidLetter: WordBreak = _
pub const MidNum: WordBreak = _
pub const Numeric: WordBreak = _
pub const ExtendNumLet: WordBreak = _
pub const CR: WordBreak = _
pub const Extend: WordBreak = _
pub const LF: WordBreak = _
pub const MidNumLet: WordBreak = _
pub const Newline: WordBreak = _
pub const RegionalIndicator: WordBreak = _
pub const HebrewLetter: WordBreak = _
pub const SingleQuote: WordBreak = _
pub const DoubleQuote: WordBreak = _
sourcepub const GlueAfterZwj: WordBreak = _
pub const GlueAfterZwj: WordBreak = _
This value is obsolete and unused.
pub const ZWJ: WordBreak = _
pub const WSegSpace: WordBreak = _
source§impl WordBreak
impl WordBreak
sourcepub const fn name_to_enum_mapper() -> PropertyValueNameToEnumMapperBorrowed<'static, WordBreak>
pub const fn name_to_enum_mapper() -> PropertyValueNameToEnumMapperBorrowed<'static, WordBreak>
Return a PropertyValueNameToEnumMapper
, capable of looking up values
from strings for the Word_Break
enumerated property.
✨ Enabled with the compiled_data
Cargo feature.
§Example
use icu::properties::WordBreak;
let lookup = WordBreak::name_to_enum_mapper();
// short name for value
assert_eq!(lookup.get_strict("KA"), Some(WordBreak::Katakana));
assert_eq!(lookup.get_strict("LE"), Some(WordBreak::ALetter));
// long name for value
assert_eq!(lookup.get_strict("Katakana"), Some(WordBreak::Katakana));
assert_eq!(lookup.get_strict("ALetter"), Some(WordBreak::ALetter));
// name has incorrect casing
assert_eq!(lookup.get_strict("Aletter"), None);
// loose matching of name
assert_eq!(lookup.get_loose("Aletter"), Some(WordBreak::ALetter));
assert_eq!(lookup.get_loose("w_seg_space"), Some(WordBreak::WSegSpace));
// fake property
assert_eq!(lookup.get_strict("Quadruple_Quote"), None);
sourcepub fn get_name_to_enum_mapper(
provider: &(impl DataProvider<WordBreakNameToValueV1Marker> + ?Sized),
) -> Result<PropertyValueNameToEnumMapper<WordBreak>, PropertiesError>
pub fn get_name_to_enum_mapper( provider: &(impl DataProvider<WordBreakNameToValueV1Marker> + ?Sized), ) -> Result<PropertyValueNameToEnumMapper<WordBreak>, PropertiesError>
A version of WordBreak::name_to_enum_mapper()
that uses custom data provided by a DataProvider
.
sourcepub const fn enum_to_short_name_mapper() -> PropertyEnumToValueNameLinearMapperBorrowed<'static, WordBreak>
pub const fn enum_to_short_name_mapper() -> PropertyEnumToValueNameLinearMapperBorrowed<'static, WordBreak>
Return a PropertyEnumToValueNameLinearMapper
, capable of looking up short names
for values of the Word_Break
enumerated property.
✨ Enabled with the compiled_data
Cargo feature.
§Example
use icu::properties::WordBreak;
let lookup = WordBreak::enum_to_short_name_mapper();
assert_eq!(lookup.get(WordBreak::Katakana), Some("KA"));
assert_eq!(lookup.get(WordBreak::ALetter), Some("LE"));
assert_eq!(lookup.get(WordBreak::WSegSpace), Some("WSegSpace"));
sourcepub fn get_enum_to_short_name_mapper(
provider: &(impl DataProvider<WordBreakValueToShortNameV1Marker> + ?Sized),
) -> Result<PropertyEnumToValueNameLinearMapper<WordBreak>, PropertiesError>
pub fn get_enum_to_short_name_mapper( provider: &(impl DataProvider<WordBreakValueToShortNameV1Marker> + ?Sized), ) -> Result<PropertyEnumToValueNameLinearMapper<WordBreak>, PropertiesError>
A version of WordBreak::enum_to_short_name_mapper()
that uses custom data provided by a DataProvider
.
sourcepub const fn enum_to_long_name_mapper() -> PropertyEnumToValueNameLinearMapperBorrowed<'static, WordBreak>
pub const fn enum_to_long_name_mapper() -> PropertyEnumToValueNameLinearMapperBorrowed<'static, WordBreak>
Return a PropertyEnumToValueNameLinearMapper
, capable of looking up long names
for values of the Word_Break
enumerated property.
✨ Enabled with the compiled_data
Cargo feature.
§Example
use icu::properties::WordBreak;
let lookup = WordBreak::enum_to_long_name_mapper();
assert_eq!(lookup.get(WordBreak::Katakana), Some("Katakana"));
assert_eq!(lookup.get(WordBreak::ALetter), Some("ALetter"));
assert_eq!(lookup.get(WordBreak::WSegSpace), Some("WSegSpace"));
sourcepub fn get_enum_to_long_name_mapper(
provider: &(impl DataProvider<WordBreakValueToLongNameV1Marker> + ?Sized),
) -> Result<PropertyEnumToValueNameLinearMapper<WordBreak>, PropertiesError>
pub fn get_enum_to_long_name_mapper( provider: &(impl DataProvider<WordBreakValueToLongNameV1Marker> + ?Sized), ) -> Result<PropertyEnumToValueNameLinearMapper<WordBreak>, PropertiesError>
A version of WordBreak::enum_to_long_name_mapper()
that uses custom data provided by a DataProvider
.
Trait Implementations§
source§impl AsULE for WordBreak
impl AsULE for WordBreak
§type ULE = WordBreakULE
type ULE = WordBreakULE
Self
. Read moresource§fn to_unaligned(self) -> Self::ULE
fn to_unaligned(self) -> Self::ULE
source§fn from_unaligned(unaligned: Self::ULE) -> Self
fn from_unaligned(unaligned: Self::ULE) -> Self
source§impl Ord for WordBreak
impl Ord for WordBreak
source§impl PartialEq for WordBreak
impl PartialEq for WordBreak
source§impl PartialOrd for WordBreak
impl PartialOrd for WordBreak
1.0.0 · source§fn le(&self, other: &Rhs) -> bool
fn le(&self, other: &Rhs) -> bool
self
and other
) and is used by the <=
operator. Read moresource§impl TrieValue for WordBreak
impl TrieValue for WordBreak
§type TryFromU32Error = TryFromIntError
type TryFromU32Error = TryFromIntError
source§fn try_from_u32(i: u32) -> Result<Self, Self::TryFromU32Error>
fn try_from_u32(i: u32) -> Result<Self, Self::TryFromU32Error>
u32
first.