unic_ucd_segment::grapheme_cluster_break

Enum GraphemeClusterBreak

Source
pub enum GraphemeClusterBreak {
Show 18 variants CR, LF, Control, Extend, ZWJ, RegionalIndicator, Prepend, SpacingMark, L, V, T, LV, LVT, EBase, EModifier, GlueAfterZwj, EBaseGAZ, Other,
}
Expand description

Variants§

§

CR

U+000D CARRIAGE RETURN (CR)
§

LF

U+000A LINE FEED (LF)
§

Control

General_Category = Line_Separator, or
General_Category = Paragraph_Separator, or
General_Category = Control, or
General_Category = Unassigned and Default_Ignorable_Code_Point, or
General_Category = Surrogate, or
General_Category = Format
and not U+000D CARRIAGE RETURN
and not U+000A LINE FEED
and not U+200C ZERO WIDTH NON-JOINER (ZWNJ)
and not U+200D ZERO WIDTH JOINER (ZWJ)
§

Extend

Grapheme_Extend = Yes

This includes:
General_Category = Nonspacing_Mark
General_Category = Enclosing_Mark
U+200C ZERO WIDTH NON-JOINER
plus a few General_Category = Spacing_Mark needed for canonical equivalence.
§

ZWJ

U+200D ZERO WIDTH JOINER
§

RegionalIndicator

Regional_Indicator = Yes

This consists of the range:

U+1F1E6 REGIONAL INDICATOR SYMBOL LETTER A
..U+1F1FF REGIONAL INDICATOR SYMBOL LETTER Z
§

Prepend

Indic_Syllabic_Category = Consonant_Preceding_Repha, or
Indic_Syllabic_Category = Consonant_Prefixed, or
Prepended_Concatenation_Mark = Yes
§

SpacingMark

Grapheme_Cluster_Break ≠ Extend, and
General_Category = Spacing_Mark, or
any of the following (which have General_Category = Other_Letter):
U+0E33 ( ำ ) THAI CHARACTER SARA AM
U+0EB3 ( ຳ ) LAO VOWEL SIGN AM

Exceptions: The following (which have General_Category = Spacing_Mark and would otherwise be included) are specifically excluded:

U+102B ( ါ ) MYANMAR VOWEL SIGN TALL AA
U+102C ( ာ ) MYANMAR VOWEL SIGN AA
U+1038 ( း ) MYANMAR SIGN VISARGA
U+1062 ( ၢ ) MYANMAR VOWEL SIGN SGAW KAREN EU
..U+1064 ( ၤ ) MYANMAR TONE MARK SGAW KAREN KE PHO
U+1067 ( ၧ ) MYANMAR VOWEL SIGN WESTERN PWO KAREN EU
..U+106D ( ၭ ) MYANMAR SIGN WESTERN PWO KAREN TONE-5
U+1083 ( ႃ ) MYANMAR VOWEL SIGN SHAN AA
U+1087 ( ႇ ) MYANMAR SIGN SHAN TONE-2
..U+108C ( ႌ ) MYANMAR SIGN SHAN COUNCIL TONE-3
U+108F ( ႏ ) MYANMAR SIGN RUMAI PALAUNG TONE-5
U+109A ( ႚ ) MYANMAR SIGN KHAMTI TONE-1
..U+109C ( ႜ ) MYANMAR VOWEL SIGN AITON A
U+1A61 ( ᩡ ) TAI THAM VOWEL SIGN A
U+1A63 ( ᩣ ) TAI THAM VOWEL SIGN AA
U+1A64 ( ᩤ ) TAI THAM VOWEL SIGN TALL AA
U+AA7B ( ꩻ ) MYANMAR SIGN PAO KAREN TONE
U+AA7D ( ꩽ ) MYANMAR SIGN TAI LAING TONE-5
U+11720 ( 𑜠 ) AHOM VOWEL SIGN A
U+11721 ( 𑜡 ) AHOM VOWEL SIGN AA
§

L

Hangul_Syllable_Type=L

Such as:

U+1100 ( ᄀ ) HANGUL CHOSEONG KIYEOK
U+115F ( ᅟ ) HANGUL CHOSEONG FILLER
U+A960 ( ꥠ ) HANGUL CHOSEONG TIKEUT-MIEUM
U+A97C ( ꥼ ) HANGUL CHOSEONG SSANGYEORINHIEUH
§

