#[derive(Debug, Clone, Copy, Hash, PartialEq, Eq)]
pub enum Cyrillic {
CapitalLetterIeWithGrave,
CapitalLetterIo,
CapitalLetterDje,
CapitalLetterGje,
CapitalLetterUkrainianIe,
CapitalLetterDze,
CapitalLetterByelorussianDashUkrainianI,
CapitalLetterYi,
CapitalLetterJe,
CapitalLetterLje,
CapitalLetterNje,
CapitalLetterTshe,
CapitalLetterKje,
CapitalLetterIWithGrave,
CapitalLetterShortU,
CapitalLetterDzhe,
CapitalLetterA,
CapitalLetterBe,
CapitalLetterVe,
CapitalLetterGhe,
CapitalLetterDe,
CapitalLetterIe,
CapitalLetterZhe,
CapitalLetterZe,
CapitalLetterI,
CapitalLetterShortI,
CapitalLetterKa,
CapitalLetterEl,
CapitalLetterEm,
CapitalLetterEn,
CapitalLetterO,
CapitalLetterPe,
CapitalLetterEr,
CapitalLetterEs,
CapitalLetterTe,
CapitalLetterU,
CapitalLetterEf,
CapitalLetterHa,
CapitalLetterTse,
CapitalLetterChe,
CapitalLetterSha,
CapitalLetterShcha,
CapitalLetterHardSign,
CapitalLetterYeru,
CapitalLetterSoftSign,
CapitalLetterE,
CapitalLetterYu,
CapitalLetterYa,
SmallLetterA,
SmallLetterBe,
SmallLetterVe,
SmallLetterGhe,
SmallLetterDe,
SmallLetterIe,
SmallLetterZhe,
SmallLetterZe,
SmallLetterI,
SmallLetterShortI,
SmallLetterKa,
SmallLetterEl,
SmallLetterEm,
SmallLetterEn,
SmallLetterO,
SmallLetterPe,
SmallLetterEr,
SmallLetterEs,
SmallLetterTe,
SmallLetterU,
SmallLetterEf,
SmallLetterHa,
SmallLetterTse,
SmallLetterChe,
SmallLetterSha,
SmallLetterShcha,
SmallLetterHardSign,
SmallLetterYeru,
SmallLetterSoftSign,
SmallLetterE,
SmallLetterYu,
SmallLetterYa,
SmallLetterIeWithGrave,
SmallLetterIo,
SmallLetterDje,
SmallLetterGje,
SmallLetterUkrainianIe,
SmallLetterDze,
SmallLetterByelorussianDashUkrainianI,
SmallLetterYi,
SmallLetterJe,
SmallLetterLje,
SmallLetterNje,
SmallLetterTshe,
SmallLetterKje,
SmallLetterIWithGrave,
SmallLetterShortU,
SmallLetterDzhe,
CapitalLetterOmega,
SmallLetterOmega,
CapitalLetterYat,
SmallLetterYat,
CapitalLetterIotifiedE,
SmallLetterIotifiedE,
CapitalLetterLittleYus,
SmallLetterLittleYus,
CapitalLetterIotifiedLittleYus,
SmallLetterIotifiedLittleYus,
CapitalLetterBigYus,
SmallLetterBigYus,
CapitalLetterIotifiedBigYus,
SmallLetterIotifiedBigYus,
CapitalLetterKsi,
SmallLetterKsi,
CapitalLetterPsi,
SmallLetterPsi,
CapitalLetterFita,
SmallLetterFita,
CapitalLetterIzhitsa,
SmallLetterIzhitsa,
CapitalLetterIzhitsaWithDoubleGraveAccent,
SmallLetterIzhitsaWithDoubleGraveAccent,
CapitalLetterUk,
SmallLetterUk,
CapitalLetterRoundOmega,
SmallLetterRoundOmega,
CapitalLetterOmegaWithTitlo,
SmallLetterOmegaWithTitlo,
CapitalLetterOt,
SmallLetterOt,
CapitalLetterKoppa,
SmallLetterKoppa,
ThousandsSign,
CombiningTitlo,
CombiningPalatalization,
CombiningDasiaPneumata,
CombiningPsiliPneumata,
CombiningPokrytie,
CombiningHundredThousandsSign,
CombiningMillionsSign,
CapitalLetterShortIWithTail,
SmallLetterShortIWithTail,
CapitalLetterSemisoftSign,
SmallLetterSemisoftSign,
CapitalLetterErWithTick,
SmallLetterErWithTick,
CapitalLetterGheWithUpturn,
SmallLetterGheWithUpturn,
CapitalLetterGheWithStroke,
SmallLetterGheWithStroke,
CapitalLetterGheWithMiddleHook,
SmallLetterGheWithMiddleHook,
CapitalLetterZheWithDescender,
SmallLetterZheWithDescender,
CapitalLetterZeWithDescender,
SmallLetterZeWithDescender,
CapitalLetterKaWithDescender,
SmallLetterKaWithDescender,
CapitalLetterKaWithVerticalStroke,
SmallLetterKaWithVerticalStroke,
CapitalLetterKaWithStroke,
SmallLetterKaWithStroke,
CapitalLetterBashkirKa,
SmallLetterBashkirKa,
CapitalLetterEnWithDescender,
SmallLetterEnWithDescender,
CapitalLigatureEnGhe,
SmallLigatureEnGhe,
CapitalLetterPeWithMiddleHook,
SmallLetterPeWithMiddleHook,
CapitalLetterAbkhasianHa,
SmallLetterAbkhasianHa,
CapitalLetterEsWithDescender,
SmallLetterEsWithDescender,
CapitalLetterTeWithDescender,
SmallLetterTeWithDescender,
CapitalLetterStraightU,
SmallLetterStraightU,
CapitalLetterStraightUWithStroke,
SmallLetterStraightUWithStroke,
CapitalLetterHaWithDescender,
SmallLetterHaWithDescender,
CapitalLigatureTeTse,
SmallLigatureTeTse,
CapitalLetterCheWithDescender,
SmallLetterCheWithDescender,
CapitalLetterCheWithVerticalStroke,
SmallLetterCheWithVerticalStroke,
CapitalLetterShha,
SmallLetterShha,
CapitalLetterAbkhasianChe,
SmallLetterAbkhasianChe,
CapitalLetterAbkhasianCheWithDescender,
SmallLetterAbkhasianCheWithDescender,
LetterPalochka,
CapitalLetterZheWithBreve,
SmallLetterZheWithBreve,
CapitalLetterKaWithHook,
SmallLetterKaWithHook,
CapitalLetterElWithTail,
SmallLetterElWithTail,
CapitalLetterEnWithHook,
SmallLetterEnWithHook,
CapitalLetterEnWithTail,
SmallLetterEnWithTail,
CapitalLetterKhakassianChe,
SmallLetterKhakassianChe,
CapitalLetterEmWithTail,
SmallLetterEmWithTail,
SmallLetterPalochka,
CapitalLetterAWithBreve,
SmallLetterAWithBreve,
CapitalLetterAWithDiaeresis,
SmallLetterAWithDiaeresis,
CapitalLigatureAIe,
SmallLigatureAIe,
CapitalLetterIeWithBreve,
SmallLetterIeWithBreve,
CapitalLetterSchwa,
SmallLetterSchwa,
CapitalLetterSchwaWithDiaeresis,
SmallLetterSchwaWithDiaeresis,
CapitalLetterZheWithDiaeresis,
SmallLetterZheWithDiaeresis,
CapitalLetterZeWithDiaeresis,
SmallLetterZeWithDiaeresis,
CapitalLetterAbkhasianDze,
SmallLetterAbkhasianDze,
CapitalLetterIWithMacron,
SmallLetterIWithMacron,
CapitalLetterIWithDiaeresis,
SmallLetterIWithDiaeresis,
CapitalLetterOWithDiaeresis,
SmallLetterOWithDiaeresis,
CapitalLetterBarredO,
SmallLetterBarredO,
CapitalLetterBarredOWithDiaeresis,
SmallLetterBarredOWithDiaeresis,
CapitalLetterEWithDiaeresis,
SmallLetterEWithDiaeresis,
CapitalLetterUWithMacron,
SmallLetterUWithMacron,
CapitalLetterUWithDiaeresis,
SmallLetterUWithDiaeresis,
CapitalLetterUWithDoubleAcute,
SmallLetterUWithDoubleAcute,
CapitalLetterCheWithDiaeresis,
SmallLetterCheWithDiaeresis,
CapitalLetterGheWithDescender,
SmallLetterGheWithDescender,
CapitalLetterYeruWithDiaeresis,
SmallLetterYeruWithDiaeresis,
CapitalLetterGheWithStrokeAndHook,
SmallLetterGheWithStrokeAndHook,
CapitalLetterHaWithHook,
SmallLetterHaWithHook,
CapitalLetterHaWithStroke,
}
impl Into<char> for Cyrillic {
fn into(self) -> char {
match self {
Cyrillic::CapitalLetterIeWithGrave => 'Ѐ',
Cyrillic::CapitalLetterIo => 'Ё',
Cyrillic::CapitalLetterDje => 'Ђ',
Cyrillic::CapitalLetterGje => 'Ѓ',
Cyrillic::CapitalLetterUkrainianIe => 'Є',
Cyrillic::CapitalLetterDze => 'Ѕ',
Cyrillic::CapitalLetterByelorussianDashUkrainianI => 'І',
Cyrillic::CapitalLetterYi => 'Ї',
Cyrillic::CapitalLetterJe => 'Ј',
Cyrillic::CapitalLetterLje => 'Љ',
Cyrillic::CapitalLetterNje => 'Њ',
Cyrillic::CapitalLetterTshe => 'Ћ',
Cyrillic::CapitalLetterKje => 'Ќ',
Cyrillic::CapitalLetterIWithGrave => 'Ѝ',
Cyrillic::CapitalLetterShortU => 'Ў',
Cyrillic::CapitalLetterDzhe => 'Џ',
Cyrillic::CapitalLetterA => 'А',
Cyrillic::CapitalLetterBe => 'Б',
Cyrillic::CapitalLetterVe => 'В',
Cyrillic::CapitalLetterGhe => 'Г',
Cyrillic::CapitalLetterDe => 'Д',
Cyrillic::CapitalLetterIe => 'Е',
Cyrillic::CapitalLetterZhe => 'Ж',
Cyrillic::CapitalLetterZe => 'З',
Cyrillic::CapitalLetterI => 'И',
Cyrillic::CapitalLetterShortI => 'Й',
Cyrillic::CapitalLetterKa => 'К',
Cyrillic::CapitalLetterEl => 'Л',
Cyrillic::CapitalLetterEm => 'М',
Cyrillic::CapitalLetterEn => 'Н',
Cyrillic::CapitalLetterO => 'О',
Cyrillic::CapitalLetterPe => 'П',
Cyrillic::CapitalLetterEr => 'Р',
Cyrillic::CapitalLetterEs => 'С',
Cyrillic::CapitalLetterTe => 'Т',
Cyrillic::CapitalLetterU => 'У',
Cyrillic::CapitalLetterEf => 'Ф',
Cyrillic::CapitalLetterHa => 'Х',
Cyrillic::CapitalLetterTse => 'Ц',
Cyrillic::CapitalLetterChe => 'Ч',
Cyrillic::CapitalLetterSha => 'Ш',
Cyrillic::CapitalLetterShcha => 'Щ',
Cyrillic::CapitalLetterHardSign => 'Ъ',
Cyrillic::CapitalLetterYeru => 'Ы',
Cyrillic::CapitalLetterSoftSign => 'Ь',
Cyrillic::CapitalLetterE => 'Э',
Cyrillic::CapitalLetterYu => 'Ю',
Cyrillic::CapitalLetterYa => 'Я',
Cyrillic::SmallLetterA => 'а',
Cyrillic::SmallLetterBe => 'б',
Cyrillic::SmallLetterVe => 'в',
Cyrillic::SmallLetterGhe => 'г',
Cyrillic::SmallLetterDe => 'д',
Cyrillic::SmallLetterIe => 'е',
Cyrillic::SmallLetterZhe => 'ж',
Cyrillic::SmallLetterZe => 'з',
Cyrillic::SmallLetterI => 'и',
Cyrillic::SmallLetterShortI => 'й',
Cyrillic::SmallLetterKa => 'к',
Cyrillic::SmallLetterEl => 'л',
Cyrillic::SmallLetterEm => 'м',
Cyrillic::SmallLetterEn => 'н',
Cyrillic::SmallLetterO => 'о',
Cyrillic::SmallLetterPe => 'п',
Cyrillic::SmallLetterEr => 'р',
Cyrillic::SmallLetterEs => 'с',
Cyrillic::SmallLetterTe => 'т',
Cyrillic::SmallLetterU => 'у',
Cyrillic::SmallLetterEf => 'ф',
Cyrillic::SmallLetterHa => 'х',
Cyrillic::SmallLetterTse => 'ц',
Cyrillic::SmallLetterChe => 'ч',
Cyrillic::SmallLetterSha => 'ш',
Cyrillic::SmallLetterShcha => 'щ',
Cyrillic::SmallLetterHardSign => 'ъ',
Cyrillic::SmallLetterYeru => 'ы',
Cyrillic::SmallLetterSoftSign => 'ь',
Cyrillic::SmallLetterE => 'э',
Cyrillic::SmallLetterYu => 'ю',
Cyrillic::SmallLetterYa => 'я',
Cyrillic::SmallLetterIeWithGrave => 'ѐ',
Cyrillic::SmallLetterIo => 'ё',
Cyrillic::SmallLetterDje => 'ђ',
Cyrillic::SmallLetterGje => 'ѓ',
Cyrillic::SmallLetterUkrainianIe => 'є',
Cyrillic::SmallLetterDze => 'ѕ',
Cyrillic::SmallLetterByelorussianDashUkrainianI => 'і',
Cyrillic::SmallLetterYi => 'ї',
Cyrillic::SmallLetterJe => 'ј',
Cyrillic::SmallLetterLje => 'љ',
Cyrillic::SmallLetterNje => 'њ',
Cyrillic::SmallLetterTshe => 'ћ',
Cyrillic::SmallLetterKje => 'ќ',
Cyrillic::SmallLetterIWithGrave => 'ѝ',
Cyrillic::SmallLetterShortU => 'ў',
Cyrillic::SmallLetterDzhe => 'џ',
Cyrillic::CapitalLetterOmega => 'Ѡ',
Cyrillic::SmallLetterOmega => 'ѡ',
Cyrillic::CapitalLetterYat => 'Ѣ',
Cyrillic::SmallLetterYat => 'ѣ',
Cyrillic::CapitalLetterIotifiedE => 'Ѥ',
Cyrillic::SmallLetterIotifiedE => 'ѥ',
Cyrillic::CapitalLetterLittleYus => 'Ѧ',
Cyrillic::SmallLetterLittleYus => 'ѧ',
Cyrillic::CapitalLetterIotifiedLittleYus => 'Ѩ',
Cyrillic::SmallLetterIotifiedLittleYus => 'ѩ',
Cyrillic::CapitalLetterBigYus => 'Ѫ',
Cyrillic::SmallLetterBigYus => 'ѫ',
Cyrillic::CapitalLetterIotifiedBigYus => 'Ѭ',
Cyrillic::SmallLetterIotifiedBigYus => 'ѭ',
Cyrillic::CapitalLetterKsi => 'Ѯ',
Cyrillic::SmallLetterKsi => 'ѯ',
Cyrillic::CapitalLetterPsi => 'Ѱ',
Cyrillic::SmallLetterPsi => 'ѱ',
Cyrillic::CapitalLetterFita => 'Ѳ',
Cyrillic::SmallLetterFita => 'ѳ',
Cyrillic::CapitalLetterIzhitsa => 'Ѵ',
Cyrillic::SmallLetterIzhitsa => 'ѵ',
Cyrillic::CapitalLetterIzhitsaWithDoubleGraveAccent => 'Ѷ',
Cyrillic::SmallLetterIzhitsaWithDoubleGraveAccent => 'ѷ',
Cyrillic::CapitalLetterUk => 'Ѹ',
Cyrillic::SmallLetterUk => 'ѹ',
Cyrillic::CapitalLetterRoundOmega => 'Ѻ',
Cyrillic::SmallLetterRoundOmega => 'ѻ',
Cyrillic::CapitalLetterOmegaWithTitlo => 'Ѽ',
Cyrillic::SmallLetterOmegaWithTitlo => 'ѽ',
Cyrillic::CapitalLetterOt => 'Ѿ',
Cyrillic::SmallLetterOt => 'ѿ',
Cyrillic::CapitalLetterKoppa => 'Ҁ',
Cyrillic::SmallLetterKoppa => 'ҁ',
Cyrillic::ThousandsSign => '҂',
Cyrillic::CombiningTitlo => '҃',
Cyrillic::CombiningPalatalization => '҄',
Cyrillic::CombiningDasiaPneumata => '҅',
Cyrillic::CombiningPsiliPneumata => '҆',
Cyrillic::CombiningPokrytie => '҇',
Cyrillic::CombiningHundredThousandsSign => '҈',
Cyrillic::CombiningMillionsSign => '҉',
Cyrillic::CapitalLetterShortIWithTail => 'Ҋ',
Cyrillic::SmallLetterShortIWithTail => 'ҋ',
Cyrillic::CapitalLetterSemisoftSign => 'Ҍ',
Cyrillic::SmallLetterSemisoftSign => 'ҍ',
Cyrillic::CapitalLetterErWithTick => 'Ҏ',
Cyrillic::SmallLetterErWithTick => 'ҏ',
Cyrillic::CapitalLetterGheWithUpturn => 'Ґ',
Cyrillic::SmallLetterGheWithUpturn => 'ґ',
Cyrillic::CapitalLetterGheWithStroke => 'Ғ',
Cyrillic::SmallLetterGheWithStroke => 'ғ',
Cyrillic::CapitalLetterGheWithMiddleHook => 'Ҕ',
Cyrillic::SmallLetterGheWithMiddleHook => 'ҕ',
Cyrillic::CapitalLetterZheWithDescender => 'Җ',
Cyrillic::SmallLetterZheWithDescender => 'җ',
Cyrillic::CapitalLetterZeWithDescender => 'Ҙ',
Cyrillic::SmallLetterZeWithDescender => 'ҙ',
Cyrillic::CapitalLetterKaWithDescender => 'Қ',
Cyrillic::SmallLetterKaWithDescender => 'қ',
Cyrillic::CapitalLetterKaWithVerticalStroke => 'Ҝ',
Cyrillic::SmallLetterKaWithVerticalStroke => 'ҝ',
Cyrillic::CapitalLetterKaWithStroke => 'Ҟ',
Cyrillic::SmallLetterKaWithStroke => 'ҟ',
Cyrillic::CapitalLetterBashkirKa => 'Ҡ',
Cyrillic::SmallLetterBashkirKa => 'ҡ',
Cyrillic::CapitalLetterEnWithDescender => 'Ң',
Cyrillic::SmallLetterEnWithDescender => 'ң',
Cyrillic::CapitalLigatureEnGhe => 'Ҥ',
Cyrillic::SmallLigatureEnGhe => 'ҥ',
Cyrillic::CapitalLetterPeWithMiddleHook => 'Ҧ',
Cyrillic::SmallLetterPeWithMiddleHook => 'ҧ',
Cyrillic::CapitalLetterAbkhasianHa => 'Ҩ',
Cyrillic::SmallLetterAbkhasianHa => 'ҩ',
Cyrillic::CapitalLetterEsWithDescender => 'Ҫ',
Cyrillic::SmallLetterEsWithDescender => 'ҫ',
Cyrillic::CapitalLetterTeWithDescender => 'Ҭ',
Cyrillic::SmallLetterTeWithDescender => 'ҭ',
Cyrillic::CapitalLetterStraightU => 'Ү',
Cyrillic::SmallLetterStraightU => 'ү',
Cyrillic::CapitalLetterStraightUWithStroke => 'Ұ',
Cyrillic::SmallLetterStraightUWithStroke => 'ұ',
Cyrillic::CapitalLetterHaWithDescender => 'Ҳ',
Cyrillic::SmallLetterHaWithDescender => 'ҳ',
Cyrillic::CapitalLigatureTeTse => 'Ҵ',
Cyrillic::SmallLigatureTeTse => 'ҵ',
Cyrillic::CapitalLetterCheWithDescender => 'Ҷ',
Cyrillic::SmallLetterCheWithDescender => 'ҷ',
Cyrillic::CapitalLetterCheWithVerticalStroke => 'Ҹ',
Cyrillic::SmallLetterCheWithVerticalStroke => 'ҹ',
Cyrillic::CapitalLetterShha => 'Һ',
Cyrillic::SmallLetterShha => 'һ',
Cyrillic::CapitalLetterAbkhasianChe => 'Ҽ',
Cyrillic::SmallLetterAbkhasianChe => 'ҽ',
Cyrillic::CapitalLetterAbkhasianCheWithDescender => 'Ҿ',
Cyrillic::SmallLetterAbkhasianCheWithDescender => 'ҿ',
Cyrillic::LetterPalochka => 'Ӏ',
Cyrillic::CapitalLetterZheWithBreve => 'Ӂ',
Cyrillic::SmallLetterZheWithBreve => 'ӂ',
Cyrillic::CapitalLetterKaWithHook => 'Ӄ',
Cyrillic::SmallLetterKaWithHook => 'ӄ',
Cyrillic::CapitalLetterElWithTail => 'Ӆ',
Cyrillic::SmallLetterElWithTail => 'ӆ',
Cyrillic::CapitalLetterEnWithHook => 'Ӈ',
Cyrillic::SmallLetterEnWithHook => 'ӈ',
Cyrillic::CapitalLetterEnWithTail => 'Ӊ',
Cyrillic::SmallLetterEnWithTail => 'ӊ',
Cyrillic::CapitalLetterKhakassianChe => 'Ӌ',
Cyrillic::SmallLetterKhakassianChe => 'ӌ',
Cyrillic::CapitalLetterEmWithTail => 'Ӎ',
Cyrillic::SmallLetterEmWithTail => 'ӎ',
Cyrillic::SmallLetterPalochka => 'ӏ',
Cyrillic::CapitalLetterAWithBreve => 'Ӑ',
Cyrillic::SmallLetterAWithBreve => 'ӑ',
Cyrillic::CapitalLetterAWithDiaeresis => 'Ӓ',
Cyrillic::SmallLetterAWithDiaeresis => 'ӓ',
Cyrillic::CapitalLigatureAIe => 'Ӕ',
Cyrillic::SmallLigatureAIe => 'ӕ',
Cyrillic::CapitalLetterIeWithBreve => 'Ӗ',
Cyrillic::SmallLetterIeWithBreve => 'ӗ',
Cyrillic::CapitalLetterSchwa => 'Ә',
Cyrillic::SmallLetterSchwa => 'ә',
Cyrillic::CapitalLetterSchwaWithDiaeresis => 'Ӛ',
Cyrillic::SmallLetterSchwaWithDiaeresis => 'ӛ',
Cyrillic::CapitalLetterZheWithDiaeresis => 'Ӝ',
Cyrillic::SmallLetterZheWithDiaeresis => 'ӝ',
Cyrillic::CapitalLetterZeWithDiaeresis => 'Ӟ',
Cyrillic::SmallLetterZeWithDiaeresis => 'ӟ',
Cyrillic::CapitalLetterAbkhasianDze => 'Ӡ',
Cyrillic::SmallLetterAbkhasianDze => 'ӡ',
Cyrillic::CapitalLetterIWithMacron => 'Ӣ',
Cyrillic::SmallLetterIWithMacron => 'ӣ',
Cyrillic::CapitalLetterIWithDiaeresis => 'Ӥ',
Cyrillic::SmallLetterIWithDiaeresis => 'ӥ',
Cyrillic::CapitalLetterOWithDiaeresis => 'Ӧ',
Cyrillic::SmallLetterOWithDiaeresis => 'ӧ',
Cyrillic::CapitalLetterBarredO => 'Ө',
Cyrillic::SmallLetterBarredO => 'ө',
Cyrillic::CapitalLetterBarredOWithDiaeresis => 'Ӫ',
Cyrillic::SmallLetterBarredOWithDiaeresis => 'ӫ',
Cyrillic::CapitalLetterEWithDiaeresis => 'Ӭ',
Cyrillic::SmallLetterEWithDiaeresis => 'ӭ',
Cyrillic::CapitalLetterUWithMacron => 'Ӯ',
Cyrillic::SmallLetterUWithMacron => 'ӯ',
Cyrillic::CapitalLetterUWithDiaeresis => 'Ӱ',
Cyrillic::SmallLetterUWithDiaeresis => 'ӱ',
Cyrillic::CapitalLetterUWithDoubleAcute => 'Ӳ',
Cyrillic::SmallLetterUWithDoubleAcute => 'ӳ',
Cyrillic::CapitalLetterCheWithDiaeresis => 'Ӵ',
Cyrillic::SmallLetterCheWithDiaeresis => 'ӵ',
Cyrillic::CapitalLetterGheWithDescender => 'Ӷ',
Cyrillic::SmallLetterGheWithDescender => 'ӷ',
Cyrillic::CapitalLetterYeruWithDiaeresis => 'Ӹ',
Cyrillic::SmallLetterYeruWithDiaeresis => 'ӹ',
Cyrillic::CapitalLetterGheWithStrokeAndHook => 'Ӻ',
Cyrillic::SmallLetterGheWithStrokeAndHook => 'ӻ',
Cyrillic::CapitalLetterHaWithHook => 'Ӽ',
Cyrillic::SmallLetterHaWithHook => 'ӽ',
Cyrillic::CapitalLetterHaWithStroke => 'Ӿ',
}
}
}
impl std::convert::TryFrom<char> for Cyrillic {
type Error = ();
fn try_from(c: char) -> Result<Self, Self::Error> {
match c {
'Ѐ' => Ok(Cyrillic::CapitalLetterIeWithGrave),
'Ё' => Ok(Cyrillic::CapitalLetterIo),
'Ђ' => Ok(Cyrillic::CapitalLetterDje),
'Ѓ' => Ok(Cyrillic::CapitalLetterGje),
'Є' => Ok(Cyrillic::CapitalLetterUkrainianIe),
'Ѕ' => Ok(Cyrillic::CapitalLetterDze),
'І' => Ok(Cyrillic::CapitalLetterByelorussianDashUkrainianI),
'Ї' => Ok(Cyrillic::CapitalLetterYi),
'Ј' => Ok(Cyrillic::CapitalLetterJe),
'Љ' => Ok(Cyrillic::CapitalLetterLje),
'Њ' => Ok(Cyrillic::CapitalLetterNje),
'Ћ' => Ok(Cyrillic::CapitalLetterTshe),
'Ќ' => Ok(Cyrillic::CapitalLetterKje),
'Ѝ' => Ok(Cyrillic::CapitalLetterIWithGrave),
'Ў' => Ok(Cyrillic::CapitalLetterShortU),
'Џ' => Ok(Cyrillic::CapitalLetterDzhe),
'А' => Ok(Cyrillic::CapitalLetterA),
'Б' => Ok(Cyrillic::CapitalLetterBe),
'В' => Ok(Cyrillic::CapitalLetterVe),
'Г' => Ok(Cyrillic::CapitalLetterGhe),
'Д' => Ok(Cyrillic::CapitalLetterDe),
'Е' => Ok(Cyrillic::CapitalLetterIe),
'Ж' => Ok(Cyrillic::CapitalLetterZhe),
'З' => Ok(Cyrillic::CapitalLetterZe),
'И' => Ok(Cyrillic::CapitalLetterI),
'Й' => Ok(Cyrillic::CapitalLetterShortI),
'К' => Ok(Cyrillic::CapitalLetterKa),
'Л' => Ok(Cyrillic::CapitalLetterEl),
'М' => Ok(Cyrillic::CapitalLetterEm),
'Н' => Ok(Cyrillic::CapitalLetterEn),
'О' => Ok(Cyrillic::CapitalLetterO),
'П' => Ok(Cyrillic::CapitalLetterPe),
'Р' => Ok(Cyrillic::CapitalLetterEr),
'С' => Ok(Cyrillic::CapitalLetterEs),
'Т' => Ok(Cyrillic::CapitalLetterTe),
'У' => Ok(Cyrillic::CapitalLetterU),
'Ф' => Ok(Cyrillic::CapitalLetterEf),
'Х' => Ok(Cyrillic::CapitalLetterHa),
'Ц' => Ok(Cyrillic::CapitalLetterTse),
'Ч' => Ok(Cyrillic::CapitalLetterChe),
'Ш' => Ok(Cyrillic::CapitalLetterSha),
'Щ' => Ok(Cyrillic::CapitalLetterShcha),
'Ъ' => Ok(Cyrillic::CapitalLetterHardSign),
'Ы' => Ok(Cyrillic::CapitalLetterYeru),
'Ь' => Ok(Cyrillic::CapitalLetterSoftSign),
'Э' => Ok(Cyrillic::CapitalLetterE),
'Ю' => Ok(Cyrillic::CapitalLetterYu),
'Я' => Ok(Cyrillic::CapitalLetterYa),
'а' => Ok(Cyrillic::SmallLetterA),
'б' => Ok(Cyrillic::SmallLetterBe),
'в' => Ok(Cyrillic::SmallLetterVe),
'г' => Ok(Cyrillic::SmallLetterGhe),
'д' => Ok(Cyrillic::SmallLetterDe),
'е' => Ok(Cyrillic::SmallLetterIe),
'ж' => Ok(Cyrillic::SmallLetterZhe),
'з' => Ok(Cyrillic::SmallLetterZe),
'и' => Ok(Cyrillic::SmallLetterI),
'й' => Ok(Cyrillic::SmallLetterShortI),
'к' => Ok(Cyrillic::SmallLetterKa),
'л' => Ok(Cyrillic::SmallLetterEl),
'м' => Ok(Cyrillic::SmallLetterEm),
'н' => Ok(Cyrillic::SmallLetterEn),
'о' => Ok(Cyrillic::SmallLetterO),
'п' => Ok(Cyrillic::SmallLetterPe),
'р' => Ok(Cyrillic::SmallLetterEr),
'с' => Ok(Cyrillic::SmallLetterEs),
'т' => Ok(Cyrillic::SmallLetterTe),
'у' => Ok(Cyrillic::SmallLetterU),
'ф' => Ok(Cyrillic::SmallLetterEf),
'х' => Ok(Cyrillic::SmallLetterHa),
'ц' => Ok(Cyrillic::SmallLetterTse),
'ч' => Ok(Cyrillic::SmallLetterChe),
'ш' => Ok(Cyrillic::SmallLetterSha),
'щ' => Ok(Cyrillic::SmallLetterShcha),
'ъ' => Ok(Cyrillic::SmallLetterHardSign),
'ы' => Ok(Cyrillic::SmallLetterYeru),
'ь' => Ok(Cyrillic::SmallLetterSoftSign),
'э' => Ok(Cyrillic::SmallLetterE),
'ю' => Ok(Cyrillic::SmallLetterYu),
'я' => Ok(Cyrillic::SmallLetterYa),
'ѐ' => Ok(Cyrillic::SmallLetterIeWithGrave),
'ё' => Ok(Cyrillic::SmallLetterIo),
'ђ' => Ok(Cyrillic::SmallLetterDje),
'ѓ' => Ok(Cyrillic::SmallLetterGje),
'є' => Ok(Cyrillic::SmallLetterUkrainianIe),
'ѕ' => Ok(Cyrillic::SmallLetterDze),
'і' => Ok(Cyrillic::SmallLetterByelorussianDashUkrainianI),
'ї' => Ok(Cyrillic::SmallLetterYi),
'ј' => Ok(Cyrillic::SmallLetterJe),
'љ' => Ok(Cyrillic::SmallLetterLje),
'њ' => Ok(Cyrillic::SmallLetterNje),
'ћ' => Ok(Cyrillic::SmallLetterTshe),
'ќ' => Ok(Cyrillic::SmallLetterKje),
'ѝ' => Ok(Cyrillic::SmallLetterIWithGrave),
'ў' => Ok(Cyrillic::SmallLetterShortU),
'џ' => Ok(Cyrillic::SmallLetterDzhe),
'Ѡ' => Ok(Cyrillic::CapitalLetterOmega),
'ѡ' => Ok(Cyrillic::SmallLetterOmega),
'Ѣ' => Ok(Cyrillic::CapitalLetterYat),
'ѣ' => Ok(Cyrillic::SmallLetterYat),
'Ѥ' => Ok(Cyrillic::CapitalLetterIotifiedE),
'ѥ' => Ok(Cyrillic::SmallLetterIotifiedE),
'Ѧ' => Ok(Cyrillic::CapitalLetterLittleYus),
'ѧ' => Ok(Cyrillic::SmallLetterLittleYus),
'Ѩ' => Ok(Cyrillic::CapitalLetterIotifiedLittleYus),
'ѩ' => Ok(Cyrillic::SmallLetterIotifiedLittleYus),
'Ѫ' => Ok(Cyrillic::CapitalLetterBigYus),
'ѫ' => Ok(Cyrillic::SmallLetterBigYus),
'Ѭ' => Ok(Cyrillic::CapitalLetterIotifiedBigYus),
'ѭ' => Ok(Cyrillic::SmallLetterIotifiedBigYus),
'Ѯ' => Ok(Cyrillic::CapitalLetterKsi),
'ѯ' => Ok(Cyrillic::SmallLetterKsi),
'Ѱ' => Ok(Cyrillic::CapitalLetterPsi),
'ѱ' => Ok(Cyrillic::SmallLetterPsi),
'Ѳ' => Ok(Cyrillic::CapitalLetterFita),
'ѳ' => Ok(Cyrillic::SmallLetterFita),
'Ѵ' => Ok(Cyrillic::CapitalLetterIzhitsa),
'ѵ' => Ok(Cyrillic::SmallLetterIzhitsa),
'Ѷ' => Ok(Cyrillic::CapitalLetterIzhitsaWithDoubleGraveAccent),
'ѷ' => Ok(Cyrillic::SmallLetterIzhitsaWithDoubleGraveAccent),
'Ѹ' => Ok(Cyrillic::CapitalLetterUk),
'ѹ' => Ok(Cyrillic::SmallLetterUk),
'Ѻ' => Ok(Cyrillic::CapitalLetterRoundOmega),
'ѻ' => Ok(Cyrillic::SmallLetterRoundOmega),
'Ѽ' => Ok(Cyrillic::CapitalLetterOmegaWithTitlo),
'ѽ' => Ok(Cyrillic::SmallLetterOmegaWithTitlo),
'Ѿ' => Ok(Cyrillic::CapitalLetterOt),
'ѿ' => Ok(Cyrillic::SmallLetterOt),
'Ҁ' => Ok(Cyrillic::CapitalLetterKoppa),
'ҁ' => Ok(Cyrillic::SmallLetterKoppa),
'҂' => Ok(Cyrillic::ThousandsSign),
'҃' => Ok(Cyrillic::CombiningTitlo),
'҄' => Ok(Cyrillic::CombiningPalatalization),
'҅' => Ok(Cyrillic::CombiningDasiaPneumata),
'҆' => Ok(Cyrillic::CombiningPsiliPneumata),
'҇' => Ok(Cyrillic::CombiningPokrytie),
'҈' => Ok(Cyrillic::CombiningHundredThousandsSign),
'҉' => Ok(Cyrillic::CombiningMillionsSign),
'Ҋ' => Ok(Cyrillic::CapitalLetterShortIWithTail),
'ҋ' => Ok(Cyrillic::SmallLetterShortIWithTail),
'Ҍ' => Ok(Cyrillic::CapitalLetterSemisoftSign),
'ҍ' => Ok(Cyrillic::SmallLetterSemisoftSign),
'Ҏ' => Ok(Cyrillic::CapitalLetterErWithTick),
'ҏ' => Ok(Cyrillic::SmallLetterErWithTick),
'Ґ' => Ok(Cyrillic::CapitalLetterGheWithUpturn),
'ґ' => Ok(Cyrillic::SmallLetterGheWithUpturn),
'Ғ' => Ok(Cyrillic::CapitalLetterGheWithStroke),
'ғ' => Ok(Cyrillic::SmallLetterGheWithStroke),
'Ҕ' => Ok(Cyrillic::CapitalLetterGheWithMiddleHook),
'ҕ' => Ok(Cyrillic::SmallLetterGheWithMiddleHook),
'Җ' => Ok(Cyrillic::CapitalLetterZheWithDescender),
'җ' => Ok(Cyrillic::SmallLetterZheWithDescender),
'Ҙ' => Ok(Cyrillic::CapitalLetterZeWithDescender),
'ҙ' => Ok(Cyrillic::SmallLetterZeWithDescender),
'Қ' => Ok(Cyrillic::CapitalLetterKaWithDescender),
'қ' => Ok(Cyrillic::SmallLetterKaWithDescender),
'Ҝ' => Ok(Cyrillic::CapitalLetterKaWithVerticalStroke),
'ҝ' => Ok(Cyrillic::SmallLetterKaWithVerticalStroke),
'Ҟ' => Ok(Cyrillic::CapitalLetterKaWithStroke),
'ҟ' => Ok(Cyrillic::SmallLetterKaWithStroke),
'Ҡ' => Ok(Cyrillic::CapitalLetterBashkirKa),
'ҡ' => Ok(Cyrillic::SmallLetterBashkirKa),
'Ң' => Ok(Cyrillic::CapitalLetterEnWithDescender),
'ң' => Ok(Cyrillic::SmallLetterEnWithDescender),
'Ҥ' => Ok(Cyrillic::CapitalLigatureEnGhe),
'ҥ' => Ok(Cyrillic::SmallLigatureEnGhe),
'Ҧ' => Ok(Cyrillic::CapitalLetterPeWithMiddleHook),
'ҧ' => Ok(Cyrillic::SmallLetterPeWithMiddleHook),
'Ҩ' => Ok(Cyrillic::CapitalLetterAbkhasianHa),
'ҩ' => Ok(Cyrillic::SmallLetterAbkhasianHa),
'Ҫ' => Ok(Cyrillic::CapitalLetterEsWithDescender),
'ҫ' => Ok(Cyrillic::SmallLetterEsWithDescender),
'Ҭ' => Ok(Cyrillic::CapitalLetterTeWithDescender),
'ҭ' => Ok(Cyrillic::SmallLetterTeWithDescender),
'Ү' => Ok(Cyrillic::CapitalLetterStraightU),
'ү' => Ok(Cyrillic::SmallLetterStraightU),
'Ұ' => Ok(Cyrillic::CapitalLetterStraightUWithStroke),
'ұ' => Ok(Cyrillic::SmallLetterStraightUWithStroke),
'Ҳ' => Ok(Cyrillic::CapitalLetterHaWithDescender),
'ҳ' => Ok(Cyrillic::SmallLetterHaWithDescender),
'Ҵ' => Ok(Cyrillic::CapitalLigatureTeTse),
'ҵ' => Ok(Cyrillic::SmallLigatureTeTse),
'Ҷ' => Ok(Cyrillic::CapitalLetterCheWithDescender),
'ҷ' => Ok(Cyrillic::SmallLetterCheWithDescender),
'Ҹ' => Ok(Cyrillic::CapitalLetterCheWithVerticalStroke),
'ҹ' => Ok(Cyrillic::SmallLetterCheWithVerticalStroke),
'Һ' => Ok(Cyrillic::CapitalLetterShha),
'һ' => Ok(Cyrillic::SmallLetterShha),
'Ҽ' => Ok(Cyrillic::CapitalLetterAbkhasianChe),
'ҽ' => Ok(Cyrillic::SmallLetterAbkhasianChe),
'Ҿ' => Ok(Cyrillic::CapitalLetterAbkhasianCheWithDescender),
'ҿ' => Ok(Cyrillic::SmallLetterAbkhasianCheWithDescender),
'Ӏ' => Ok(Cyrillic::LetterPalochka),
'Ӂ' => Ok(Cyrillic::CapitalLetterZheWithBreve),
'ӂ' => Ok(Cyrillic::SmallLetterZheWithBreve),
'Ӄ' => Ok(Cyrillic::CapitalLetterKaWithHook),
'ӄ' => Ok(Cyrillic::SmallLetterKaWithHook),
'Ӆ' => Ok(Cyrillic::CapitalLetterElWithTail),
'ӆ' => Ok(Cyrillic::SmallLetterElWithTail),
'Ӈ' => Ok(Cyrillic::CapitalLetterEnWithHook),
'ӈ' => Ok(Cyrillic::SmallLetterEnWithHook),
'Ӊ' => Ok(Cyrillic::CapitalLetterEnWithTail),
'ӊ' => Ok(Cyrillic::SmallLetterEnWithTail),
'Ӌ' => Ok(Cyrillic::CapitalLetterKhakassianChe),
'ӌ' => Ok(Cyrillic::SmallLetterKhakassianChe),
'Ӎ' => Ok(Cyrillic::CapitalLetterEmWithTail),
'ӎ' => Ok(Cyrillic::SmallLetterEmWithTail),
'ӏ' => Ok(Cyrillic::SmallLetterPalochka),
'Ӑ' => Ok(Cyrillic::CapitalLetterAWithBreve),
'ӑ' => Ok(Cyrillic::SmallLetterAWithBreve),
'Ӓ' => Ok(Cyrillic::CapitalLetterAWithDiaeresis),
'ӓ' => Ok(Cyrillic::SmallLetterAWithDiaeresis),
'Ӕ' => Ok(Cyrillic::CapitalLigatureAIe),
'ӕ' => Ok(Cyrillic::SmallLigatureAIe),
'Ӗ' => Ok(Cyrillic::CapitalLetterIeWithBreve),
'ӗ' => Ok(Cyrillic::SmallLetterIeWithBreve),
'Ә' => Ok(Cyrillic::CapitalLetterSchwa),
'ә' => Ok(Cyrillic::SmallLetterSchwa),
'Ӛ' => Ok(Cyrillic::CapitalLetterSchwaWithDiaeresis),
'ӛ' => Ok(Cyrillic::SmallLetterSchwaWithDiaeresis),
'Ӝ' => Ok(Cyrillic::CapitalLetterZheWithDiaeresis),
'ӝ' => Ok(Cyrillic::SmallLetterZheWithDiaeresis),
'Ӟ' => Ok(Cyrillic::CapitalLetterZeWithDiaeresis),
'ӟ' => Ok(Cyrillic::SmallLetterZeWithDiaeresis),
'Ӡ' => Ok(Cyrillic::CapitalLetterAbkhasianDze),
'ӡ' => Ok(Cyrillic::SmallLetterAbkhasianDze),
'Ӣ' => Ok(Cyrillic::CapitalLetterIWithMacron),
'ӣ' => Ok(Cyrillic::SmallLetterIWithMacron),
'Ӥ' => Ok(Cyrillic::CapitalLetterIWithDiaeresis),
'ӥ' => Ok(Cyrillic::SmallLetterIWithDiaeresis),
'Ӧ' => Ok(Cyrillic::CapitalLetterOWithDiaeresis),
'ӧ' => Ok(Cyrillic::SmallLetterOWithDiaeresis),
'Ө' => Ok(Cyrillic::CapitalLetterBarredO),
'ө' => Ok(Cyrillic::SmallLetterBarredO),
'Ӫ' => Ok(Cyrillic::CapitalLetterBarredOWithDiaeresis),
'ӫ' => Ok(Cyrillic::SmallLetterBarredOWithDiaeresis),
'Ӭ' => Ok(Cyrillic::CapitalLetterEWithDiaeresis),
'ӭ' => Ok(Cyrillic::SmallLetterEWithDiaeresis),
'Ӯ' => Ok(Cyrillic::CapitalLetterUWithMacron),
'ӯ' => Ok(Cyrillic::SmallLetterUWithMacron),
'Ӱ' => Ok(Cyrillic::CapitalLetterUWithDiaeresis),
'ӱ' => Ok(Cyrillic::SmallLetterUWithDiaeresis),
'Ӳ' => Ok(Cyrillic::CapitalLetterUWithDoubleAcute),
'ӳ' => Ok(Cyrillic::SmallLetterUWithDoubleAcute),
'Ӵ' => Ok(Cyrillic::CapitalLetterCheWithDiaeresis),
'ӵ' => Ok(Cyrillic::SmallLetterCheWithDiaeresis),
'Ӷ' => Ok(Cyrillic::CapitalLetterGheWithDescender),
'ӷ' => Ok(Cyrillic::SmallLetterGheWithDescender),
'Ӹ' => Ok(Cyrillic::CapitalLetterYeruWithDiaeresis),
'ӹ' => Ok(Cyrillic::SmallLetterYeruWithDiaeresis),
'Ӻ' => Ok(Cyrillic::CapitalLetterGheWithStrokeAndHook),
'ӻ' => Ok(Cyrillic::SmallLetterGheWithStrokeAndHook),
'Ӽ' => Ok(Cyrillic::CapitalLetterHaWithHook),
'ӽ' => Ok(Cyrillic::SmallLetterHaWithHook),
'Ӿ' => Ok(Cyrillic::CapitalLetterHaWithStroke),
_ => Err(()),
}
}
}
impl Into<u32> for Cyrillic {
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 Cyrillic {
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 Cyrillic {
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 Cyrillic {
pub fn new() -> Self {
Cyrillic::CapitalLetterIeWithGrave
}
pub fn name(&self) -> String {
let s = std::format!("Cyrillic{:#?}", self);
string_morph::to_sentence_case(&s)
}
}