mod constants {
pub const COMBINING_DOTTED_GRAVE_ACCENT: char = '᷀';
pub const COMBINING_DOTTED_ACUTE_ACCENT: char = '᷁';
pub const COMBINING_SNAKE_BELOW: char = '᷂';
pub const COMBINING_SUSPENSION_MARK: char = '᷃';
pub const COMBINING_MACRON_DASH_ACUTE: char = '᷄';
pub const COMBINING_GRAVE_DASH_MACRON: char = '᷅';
pub const COMBINING_MACRON_DASH_GRAVE: char = '᷆';
pub const COMBINING_ACUTE_DASH_MACRON: char = '᷇';
pub const COMBINING_GRAVE_DASH_ACUTE_DASH_GRAVE: char = '᷈';
pub const COMBINING_ACUTE_DASH_GRAVE_DASH_ACUTE: char = '᷉';
pub const COMBINING_LATIN_SMALL_LETTER_R_BELOW: char = '᷊';
pub const COMBINING_BREVE_DASH_MACRON: char = '᷋';
pub const COMBINING_MACRON_DASH_BREVE: char = '᷌';
pub const COMBINING_DOUBLE_CIRCUMFLEX_ABOVE: char = '᷍';
pub const COMBINING_OGONEK_ABOVE: char = '᷎';
pub const COMBINING_ZIGZAG_BELOW: char = '᷏';
pub const COMBINING_IS_BELOW: char = '᷐';
pub const COMBINING_UR_ABOVE: char = '᷑';
pub const COMBINING_US_ABOVE: char = '᷒';
pub const COMBINING_LATIN_SMALL_LETTER_FLATTENED_OPEN_A_ABOVE: char = 'ᷓ';
pub const COMBINING_LATIN_SMALL_LETTER_AE: char = 'ᷔ';
pub const COMBINING_LATIN_SMALL_LETTER_AO: char = 'ᷕ';
pub const COMBINING_LATIN_SMALL_LETTER_AV: char = 'ᷖ';
pub const COMBINING_LATIN_SMALL_LETTER_C_CEDILLA: char = 'ᷗ';
pub const COMBINING_LATIN_SMALL_LETTER_INSULAR_D: char = 'ᷘ';
pub const COMBINING_LATIN_SMALL_LETTER_ETH: char = 'ᷙ';
pub const COMBINING_LATIN_SMALL_LETTER_G: char = 'ᷚ';
pub const COMBINING_LATIN_LETTER_SMALL_CAPITAL_G: char = 'ᷛ';
pub const COMBINING_LATIN_SMALL_LETTER_K: char = 'ᷜ';
pub const COMBINING_LATIN_SMALL_LETTER_L: char = 'ᷝ';
pub const COMBINING_LATIN_LETTER_SMALL_CAPITAL_L: char = 'ᷞ';
pub const COMBINING_LATIN_LETTER_SMALL_CAPITAL_M: char = 'ᷟ';
pub const COMBINING_LATIN_SMALL_LETTER_N: char = 'ᷠ';
pub const COMBINING_LATIN_LETTER_SMALL_CAPITAL_N: char = 'ᷡ';
pub const COMBINING_LATIN_LETTER_SMALL_CAPITAL_R: char = 'ᷢ';
pub const COMBINING_LATIN_SMALL_LETTER_R_ROTUNDA: char = 'ᷣ';
pub const COMBINING_LATIN_SMALL_LETTER_S: char = 'ᷤ';
pub const COMBINING_LATIN_SMALL_LETTER_LONG_S: char = 'ᷥ';
pub const COMBINING_LATIN_SMALL_LETTER_Z: char = 'ᷦ';
pub const COMBINING_LATIN_SMALL_LETTER_ALPHA: char = 'ᷧ';
pub const COMBINING_LATIN_SMALL_LETTER_B: char = 'ᷨ';
pub const COMBINING_LATIN_SMALL_LETTER_BETA: char = 'ᷩ';
pub const COMBINING_LATIN_SMALL_LETTER_SCHWA: char = 'ᷪ';
pub const COMBINING_LATIN_SMALL_LETTER_F: char = 'ᷫ';
pub const COMBINING_LATIN_SMALL_LETTER_L_WITH_DOUBLE_MIDDLE_TILDE: char = 'ᷬ';
pub const COMBINING_LATIN_SMALL_LETTER_O_WITH_LIGHT_CENTRALIZATION_STROKE: char = 'ᷭ';
pub const COMBINING_LATIN_SMALL_LETTER_P: char = 'ᷮ';
pub const COMBINING_LATIN_SMALL_LETTER_ESH: char = 'ᷯ';
pub const COMBINING_LATIN_SMALL_LETTER_U_WITH_LIGHT_CENTRALIZATION_STROKE: char = 'ᷰ';
pub const COMBINING_LATIN_SMALL_LETTER_W: char = 'ᷱ';
pub const COMBINING_LATIN_SMALL_LETTER_A_WITH_DIAERESIS: char = 'ᷲ';
pub const COMBINING_LATIN_SMALL_LETTER_O_WITH_DIAERESIS: char = 'ᷳ';
pub const COMBINING_LATIN_SMALL_LETTER_U_WITH_DIAERESIS: char = 'ᷴ';
pub const COMBINING_UP_TACK_ABOVE: char = '᷵';
pub const COMBINING_KAVYKA_ABOVE_RIGHT: char = '᷶';
pub const COMBINING_KAVYKA_ABOVE_LEFT: char = '᷷';
pub const COMBINING_DOT_ABOVE_LEFT: char = '᷸';
pub const COMBINING_WIDE_INVERTED_BRIDGE_BELOW: char = '᷹';
pub const COMBINING_DELETION_MARK: char = '᷻';
pub const COMBINING_DOUBLE_INVERTED_BREVE_BELOW: char = '᷼';
pub const COMBINING_ALMOST_EQUAL_TO_BELOW: char = '᷽';
pub const COMBINING_LEFT_ARROWHEAD_ABOVE: char = '᷾';
}
#[derive(Debug, Clone, Copy, Hash, PartialEq, Eq)]
pub enum CombiningDiacriticalMarksSupplement {
CombiningDottedGraveAccent,
CombiningDottedAcuteAccent,
CombiningSnakeBelow,
CombiningSuspensionMark,
CombiningMacronDashAcute,
CombiningGraveDashMacron,
CombiningMacronDashGrave,
CombiningAcuteDashMacron,
CombiningGraveDashAcuteDashGrave,
CombiningAcuteDashGraveDashAcute,
CombiningLatinSmallLetterRBelow,
CombiningBreveDashMacron,
CombiningMacronDashBreve,
CombiningDoubleCircumflexAbove,
CombiningOgonekAbove,
CombiningZigzagBelow,
CombiningIsBelow,
CombiningUrAbove,
CombiningUsAbove,
CombiningLatinSmallLetterFlattenedOpenAAbove,
CombiningLatinSmallLetterAe,
CombiningLatinSmallLetterAo,
CombiningLatinSmallLetterAv,
CombiningLatinSmallLetterCCedilla,
CombiningLatinSmallLetterInsularD,
CombiningLatinSmallLetterEth,
CombiningLatinSmallLetterG,
CombiningLatinLetterSmallCapitalG,
CombiningLatinSmallLetterK,
CombiningLatinSmallLetterL,
CombiningLatinLetterSmallCapitalL,
CombiningLatinLetterSmallCapitalM,
CombiningLatinSmallLetterN,
CombiningLatinLetterSmallCapitalN,
CombiningLatinLetterSmallCapitalR,
CombiningLatinSmallLetterRRotunda,
CombiningLatinSmallLetterS,
CombiningLatinSmallLetterLongS,
CombiningLatinSmallLetterZ,
CombiningLatinSmallLetterAlpha,
CombiningLatinSmallLetterB,
CombiningLatinSmallLetterBeta,
CombiningLatinSmallLetterSchwa,
CombiningLatinSmallLetterF,
CombiningLatinSmallLetterLWithDoubleMiddleTilde,
CombiningLatinSmallLetterOWithLightCentralizationStroke,
CombiningLatinSmallLetterP,
CombiningLatinSmallLetterEsh,
CombiningLatinSmallLetterUWithLightCentralizationStroke,
CombiningLatinSmallLetterW,
CombiningLatinSmallLetterAWithDiaeresis,
CombiningLatinSmallLetterOWithDiaeresis,
CombiningLatinSmallLetterUWithDiaeresis,
CombiningUpTackAbove,
CombiningKavykaAboveRight,
CombiningKavykaAboveLeft,
CombiningDotAboveLeft,
CombiningWideInvertedBridgeBelow,
CombiningDeletionMark,
CombiningDoubleInvertedBreveBelow,
CombiningAlmostEqualToBelow,
CombiningLeftArrowheadAbove,
}
impl Into<char> for CombiningDiacriticalMarksSupplement {
fn into(self) -> char {
use constants::*;
match self {
CombiningDiacriticalMarksSupplement::CombiningDottedGraveAccent => COMBINING_DOTTED_GRAVE_ACCENT,
CombiningDiacriticalMarksSupplement::CombiningDottedAcuteAccent => COMBINING_DOTTED_ACUTE_ACCENT,
CombiningDiacriticalMarksSupplement::CombiningSnakeBelow => COMBINING_SNAKE_BELOW,
CombiningDiacriticalMarksSupplement::CombiningSuspensionMark => COMBINING_SUSPENSION_MARK,
CombiningDiacriticalMarksSupplement::CombiningMacronDashAcute => COMBINING_MACRON_DASH_ACUTE,
CombiningDiacriticalMarksSupplement::CombiningGraveDashMacron => COMBINING_GRAVE_DASH_MACRON,
CombiningDiacriticalMarksSupplement::CombiningMacronDashGrave => COMBINING_MACRON_DASH_GRAVE,
CombiningDiacriticalMarksSupplement::CombiningAcuteDashMacron => COMBINING_ACUTE_DASH_MACRON,
CombiningDiacriticalMarksSupplement::CombiningGraveDashAcuteDashGrave => COMBINING_GRAVE_DASH_ACUTE_DASH_GRAVE,
CombiningDiacriticalMarksSupplement::CombiningAcuteDashGraveDashAcute => COMBINING_ACUTE_DASH_GRAVE_DASH_ACUTE,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterRBelow => COMBINING_LATIN_SMALL_LETTER_R_BELOW,
CombiningDiacriticalMarksSupplement::CombiningBreveDashMacron => COMBINING_BREVE_DASH_MACRON,
CombiningDiacriticalMarksSupplement::CombiningMacronDashBreve => COMBINING_MACRON_DASH_BREVE,
CombiningDiacriticalMarksSupplement::CombiningDoubleCircumflexAbove => COMBINING_DOUBLE_CIRCUMFLEX_ABOVE,
CombiningDiacriticalMarksSupplement::CombiningOgonekAbove => COMBINING_OGONEK_ABOVE,
CombiningDiacriticalMarksSupplement::CombiningZigzagBelow => COMBINING_ZIGZAG_BELOW,
CombiningDiacriticalMarksSupplement::CombiningIsBelow => COMBINING_IS_BELOW,
CombiningDiacriticalMarksSupplement::CombiningUrAbove => COMBINING_UR_ABOVE,
CombiningDiacriticalMarksSupplement::CombiningUsAbove => COMBINING_US_ABOVE,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterFlattenedOpenAAbove => COMBINING_LATIN_SMALL_LETTER_FLATTENED_OPEN_A_ABOVE,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAe => COMBINING_LATIN_SMALL_LETTER_AE,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAo => COMBINING_LATIN_SMALL_LETTER_AO,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAv => COMBINING_LATIN_SMALL_LETTER_AV,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterCCedilla => COMBINING_LATIN_SMALL_LETTER_C_CEDILLA,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterInsularD => COMBINING_LATIN_SMALL_LETTER_INSULAR_D,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterEth => COMBINING_LATIN_SMALL_LETTER_ETH,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterG => COMBINING_LATIN_SMALL_LETTER_G,
CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalG => COMBINING_LATIN_LETTER_SMALL_CAPITAL_G,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterK => COMBINING_LATIN_SMALL_LETTER_K,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterL => COMBINING_LATIN_SMALL_LETTER_L,
CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalL => COMBINING_LATIN_LETTER_SMALL_CAPITAL_L,
CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalM => COMBINING_LATIN_LETTER_SMALL_CAPITAL_M,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterN => COMBINING_LATIN_SMALL_LETTER_N,
CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalN => COMBINING_LATIN_LETTER_SMALL_CAPITAL_N,
CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalR => COMBINING_LATIN_LETTER_SMALL_CAPITAL_R,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterRRotunda => COMBINING_LATIN_SMALL_LETTER_R_ROTUNDA,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterS => COMBINING_LATIN_SMALL_LETTER_S,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterLongS => COMBINING_LATIN_SMALL_LETTER_LONG_S,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterZ => COMBINING_LATIN_SMALL_LETTER_Z,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAlpha => COMBINING_LATIN_SMALL_LETTER_ALPHA,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterB => COMBINING_LATIN_SMALL_LETTER_B,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterBeta => COMBINING_LATIN_SMALL_LETTER_BETA,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterSchwa => COMBINING_LATIN_SMALL_LETTER_SCHWA,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterF => COMBINING_LATIN_SMALL_LETTER_F,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterLWithDoubleMiddleTilde => COMBINING_LATIN_SMALL_LETTER_L_WITH_DOUBLE_MIDDLE_TILDE,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterOWithLightCentralizationStroke => COMBINING_LATIN_SMALL_LETTER_O_WITH_LIGHT_CENTRALIZATION_STROKE,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterP => COMBINING_LATIN_SMALL_LETTER_P,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterEsh => COMBINING_LATIN_SMALL_LETTER_ESH,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterUWithLightCentralizationStroke => COMBINING_LATIN_SMALL_LETTER_U_WITH_LIGHT_CENTRALIZATION_STROKE,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterW => COMBINING_LATIN_SMALL_LETTER_W,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAWithDiaeresis => COMBINING_LATIN_SMALL_LETTER_A_WITH_DIAERESIS,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterOWithDiaeresis => COMBINING_LATIN_SMALL_LETTER_O_WITH_DIAERESIS,
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterUWithDiaeresis => COMBINING_LATIN_SMALL_LETTER_U_WITH_DIAERESIS,
CombiningDiacriticalMarksSupplement::CombiningUpTackAbove => COMBINING_UP_TACK_ABOVE,
CombiningDiacriticalMarksSupplement::CombiningKavykaAboveRight => COMBINING_KAVYKA_ABOVE_RIGHT,
CombiningDiacriticalMarksSupplement::CombiningKavykaAboveLeft => COMBINING_KAVYKA_ABOVE_LEFT,
CombiningDiacriticalMarksSupplement::CombiningDotAboveLeft => COMBINING_DOT_ABOVE_LEFT,
CombiningDiacriticalMarksSupplement::CombiningWideInvertedBridgeBelow => COMBINING_WIDE_INVERTED_BRIDGE_BELOW,
CombiningDiacriticalMarksSupplement::CombiningDeletionMark => COMBINING_DELETION_MARK,
CombiningDiacriticalMarksSupplement::CombiningDoubleInvertedBreveBelow => COMBINING_DOUBLE_INVERTED_BREVE_BELOW,
CombiningDiacriticalMarksSupplement::CombiningAlmostEqualToBelow => COMBINING_ALMOST_EQUAL_TO_BELOW,
CombiningDiacriticalMarksSupplement::CombiningLeftArrowheadAbove => COMBINING_LEFT_ARROWHEAD_ABOVE,
}
}
}
impl std::convert::TryFrom<char> for CombiningDiacriticalMarksSupplement {
type Error = ();
fn try_from(c: char) -> Result<Self, Self::Error> {
use constants::*;
match c {
COMBINING_DOTTED_GRAVE_ACCENT => Ok(CombiningDiacriticalMarksSupplement::CombiningDottedGraveAccent),
COMBINING_DOTTED_ACUTE_ACCENT => Ok(CombiningDiacriticalMarksSupplement::CombiningDottedAcuteAccent),
COMBINING_SNAKE_BELOW => Ok(CombiningDiacriticalMarksSupplement::CombiningSnakeBelow),
COMBINING_SUSPENSION_MARK => Ok(CombiningDiacriticalMarksSupplement::CombiningSuspensionMark),
COMBINING_MACRON_DASH_ACUTE => Ok(CombiningDiacriticalMarksSupplement::CombiningMacronDashAcute),
COMBINING_GRAVE_DASH_MACRON => Ok(CombiningDiacriticalMarksSupplement::CombiningGraveDashMacron),
COMBINING_MACRON_DASH_GRAVE => Ok(CombiningDiacriticalMarksSupplement::CombiningMacronDashGrave),
COMBINING_ACUTE_DASH_MACRON => Ok(CombiningDiacriticalMarksSupplement::CombiningAcuteDashMacron),
COMBINING_GRAVE_DASH_ACUTE_DASH_GRAVE => Ok(CombiningDiacriticalMarksSupplement::CombiningGraveDashAcuteDashGrave),
COMBINING_ACUTE_DASH_GRAVE_DASH_ACUTE => Ok(CombiningDiacriticalMarksSupplement::CombiningAcuteDashGraveDashAcute),
COMBINING_LATIN_SMALL_LETTER_R_BELOW => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterRBelow),
COMBINING_BREVE_DASH_MACRON => Ok(CombiningDiacriticalMarksSupplement::CombiningBreveDashMacron),
COMBINING_MACRON_DASH_BREVE => Ok(CombiningDiacriticalMarksSupplement::CombiningMacronDashBreve),
COMBINING_DOUBLE_CIRCUMFLEX_ABOVE => Ok(CombiningDiacriticalMarksSupplement::CombiningDoubleCircumflexAbove),
COMBINING_OGONEK_ABOVE => Ok(CombiningDiacriticalMarksSupplement::CombiningOgonekAbove),
COMBINING_ZIGZAG_BELOW => Ok(CombiningDiacriticalMarksSupplement::CombiningZigzagBelow),
COMBINING_IS_BELOW => Ok(CombiningDiacriticalMarksSupplement::CombiningIsBelow),
COMBINING_UR_ABOVE => Ok(CombiningDiacriticalMarksSupplement::CombiningUrAbove),
COMBINING_US_ABOVE => Ok(CombiningDiacriticalMarksSupplement::CombiningUsAbove),
COMBINING_LATIN_SMALL_LETTER_FLATTENED_OPEN_A_ABOVE => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterFlattenedOpenAAbove),
COMBINING_LATIN_SMALL_LETTER_AE => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAe),
COMBINING_LATIN_SMALL_LETTER_AO => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAo),
COMBINING_LATIN_SMALL_LETTER_AV => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAv),
COMBINING_LATIN_SMALL_LETTER_C_CEDILLA => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterCCedilla),
COMBINING_LATIN_SMALL_LETTER_INSULAR_D => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterInsularD),
COMBINING_LATIN_SMALL_LETTER_ETH => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterEth),
COMBINING_LATIN_SMALL_LETTER_G => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterG),
COMBINING_LATIN_LETTER_SMALL_CAPITAL_G => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalG),
COMBINING_LATIN_SMALL_LETTER_K => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterK),
COMBINING_LATIN_SMALL_LETTER_L => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterL),
COMBINING_LATIN_LETTER_SMALL_CAPITAL_L => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalL),
COMBINING_LATIN_LETTER_SMALL_CAPITAL_M => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalM),
COMBINING_LATIN_SMALL_LETTER_N => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterN),
COMBINING_LATIN_LETTER_SMALL_CAPITAL_N => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalN),
COMBINING_LATIN_LETTER_SMALL_CAPITAL_R => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalR),
COMBINING_LATIN_SMALL_LETTER_R_ROTUNDA => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterRRotunda),
COMBINING_LATIN_SMALL_LETTER_S => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterS),
COMBINING_LATIN_SMALL_LETTER_LONG_S => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterLongS),
COMBINING_LATIN_SMALL_LETTER_Z => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterZ),
COMBINING_LATIN_SMALL_LETTER_ALPHA => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAlpha),
COMBINING_LATIN_SMALL_LETTER_B => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterB),
COMBINING_LATIN_SMALL_LETTER_BETA => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterBeta),
COMBINING_LATIN_SMALL_LETTER_SCHWA => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterSchwa),
COMBINING_LATIN_SMALL_LETTER_F => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterF),
COMBINING_LATIN_SMALL_LETTER_L_WITH_DOUBLE_MIDDLE_TILDE => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterLWithDoubleMiddleTilde),
COMBINING_LATIN_SMALL_LETTER_O_WITH_LIGHT_CENTRALIZATION_STROKE => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterOWithLightCentralizationStroke),
COMBINING_LATIN_SMALL_LETTER_P => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterP),
COMBINING_LATIN_SMALL_LETTER_ESH => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterEsh),
COMBINING_LATIN_SMALL_LETTER_U_WITH_LIGHT_CENTRALIZATION_STROKE => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterUWithLightCentralizationStroke),
COMBINING_LATIN_SMALL_LETTER_W => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterW),
COMBINING_LATIN_SMALL_LETTER_A_WITH_DIAERESIS => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAWithDiaeresis),
COMBINING_LATIN_SMALL_LETTER_O_WITH_DIAERESIS => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterOWithDiaeresis),
COMBINING_LATIN_SMALL_LETTER_U_WITH_DIAERESIS => Ok(CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterUWithDiaeresis),
COMBINING_UP_TACK_ABOVE => Ok(CombiningDiacriticalMarksSupplement::CombiningUpTackAbove),
COMBINING_KAVYKA_ABOVE_RIGHT => Ok(CombiningDiacriticalMarksSupplement::CombiningKavykaAboveRight),
COMBINING_KAVYKA_ABOVE_LEFT => Ok(CombiningDiacriticalMarksSupplement::CombiningKavykaAboveLeft),
COMBINING_DOT_ABOVE_LEFT => Ok(CombiningDiacriticalMarksSupplement::CombiningDotAboveLeft),
COMBINING_WIDE_INVERTED_BRIDGE_BELOW => Ok(CombiningDiacriticalMarksSupplement::CombiningWideInvertedBridgeBelow),
COMBINING_DELETION_MARK => Ok(CombiningDiacriticalMarksSupplement::CombiningDeletionMark),
COMBINING_DOUBLE_INVERTED_BREVE_BELOW => Ok(CombiningDiacriticalMarksSupplement::CombiningDoubleInvertedBreveBelow),
COMBINING_ALMOST_EQUAL_TO_BELOW => Ok(CombiningDiacriticalMarksSupplement::CombiningAlmostEqualToBelow),
COMBINING_LEFT_ARROWHEAD_ABOVE => Ok(CombiningDiacriticalMarksSupplement::CombiningLeftArrowheadAbove),
_ => Err(()),
}
}
}
impl Into<u32> for CombiningDiacriticalMarksSupplement {
fn into(self) -> u32 {
let c: char = self.into();
let hex = c
.escape_unicode()
.to_string()
.replace("\\u{", "")
.replace("}", "");
u32::from_str_radix(&hex, 16).unwrap()
}
}
impl std::convert::TryFrom<u32> for CombiningDiacriticalMarksSupplement {
type Error = ();
fn try_from(u: u32) -> Result<Self, Self::Error> {
if let Ok(c) = char::try_from(u) {
Self::try_from(c)
} else {
Err(())
}
}
}
impl Iterator for CombiningDiacriticalMarksSupplement {
type Item = Self;
fn next(&mut self) -> Option<Self> {
let index: u32 = (*self).into();
use std::convert::TryFrom;
Self::try_from(index + 1).ok()
}
}
impl CombiningDiacriticalMarksSupplement {
pub fn new() -> Self {
CombiningDiacriticalMarksSupplement::CombiningDottedGraveAccent
}
pub fn name(&self) -> &str {
match self {
CombiningDiacriticalMarksSupplement::CombiningDottedGraveAccent => "combining dotted grave accent",
CombiningDiacriticalMarksSupplement::CombiningDottedAcuteAccent => "combining dotted acute accent",
CombiningDiacriticalMarksSupplement::CombiningSnakeBelow => "combining snake below",
CombiningDiacriticalMarksSupplement::CombiningSuspensionMark => "combining suspension mark",
CombiningDiacriticalMarksSupplement::CombiningMacronDashAcute => "combining macron-acute",
CombiningDiacriticalMarksSupplement::CombiningGraveDashMacron => "combining grave-macron",
CombiningDiacriticalMarksSupplement::CombiningMacronDashGrave => "combining macron-grave",
CombiningDiacriticalMarksSupplement::CombiningAcuteDashMacron => "combining acute-macron",
CombiningDiacriticalMarksSupplement::CombiningGraveDashAcuteDashGrave => "combining grave-acute-grave",
CombiningDiacriticalMarksSupplement::CombiningAcuteDashGraveDashAcute => "combining acute-grave-acute",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterRBelow => "combining latin small letter r below",
CombiningDiacriticalMarksSupplement::CombiningBreveDashMacron => "combining breve-macron",
CombiningDiacriticalMarksSupplement::CombiningMacronDashBreve => "combining macron-breve",
CombiningDiacriticalMarksSupplement::CombiningDoubleCircumflexAbove => "combining double circumflex above",
CombiningDiacriticalMarksSupplement::CombiningOgonekAbove => "combining ogonek above",
CombiningDiacriticalMarksSupplement::CombiningZigzagBelow => "combining zigzag below",
CombiningDiacriticalMarksSupplement::CombiningIsBelow => "combining is below",
CombiningDiacriticalMarksSupplement::CombiningUrAbove => "combining ur above",
CombiningDiacriticalMarksSupplement::CombiningUsAbove => "combining us above",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterFlattenedOpenAAbove => "combining latin small letter flattened open a above",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAe => "combining latin small letter ae",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAo => "combining latin small letter ao",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAv => "combining latin small letter av",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterCCedilla => "combining latin small letter c cedilla",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterInsularD => "combining latin small letter insular d",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterEth => "combining latin small letter eth",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterG => "combining latin small letter g",
CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalG => "combining latin letter small capital g",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterK => "combining latin small letter k",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterL => "combining latin small letter l",
CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalL => "combining latin letter small capital l",
CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalM => "combining latin letter small capital m",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterN => "combining latin small letter n",
CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalN => "combining latin letter small capital n",
CombiningDiacriticalMarksSupplement::CombiningLatinLetterSmallCapitalR => "combining latin letter small capital r",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterRRotunda => "combining latin small letter r rotunda",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterS => "combining latin small letter s",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterLongS => "combining latin small letter long s",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterZ => "combining latin small letter z",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAlpha => "combining latin small letter alpha",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterB => "combining latin small letter b",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterBeta => "combining latin small letter beta",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterSchwa => "combining latin small letter schwa",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterF => "combining latin small letter f",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterLWithDoubleMiddleTilde => "combining latin small letter l with double middle tilde",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterOWithLightCentralizationStroke => "combining latin small letter o with light centralization stroke",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterP => "combining latin small letter p",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterEsh => "combining latin small letter esh",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterUWithLightCentralizationStroke => "combining latin small letter u with light centralization stroke",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterW => "combining latin small letter w",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterAWithDiaeresis => "combining latin small letter a with diaeresis",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterOWithDiaeresis => "combining latin small letter o with diaeresis",
CombiningDiacriticalMarksSupplement::CombiningLatinSmallLetterUWithDiaeresis => "combining latin small letter u with diaeresis",
CombiningDiacriticalMarksSupplement::CombiningUpTackAbove => "combining up tack above",
CombiningDiacriticalMarksSupplement::CombiningKavykaAboveRight => "combining kavyka above right",
CombiningDiacriticalMarksSupplement::CombiningKavykaAboveLeft => "combining kavyka above left",
CombiningDiacriticalMarksSupplement::CombiningDotAboveLeft => "combining dot above left",
CombiningDiacriticalMarksSupplement::CombiningWideInvertedBridgeBelow => "combining wide inverted bridge below",
CombiningDiacriticalMarksSupplement::CombiningDeletionMark => "combining deletion mark",
CombiningDiacriticalMarksSupplement::CombiningDoubleInvertedBreveBelow => "combining double inverted breve below",
CombiningDiacriticalMarksSupplement::CombiningAlmostEqualToBelow => "combining almost equal to below",
CombiningDiacriticalMarksSupplement::CombiningLeftArrowheadAbove => "combining left arrowhead above",
}
}
}