mod constants {
pub const LATIN_SMALL_LETTER_TURNED_A: char = 'ɐ';
pub const LATIN_SMALL_LETTER_ALPHA: char = 'ɑ';
pub const LATIN_SMALL_LETTER_TURNED_ALPHA: char = 'ɒ';
pub const LATIN_SMALL_LETTER_B_WITH_HOOK: char = 'ɓ';
pub const LATIN_SMALL_LETTER_OPEN_O: char = 'ɔ';
pub const LATIN_SMALL_LETTER_C_WITH_CURL: char = 'ɕ';
pub const LATIN_SMALL_LETTER_D_WITH_TAIL: char = 'ɖ';
pub const LATIN_SMALL_LETTER_D_WITH_HOOK: char = 'ɗ';
pub const LATIN_SMALL_LETTER_REVERSED_E: char = 'ɘ';
pub const LATIN_SMALL_LETTER_SCHWA: char = 'ə';
pub const LATIN_SMALL_LETTER_SCHWA_WITH_HOOK: char = 'ɚ';
pub const LATIN_SMALL_LETTER_OPEN_E: char = 'ɛ';
pub const LATIN_SMALL_LETTER_REVERSED_OPEN_E: char = 'ɜ';
pub const LATIN_SMALL_LETTER_REVERSED_OPEN_E_WITH_HOOK: char = 'ɝ';
pub const LATIN_SMALL_LETTER_CLOSED_REVERSED_OPEN_E: char = 'ɞ';
pub const LATIN_SMALL_LETTER_DOTLESS_J_WITH_STROKE: char = 'ɟ';
pub const LATIN_SMALL_LETTER_G_WITH_HOOK: char = 'ɠ';
pub const LATIN_SMALL_LETTER_SCRIPT_G: char = 'ɡ';
pub const LATIN_LETTER_SMALL_CAPITAL_G: char = 'ɢ';
pub const LATIN_SMALL_LETTER_GAMMA: char = 'ɣ';
pub const LATIN_SMALL_LETTER_RAMS_HORN: char = 'ɤ';
pub const LATIN_SMALL_LETTER_TURNED_H: char = 'ɥ';
pub const LATIN_SMALL_LETTER_H_WITH_HOOK: char = 'ɦ';
pub const LATIN_SMALL_LETTER_HENG_WITH_HOOK: char = 'ɧ';
pub const LATIN_SMALL_LETTER_I_WITH_STROKE: char = 'ɨ';
pub const LATIN_SMALL_LETTER_IOTA: char = 'ɩ';
pub const LATIN_LETTER_SMALL_CAPITAL_I: char = 'ɪ';
pub const LATIN_SMALL_LETTER_L_WITH_MIDDLE_TILDE: char = 'ɫ';
pub const LATIN_SMALL_LETTER_L_WITH_BELT: char = 'ɬ';
pub const LATIN_SMALL_LETTER_L_WITH_RETROFLEX_HOOK: char = 'ɭ';
pub const LATIN_SMALL_LETTER_LEZH: char = 'ɮ';
pub const LATIN_SMALL_LETTER_TURNED_M: char = 'ɯ';
pub const LATIN_SMALL_LETTER_TURNED_M_WITH_LONG_LEG: char = 'ɰ';
pub const LATIN_SMALL_LETTER_M_WITH_HOOK: char = 'ɱ';
pub const LATIN_SMALL_LETTER_N_WITH_LEFT_HOOK: char = 'ɲ';
pub const LATIN_SMALL_LETTER_N_WITH_RETROFLEX_HOOK: char = 'ɳ';
pub const LATIN_LETTER_SMALL_CAPITAL_N: char = 'ɴ';
pub const LATIN_SMALL_LETTER_BARRED_O: char = 'ɵ';
pub const LATIN_LETTER_SMALL_CAPITAL_OE: char = 'ɶ';
pub const LATIN_SMALL_LETTER_CLOSED_OMEGA: char = 'ɷ';
pub const LATIN_SMALL_LETTER_PHI: char = 'ɸ';
pub const LATIN_SMALL_LETTER_TURNED_R: char = 'ɹ';
pub const LATIN_SMALL_LETTER_TURNED_R_WITH_LONG_LEG: char = 'ɺ';
pub const LATIN_SMALL_LETTER_TURNED_R_WITH_HOOK: char = 'ɻ';
pub const LATIN_SMALL_LETTER_R_WITH_LONG_LEG: char = 'ɼ';
pub const LATIN_SMALL_LETTER_R_WITH_TAIL: char = 'ɽ';
pub const LATIN_SMALL_LETTER_R_WITH_FISHHOOK: char = 'ɾ';
pub const LATIN_SMALL_LETTER_REVERSED_R_WITH_FISHHOOK: char = 'ɿ';
pub const LATIN_LETTER_SMALL_CAPITAL_R: char = 'ʀ';
pub const LATIN_LETTER_SMALL_CAPITAL_INVERTED_R: char = 'ʁ';
pub const LATIN_SMALL_LETTER_S_WITH_HOOK: char = 'ʂ';
pub const LATIN_SMALL_LETTER_ESH: char = 'ʃ';
pub const LATIN_SMALL_LETTER_DOTLESS_J_WITH_STROKE_AND_HOOK: char = 'ʄ';
pub const LATIN_SMALL_LETTER_SQUAT_REVERSED_ESH: char = 'ʅ';
pub const LATIN_SMALL_LETTER_ESH_WITH_CURL: char = 'ʆ';
pub const LATIN_SMALL_LETTER_TURNED_T: char = 'ʇ';
pub const LATIN_SMALL_LETTER_T_WITH_RETROFLEX_HOOK: char = 'ʈ';
pub const LATIN_SMALL_LETTER_U_BAR: char = 'ʉ';
pub const LATIN_SMALL_LETTER_UPSILON: char = 'ʊ';
pub const LATIN_SMALL_LETTER_V_WITH_HOOK: char = 'ʋ';
pub const LATIN_SMALL_LETTER_TURNED_V: char = 'ʌ';
pub const LATIN_SMALL_LETTER_TURNED_W: char = 'ʍ';
pub const LATIN_SMALL_LETTER_TURNED_Y: char = 'ʎ';
pub const LATIN_LETTER_SMALL_CAPITAL_Y: char = 'ʏ';
pub const LATIN_SMALL_LETTER_Z_WITH_RETROFLEX_HOOK: char = 'ʐ';
pub const LATIN_SMALL_LETTER_Z_WITH_CURL: char = 'ʑ';
pub const LATIN_SMALL_LETTER_EZH: char = 'ʒ';
pub const LATIN_SMALL_LETTER_EZH_WITH_CURL: char = 'ʓ';
pub const LATIN_LETTER_GLOTTAL_STOP: char = 'ʔ';
pub const LATIN_LETTER_PHARYNGEAL_VOICED_FRICATIVE: char = 'ʕ';
pub const LATIN_LETTER_INVERTED_GLOTTAL_STOP: char = 'ʖ';
pub const LATIN_LETTER_STRETCHED_C: char = 'ʗ';
pub const LATIN_LETTER_BILABIAL_CLICK: char = 'ʘ';
pub const LATIN_LETTER_SMALL_CAPITAL_B: char = 'ʙ';
pub const LATIN_SMALL_LETTER_CLOSED_OPEN_E: char = 'ʚ';
pub const LATIN_LETTER_SMALL_CAPITAL_G_WITH_HOOK: char = 'ʛ';
pub const LATIN_LETTER_SMALL_CAPITAL_H: char = 'ʜ';
pub const LATIN_SMALL_LETTER_J_WITH_CROSSED_DASH_TAIL: char = 'ʝ';
pub const LATIN_SMALL_LETTER_TURNED_K: char = 'ʞ';
pub const LATIN_LETTER_SMALL_CAPITAL_L: char = 'ʟ';
pub const LATIN_SMALL_LETTER_Q_WITH_HOOK: char = 'ʠ';
pub const LATIN_LETTER_GLOTTAL_STOP_WITH_STROKE: char = 'ʡ';
pub const LATIN_LETTER_REVERSED_GLOTTAL_STOP_WITH_STROKE: char = 'ʢ';
pub const LATIN_SMALL_LETTER_DZ_DIGRAPH: char = 'ʣ';
pub const LATIN_SMALL_LETTER_DEZH_DIGRAPH: char = 'ʤ';
pub const LATIN_SMALL_LETTER_DZ_DIGRAPH_WITH_CURL: char = 'ʥ';
pub const LATIN_SMALL_LETTER_TS_DIGRAPH: char = 'ʦ';
pub const LATIN_SMALL_LETTER_TESH_DIGRAPH: char = 'ʧ';
pub const LATIN_SMALL_LETTER_TC_DIGRAPH_WITH_CURL: char = 'ʨ';
pub const LATIN_SMALL_LETTER_FENG_DIGRAPH: char = 'ʩ';
pub const LATIN_SMALL_LETTER_LS_DIGRAPH: char = 'ʪ';
pub const LATIN_SMALL_LETTER_LZ_DIGRAPH: char = 'ʫ';
pub const LATIN_LETTER_BILABIAL_PERCUSSIVE: char = 'ʬ';
pub const LATIN_LETTER_BIDENTAL_PERCUSSIVE: char = 'ʭ';
pub const LATIN_SMALL_LETTER_TURNED_H_WITH_FISHHOOK: char = 'ʮ';
}
#[derive(Debug, Clone, Copy, Hash, PartialEq, Eq)]
pub enum IPAExtensions {
LatinSmallLetterTurnedA,
LatinSmallLetterAlpha,
LatinSmallLetterTurnedAlpha,
LatinSmallLetterBWithHook,
LatinSmallLetterOpenO,
LatinSmallLetterCWithCurl,
LatinSmallLetterDWithTail,
LatinSmallLetterDWithHook,
LatinSmallLetterReversedE,
LatinSmallLetterSchwa,
LatinSmallLetterSchwaWithHook,
LatinSmallLetterOpenE,
LatinSmallLetterReversedOpenE,
LatinSmallLetterReversedOpenEWithHook,
LatinSmallLetterClosedReversedOpenE,
LatinSmallLetterDotlessJWithStroke,
LatinSmallLetterGWithHook,
LatinSmallLetterScriptG,
LatinLetterSmallCapitalG,
LatinSmallLetterGamma,
LatinSmallLetterRamsHorn,
LatinSmallLetterTurnedH,
LatinSmallLetterHWithHook,
LatinSmallLetterHengWithHook,
LatinSmallLetterIWithStroke,
LatinSmallLetterIota,
LatinLetterSmallCapitalI,
LatinSmallLetterLWithMiddleTilde,
LatinSmallLetterLWithBelt,
LatinSmallLetterLWithRetroflexHook,
LatinSmallLetterLezh,
LatinSmallLetterTurnedM,
LatinSmallLetterTurnedMWithLongLeg,
LatinSmallLetterMWithHook,
LatinSmallLetterNWithLeftHook,
LatinSmallLetterNWithRetroflexHook,
LatinLetterSmallCapitalN,
LatinSmallLetterBarredO,
LatinLetterSmallCapitalOe,
LatinSmallLetterClosedOmega,
LatinSmallLetterPhi,
LatinSmallLetterTurnedR,
LatinSmallLetterTurnedRWithLongLeg,
LatinSmallLetterTurnedRWithHook,
LatinSmallLetterRWithLongLeg,
LatinSmallLetterRWithTail,
LatinSmallLetterRWithFishhook,
LatinSmallLetterReversedRWithFishhook,
LatinLetterSmallCapitalR,
LatinLetterSmallCapitalInvertedR,
LatinSmallLetterSWithHook,
LatinSmallLetterEsh,
LatinSmallLetterDotlessJWithStrokeAndHook,
LatinSmallLetterSquatReversedEsh,
LatinSmallLetterEshWithCurl,
LatinSmallLetterTurnedT,
LatinSmallLetterTWithRetroflexHook,
LatinSmallLetterUBar,
LatinSmallLetterUpsilon,
LatinSmallLetterVWithHook,
LatinSmallLetterTurnedV,
LatinSmallLetterTurnedW,
LatinSmallLetterTurnedY,
LatinLetterSmallCapitalY,
LatinSmallLetterZWithRetroflexHook,
LatinSmallLetterZWithCurl,
LatinSmallLetterEzh,
LatinSmallLetterEzhWithCurl,
LatinLetterGlottalStop,
LatinLetterPharyngealVoicedFricative,
LatinLetterInvertedGlottalStop,
LatinLetterStretchedC,
LatinLetterBilabialClick,
LatinLetterSmallCapitalB,
LatinSmallLetterClosedOpenE,
LatinLetterSmallCapitalGWithHook,
LatinLetterSmallCapitalH,
LatinSmallLetterJWithCrossedDashTail,
LatinSmallLetterTurnedK,
LatinLetterSmallCapitalL,
LatinSmallLetterQWithHook,
LatinLetterGlottalStopWithStroke,
LatinLetterReversedGlottalStopWithStroke,
LatinSmallLetterDzDigraph,
LatinSmallLetterDezhDigraph,
LatinSmallLetterDzDigraphWithCurl,
LatinSmallLetterTsDigraph,
LatinSmallLetterTeshDigraph,
LatinSmallLetterTcDigraphWithCurl,
LatinSmallLetterFengDigraph,
LatinSmallLetterLsDigraph,
LatinSmallLetterLzDigraph,
LatinLetterBilabialPercussive,
LatinLetterBidentalPercussive,
LatinSmallLetterTurnedHWithFishhook,
}
impl Into<char> for IPAExtensions {
fn into(self) -> char {
use constants::*;
match self {
IPAExtensions::LatinSmallLetterTurnedA => LATIN_SMALL_LETTER_TURNED_A,
IPAExtensions::LatinSmallLetterAlpha => LATIN_SMALL_LETTER_ALPHA,
IPAExtensions::LatinSmallLetterTurnedAlpha => LATIN_SMALL_LETTER_TURNED_ALPHA,
IPAExtensions::LatinSmallLetterBWithHook => LATIN_SMALL_LETTER_B_WITH_HOOK,
IPAExtensions::LatinSmallLetterOpenO => LATIN_SMALL_LETTER_OPEN_O,
IPAExtensions::LatinSmallLetterCWithCurl => LATIN_SMALL_LETTER_C_WITH_CURL,
IPAExtensions::LatinSmallLetterDWithTail => LATIN_SMALL_LETTER_D_WITH_TAIL,
IPAExtensions::LatinSmallLetterDWithHook => LATIN_SMALL_LETTER_D_WITH_HOOK,
IPAExtensions::LatinSmallLetterReversedE => LATIN_SMALL_LETTER_REVERSED_E,
IPAExtensions::LatinSmallLetterSchwa => LATIN_SMALL_LETTER_SCHWA,
IPAExtensions::LatinSmallLetterSchwaWithHook => LATIN_SMALL_LETTER_SCHWA_WITH_HOOK,
IPAExtensions::LatinSmallLetterOpenE => LATIN_SMALL_LETTER_OPEN_E,
IPAExtensions::LatinSmallLetterReversedOpenE => LATIN_SMALL_LETTER_REVERSED_OPEN_E,
IPAExtensions::LatinSmallLetterReversedOpenEWithHook => LATIN_SMALL_LETTER_REVERSED_OPEN_E_WITH_HOOK,
IPAExtensions::LatinSmallLetterClosedReversedOpenE => LATIN_SMALL_LETTER_CLOSED_REVERSED_OPEN_E,
IPAExtensions::LatinSmallLetterDotlessJWithStroke => LATIN_SMALL_LETTER_DOTLESS_J_WITH_STROKE,
IPAExtensions::LatinSmallLetterGWithHook => LATIN_SMALL_LETTER_G_WITH_HOOK,
IPAExtensions::LatinSmallLetterScriptG => LATIN_SMALL_LETTER_SCRIPT_G,
IPAExtensions::LatinLetterSmallCapitalG => LATIN_LETTER_SMALL_CAPITAL_G,
IPAExtensions::LatinSmallLetterGamma => LATIN_SMALL_LETTER_GAMMA,
IPAExtensions::LatinSmallLetterRamsHorn => LATIN_SMALL_LETTER_RAMS_HORN,
IPAExtensions::LatinSmallLetterTurnedH => LATIN_SMALL_LETTER_TURNED_H,
IPAExtensions::LatinSmallLetterHWithHook => LATIN_SMALL_LETTER_H_WITH_HOOK,
IPAExtensions::LatinSmallLetterHengWithHook => LATIN_SMALL_LETTER_HENG_WITH_HOOK,
IPAExtensions::LatinSmallLetterIWithStroke => LATIN_SMALL_LETTER_I_WITH_STROKE,
IPAExtensions::LatinSmallLetterIota => LATIN_SMALL_LETTER_IOTA,
IPAExtensions::LatinLetterSmallCapitalI => LATIN_LETTER_SMALL_CAPITAL_I,
IPAExtensions::LatinSmallLetterLWithMiddleTilde => LATIN_SMALL_LETTER_L_WITH_MIDDLE_TILDE,
IPAExtensions::LatinSmallLetterLWithBelt => LATIN_SMALL_LETTER_L_WITH_BELT,
IPAExtensions::LatinSmallLetterLWithRetroflexHook => LATIN_SMALL_LETTER_L_WITH_RETROFLEX_HOOK,
IPAExtensions::LatinSmallLetterLezh => LATIN_SMALL_LETTER_LEZH,
IPAExtensions::LatinSmallLetterTurnedM => LATIN_SMALL_LETTER_TURNED_M,
IPAExtensions::LatinSmallLetterTurnedMWithLongLeg => LATIN_SMALL_LETTER_TURNED_M_WITH_LONG_LEG,
IPAExtensions::LatinSmallLetterMWithHook => LATIN_SMALL_LETTER_M_WITH_HOOK,
IPAExtensions::LatinSmallLetterNWithLeftHook => LATIN_SMALL_LETTER_N_WITH_LEFT_HOOK,
IPAExtensions::LatinSmallLetterNWithRetroflexHook => LATIN_SMALL_LETTER_N_WITH_RETROFLEX_HOOK,
IPAExtensions::LatinLetterSmallCapitalN => LATIN_LETTER_SMALL_CAPITAL_N,
IPAExtensions::LatinSmallLetterBarredO => LATIN_SMALL_LETTER_BARRED_O,
IPAExtensions::LatinLetterSmallCapitalOe => LATIN_LETTER_SMALL_CAPITAL_OE,
IPAExtensions::LatinSmallLetterClosedOmega => LATIN_SMALL_LETTER_CLOSED_OMEGA,
IPAExtensions::LatinSmallLetterPhi => LATIN_SMALL_LETTER_PHI,
IPAExtensions::LatinSmallLetterTurnedR => LATIN_SMALL_LETTER_TURNED_R,
IPAExtensions::LatinSmallLetterTurnedRWithLongLeg => LATIN_SMALL_LETTER_TURNED_R_WITH_LONG_LEG,
IPAExtensions::LatinSmallLetterTurnedRWithHook => LATIN_SMALL_LETTER_TURNED_R_WITH_HOOK,
IPAExtensions::LatinSmallLetterRWithLongLeg => LATIN_SMALL_LETTER_R_WITH_LONG_LEG,
IPAExtensions::LatinSmallLetterRWithTail => LATIN_SMALL_LETTER_R_WITH_TAIL,
IPAExtensions::LatinSmallLetterRWithFishhook => LATIN_SMALL_LETTER_R_WITH_FISHHOOK,
IPAExtensions::LatinSmallLetterReversedRWithFishhook => LATIN_SMALL_LETTER_REVERSED_R_WITH_FISHHOOK,
IPAExtensions::LatinLetterSmallCapitalR => LATIN_LETTER_SMALL_CAPITAL_R,
IPAExtensions::LatinLetterSmallCapitalInvertedR => LATIN_LETTER_SMALL_CAPITAL_INVERTED_R,
IPAExtensions::LatinSmallLetterSWithHook => LATIN_SMALL_LETTER_S_WITH_HOOK,
IPAExtensions::LatinSmallLetterEsh => LATIN_SMALL_LETTER_ESH,
IPAExtensions::LatinSmallLetterDotlessJWithStrokeAndHook => LATIN_SMALL_LETTER_DOTLESS_J_WITH_STROKE_AND_HOOK,
IPAExtensions::LatinSmallLetterSquatReversedEsh => LATIN_SMALL_LETTER_SQUAT_REVERSED_ESH,
IPAExtensions::LatinSmallLetterEshWithCurl => LATIN_SMALL_LETTER_ESH_WITH_CURL,
IPAExtensions::LatinSmallLetterTurnedT => LATIN_SMALL_LETTER_TURNED_T,
IPAExtensions::LatinSmallLetterTWithRetroflexHook => LATIN_SMALL_LETTER_T_WITH_RETROFLEX_HOOK,
IPAExtensions::LatinSmallLetterUBar => LATIN_SMALL_LETTER_U_BAR,
IPAExtensions::LatinSmallLetterUpsilon => LATIN_SMALL_LETTER_UPSILON,
IPAExtensions::LatinSmallLetterVWithHook => LATIN_SMALL_LETTER_V_WITH_HOOK,
IPAExtensions::LatinSmallLetterTurnedV => LATIN_SMALL_LETTER_TURNED_V,
IPAExtensions::LatinSmallLetterTurnedW => LATIN_SMALL_LETTER_TURNED_W,
IPAExtensions::LatinSmallLetterTurnedY => LATIN_SMALL_LETTER_TURNED_Y,
IPAExtensions::LatinLetterSmallCapitalY => LATIN_LETTER_SMALL_CAPITAL_Y,
IPAExtensions::LatinSmallLetterZWithRetroflexHook => LATIN_SMALL_LETTER_Z_WITH_RETROFLEX_HOOK,
IPAExtensions::LatinSmallLetterZWithCurl => LATIN_SMALL_LETTER_Z_WITH_CURL,
IPAExtensions::LatinSmallLetterEzh => LATIN_SMALL_LETTER_EZH,
IPAExtensions::LatinSmallLetterEzhWithCurl => LATIN_SMALL_LETTER_EZH_WITH_CURL,
IPAExtensions::LatinLetterGlottalStop => LATIN_LETTER_GLOTTAL_STOP,
IPAExtensions::LatinLetterPharyngealVoicedFricative => LATIN_LETTER_PHARYNGEAL_VOICED_FRICATIVE,
IPAExtensions::LatinLetterInvertedGlottalStop => LATIN_LETTER_INVERTED_GLOTTAL_STOP,
IPAExtensions::LatinLetterStretchedC => LATIN_LETTER_STRETCHED_C,
IPAExtensions::LatinLetterBilabialClick => LATIN_LETTER_BILABIAL_CLICK,
IPAExtensions::LatinLetterSmallCapitalB => LATIN_LETTER_SMALL_CAPITAL_B,
IPAExtensions::LatinSmallLetterClosedOpenE => LATIN_SMALL_LETTER_CLOSED_OPEN_E,
IPAExtensions::LatinLetterSmallCapitalGWithHook => LATIN_LETTER_SMALL_CAPITAL_G_WITH_HOOK,
IPAExtensions::LatinLetterSmallCapitalH => LATIN_LETTER_SMALL_CAPITAL_H,
IPAExtensions::LatinSmallLetterJWithCrossedDashTail => LATIN_SMALL_LETTER_J_WITH_CROSSED_DASH_TAIL,
IPAExtensions::LatinSmallLetterTurnedK => LATIN_SMALL_LETTER_TURNED_K,
IPAExtensions::LatinLetterSmallCapitalL => LATIN_LETTER_SMALL_CAPITAL_L,
IPAExtensions::LatinSmallLetterQWithHook => LATIN_SMALL_LETTER_Q_WITH_HOOK,
IPAExtensions::LatinLetterGlottalStopWithStroke => LATIN_LETTER_GLOTTAL_STOP_WITH_STROKE,
IPAExtensions::LatinLetterReversedGlottalStopWithStroke => LATIN_LETTER_REVERSED_GLOTTAL_STOP_WITH_STROKE,
IPAExtensions::LatinSmallLetterDzDigraph => LATIN_SMALL_LETTER_DZ_DIGRAPH,
IPAExtensions::LatinSmallLetterDezhDigraph => LATIN_SMALL_LETTER_DEZH_DIGRAPH,
IPAExtensions::LatinSmallLetterDzDigraphWithCurl => LATIN_SMALL_LETTER_DZ_DIGRAPH_WITH_CURL,
IPAExtensions::LatinSmallLetterTsDigraph => LATIN_SMALL_LETTER_TS_DIGRAPH,
IPAExtensions::LatinSmallLetterTeshDigraph => LATIN_SMALL_LETTER_TESH_DIGRAPH,
IPAExtensions::LatinSmallLetterTcDigraphWithCurl => LATIN_SMALL_LETTER_TC_DIGRAPH_WITH_CURL,
IPAExtensions::LatinSmallLetterFengDigraph => LATIN_SMALL_LETTER_FENG_DIGRAPH,
IPAExtensions::LatinSmallLetterLsDigraph => LATIN_SMALL_LETTER_LS_DIGRAPH,
IPAExtensions::LatinSmallLetterLzDigraph => LATIN_SMALL_LETTER_LZ_DIGRAPH,
IPAExtensions::LatinLetterBilabialPercussive => LATIN_LETTER_BILABIAL_PERCUSSIVE,
IPAExtensions::LatinLetterBidentalPercussive => LATIN_LETTER_BIDENTAL_PERCUSSIVE,
IPAExtensions::LatinSmallLetterTurnedHWithFishhook => LATIN_SMALL_LETTER_TURNED_H_WITH_FISHHOOK,
}
}
}
impl std::convert::TryFrom<char> for IPAExtensions {
type Error = ();
fn try_from(c: char) -> Result<Self, Self::Error> {
use constants::*;
match c {
LATIN_SMALL_LETTER_TURNED_A => Ok(IPAExtensions::LatinSmallLetterTurnedA),
LATIN_SMALL_LETTER_ALPHA => Ok(IPAExtensions::LatinSmallLetterAlpha),
LATIN_SMALL_LETTER_TURNED_ALPHA => Ok(IPAExtensions::LatinSmallLetterTurnedAlpha),
LATIN_SMALL_LETTER_B_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterBWithHook),
LATIN_SMALL_LETTER_OPEN_O => Ok(IPAExtensions::LatinSmallLetterOpenO),
LATIN_SMALL_LETTER_C_WITH_CURL => Ok(IPAExtensions::LatinSmallLetterCWithCurl),
LATIN_SMALL_LETTER_D_WITH_TAIL => Ok(IPAExtensions::LatinSmallLetterDWithTail),
LATIN_SMALL_LETTER_D_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterDWithHook),
LATIN_SMALL_LETTER_REVERSED_E => Ok(IPAExtensions::LatinSmallLetterReversedE),
LATIN_SMALL_LETTER_SCHWA => Ok(IPAExtensions::LatinSmallLetterSchwa),
LATIN_SMALL_LETTER_SCHWA_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterSchwaWithHook),
LATIN_SMALL_LETTER_OPEN_E => Ok(IPAExtensions::LatinSmallLetterOpenE),
LATIN_SMALL_LETTER_REVERSED_OPEN_E => Ok(IPAExtensions::LatinSmallLetterReversedOpenE),
LATIN_SMALL_LETTER_REVERSED_OPEN_E_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterReversedOpenEWithHook),
LATIN_SMALL_LETTER_CLOSED_REVERSED_OPEN_E => Ok(IPAExtensions::LatinSmallLetterClosedReversedOpenE),
LATIN_SMALL_LETTER_DOTLESS_J_WITH_STROKE => Ok(IPAExtensions::LatinSmallLetterDotlessJWithStroke),
LATIN_SMALL_LETTER_G_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterGWithHook),
LATIN_SMALL_LETTER_SCRIPT_G => Ok(IPAExtensions::LatinSmallLetterScriptG),
LATIN_LETTER_SMALL_CAPITAL_G => Ok(IPAExtensions::LatinLetterSmallCapitalG),
LATIN_SMALL_LETTER_GAMMA => Ok(IPAExtensions::LatinSmallLetterGamma),
LATIN_SMALL_LETTER_RAMS_HORN => Ok(IPAExtensions::LatinSmallLetterRamsHorn),
LATIN_SMALL_LETTER_TURNED_H => Ok(IPAExtensions::LatinSmallLetterTurnedH),
LATIN_SMALL_LETTER_H_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterHWithHook),
LATIN_SMALL_LETTER_HENG_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterHengWithHook),
LATIN_SMALL_LETTER_I_WITH_STROKE => Ok(IPAExtensions::LatinSmallLetterIWithStroke),
LATIN_SMALL_LETTER_IOTA => Ok(IPAExtensions::LatinSmallLetterIota),
LATIN_LETTER_SMALL_CAPITAL_I => Ok(IPAExtensions::LatinLetterSmallCapitalI),
LATIN_SMALL_LETTER_L_WITH_MIDDLE_TILDE => Ok(IPAExtensions::LatinSmallLetterLWithMiddleTilde),
LATIN_SMALL_LETTER_L_WITH_BELT => Ok(IPAExtensions::LatinSmallLetterLWithBelt),
LATIN_SMALL_LETTER_L_WITH_RETROFLEX_HOOK => Ok(IPAExtensions::LatinSmallLetterLWithRetroflexHook),
LATIN_SMALL_LETTER_LEZH => Ok(IPAExtensions::LatinSmallLetterLezh),
LATIN_SMALL_LETTER_TURNED_M => Ok(IPAExtensions::LatinSmallLetterTurnedM),
LATIN_SMALL_LETTER_TURNED_M_WITH_LONG_LEG => Ok(IPAExtensions::LatinSmallLetterTurnedMWithLongLeg),
LATIN_SMALL_LETTER_M_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterMWithHook),
LATIN_SMALL_LETTER_N_WITH_LEFT_HOOK => Ok(IPAExtensions::LatinSmallLetterNWithLeftHook),
LATIN_SMALL_LETTER_N_WITH_RETROFLEX_HOOK => Ok(IPAExtensions::LatinSmallLetterNWithRetroflexHook),
LATIN_LETTER_SMALL_CAPITAL_N => Ok(IPAExtensions::LatinLetterSmallCapitalN),
LATIN_SMALL_LETTER_BARRED_O => Ok(IPAExtensions::LatinSmallLetterBarredO),
LATIN_LETTER_SMALL_CAPITAL_OE => Ok(IPAExtensions::LatinLetterSmallCapitalOe),
LATIN_SMALL_LETTER_CLOSED_OMEGA => Ok(IPAExtensions::LatinSmallLetterClosedOmega),
LATIN_SMALL_LETTER_PHI => Ok(IPAExtensions::LatinSmallLetterPhi),
LATIN_SMALL_LETTER_TURNED_R => Ok(IPAExtensions::LatinSmallLetterTurnedR),
LATIN_SMALL_LETTER_TURNED_R_WITH_LONG_LEG => Ok(IPAExtensions::LatinSmallLetterTurnedRWithLongLeg),
LATIN_SMALL_LETTER_TURNED_R_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterTurnedRWithHook),
LATIN_SMALL_LETTER_R_WITH_LONG_LEG => Ok(IPAExtensions::LatinSmallLetterRWithLongLeg),
LATIN_SMALL_LETTER_R_WITH_TAIL => Ok(IPAExtensions::LatinSmallLetterRWithTail),
LATIN_SMALL_LETTER_R_WITH_FISHHOOK => Ok(IPAExtensions::LatinSmallLetterRWithFishhook),
LATIN_SMALL_LETTER_REVERSED_R_WITH_FISHHOOK => Ok(IPAExtensions::LatinSmallLetterReversedRWithFishhook),
LATIN_LETTER_SMALL_CAPITAL_R => Ok(IPAExtensions::LatinLetterSmallCapitalR),
LATIN_LETTER_SMALL_CAPITAL_INVERTED_R => Ok(IPAExtensions::LatinLetterSmallCapitalInvertedR),
LATIN_SMALL_LETTER_S_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterSWithHook),
LATIN_SMALL_LETTER_ESH => Ok(IPAExtensions::LatinSmallLetterEsh),
LATIN_SMALL_LETTER_DOTLESS_J_WITH_STROKE_AND_HOOK => Ok(IPAExtensions::LatinSmallLetterDotlessJWithStrokeAndHook),
LATIN_SMALL_LETTER_SQUAT_REVERSED_ESH => Ok(IPAExtensions::LatinSmallLetterSquatReversedEsh),
LATIN_SMALL_LETTER_ESH_WITH_CURL => Ok(IPAExtensions::LatinSmallLetterEshWithCurl),
LATIN_SMALL_LETTER_TURNED_T => Ok(IPAExtensions::LatinSmallLetterTurnedT),
LATIN_SMALL_LETTER_T_WITH_RETROFLEX_HOOK => Ok(IPAExtensions::LatinSmallLetterTWithRetroflexHook),
LATIN_SMALL_LETTER_U_BAR => Ok(IPAExtensions::LatinSmallLetterUBar),
LATIN_SMALL_LETTER_UPSILON => Ok(IPAExtensions::LatinSmallLetterUpsilon),
LATIN_SMALL_LETTER_V_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterVWithHook),
LATIN_SMALL_LETTER_TURNED_V => Ok(IPAExtensions::LatinSmallLetterTurnedV),
LATIN_SMALL_LETTER_TURNED_W => Ok(IPAExtensions::LatinSmallLetterTurnedW),
LATIN_SMALL_LETTER_TURNED_Y => Ok(IPAExtensions::LatinSmallLetterTurnedY),
LATIN_LETTER_SMALL_CAPITAL_Y => Ok(IPAExtensions::LatinLetterSmallCapitalY),
LATIN_SMALL_LETTER_Z_WITH_RETROFLEX_HOOK => Ok(IPAExtensions::LatinSmallLetterZWithRetroflexHook),
LATIN_SMALL_LETTER_Z_WITH_CURL => Ok(IPAExtensions::LatinSmallLetterZWithCurl),
LATIN_SMALL_LETTER_EZH => Ok(IPAExtensions::LatinSmallLetterEzh),
LATIN_SMALL_LETTER_EZH_WITH_CURL => Ok(IPAExtensions::LatinSmallLetterEzhWithCurl),
LATIN_LETTER_GLOTTAL_STOP => Ok(IPAExtensions::LatinLetterGlottalStop),
LATIN_LETTER_PHARYNGEAL_VOICED_FRICATIVE => Ok(IPAExtensions::LatinLetterPharyngealVoicedFricative),
LATIN_LETTER_INVERTED_GLOTTAL_STOP => Ok(IPAExtensions::LatinLetterInvertedGlottalStop),
LATIN_LETTER_STRETCHED_C => Ok(IPAExtensions::LatinLetterStretchedC),
LATIN_LETTER_BILABIAL_CLICK => Ok(IPAExtensions::LatinLetterBilabialClick),
LATIN_LETTER_SMALL_CAPITAL_B => Ok(IPAExtensions::LatinLetterSmallCapitalB),
LATIN_SMALL_LETTER_CLOSED_OPEN_E => Ok(IPAExtensions::LatinSmallLetterClosedOpenE),
LATIN_LETTER_SMALL_CAPITAL_G_WITH_HOOK => Ok(IPAExtensions::LatinLetterSmallCapitalGWithHook),
LATIN_LETTER_SMALL_CAPITAL_H => Ok(IPAExtensions::LatinLetterSmallCapitalH),
LATIN_SMALL_LETTER_J_WITH_CROSSED_DASH_TAIL => Ok(IPAExtensions::LatinSmallLetterJWithCrossedDashTail),
LATIN_SMALL_LETTER_TURNED_K => Ok(IPAExtensions::LatinSmallLetterTurnedK),
LATIN_LETTER_SMALL_CAPITAL_L => Ok(IPAExtensions::LatinLetterSmallCapitalL),
LATIN_SMALL_LETTER_Q_WITH_HOOK => Ok(IPAExtensions::LatinSmallLetterQWithHook),
LATIN_LETTER_GLOTTAL_STOP_WITH_STROKE => Ok(IPAExtensions::LatinLetterGlottalStopWithStroke),
LATIN_LETTER_REVERSED_GLOTTAL_STOP_WITH_STROKE => Ok(IPAExtensions::LatinLetterReversedGlottalStopWithStroke),
LATIN_SMALL_LETTER_DZ_DIGRAPH => Ok(IPAExtensions::LatinSmallLetterDzDigraph),
LATIN_SMALL_LETTER_DEZH_DIGRAPH => Ok(IPAExtensions::LatinSmallLetterDezhDigraph),
LATIN_SMALL_LETTER_DZ_DIGRAPH_WITH_CURL => Ok(IPAExtensions::LatinSmallLetterDzDigraphWithCurl),
LATIN_SMALL_LETTER_TS_DIGRAPH => Ok(IPAExtensions::LatinSmallLetterTsDigraph),
LATIN_SMALL_LETTER_TESH_DIGRAPH => Ok(IPAExtensions::LatinSmallLetterTeshDigraph),
LATIN_SMALL_LETTER_TC_DIGRAPH_WITH_CURL => Ok(IPAExtensions::LatinSmallLetterTcDigraphWithCurl),
LATIN_SMALL_LETTER_FENG_DIGRAPH => Ok(IPAExtensions::LatinSmallLetterFengDigraph),
LATIN_SMALL_LETTER_LS_DIGRAPH => Ok(IPAExtensions::LatinSmallLetterLsDigraph),
LATIN_SMALL_LETTER_LZ_DIGRAPH => Ok(IPAExtensions::LatinSmallLetterLzDigraph),
LATIN_LETTER_BILABIAL_PERCUSSIVE => Ok(IPAExtensions::LatinLetterBilabialPercussive),
LATIN_LETTER_BIDENTAL_PERCUSSIVE => Ok(IPAExtensions::LatinLetterBidentalPercussive),
LATIN_SMALL_LETTER_TURNED_H_WITH_FISHHOOK => Ok(IPAExtensions::LatinSmallLetterTurnedHWithFishhook),
_ => Err(()),
}
}
}
impl Into<u32> for IPAExtensions {
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 IPAExtensions {
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 IPAExtensions {
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 IPAExtensions {
pub fn new() -> Self {
IPAExtensions::LatinSmallLetterTurnedA
}
pub fn name(&self) -> &str {
match self {
IPAExtensions::LatinSmallLetterTurnedA => "latin small letter turned a",
IPAExtensions::LatinSmallLetterAlpha => "latin small letter alpha",
IPAExtensions::LatinSmallLetterTurnedAlpha => "latin small letter turned alpha",
IPAExtensions::LatinSmallLetterBWithHook => "latin small letter b with hook",
IPAExtensions::LatinSmallLetterOpenO => "latin small letter open o",
IPAExtensions::LatinSmallLetterCWithCurl => "latin small letter c with curl",
IPAExtensions::LatinSmallLetterDWithTail => "latin small letter d with tail",
IPAExtensions::LatinSmallLetterDWithHook => "latin small letter d with hook",
IPAExtensions::LatinSmallLetterReversedE => "latin small letter reversed e",
IPAExtensions::LatinSmallLetterSchwa => "latin small letter schwa",
IPAExtensions::LatinSmallLetterSchwaWithHook => "latin small letter schwa with hook",
IPAExtensions::LatinSmallLetterOpenE => "latin small letter open e",
IPAExtensions::LatinSmallLetterReversedOpenE => "latin small letter reversed open e",
IPAExtensions::LatinSmallLetterReversedOpenEWithHook => "latin small letter reversed open e with hook",
IPAExtensions::LatinSmallLetterClosedReversedOpenE => "latin small letter closed reversed open e",
IPAExtensions::LatinSmallLetterDotlessJWithStroke => "latin small letter dotless j with stroke",
IPAExtensions::LatinSmallLetterGWithHook => "latin small letter g with hook",
IPAExtensions::LatinSmallLetterScriptG => "latin small letter script g",
IPAExtensions::LatinLetterSmallCapitalG => "latin letter small capital g",
IPAExtensions::LatinSmallLetterGamma => "latin small letter gamma",
IPAExtensions::LatinSmallLetterRamsHorn => "latin small letter rams horn",
IPAExtensions::LatinSmallLetterTurnedH => "latin small letter turned h",
IPAExtensions::LatinSmallLetterHWithHook => "latin small letter h with hook",
IPAExtensions::LatinSmallLetterHengWithHook => "latin small letter heng with hook",
IPAExtensions::LatinSmallLetterIWithStroke => "latin small letter i with stroke",
IPAExtensions::LatinSmallLetterIota => "latin small letter iota",
IPAExtensions::LatinLetterSmallCapitalI => "latin letter small capital i",
IPAExtensions::LatinSmallLetterLWithMiddleTilde => "latin small letter l with middle tilde",
IPAExtensions::LatinSmallLetterLWithBelt => "latin small letter l with belt",
IPAExtensions::LatinSmallLetterLWithRetroflexHook => "latin small letter l with retroflex hook",
IPAExtensions::LatinSmallLetterLezh => "latin small letter lezh",
IPAExtensions::LatinSmallLetterTurnedM => "latin small letter turned m",
IPAExtensions::LatinSmallLetterTurnedMWithLongLeg => "latin small letter turned m with long leg",
IPAExtensions::LatinSmallLetterMWithHook => "latin small letter m with hook",
IPAExtensions::LatinSmallLetterNWithLeftHook => "latin small letter n with left hook",
IPAExtensions::LatinSmallLetterNWithRetroflexHook => "latin small letter n with retroflex hook",
IPAExtensions::LatinLetterSmallCapitalN => "latin letter small capital n",
IPAExtensions::LatinSmallLetterBarredO => "latin small letter barred o",
IPAExtensions::LatinLetterSmallCapitalOe => "latin letter small capital oe",
IPAExtensions::LatinSmallLetterClosedOmega => "latin small letter closed omega",
IPAExtensions::LatinSmallLetterPhi => "latin small letter phi",
IPAExtensions::LatinSmallLetterTurnedR => "latin small letter turned r",
IPAExtensions::LatinSmallLetterTurnedRWithLongLeg => "latin small letter turned r with long leg",
IPAExtensions::LatinSmallLetterTurnedRWithHook => "latin small letter turned r with hook",
IPAExtensions::LatinSmallLetterRWithLongLeg => "latin small letter r with long leg",
IPAExtensions::LatinSmallLetterRWithTail => "latin small letter r with tail",
IPAExtensions::LatinSmallLetterRWithFishhook => "latin small letter r with fishhook",
IPAExtensions::LatinSmallLetterReversedRWithFishhook => "latin small letter reversed r with fishhook",
IPAExtensions::LatinLetterSmallCapitalR => "latin letter small capital r",
IPAExtensions::LatinLetterSmallCapitalInvertedR => "latin letter small capital inverted r",
IPAExtensions::LatinSmallLetterSWithHook => "latin small letter s with hook",
IPAExtensions::LatinSmallLetterEsh => "latin small letter esh",
IPAExtensions::LatinSmallLetterDotlessJWithStrokeAndHook => "latin small letter dotless j with stroke and hook",
IPAExtensions::LatinSmallLetterSquatReversedEsh => "latin small letter squat reversed esh",
IPAExtensions::LatinSmallLetterEshWithCurl => "latin small letter esh with curl",
IPAExtensions::LatinSmallLetterTurnedT => "latin small letter turned t",
IPAExtensions::LatinSmallLetterTWithRetroflexHook => "latin small letter t with retroflex hook",
IPAExtensions::LatinSmallLetterUBar => "latin small letter u bar",
IPAExtensions::LatinSmallLetterUpsilon => "latin small letter upsilon",
IPAExtensions::LatinSmallLetterVWithHook => "latin small letter v with hook",
IPAExtensions::LatinSmallLetterTurnedV => "latin small letter turned v",
IPAExtensions::LatinSmallLetterTurnedW => "latin small letter turned w",
IPAExtensions::LatinSmallLetterTurnedY => "latin small letter turned y",
IPAExtensions::LatinLetterSmallCapitalY => "latin letter small capital y",
IPAExtensions::LatinSmallLetterZWithRetroflexHook => "latin small letter z with retroflex hook",
IPAExtensions::LatinSmallLetterZWithCurl => "latin small letter z with curl",
IPAExtensions::LatinSmallLetterEzh => "latin small letter ezh",
IPAExtensions::LatinSmallLetterEzhWithCurl => "latin small letter ezh with curl",
IPAExtensions::LatinLetterGlottalStop => "latin letter glottal stop",
IPAExtensions::LatinLetterPharyngealVoicedFricative => "latin letter pharyngeal voiced fricative",
IPAExtensions::LatinLetterInvertedGlottalStop => "latin letter inverted glottal stop",
IPAExtensions::LatinLetterStretchedC => "latin letter stretched c",
IPAExtensions::LatinLetterBilabialClick => "latin letter bilabial click",
IPAExtensions::LatinLetterSmallCapitalB => "latin letter small capital b",
IPAExtensions::LatinSmallLetterClosedOpenE => "latin small letter closed open e",
IPAExtensions::LatinLetterSmallCapitalGWithHook => "latin letter small capital g with hook",
IPAExtensions::LatinLetterSmallCapitalH => "latin letter small capital h",
IPAExtensions::LatinSmallLetterJWithCrossedDashTail => "latin small letter j with crossed-tail",
IPAExtensions::LatinSmallLetterTurnedK => "latin small letter turned k",
IPAExtensions::LatinLetterSmallCapitalL => "latin letter small capital l",
IPAExtensions::LatinSmallLetterQWithHook => "latin small letter q with hook",
IPAExtensions::LatinLetterGlottalStopWithStroke => "latin letter glottal stop with stroke",
IPAExtensions::LatinLetterReversedGlottalStopWithStroke => "latin letter reversed glottal stop with stroke",
IPAExtensions::LatinSmallLetterDzDigraph => "latin small letter dz digraph",
IPAExtensions::LatinSmallLetterDezhDigraph => "latin small letter dezh digraph",
IPAExtensions::LatinSmallLetterDzDigraphWithCurl => "latin small letter dz digraph with curl",
IPAExtensions::LatinSmallLetterTsDigraph => "latin small letter ts digraph",
IPAExtensions::LatinSmallLetterTeshDigraph => "latin small letter tesh digraph",
IPAExtensions::LatinSmallLetterTcDigraphWithCurl => "latin small letter tc digraph with curl",
IPAExtensions::LatinSmallLetterFengDigraph => "latin small letter feng digraph",
IPAExtensions::LatinSmallLetterLsDigraph => "latin small letter ls digraph",
IPAExtensions::LatinSmallLetterLzDigraph => "latin small letter lz digraph",
IPAExtensions::LatinLetterBilabialPercussive => "latin letter bilabial percussive",
IPAExtensions::LatinLetterBidentalPercussive => "latin letter bidental percussive",
IPAExtensions::LatinSmallLetterTurnedHWithFishhook => "latin small letter turned h with fishhook",
}
}
}