mod constants {
pub const HANGUL_LETTER_KIYEOK: char = 'ㄱ';
pub const HANGUL_LETTER_SSANGKIYEOK: char = 'ㄲ';
pub const HANGUL_LETTER_KIYEOK_DASH_SIOS: char = 'ㄳ';
pub const HANGUL_LETTER_NIEUN: char = 'ㄴ';
pub const HANGUL_LETTER_NIEUN_DASH_CIEUC: char = 'ㄵ';
pub const HANGUL_LETTER_NIEUN_DASH_HIEUH: char = 'ㄶ';
pub const HANGUL_LETTER_TIKEUT: char = 'ㄷ';
pub const HANGUL_LETTER_SSANGTIKEUT: char = 'ㄸ';
pub const HANGUL_LETTER_RIEUL: char = 'ㄹ';
pub const HANGUL_LETTER_RIEUL_DASH_KIYEOK: char = 'ㄺ';
pub const HANGUL_LETTER_RIEUL_DASH_MIEUM: char = 'ㄻ';
pub const HANGUL_LETTER_RIEUL_DASH_PIEUP: char = 'ㄼ';
pub const HANGUL_LETTER_RIEUL_DASH_SIOS: char = 'ㄽ';
pub const HANGUL_LETTER_RIEUL_DASH_THIEUTH: char = 'ㄾ';
pub const HANGUL_LETTER_RIEUL_DASH_PHIEUPH: char = 'ㄿ';
pub const HANGUL_LETTER_RIEUL_DASH_HIEUH: char = 'ㅀ';
pub const HANGUL_LETTER_MIEUM: char = 'ㅁ';
pub const HANGUL_LETTER_PIEUP: char = 'ㅂ';
pub const HANGUL_LETTER_SSANGPIEUP: char = 'ㅃ';
pub const HANGUL_LETTER_PIEUP_DASH_SIOS: char = 'ㅄ';
pub const HANGUL_LETTER_SIOS: char = 'ㅅ';
pub const HANGUL_LETTER_SSANGSIOS: char = 'ㅆ';
pub const HANGUL_LETTER_IEUNG: char = 'ㅇ';
pub const HANGUL_LETTER_CIEUC: char = 'ㅈ';
pub const HANGUL_LETTER_SSANGCIEUC: char = 'ㅉ';
pub const HANGUL_LETTER_CHIEUCH: char = 'ㅊ';
pub const HANGUL_LETTER_KHIEUKH: char = 'ㅋ';
pub const HANGUL_LETTER_THIEUTH: char = 'ㅌ';
pub const HANGUL_LETTER_PHIEUPH: char = 'ㅍ';
pub const HANGUL_LETTER_HIEUH: char = 'ㅎ';
pub const HANGUL_LETTER_A: char = 'ㅏ';
pub const HANGUL_LETTER_AE: char = 'ㅐ';
pub const HANGUL_LETTER_YA: char = 'ㅑ';
pub const HANGUL_LETTER_YAE: char = 'ㅒ';
pub const HANGUL_LETTER_EO: char = 'ㅓ';
pub const HANGUL_LETTER_E: char = 'ㅔ';
pub const HANGUL_LETTER_YEO: char = 'ㅕ';
pub const HANGUL_LETTER_YE: char = 'ㅖ';
pub const HANGUL_LETTER_O: char = 'ㅗ';
pub const HANGUL_LETTER_WA: char = 'ㅘ';
pub const HANGUL_LETTER_WAE: char = 'ㅙ';
pub const HANGUL_LETTER_OE: char = 'ㅚ';
pub const HANGUL_LETTER_YO: char = 'ㅛ';
pub const HANGUL_LETTER_U: char = 'ㅜ';
pub const HANGUL_LETTER_WEO: char = 'ㅝ';
pub const HANGUL_LETTER_WE: char = 'ㅞ';
pub const HANGUL_LETTER_WI: char = 'ㅟ';
pub const HANGUL_LETTER_YU: char = 'ㅠ';
pub const HANGUL_LETTER_EU: char = 'ㅡ';
pub const HANGUL_LETTER_YI: char = 'ㅢ';
pub const HANGUL_LETTER_I: char = 'ㅣ';
pub const HANGUL_FILLER: char = 'ㅤ';
pub const HANGUL_LETTER_SSANGNIEUN: char = 'ㅥ';
pub const HANGUL_LETTER_NIEUN_DASH_TIKEUT: char = 'ㅦ';
pub const HANGUL_LETTER_NIEUN_DASH_SIOS: char = 'ㅧ';
pub const HANGUL_LETTER_NIEUN_DASH_PANSIOS: char = 'ㅨ';
pub const HANGUL_LETTER_RIEUL_DASH_KIYEOK_DASH_SIOS: char = 'ㅩ';
pub const HANGUL_LETTER_RIEUL_DASH_TIKEUT: char = 'ㅪ';
pub const HANGUL_LETTER_RIEUL_DASH_PIEUP_DASH_SIOS: char = 'ㅫ';
pub const HANGUL_LETTER_RIEUL_DASH_PANSIOS: char = 'ㅬ';
pub const HANGUL_LETTER_RIEUL_DASH_YEORINHIEUH: char = 'ㅭ';
pub const HANGUL_LETTER_MIEUM_DASH_PIEUP: char = 'ㅮ';
pub const HANGUL_LETTER_MIEUM_DASH_SIOS: char = 'ㅯ';
pub const HANGUL_LETTER_MIEUM_DASH_PANSIOS: char = 'ㅰ';
pub const HANGUL_LETTER_KAPYEOUNMIEUM: char = 'ㅱ';
pub const HANGUL_LETTER_PIEUP_DASH_KIYEOK: char = 'ㅲ';
pub const HANGUL_LETTER_PIEUP_DASH_TIKEUT: char = 'ㅳ';
pub const HANGUL_LETTER_PIEUP_DASH_SIOS_DASH_KIYEOK: char = 'ㅴ';
pub const HANGUL_LETTER_PIEUP_DASH_SIOS_DASH_TIKEUT: char = 'ㅵ';
pub const HANGUL_LETTER_PIEUP_DASH_CIEUC: char = 'ㅶ';
pub const HANGUL_LETTER_PIEUP_DASH_THIEUTH: char = 'ㅷ';
pub const HANGUL_LETTER_KAPYEOUNPIEUP: char = 'ㅸ';
pub const HANGUL_LETTER_KAPYEOUNSSANGPIEUP: char = 'ㅹ';
pub const HANGUL_LETTER_SIOS_DASH_KIYEOK: char = 'ㅺ';
pub const HANGUL_LETTER_SIOS_DASH_NIEUN: char = 'ㅻ';
pub const HANGUL_LETTER_SIOS_DASH_TIKEUT: char = 'ㅼ';
pub const HANGUL_LETTER_SIOS_DASH_PIEUP: char = 'ㅽ';
pub const HANGUL_LETTER_SIOS_DASH_CIEUC: char = 'ㅾ';
pub const HANGUL_LETTER_PANSIOS: char = 'ㅿ';
pub const HANGUL_LETTER_SSANGIEUNG: char = 'ㆀ';
pub const HANGUL_LETTER_YESIEUNG: char = 'ㆁ';
pub const HANGUL_LETTER_YESIEUNG_DASH_SIOS: char = 'ㆂ';
pub const HANGUL_LETTER_YESIEUNG_DASH_PANSIOS: char = 'ㆃ';
pub const HANGUL_LETTER_KAPYEOUNPHIEUPH: char = 'ㆄ';
pub const HANGUL_LETTER_SSANGHIEUH: char = 'ㆅ';
pub const HANGUL_LETTER_YEORINHIEUH: char = 'ㆆ';
pub const HANGUL_LETTER_YO_DASH_YA: char = 'ㆇ';
pub const HANGUL_LETTER_YO_DASH_YAE: char = 'ㆈ';
pub const HANGUL_LETTER_YO_DASH_I: char = 'ㆉ';
pub const HANGUL_LETTER_YU_DASH_YEO: char = 'ㆊ';
pub const HANGUL_LETTER_YU_DASH_YE: char = 'ㆋ';
pub const HANGUL_LETTER_YU_DASH_I: char = 'ㆌ';
pub const HANGUL_LETTER_ARAEA: char = 'ㆍ';
pub const HANGUL_LETTER_ARAEAE: char = 'ㆎ';
}
#[derive(Debug, Clone, Copy, Hash, PartialEq, Eq)]
pub enum HangulCompatibilityJamo {
HangulLetterKiyeok,
HangulLetterSsangkiyeok,
HangulLetterKiyeokDashSios,
HangulLetterNieun,
HangulLetterNieunDashCieuc,
HangulLetterNieunDashHieuh,
HangulLetterTikeut,
HangulLetterSsangtikeut,
HangulLetterRieul,
HangulLetterRieulDashKiyeok,
HangulLetterRieulDashMieum,
HangulLetterRieulDashPieup,
HangulLetterRieulDashSios,
HangulLetterRieulDashThieuth,
HangulLetterRieulDashPhieuph,
HangulLetterRieulDashHieuh,
HangulLetterMieum,
HangulLetterPieup,
HangulLetterSsangpieup,
HangulLetterPieupDashSios,
HangulLetterSios,
HangulLetterSsangsios,
HangulLetterIeung,
HangulLetterCieuc,
HangulLetterSsangcieuc,
HangulLetterChieuch,
HangulLetterKhieukh,
HangulLetterThieuth,
HangulLetterPhieuph,
HangulLetterHieuh,
HangulLetterA,
HangulLetterAe,
HangulLetterYa,
HangulLetterYae,
HangulLetterEo,
HangulLetterE,
HangulLetterYeo,
HangulLetterYe,
HangulLetterO,
HangulLetterWa,
HangulLetterWae,
HangulLetterOe,
HangulLetterYo,
HangulLetterU,
HangulLetterWeo,
HangulLetterWe,
HangulLetterWi,
HangulLetterYu,
HangulLetterEu,
HangulLetterYi,
HangulLetterI,
HangulFiller,
HangulLetterSsangnieun,
HangulLetterNieunDashTikeut,
HangulLetterNieunDashSios,
HangulLetterNieunDashPansios,
HangulLetterRieulDashKiyeokDashSios,
HangulLetterRieulDashTikeut,
HangulLetterRieulDashPieupDashSios,
HangulLetterRieulDashPansios,
HangulLetterRieulDashYeorinhieuh,
HangulLetterMieumDashPieup,
HangulLetterMieumDashSios,
HangulLetterMieumDashPansios,
HangulLetterKapyeounmieum,
HangulLetterPieupDashKiyeok,
HangulLetterPieupDashTikeut,
HangulLetterPieupDashSiosDashKiyeok,
HangulLetterPieupDashSiosDashTikeut,
HangulLetterPieupDashCieuc,
HangulLetterPieupDashThieuth,
HangulLetterKapyeounpieup,
HangulLetterKapyeounssangpieup,
HangulLetterSiosDashKiyeok,
HangulLetterSiosDashNieun,
HangulLetterSiosDashTikeut,
HangulLetterSiosDashPieup,
HangulLetterSiosDashCieuc,
HangulLetterPansios,
HangulLetterSsangieung,
HangulLetterYesieung,
HangulLetterYesieungDashSios,
HangulLetterYesieungDashPansios,
HangulLetterKapyeounphieuph,
HangulLetterSsanghieuh,
HangulLetterYeorinhieuh,
HangulLetterYoDashYa,
HangulLetterYoDashYae,
HangulLetterYoDashI,
HangulLetterYuDashYeo,
HangulLetterYuDashYe,
HangulLetterYuDashI,
HangulLetterAraea,
HangulLetterAraeae,
}
impl Into<char> for HangulCompatibilityJamo {
fn into(self) -> char {
use constants::*;
match self {
HangulCompatibilityJamo::HangulLetterKiyeok => HANGUL_LETTER_KIYEOK,
HangulCompatibilityJamo::HangulLetterSsangkiyeok => HANGUL_LETTER_SSANGKIYEOK,
HangulCompatibilityJamo::HangulLetterKiyeokDashSios => HANGUL_LETTER_KIYEOK_DASH_SIOS,
HangulCompatibilityJamo::HangulLetterNieun => HANGUL_LETTER_NIEUN,
HangulCompatibilityJamo::HangulLetterNieunDashCieuc => HANGUL_LETTER_NIEUN_DASH_CIEUC,
HangulCompatibilityJamo::HangulLetterNieunDashHieuh => HANGUL_LETTER_NIEUN_DASH_HIEUH,
HangulCompatibilityJamo::HangulLetterTikeut => HANGUL_LETTER_TIKEUT,
HangulCompatibilityJamo::HangulLetterSsangtikeut => HANGUL_LETTER_SSANGTIKEUT,
HangulCompatibilityJamo::HangulLetterRieul => HANGUL_LETTER_RIEUL,
HangulCompatibilityJamo::HangulLetterRieulDashKiyeok => HANGUL_LETTER_RIEUL_DASH_KIYEOK,
HangulCompatibilityJamo::HangulLetterRieulDashMieum => HANGUL_LETTER_RIEUL_DASH_MIEUM,
HangulCompatibilityJamo::HangulLetterRieulDashPieup => HANGUL_LETTER_RIEUL_DASH_PIEUP,
HangulCompatibilityJamo::HangulLetterRieulDashSios => HANGUL_LETTER_RIEUL_DASH_SIOS,
HangulCompatibilityJamo::HangulLetterRieulDashThieuth => HANGUL_LETTER_RIEUL_DASH_THIEUTH,
HangulCompatibilityJamo::HangulLetterRieulDashPhieuph => HANGUL_LETTER_RIEUL_DASH_PHIEUPH,
HangulCompatibilityJamo::HangulLetterRieulDashHieuh => HANGUL_LETTER_RIEUL_DASH_HIEUH,
HangulCompatibilityJamo::HangulLetterMieum => HANGUL_LETTER_MIEUM,
HangulCompatibilityJamo::HangulLetterPieup => HANGUL_LETTER_PIEUP,
HangulCompatibilityJamo::HangulLetterSsangpieup => HANGUL_LETTER_SSANGPIEUP,
HangulCompatibilityJamo::HangulLetterPieupDashSios => HANGUL_LETTER_PIEUP_DASH_SIOS,
HangulCompatibilityJamo::HangulLetterSios => HANGUL_LETTER_SIOS,
HangulCompatibilityJamo::HangulLetterSsangsios => HANGUL_LETTER_SSANGSIOS,
HangulCompatibilityJamo::HangulLetterIeung => HANGUL_LETTER_IEUNG,
HangulCompatibilityJamo::HangulLetterCieuc => HANGUL_LETTER_CIEUC,
HangulCompatibilityJamo::HangulLetterSsangcieuc => HANGUL_LETTER_SSANGCIEUC,
HangulCompatibilityJamo::HangulLetterChieuch => HANGUL_LETTER_CHIEUCH,
HangulCompatibilityJamo::HangulLetterKhieukh => HANGUL_LETTER_KHIEUKH,
HangulCompatibilityJamo::HangulLetterThieuth => HANGUL_LETTER_THIEUTH,
HangulCompatibilityJamo::HangulLetterPhieuph => HANGUL_LETTER_PHIEUPH,
HangulCompatibilityJamo::HangulLetterHieuh => HANGUL_LETTER_HIEUH,
HangulCompatibilityJamo::HangulLetterA => HANGUL_LETTER_A,
HangulCompatibilityJamo::HangulLetterAe => HANGUL_LETTER_AE,
HangulCompatibilityJamo::HangulLetterYa => HANGUL_LETTER_YA,
HangulCompatibilityJamo::HangulLetterYae => HANGUL_LETTER_YAE,
HangulCompatibilityJamo::HangulLetterEo => HANGUL_LETTER_EO,
HangulCompatibilityJamo::HangulLetterE => HANGUL_LETTER_E,
HangulCompatibilityJamo::HangulLetterYeo => HANGUL_LETTER_YEO,
HangulCompatibilityJamo::HangulLetterYe => HANGUL_LETTER_YE,
HangulCompatibilityJamo::HangulLetterO => HANGUL_LETTER_O,
HangulCompatibilityJamo::HangulLetterWa => HANGUL_LETTER_WA,
HangulCompatibilityJamo::HangulLetterWae => HANGUL_LETTER_WAE,
HangulCompatibilityJamo::HangulLetterOe => HANGUL_LETTER_OE,
HangulCompatibilityJamo::HangulLetterYo => HANGUL_LETTER_YO,
HangulCompatibilityJamo::HangulLetterU => HANGUL_LETTER_U,
HangulCompatibilityJamo::HangulLetterWeo => HANGUL_LETTER_WEO,
HangulCompatibilityJamo::HangulLetterWe => HANGUL_LETTER_WE,
HangulCompatibilityJamo::HangulLetterWi => HANGUL_LETTER_WI,
HangulCompatibilityJamo::HangulLetterYu => HANGUL_LETTER_YU,
HangulCompatibilityJamo::HangulLetterEu => HANGUL_LETTER_EU,
HangulCompatibilityJamo::HangulLetterYi => HANGUL_LETTER_YI,
HangulCompatibilityJamo::HangulLetterI => HANGUL_LETTER_I,
HangulCompatibilityJamo::HangulFiller => HANGUL_FILLER,
HangulCompatibilityJamo::HangulLetterSsangnieun => HANGUL_LETTER_SSANGNIEUN,
HangulCompatibilityJamo::HangulLetterNieunDashTikeut => HANGUL_LETTER_NIEUN_DASH_TIKEUT,
HangulCompatibilityJamo::HangulLetterNieunDashSios => HANGUL_LETTER_NIEUN_DASH_SIOS,
HangulCompatibilityJamo::HangulLetterNieunDashPansios => HANGUL_LETTER_NIEUN_DASH_PANSIOS,
HangulCompatibilityJamo::HangulLetterRieulDashKiyeokDashSios => HANGUL_LETTER_RIEUL_DASH_KIYEOK_DASH_SIOS,
HangulCompatibilityJamo::HangulLetterRieulDashTikeut => HANGUL_LETTER_RIEUL_DASH_TIKEUT,
HangulCompatibilityJamo::HangulLetterRieulDashPieupDashSios => HANGUL_LETTER_RIEUL_DASH_PIEUP_DASH_SIOS,
HangulCompatibilityJamo::HangulLetterRieulDashPansios => HANGUL_LETTER_RIEUL_DASH_PANSIOS,
HangulCompatibilityJamo::HangulLetterRieulDashYeorinhieuh => HANGUL_LETTER_RIEUL_DASH_YEORINHIEUH,
HangulCompatibilityJamo::HangulLetterMieumDashPieup => HANGUL_LETTER_MIEUM_DASH_PIEUP,
HangulCompatibilityJamo::HangulLetterMieumDashSios => HANGUL_LETTER_MIEUM_DASH_SIOS,
HangulCompatibilityJamo::HangulLetterMieumDashPansios => HANGUL_LETTER_MIEUM_DASH_PANSIOS,
HangulCompatibilityJamo::HangulLetterKapyeounmieum => HANGUL_LETTER_KAPYEOUNMIEUM,
HangulCompatibilityJamo::HangulLetterPieupDashKiyeok => HANGUL_LETTER_PIEUP_DASH_KIYEOK,
HangulCompatibilityJamo::HangulLetterPieupDashTikeut => HANGUL_LETTER_PIEUP_DASH_TIKEUT,
HangulCompatibilityJamo::HangulLetterPieupDashSiosDashKiyeok => HANGUL_LETTER_PIEUP_DASH_SIOS_DASH_KIYEOK,
HangulCompatibilityJamo::HangulLetterPieupDashSiosDashTikeut => HANGUL_LETTER_PIEUP_DASH_SIOS_DASH_TIKEUT,
HangulCompatibilityJamo::HangulLetterPieupDashCieuc => HANGUL_LETTER_PIEUP_DASH_CIEUC,
HangulCompatibilityJamo::HangulLetterPieupDashThieuth => HANGUL_LETTER_PIEUP_DASH_THIEUTH,
HangulCompatibilityJamo::HangulLetterKapyeounpieup => HANGUL_LETTER_KAPYEOUNPIEUP,
HangulCompatibilityJamo::HangulLetterKapyeounssangpieup => HANGUL_LETTER_KAPYEOUNSSANGPIEUP,
HangulCompatibilityJamo::HangulLetterSiosDashKiyeok => HANGUL_LETTER_SIOS_DASH_KIYEOK,
HangulCompatibilityJamo::HangulLetterSiosDashNieun => HANGUL_LETTER_SIOS_DASH_NIEUN,
HangulCompatibilityJamo::HangulLetterSiosDashTikeut => HANGUL_LETTER_SIOS_DASH_TIKEUT,
HangulCompatibilityJamo::HangulLetterSiosDashPieup => HANGUL_LETTER_SIOS_DASH_PIEUP,
HangulCompatibilityJamo::HangulLetterSiosDashCieuc => HANGUL_LETTER_SIOS_DASH_CIEUC,
HangulCompatibilityJamo::HangulLetterPansios => HANGUL_LETTER_PANSIOS,
HangulCompatibilityJamo::HangulLetterSsangieung => HANGUL_LETTER_SSANGIEUNG,
HangulCompatibilityJamo::HangulLetterYesieung => HANGUL_LETTER_YESIEUNG,
HangulCompatibilityJamo::HangulLetterYesieungDashSios => HANGUL_LETTER_YESIEUNG_DASH_SIOS,
HangulCompatibilityJamo::HangulLetterYesieungDashPansios => HANGUL_LETTER_YESIEUNG_DASH_PANSIOS,
HangulCompatibilityJamo::HangulLetterKapyeounphieuph => HANGUL_LETTER_KAPYEOUNPHIEUPH,
HangulCompatibilityJamo::HangulLetterSsanghieuh => HANGUL_LETTER_SSANGHIEUH,
HangulCompatibilityJamo::HangulLetterYeorinhieuh => HANGUL_LETTER_YEORINHIEUH,
HangulCompatibilityJamo::HangulLetterYoDashYa => HANGUL_LETTER_YO_DASH_YA,
HangulCompatibilityJamo::HangulLetterYoDashYae => HANGUL_LETTER_YO_DASH_YAE,
HangulCompatibilityJamo::HangulLetterYoDashI => HANGUL_LETTER_YO_DASH_I,
HangulCompatibilityJamo::HangulLetterYuDashYeo => HANGUL_LETTER_YU_DASH_YEO,
HangulCompatibilityJamo::HangulLetterYuDashYe => HANGUL_LETTER_YU_DASH_YE,
HangulCompatibilityJamo::HangulLetterYuDashI => HANGUL_LETTER_YU_DASH_I,
HangulCompatibilityJamo::HangulLetterAraea => HANGUL_LETTER_ARAEA,
HangulCompatibilityJamo::HangulLetterAraeae => HANGUL_LETTER_ARAEAE,
}
}
}
impl std::convert::TryFrom<char> for HangulCompatibilityJamo {
type Error = ();
fn try_from(c: char) -> Result<Self, Self::Error> {
use constants::*;
match c {
HANGUL_LETTER_KIYEOK => Ok(HangulCompatibilityJamo::HangulLetterKiyeok),
HANGUL_LETTER_SSANGKIYEOK => Ok(HangulCompatibilityJamo::HangulLetterSsangkiyeok),
HANGUL_LETTER_KIYEOK_DASH_SIOS => Ok(HangulCompatibilityJamo::HangulLetterKiyeokDashSios),
HANGUL_LETTER_NIEUN => Ok(HangulCompatibilityJamo::HangulLetterNieun),
HANGUL_LETTER_NIEUN_DASH_CIEUC => Ok(HangulCompatibilityJamo::HangulLetterNieunDashCieuc),
HANGUL_LETTER_NIEUN_DASH_HIEUH => Ok(HangulCompatibilityJamo::HangulLetterNieunDashHieuh),
HANGUL_LETTER_TIKEUT => Ok(HangulCompatibilityJamo::HangulLetterTikeut),
HANGUL_LETTER_SSANGTIKEUT => Ok(HangulCompatibilityJamo::HangulLetterSsangtikeut),
HANGUL_LETTER_RIEUL => Ok(HangulCompatibilityJamo::HangulLetterRieul),
HANGUL_LETTER_RIEUL_DASH_KIYEOK => Ok(HangulCompatibilityJamo::HangulLetterRieulDashKiyeok),
HANGUL_LETTER_RIEUL_DASH_MIEUM => Ok(HangulCompatibilityJamo::HangulLetterRieulDashMieum),
HANGUL_LETTER_RIEUL_DASH_PIEUP => Ok(HangulCompatibilityJamo::HangulLetterRieulDashPieup),
HANGUL_LETTER_RIEUL_DASH_SIOS => Ok(HangulCompatibilityJamo::HangulLetterRieulDashSios),
HANGUL_LETTER_RIEUL_DASH_THIEUTH => Ok(HangulCompatibilityJamo::HangulLetterRieulDashThieuth),
HANGUL_LETTER_RIEUL_DASH_PHIEUPH => Ok(HangulCompatibilityJamo::HangulLetterRieulDashPhieuph),
HANGUL_LETTER_RIEUL_DASH_HIEUH => Ok(HangulCompatibilityJamo::HangulLetterRieulDashHieuh),
HANGUL_LETTER_MIEUM => Ok(HangulCompatibilityJamo::HangulLetterMieum),
HANGUL_LETTER_PIEUP => Ok(HangulCompatibilityJamo::HangulLetterPieup),
HANGUL_LETTER_SSANGPIEUP => Ok(HangulCompatibilityJamo::HangulLetterSsangpieup),
HANGUL_LETTER_PIEUP_DASH_SIOS => Ok(HangulCompatibilityJamo::HangulLetterPieupDashSios),
HANGUL_LETTER_SIOS => Ok(HangulCompatibilityJamo::HangulLetterSios),
HANGUL_LETTER_SSANGSIOS => Ok(HangulCompatibilityJamo::HangulLetterSsangsios),
HANGUL_LETTER_IEUNG => Ok(HangulCompatibilityJamo::HangulLetterIeung),
HANGUL_LETTER_CIEUC => Ok(HangulCompatibilityJamo::HangulLetterCieuc),
HANGUL_LETTER_SSANGCIEUC => Ok(HangulCompatibilityJamo::HangulLetterSsangcieuc),
HANGUL_LETTER_CHIEUCH => Ok(HangulCompatibilityJamo::HangulLetterChieuch),
HANGUL_LETTER_KHIEUKH => Ok(HangulCompatibilityJamo::HangulLetterKhieukh),
HANGUL_LETTER_THIEUTH => Ok(HangulCompatibilityJamo::HangulLetterThieuth),
HANGUL_LETTER_PHIEUPH => Ok(HangulCompatibilityJamo::HangulLetterPhieuph),
HANGUL_LETTER_HIEUH => Ok(HangulCompatibilityJamo::HangulLetterHieuh),
HANGUL_LETTER_A => Ok(HangulCompatibilityJamo::HangulLetterA),
HANGUL_LETTER_AE => Ok(HangulCompatibilityJamo::HangulLetterAe),
HANGUL_LETTER_YA => Ok(HangulCompatibilityJamo::HangulLetterYa),
HANGUL_LETTER_YAE => Ok(HangulCompatibilityJamo::HangulLetterYae),
HANGUL_LETTER_EO => Ok(HangulCompatibilityJamo::HangulLetterEo),
HANGUL_LETTER_E => Ok(HangulCompatibilityJamo::HangulLetterE),
HANGUL_LETTER_YEO => Ok(HangulCompatibilityJamo::HangulLetterYeo),
HANGUL_LETTER_YE => Ok(HangulCompatibilityJamo::HangulLetterYe),
HANGUL_LETTER_O => Ok(HangulCompatibilityJamo::HangulLetterO),
HANGUL_LETTER_WA => Ok(HangulCompatibilityJamo::HangulLetterWa),
HANGUL_LETTER_WAE => Ok(HangulCompatibilityJamo::HangulLetterWae),
HANGUL_LETTER_OE => Ok(HangulCompatibilityJamo::HangulLetterOe),
HANGUL_LETTER_YO => Ok(HangulCompatibilityJamo::HangulLetterYo),
HANGUL_LETTER_U => Ok(HangulCompatibilityJamo::HangulLetterU),
HANGUL_LETTER_WEO => Ok(HangulCompatibilityJamo::HangulLetterWeo),
HANGUL_LETTER_WE => Ok(HangulCompatibilityJamo::HangulLetterWe),
HANGUL_LETTER_WI => Ok(HangulCompatibilityJamo::HangulLetterWi),
HANGUL_LETTER_YU => Ok(HangulCompatibilityJamo::HangulLetterYu),
HANGUL_LETTER_EU => Ok(HangulCompatibilityJamo::HangulLetterEu),
HANGUL_LETTER_YI => Ok(HangulCompatibilityJamo::HangulLetterYi),
HANGUL_LETTER_I => Ok(HangulCompatibilityJamo::HangulLetterI),
HANGUL_FILLER => Ok(HangulCompatibilityJamo::HangulFiller),
HANGUL_LETTER_SSANGNIEUN => Ok(HangulCompatibilityJamo::HangulLetterSsangnieun),
HANGUL_LETTER_NIEUN_DASH_TIKEUT => Ok(HangulCompatibilityJamo::HangulLetterNieunDashTikeut),
HANGUL_LETTER_NIEUN_DASH_SIOS => Ok(HangulCompatibilityJamo::HangulLetterNieunDashSios),
HANGUL_LETTER_NIEUN_DASH_PANSIOS => Ok(HangulCompatibilityJamo::HangulLetterNieunDashPansios),
HANGUL_LETTER_RIEUL_DASH_KIYEOK_DASH_SIOS => Ok(HangulCompatibilityJamo::HangulLetterRieulDashKiyeokDashSios),
HANGUL_LETTER_RIEUL_DASH_TIKEUT => Ok(HangulCompatibilityJamo::HangulLetterRieulDashTikeut),
HANGUL_LETTER_RIEUL_DASH_PIEUP_DASH_SIOS => Ok(HangulCompatibilityJamo::HangulLetterRieulDashPieupDashSios),
HANGUL_LETTER_RIEUL_DASH_PANSIOS => Ok(HangulCompatibilityJamo::HangulLetterRieulDashPansios),
HANGUL_LETTER_RIEUL_DASH_YEORINHIEUH => Ok(HangulCompatibilityJamo::HangulLetterRieulDashYeorinhieuh),
HANGUL_LETTER_MIEUM_DASH_PIEUP => Ok(HangulCompatibilityJamo::HangulLetterMieumDashPieup),
HANGUL_LETTER_MIEUM_DASH_SIOS => Ok(HangulCompatibilityJamo::HangulLetterMieumDashSios),
HANGUL_LETTER_MIEUM_DASH_PANSIOS => Ok(HangulCompatibilityJamo::HangulLetterMieumDashPansios),
HANGUL_LETTER_KAPYEOUNMIEUM => Ok(HangulCompatibilityJamo::HangulLetterKapyeounmieum),
HANGUL_LETTER_PIEUP_DASH_KIYEOK => Ok(HangulCompatibilityJamo::HangulLetterPieupDashKiyeok),
HANGUL_LETTER_PIEUP_DASH_TIKEUT => Ok(HangulCompatibilityJamo::HangulLetterPieupDashTikeut),
HANGUL_LETTER_PIEUP_DASH_SIOS_DASH_KIYEOK => Ok(HangulCompatibilityJamo::HangulLetterPieupDashSiosDashKiyeok),
HANGUL_LETTER_PIEUP_DASH_SIOS_DASH_TIKEUT => Ok(HangulCompatibilityJamo::HangulLetterPieupDashSiosDashTikeut),
HANGUL_LETTER_PIEUP_DASH_CIEUC => Ok(HangulCompatibilityJamo::HangulLetterPieupDashCieuc),
HANGUL_LETTER_PIEUP_DASH_THIEUTH => Ok(HangulCompatibilityJamo::HangulLetterPieupDashThieuth),
HANGUL_LETTER_KAPYEOUNPIEUP => Ok(HangulCompatibilityJamo::HangulLetterKapyeounpieup),
HANGUL_LETTER_KAPYEOUNSSANGPIEUP => Ok(HangulCompatibilityJamo::HangulLetterKapyeounssangpieup),
HANGUL_LETTER_SIOS_DASH_KIYEOK => Ok(HangulCompatibilityJamo::HangulLetterSiosDashKiyeok),
HANGUL_LETTER_SIOS_DASH_NIEUN => Ok(HangulCompatibilityJamo::HangulLetterSiosDashNieun),
HANGUL_LETTER_SIOS_DASH_TIKEUT => Ok(HangulCompatibilityJamo::HangulLetterSiosDashTikeut),
HANGUL_LETTER_SIOS_DASH_PIEUP => Ok(HangulCompatibilityJamo::HangulLetterSiosDashPieup),
HANGUL_LETTER_SIOS_DASH_CIEUC => Ok(HangulCompatibilityJamo::HangulLetterSiosDashCieuc),
HANGUL_LETTER_PANSIOS => Ok(HangulCompatibilityJamo::HangulLetterPansios),
HANGUL_LETTER_SSANGIEUNG => Ok(HangulCompatibilityJamo::HangulLetterSsangieung),
HANGUL_LETTER_YESIEUNG => Ok(HangulCompatibilityJamo::HangulLetterYesieung),
HANGUL_LETTER_YESIEUNG_DASH_SIOS => Ok(HangulCompatibilityJamo::HangulLetterYesieungDashSios),
HANGUL_LETTER_YESIEUNG_DASH_PANSIOS => Ok(HangulCompatibilityJamo::HangulLetterYesieungDashPansios),
HANGUL_LETTER_KAPYEOUNPHIEUPH => Ok(HangulCompatibilityJamo::HangulLetterKapyeounphieuph),
HANGUL_LETTER_SSANGHIEUH => Ok(HangulCompatibilityJamo::HangulLetterSsanghieuh),
HANGUL_LETTER_YEORINHIEUH => Ok(HangulCompatibilityJamo::HangulLetterYeorinhieuh),
HANGUL_LETTER_YO_DASH_YA => Ok(HangulCompatibilityJamo::HangulLetterYoDashYa),
HANGUL_LETTER_YO_DASH_YAE => Ok(HangulCompatibilityJamo::HangulLetterYoDashYae),
HANGUL_LETTER_YO_DASH_I => Ok(HangulCompatibilityJamo::HangulLetterYoDashI),
HANGUL_LETTER_YU_DASH_YEO => Ok(HangulCompatibilityJamo::HangulLetterYuDashYeo),
HANGUL_LETTER_YU_DASH_YE => Ok(HangulCompatibilityJamo::HangulLetterYuDashYe),
HANGUL_LETTER_YU_DASH_I => Ok(HangulCompatibilityJamo::HangulLetterYuDashI),
HANGUL_LETTER_ARAEA => Ok(HangulCompatibilityJamo::HangulLetterAraea),
HANGUL_LETTER_ARAEAE => Ok(HangulCompatibilityJamo::HangulLetterAraeae),
_ => Err(()),
}
}
}
impl Into<u32> for HangulCompatibilityJamo {
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 HangulCompatibilityJamo {
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 HangulCompatibilityJamo {
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 HangulCompatibilityJamo {
pub fn new() -> Self {
HangulCompatibilityJamo::HangulLetterKiyeok
}
pub fn name(&self) -> &str {
match self {
HangulCompatibilityJamo::HangulLetterKiyeok => "hangul letter kiyeok",
HangulCompatibilityJamo::HangulLetterSsangkiyeok => "hangul letter ssangkiyeok",
HangulCompatibilityJamo::HangulLetterKiyeokDashSios => "hangul letter kiyeok-sios",
HangulCompatibilityJamo::HangulLetterNieun => "hangul letter nieun",
HangulCompatibilityJamo::HangulLetterNieunDashCieuc => "hangul letter nieun-cieuc",
HangulCompatibilityJamo::HangulLetterNieunDashHieuh => "hangul letter nieun-hieuh",
HangulCompatibilityJamo::HangulLetterTikeut => "hangul letter tikeut",
HangulCompatibilityJamo::HangulLetterSsangtikeut => "hangul letter ssangtikeut",
HangulCompatibilityJamo::HangulLetterRieul => "hangul letter rieul",
HangulCompatibilityJamo::HangulLetterRieulDashKiyeok => "hangul letter rieul-kiyeok",
HangulCompatibilityJamo::HangulLetterRieulDashMieum => "hangul letter rieul-mieum",
HangulCompatibilityJamo::HangulLetterRieulDashPieup => "hangul letter rieul-pieup",
HangulCompatibilityJamo::HangulLetterRieulDashSios => "hangul letter rieul-sios",
HangulCompatibilityJamo::HangulLetterRieulDashThieuth => "hangul letter rieul-thieuth",
HangulCompatibilityJamo::HangulLetterRieulDashPhieuph => "hangul letter rieul-phieuph",
HangulCompatibilityJamo::HangulLetterRieulDashHieuh => "hangul letter rieul-hieuh",
HangulCompatibilityJamo::HangulLetterMieum => "hangul letter mieum",
HangulCompatibilityJamo::HangulLetterPieup => "hangul letter pieup",
HangulCompatibilityJamo::HangulLetterSsangpieup => "hangul letter ssangpieup",
HangulCompatibilityJamo::HangulLetterPieupDashSios => "hangul letter pieup-sios",
HangulCompatibilityJamo::HangulLetterSios => "hangul letter sios",
HangulCompatibilityJamo::HangulLetterSsangsios => "hangul letter ssangsios",
HangulCompatibilityJamo::HangulLetterIeung => "hangul letter ieung",
HangulCompatibilityJamo::HangulLetterCieuc => "hangul letter cieuc",
HangulCompatibilityJamo::HangulLetterSsangcieuc => "hangul letter ssangcieuc",
HangulCompatibilityJamo::HangulLetterChieuch => "hangul letter chieuch",
HangulCompatibilityJamo::HangulLetterKhieukh => "hangul letter khieukh",
HangulCompatibilityJamo::HangulLetterThieuth => "hangul letter thieuth",
HangulCompatibilityJamo::HangulLetterPhieuph => "hangul letter phieuph",
HangulCompatibilityJamo::HangulLetterHieuh => "hangul letter hieuh",
HangulCompatibilityJamo::HangulLetterA => "hangul letter a",
HangulCompatibilityJamo::HangulLetterAe => "hangul letter ae",
HangulCompatibilityJamo::HangulLetterYa => "hangul letter ya",
HangulCompatibilityJamo::HangulLetterYae => "hangul letter yae",
HangulCompatibilityJamo::HangulLetterEo => "hangul letter eo",
HangulCompatibilityJamo::HangulLetterE => "hangul letter e",
HangulCompatibilityJamo::HangulLetterYeo => "hangul letter yeo",
HangulCompatibilityJamo::HangulLetterYe => "hangul letter ye",
HangulCompatibilityJamo::HangulLetterO => "hangul letter o",
HangulCompatibilityJamo::HangulLetterWa => "hangul letter wa",
HangulCompatibilityJamo::HangulLetterWae => "hangul letter wae",
HangulCompatibilityJamo::HangulLetterOe => "hangul letter oe",
HangulCompatibilityJamo::HangulLetterYo => "hangul letter yo",
HangulCompatibilityJamo::HangulLetterU => "hangul letter u",
HangulCompatibilityJamo::HangulLetterWeo => "hangul letter weo",
HangulCompatibilityJamo::HangulLetterWe => "hangul letter we",
HangulCompatibilityJamo::HangulLetterWi => "hangul letter wi",
HangulCompatibilityJamo::HangulLetterYu => "hangul letter yu",
HangulCompatibilityJamo::HangulLetterEu => "hangul letter eu",
HangulCompatibilityJamo::HangulLetterYi => "hangul letter yi",
HangulCompatibilityJamo::HangulLetterI => "hangul letter i",
HangulCompatibilityJamo::HangulFiller => "hangul filler",
HangulCompatibilityJamo::HangulLetterSsangnieun => "hangul letter ssangnieun",
HangulCompatibilityJamo::HangulLetterNieunDashTikeut => "hangul letter nieun-tikeut",
HangulCompatibilityJamo::HangulLetterNieunDashSios => "hangul letter nieun-sios",
HangulCompatibilityJamo::HangulLetterNieunDashPansios => "hangul letter nieun-pansios",
HangulCompatibilityJamo::HangulLetterRieulDashKiyeokDashSios => "hangul letter rieul-kiyeok-sios",
HangulCompatibilityJamo::HangulLetterRieulDashTikeut => "hangul letter rieul-tikeut",
HangulCompatibilityJamo::HangulLetterRieulDashPieupDashSios => "hangul letter rieul-pieup-sios",
HangulCompatibilityJamo::HangulLetterRieulDashPansios => "hangul letter rieul-pansios",
HangulCompatibilityJamo::HangulLetterRieulDashYeorinhieuh => "hangul letter rieul-yeorinhieuh",
HangulCompatibilityJamo::HangulLetterMieumDashPieup => "hangul letter mieum-pieup",
HangulCompatibilityJamo::HangulLetterMieumDashSios => "hangul letter mieum-sios",
HangulCompatibilityJamo::HangulLetterMieumDashPansios => "hangul letter mieum-pansios",
HangulCompatibilityJamo::HangulLetterKapyeounmieum => "hangul letter kapyeounmieum",
HangulCompatibilityJamo::HangulLetterPieupDashKiyeok => "hangul letter pieup-kiyeok",
HangulCompatibilityJamo::HangulLetterPieupDashTikeut => "hangul letter pieup-tikeut",
HangulCompatibilityJamo::HangulLetterPieupDashSiosDashKiyeok => "hangul letter pieup-sios-kiyeok",
HangulCompatibilityJamo::HangulLetterPieupDashSiosDashTikeut => "hangul letter pieup-sios-tikeut",
HangulCompatibilityJamo::HangulLetterPieupDashCieuc => "hangul letter pieup-cieuc",
HangulCompatibilityJamo::HangulLetterPieupDashThieuth => "hangul letter pieup-thieuth",
HangulCompatibilityJamo::HangulLetterKapyeounpieup => "hangul letter kapyeounpieup",
HangulCompatibilityJamo::HangulLetterKapyeounssangpieup => "hangul letter kapyeounssangpieup",
HangulCompatibilityJamo::HangulLetterSiosDashKiyeok => "hangul letter sios-kiyeok",
HangulCompatibilityJamo::HangulLetterSiosDashNieun => "hangul letter sios-nieun",
HangulCompatibilityJamo::HangulLetterSiosDashTikeut => "hangul letter sios-tikeut",
HangulCompatibilityJamo::HangulLetterSiosDashPieup => "hangul letter sios-pieup",
HangulCompatibilityJamo::HangulLetterSiosDashCieuc => "hangul letter sios-cieuc",
HangulCompatibilityJamo::HangulLetterPansios => "hangul letter pansios",
HangulCompatibilityJamo::HangulLetterSsangieung => "hangul letter ssangieung",
HangulCompatibilityJamo::HangulLetterYesieung => "hangul letter yesieung",
HangulCompatibilityJamo::HangulLetterYesieungDashSios => "hangul letter yesieung-sios",
HangulCompatibilityJamo::HangulLetterYesieungDashPansios => "hangul letter yesieung-pansios",
HangulCompatibilityJamo::HangulLetterKapyeounphieuph => "hangul letter kapyeounphieuph",
HangulCompatibilityJamo::HangulLetterSsanghieuh => "hangul letter ssanghieuh",
HangulCompatibilityJamo::HangulLetterYeorinhieuh => "hangul letter yeorinhieuh",
HangulCompatibilityJamo::HangulLetterYoDashYa => "hangul letter yo-ya",
HangulCompatibilityJamo::HangulLetterYoDashYae => "hangul letter yo-yae",
HangulCompatibilityJamo::HangulLetterYoDashI => "hangul letter yo-i",
HangulCompatibilityJamo::HangulLetterYuDashYeo => "hangul letter yu-yeo",
HangulCompatibilityJamo::HangulLetterYuDashYe => "hangul letter yu-ye",
HangulCompatibilityJamo::HangulLetterYuDashI => "hangul letter yu-i",
HangulCompatibilityJamo::HangulLetterAraea => "hangul letter araea",
HangulCompatibilityJamo::HangulLetterAraeae => "hangul letter araeae",
}
}
}