V

Hangul_Syllable_Type=V

Such as:

U+1160 ( ᅠ ) HANGUL JUNGSEONG FILLER
U+11A2 ( ᆢ ) HANGUL JUNGSEONG SSANGARAEA
U+D7B0 ( ힰ ) HANGUL JUNGSEONG O-YEO
U+D7C6 ( ퟆ ) HANGUL JUNGSEONG ARAEA-E
§

T

Hangul_Syllable_Type=T

Such as:

U+11A8 ( ᆨ ) HANGUL JONGSEONG KIYEOK
U+11F9 ( ᇹ ) HANGUL JONGSEONG YEORINHIEUH
U+D7CB ( ퟋ ) HANGUL JONGSEONG NIEUN-RIEUL
U+D7FB ( ퟻ ) HANGUL JONGSEONG PHIEUPH-THIEUTH
§

LV

Hangul_Syllable_Type=LV:

That is:

U+AC00 ( 가 ) HANGUL SYLLABLE GA
U+AC1C ( 개 ) HANGUL SYLLABLE GAE
U+AC38 ( 갸 ) HANGUL SYLLABLE GYA
...
§

LVT

Hangul_Syllable_Type=LVT

That is:

U+AC01 ( 각 ) HANGUL SYLLABLE GAG
U+AC02 ( 갂 ) HANGUL SYLLABLE GAGG
U+AC03 ( 갃 ) HANGUL SYLLABLE GAGS
U+AC04 ( 간 ) HANGUL SYLLABLE GAN
...
§

EBase

Emoji characters listed as Emoji_Modifier_Base=Yes in emoji-data.txt, which do not occur after ZWJ in emoji-zwj-sequences.txt.

See https://www.unicode.org/reports/tr51/.

§

EModifier

Emoji characters listed as Emoji_Modifer=Yes in emoji-data.txt.

See https://www.unicode.org/reports/tr51/.

§

GlueAfterZwj

Emoji characters that do not break from a previous ZWJ in a defined emoji ZWJ sequence, and are not listed as Emoji_Modifier_Base=Yes in emoji-data.txt.

See https://www.unicode.org/reports/tr51/.

§

EBaseGAZ

Emoji characters listed as Emoji_Modifer_Base=Yes in emoji_data.txt, and also occur after ZWJ in emoji-zwj-sequences.txt.

See https://www.unicode.org/reports/tr51/.

§

Other

All other characters

Implementations§

Source§

impl GraphemeClusterBreak

Source

pub fn of(ch: char) -> GraphemeClusterBreak

Find the character Grapheme_Cluster_Break property value.

Trait Implementations§

Source§

impl CharProperty for GraphemeClusterBreak

Source§

fn prop_abbr_name() -> &'static str

The abbreviated name of the property.
Source§

fn prop_long_name() -> &'static str

The long name of the property.
Source§

fn prop_human_name() -> &'static str

The human-readable name of the property.
Source§

impl Clone for GraphemeClusterBreak

Source§

fn clone(&self) -> GraphemeClusterBreak

Returns a copy of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for GraphemeClusterBreak

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for GraphemeClusterBreak

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl Display for GraphemeClusterBreak

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl EnumeratedCharProperty for GraphemeClusterBreak

Source§

fn all_values() -> &'static [GraphemeClusterBreak]

Exhaustive list of all property values.
Source§

fn abbr_name(&self) -> &'static str

The abbreviated name of the property value.
Source§

fn long_name(&self) -> &'static str

The long name of the property value.
Source§

fn human_name(&self) -> &'static str

The human-readable name of the property value.
Source§

impl FromStr for GraphemeClusterBreak

Source§

type Err = ()

The associated error which can be returned from parsing.
Source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
Source§

impl Hash for GraphemeClusterBreak

Source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · Source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
Source§

impl PartialEq for GraphemeClusterBreak

Source§

fn eq(&self, other: &GraphemeClusterBreak) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl TotalCharProperty for GraphemeClusterBreak

Source§

fn of(ch: char) -> Self

The property value for the character.
Source§

impl Copy for GraphemeClusterBreak

Source§

impl Eq for GraphemeClusterBreak

Source§

impl StructuralPartialEq for GraphemeClusterBreak

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> PartialCharProperty for T

Source§

fn of(ch: char) -> Option<T>

The property value for the character, or None.
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.