#[derive(Debug, Clone, Copy, Hash, PartialEq, Eq)]
pub enum HalfwidthandFullwidthForms {
FullwidthExclamationMark,
FullwidthQuotationMark,
FullwidthNumberSign,
FullwidthDollarSign,
FullwidthPercentSign,
FullwidthAmpersand,
FullwidthApostrophe,
FullwidthLeftParenthesis,
FullwidthRightParenthesis,
FullwidthAsterisk,
FullwidthPlusSign,
FullwidthComma,
FullwidthHyphenDashMinus,
FullwidthFullStop,
FullwidthSolidus,
FullwidthDigitZero,
FullwidthDigitOne,
FullwidthDigitTwo,
FullwidthDigitThree,
FullwidthDigitFour,
FullwidthDigitFive,
FullwidthDigitSix,
FullwidthDigitSeven,
FullwidthDigitEight,
FullwidthDigitNine,
FullwidthColon,
FullwidthSemicolon,
FullwidthLessDashThanSign,
FullwidthEqualsSign,
FullwidthGreaterDashThanSign,
FullwidthQuestionMark,
FullwidthCommercialAt,
FullwidthLatinCapitalLetterA,
FullwidthLatinCapitalLetterB,
FullwidthLatinCapitalLetterC,
FullwidthLatinCapitalLetterD,
FullwidthLatinCapitalLetterE,
FullwidthLatinCapitalLetterF,
FullwidthLatinCapitalLetterG,
FullwidthLatinCapitalLetterH,
FullwidthLatinCapitalLetterI,
FullwidthLatinCapitalLetterJ,
FullwidthLatinCapitalLetterK,
FullwidthLatinCapitalLetterL,
FullwidthLatinCapitalLetterM,
FullwidthLatinCapitalLetterN,
FullwidthLatinCapitalLetterO,
FullwidthLatinCapitalLetterP,
FullwidthLatinCapitalLetterQ,
FullwidthLatinCapitalLetterR,
FullwidthLatinCapitalLetterS,
FullwidthLatinCapitalLetterT,
FullwidthLatinCapitalLetterU,
FullwidthLatinCapitalLetterV,
FullwidthLatinCapitalLetterW,
FullwidthLatinCapitalLetterX,
FullwidthLatinCapitalLetterY,
FullwidthLatinCapitalLetterZ,
FullwidthLeftSquareBracket,
FullwidthReverseSolidus,
FullwidthRightSquareBracket,
FullwidthCircumflexAccent,
FullwidthLowLine,
FullwidthGraveAccent,
FullwidthLatinSmallLetterA,
FullwidthLatinSmallLetterB,
FullwidthLatinSmallLetterC,
FullwidthLatinSmallLetterD,
FullwidthLatinSmallLetterE,
FullwidthLatinSmallLetterF,
FullwidthLatinSmallLetterG,
FullwidthLatinSmallLetterH,
FullwidthLatinSmallLetterI,
FullwidthLatinSmallLetterJ,
FullwidthLatinSmallLetterK,
FullwidthLatinSmallLetterL,
FullwidthLatinSmallLetterM,
FullwidthLatinSmallLetterN,
FullwidthLatinSmallLetterO,
FullwidthLatinSmallLetterP,
FullwidthLatinSmallLetterQ,
FullwidthLatinSmallLetterR,
FullwidthLatinSmallLetterS,
FullwidthLatinSmallLetterT,
FullwidthLatinSmallLetterU,
FullwidthLatinSmallLetterV,
FullwidthLatinSmallLetterW,
FullwidthLatinSmallLetterX,
FullwidthLatinSmallLetterY,
FullwidthLatinSmallLetterZ,
FullwidthLeftCurlyBracket,
FullwidthVerticalLine,
FullwidthRightCurlyBracket,
FullwidthTilde,
FullwidthLeftWhiteParenthesis,
FullwidthRightWhiteParenthesis,
HalfwidthIdeographicFullStop,
HalfwidthLeftCornerBracket,
HalfwidthRightCornerBracket,
HalfwidthIdeographicComma,
HalfwidthKatakanaMiddleDot,
HalfwidthKatakanaLetterWo,
HalfwidthKatakanaLetterSmallA,
HalfwidthKatakanaLetterSmallI,
HalfwidthKatakanaLetterSmallU,
HalfwidthKatakanaLetterSmallE,
HalfwidthKatakanaLetterSmallO,
HalfwidthKatakanaLetterSmallYa,
HalfwidthKatakanaLetterSmallYu,
HalfwidthKatakanaLetterSmallYo,
HalfwidthKatakanaLetterSmallTu,
HalfwidthKatakanaDashHiraganaProlongedSoundMark,
HalfwidthKatakanaLetterA,
HalfwidthKatakanaLetterI,
HalfwidthKatakanaLetterU,
HalfwidthKatakanaLetterE,
HalfwidthKatakanaLetterO,
HalfwidthKatakanaLetterKa,
HalfwidthKatakanaLetterKi,
HalfwidthKatakanaLetterKu,
HalfwidthKatakanaLetterKe,
HalfwidthKatakanaLetterKo,
HalfwidthKatakanaLetterSa,
HalfwidthKatakanaLetterSi,
HalfwidthKatakanaLetterSu,
HalfwidthKatakanaLetterSe,
HalfwidthKatakanaLetterSo,
HalfwidthKatakanaLetterTa,
HalfwidthKatakanaLetterTi,
HalfwidthKatakanaLetterTu,
HalfwidthKatakanaLetterTe,
HalfwidthKatakanaLetterTo,
HalfwidthKatakanaLetterNa,
HalfwidthKatakanaLetterNi,
HalfwidthKatakanaLetterNu,
HalfwidthKatakanaLetterNe,
HalfwidthKatakanaLetterNo,
HalfwidthKatakanaLetterHa,
HalfwidthKatakanaLetterHi,
HalfwidthKatakanaLetterHu,
HalfwidthKatakanaLetterHe,
HalfwidthKatakanaLetterHo,
HalfwidthKatakanaLetterMa,
HalfwidthKatakanaLetterMi,
HalfwidthKatakanaLetterMu,
HalfwidthKatakanaLetterMe,
HalfwidthKatakanaLetterMo,
HalfwidthKatakanaLetterYa,
HalfwidthKatakanaLetterYu,
HalfwidthKatakanaLetterYo,
HalfwidthKatakanaLetterRa,
HalfwidthKatakanaLetterRi,
HalfwidthKatakanaLetterRu,
HalfwidthKatakanaLetterRe,
HalfwidthKatakanaLetterRo,
HalfwidthKatakanaLetterWa,
HalfwidthKatakanaLetterN,
HalfwidthKatakanaVoicedSoundMark,
HalfwidthKatakanaSemiDashVoicedSoundMark,
HalfwidthHangulFiller,
HalfwidthHangulLetterKiyeok,
HalfwidthHangulLetterSsangkiyeok,
HalfwidthHangulLetterKiyeokDashSios,
HalfwidthHangulLetterNieun,
HalfwidthHangulLetterNieunDashCieuc,
HalfwidthHangulLetterNieunDashHieuh,
HalfwidthHangulLetterTikeut,
HalfwidthHangulLetterSsangtikeut,
HalfwidthHangulLetterRieul,
HalfwidthHangulLetterRieulDashKiyeok,
HalfwidthHangulLetterRieulDashMieum,
HalfwidthHangulLetterRieulDashPieup,
HalfwidthHangulLetterRieulDashSios,
HalfwidthHangulLetterRieulDashThieuth,
HalfwidthHangulLetterRieulDashPhieuph,
HalfwidthHangulLetterRieulDashHieuh,
HalfwidthHangulLetterMieum,
HalfwidthHangulLetterPieup,
HalfwidthHangulLetterSsangpieup,
HalfwidthHangulLetterPieupDashSios,
HalfwidthHangulLetterSios,
HalfwidthHangulLetterSsangsios,
HalfwidthHangulLetterIeung,
HalfwidthHangulLetterCieuc,
HalfwidthHangulLetterSsangcieuc,
HalfwidthHangulLetterChieuch,
HalfwidthHangulLetterKhieukh,
HalfwidthHangulLetterThieuth,
HalfwidthHangulLetterPhieuph,
HalfwidthHangulLetterHieuh,
HalfwidthHangulLetterA,
HalfwidthHangulLetterAe,
HalfwidthHangulLetterYa,
HalfwidthHangulLetterYae,
HalfwidthHangulLetterEo,
HalfwidthHangulLetterE,
HalfwidthHangulLetterYeo,
HalfwidthHangulLetterYe,
HalfwidthHangulLetterO,
HalfwidthHangulLetterWa,
HalfwidthHangulLetterWae,
HalfwidthHangulLetterOe,
HalfwidthHangulLetterYo,
HalfwidthHangulLetterU,
HalfwidthHangulLetterWeo,
HalfwidthHangulLetterWe,
HalfwidthHangulLetterWi,
HalfwidthHangulLetterYu,
HalfwidthHangulLetterEu,
HalfwidthHangulLetterYi,
HalfwidthHangulLetterI,
FullwidthCentSign,
FullwidthPoundSign,
FullwidthNotSign,
FullwidthMacron,
FullwidthBrokenBar,
FullwidthYenSign,
FullwidthWonSign,
HalfwidthFormsLightVertical,
HalfwidthLeftwardsArrow,
HalfwidthUpwardsArrow,
HalfwidthRightwardsArrow,
HalfwidthDownwardsArrow,
HalfwidthBlackSquare,
HalfwidthWhiteCircle,
}
impl Into<char> for HalfwidthandFullwidthForms {
fn into(self) -> char {
match self {
HalfwidthandFullwidthForms::FullwidthExclamationMark => '!',
HalfwidthandFullwidthForms::FullwidthQuotationMark => '"',
HalfwidthandFullwidthForms::FullwidthNumberSign => '#',
HalfwidthandFullwidthForms::FullwidthDollarSign => '$',
HalfwidthandFullwidthForms::FullwidthPercentSign => '%',
HalfwidthandFullwidthForms::FullwidthAmpersand => '&',
HalfwidthandFullwidthForms::FullwidthApostrophe => ''',
HalfwidthandFullwidthForms::FullwidthLeftParenthesis => '(',
HalfwidthandFullwidthForms::FullwidthRightParenthesis => ')',
HalfwidthandFullwidthForms::FullwidthAsterisk => '*',
HalfwidthandFullwidthForms::FullwidthPlusSign => '+',
HalfwidthandFullwidthForms::FullwidthComma => ',',
HalfwidthandFullwidthForms::FullwidthHyphenDashMinus => '-',
HalfwidthandFullwidthForms::FullwidthFullStop => '.',
HalfwidthandFullwidthForms::FullwidthSolidus => '/',
HalfwidthandFullwidthForms::FullwidthDigitZero => '0',
HalfwidthandFullwidthForms::FullwidthDigitOne => '1',
HalfwidthandFullwidthForms::FullwidthDigitTwo => '2',
HalfwidthandFullwidthForms::FullwidthDigitThree => '3',
HalfwidthandFullwidthForms::FullwidthDigitFour => '4',
HalfwidthandFullwidthForms::FullwidthDigitFive => '5',
HalfwidthandFullwidthForms::FullwidthDigitSix => '6',
HalfwidthandFullwidthForms::FullwidthDigitSeven => '7',
HalfwidthandFullwidthForms::FullwidthDigitEight => '8',
HalfwidthandFullwidthForms::FullwidthDigitNine => '9',
HalfwidthandFullwidthForms::FullwidthColon => ':',
HalfwidthandFullwidthForms::FullwidthSemicolon => ';',
HalfwidthandFullwidthForms::FullwidthLessDashThanSign => '<',
HalfwidthandFullwidthForms::FullwidthEqualsSign => '=',
HalfwidthandFullwidthForms::FullwidthGreaterDashThanSign => '>',
HalfwidthandFullwidthForms::FullwidthQuestionMark => '?',
HalfwidthandFullwidthForms::FullwidthCommercialAt => '@',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterA => 'A',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterB => 'B',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterC => 'C',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterD => 'D',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterE => 'E',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterF => 'F',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterG => 'G',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterH => 'H',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterI => 'I',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterJ => 'J',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterK => 'K',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterL => 'L',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterM => 'M',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterN => 'N',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterO => 'O',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterP => 'P',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterQ => 'Q',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterR => 'R',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterS => 'S',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterT => 'T',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterU => 'U',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterV => 'V',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterW => 'W',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterX => 'X',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterY => 'Y',
HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterZ => 'Z',
HalfwidthandFullwidthForms::FullwidthLeftSquareBracket => '[',
HalfwidthandFullwidthForms::FullwidthReverseSolidus => '\',
HalfwidthandFullwidthForms::FullwidthRightSquareBracket => ']',
HalfwidthandFullwidthForms::FullwidthCircumflexAccent => '^',
HalfwidthandFullwidthForms::FullwidthLowLine => '_',
HalfwidthandFullwidthForms::FullwidthGraveAccent => '`',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterA => 'a',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterB => 'b',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterC => 'c',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterD => 'd',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterE => 'e',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterF => 'f',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterG => 'g',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterH => 'h',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterI => 'i',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterJ => 'j',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterK => 'k',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterL => 'l',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterM => 'm',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterN => 'n',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterO => 'o',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterP => 'p',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterQ => 'q',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterR => 'r',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterS => 's',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterT => 't',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterU => 'u',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterV => 'v',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterW => 'w',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterX => 'x',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterY => 'y',
HalfwidthandFullwidthForms::FullwidthLatinSmallLetterZ => 'z',
HalfwidthandFullwidthForms::FullwidthLeftCurlyBracket => '{',
HalfwidthandFullwidthForms::FullwidthVerticalLine => '|',
HalfwidthandFullwidthForms::FullwidthRightCurlyBracket => '}',
HalfwidthandFullwidthForms::FullwidthTilde => '~',
HalfwidthandFullwidthForms::FullwidthLeftWhiteParenthesis => '⦅',
HalfwidthandFullwidthForms::FullwidthRightWhiteParenthesis => '⦆',
HalfwidthandFullwidthForms::HalfwidthIdeographicFullStop => '。',
HalfwidthandFullwidthForms::HalfwidthLeftCornerBracket => '「',
HalfwidthandFullwidthForms::HalfwidthRightCornerBracket => '」',
HalfwidthandFullwidthForms::HalfwidthIdeographicComma => '、',
HalfwidthandFullwidthForms::HalfwidthKatakanaMiddleDot => '・',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterWo => 'ヲ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallA => 'ァ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallI => 'ィ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallU => 'ゥ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallE => 'ェ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallO => 'ォ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallYa => 'ャ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallYu => 'ュ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallYo => 'ョ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallTu => 'ッ',
HalfwidthandFullwidthForms::HalfwidthKatakanaDashHiraganaProlongedSoundMark => 'ー',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterA => 'ア',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterI => 'イ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterU => 'ウ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterE => 'エ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterO => 'オ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterKa => 'カ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterKi => 'キ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterKu => 'ク',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterKe => 'ケ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterKo => 'コ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSa => 'サ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSi => 'シ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSu => 'ス',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSe => 'セ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSo => 'ソ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterTa => 'タ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterTi => 'チ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterTu => 'ツ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterTe => 'テ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterTo => 'ト',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterNa => 'ナ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterNi => 'ニ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterNu => 'ヌ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterNe => 'ネ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterNo => 'ノ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterHa => 'ハ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterHi => 'ヒ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterHu => 'フ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterHe => 'ヘ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterHo => 'ホ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterMa => 'マ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterMi => 'ミ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterMu => 'ム',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterMe => 'メ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterMo => 'モ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterYa => 'ヤ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterYu => 'ユ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterYo => 'ヨ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterRa => 'ラ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterRi => 'リ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterRu => 'ル',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterRe => 'レ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterRo => 'ロ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterWa => 'ワ',
HalfwidthandFullwidthForms::HalfwidthKatakanaLetterN => 'ン',
HalfwidthandFullwidthForms::HalfwidthKatakanaVoicedSoundMark => '゙',
HalfwidthandFullwidthForms::HalfwidthKatakanaSemiDashVoicedSoundMark => '゚',
HalfwidthandFullwidthForms::HalfwidthHangulFiller => 'ᅠ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterKiyeok => 'ᄀ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterSsangkiyeok => 'ᄁ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterKiyeokDashSios => 'ᆪ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterNieun => 'ᄂ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterNieunDashCieuc => 'ᆬ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterNieunDashHieuh => 'ᆭ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterTikeut => 'ᄃ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterSsangtikeut => 'ᄄ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterRieul => 'ᄅ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashKiyeok => 'ᆰ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashMieum => 'ᆱ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashPieup => 'ᆲ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashSios => 'ᆳ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashThieuth => 'ᆴ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashPhieuph => 'ᆵ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashHieuh => 'ᄚ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterMieum => 'ᄆ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterPieup => 'ᄇ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterSsangpieup => 'ᄈ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterPieupDashSios => 'ᄡ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterSios => 'ᄉ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterSsangsios => 'ᄊ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterIeung => 'ᄋ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterCieuc => 'ᄌ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterSsangcieuc => 'ᄍ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterChieuch => 'ᄎ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterKhieukh => 'ᄏ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterThieuth => 'ᄐ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterPhieuph => 'ᄑ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterHieuh => 'ᄒ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterA => 'ᅡ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterAe => 'ᅢ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterYa => 'ᅣ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterYae => 'ᅤ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterEo => 'ᅥ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterE => 'ᅦ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterYeo => 'ᅧ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterYe => 'ᅨ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterO => 'ᅩ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterWa => 'ᅪ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterWae => 'ᅫ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterOe => 'ᅬ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterYo => 'ᅭ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterU => 'ᅮ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterWeo => 'ᅯ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterWe => 'ᅰ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterWi => 'ᅱ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterYu => 'ᅲ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterEu => 'ᅳ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterYi => 'ᅴ',
HalfwidthandFullwidthForms::HalfwidthHangulLetterI => 'ᅵ',
HalfwidthandFullwidthForms::FullwidthCentSign => '¢',
HalfwidthandFullwidthForms::FullwidthPoundSign => '£',
HalfwidthandFullwidthForms::FullwidthNotSign => '¬',
HalfwidthandFullwidthForms::FullwidthMacron => ' ̄',
HalfwidthandFullwidthForms::FullwidthBrokenBar => '¦',
HalfwidthandFullwidthForms::FullwidthYenSign => '¥',
HalfwidthandFullwidthForms::FullwidthWonSign => '₩',
HalfwidthandFullwidthForms::HalfwidthFormsLightVertical => '│',
HalfwidthandFullwidthForms::HalfwidthLeftwardsArrow => '←',
HalfwidthandFullwidthForms::HalfwidthUpwardsArrow => '↑',
HalfwidthandFullwidthForms::HalfwidthRightwardsArrow => '→',
HalfwidthandFullwidthForms::HalfwidthDownwardsArrow => '↓',
HalfwidthandFullwidthForms::HalfwidthBlackSquare => '■',
HalfwidthandFullwidthForms::HalfwidthWhiteCircle => '○',
}
}
}
impl std::convert::TryFrom<char> for HalfwidthandFullwidthForms {
type Error = ();
fn try_from(c: char) -> Result<Self, Self::Error> {
match c {
'!' => Ok(HalfwidthandFullwidthForms::FullwidthExclamationMark),
'"' => Ok(HalfwidthandFullwidthForms::FullwidthQuotationMark),
'#' => Ok(HalfwidthandFullwidthForms::FullwidthNumberSign),
'$' => Ok(HalfwidthandFullwidthForms::FullwidthDollarSign),
'%' => Ok(HalfwidthandFullwidthForms::FullwidthPercentSign),
'&' => Ok(HalfwidthandFullwidthForms::FullwidthAmpersand),
''' => Ok(HalfwidthandFullwidthForms::FullwidthApostrophe),
'(' => Ok(HalfwidthandFullwidthForms::FullwidthLeftParenthesis),
')' => Ok(HalfwidthandFullwidthForms::FullwidthRightParenthesis),
'*' => Ok(HalfwidthandFullwidthForms::FullwidthAsterisk),
'+' => Ok(HalfwidthandFullwidthForms::FullwidthPlusSign),
',' => Ok(HalfwidthandFullwidthForms::FullwidthComma),
'-' => Ok(HalfwidthandFullwidthForms::FullwidthHyphenDashMinus),
'.' => Ok(HalfwidthandFullwidthForms::FullwidthFullStop),
'/' => Ok(HalfwidthandFullwidthForms::FullwidthSolidus),
'0' => Ok(HalfwidthandFullwidthForms::FullwidthDigitZero),
'1' => Ok(HalfwidthandFullwidthForms::FullwidthDigitOne),
'2' => Ok(HalfwidthandFullwidthForms::FullwidthDigitTwo),
'3' => Ok(HalfwidthandFullwidthForms::FullwidthDigitThree),
'4' => Ok(HalfwidthandFullwidthForms::FullwidthDigitFour),
'5' => Ok(HalfwidthandFullwidthForms::FullwidthDigitFive),
'6' => Ok(HalfwidthandFullwidthForms::FullwidthDigitSix),
'7' => Ok(HalfwidthandFullwidthForms::FullwidthDigitSeven),
'8' => Ok(HalfwidthandFullwidthForms::FullwidthDigitEight),
'9' => Ok(HalfwidthandFullwidthForms::FullwidthDigitNine),
':' => Ok(HalfwidthandFullwidthForms::FullwidthColon),
';' => Ok(HalfwidthandFullwidthForms::FullwidthSemicolon),
'<' => Ok(HalfwidthandFullwidthForms::FullwidthLessDashThanSign),
'=' => Ok(HalfwidthandFullwidthForms::FullwidthEqualsSign),
'>' => Ok(HalfwidthandFullwidthForms::FullwidthGreaterDashThanSign),
'?' => Ok(HalfwidthandFullwidthForms::FullwidthQuestionMark),
'@' => Ok(HalfwidthandFullwidthForms::FullwidthCommercialAt),
'A' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterA),
'B' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterB),
'C' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterC),
'D' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterD),
'E' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterE),
'F' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterF),
'G' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterG),
'H' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterH),
'I' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterI),
'J' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterJ),
'K' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterK),
'L' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterL),
'M' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterM),
'N' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterN),
'O' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterO),
'P' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterP),
'Q' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterQ),
'R' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterR),
'S' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterS),
'T' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterT),
'U' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterU),
'V' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterV),
'W' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterW),
'X' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterX),
'Y' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterY),
'Z' => Ok(HalfwidthandFullwidthForms::FullwidthLatinCapitalLetterZ),
'[' => Ok(HalfwidthandFullwidthForms::FullwidthLeftSquareBracket),
'\' => Ok(HalfwidthandFullwidthForms::FullwidthReverseSolidus),
']' => Ok(HalfwidthandFullwidthForms::FullwidthRightSquareBracket),
'^' => Ok(HalfwidthandFullwidthForms::FullwidthCircumflexAccent),
'_' => Ok(HalfwidthandFullwidthForms::FullwidthLowLine),
'`' => Ok(HalfwidthandFullwidthForms::FullwidthGraveAccent),
'a' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterA),
'b' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterB),
'c' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterC),
'd' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterD),
'e' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterE),
'f' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterF),
'g' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterG),
'h' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterH),
'i' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterI),
'j' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterJ),
'k' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterK),
'l' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterL),
'm' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterM),
'n' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterN),
'o' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterO),
'p' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterP),
'q' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterQ),
'r' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterR),
's' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterS),
't' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterT),
'u' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterU),
'v' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterV),
'w' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterW),
'x' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterX),
'y' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterY),
'z' => Ok(HalfwidthandFullwidthForms::FullwidthLatinSmallLetterZ),
'{' => Ok(HalfwidthandFullwidthForms::FullwidthLeftCurlyBracket),
'|' => Ok(HalfwidthandFullwidthForms::FullwidthVerticalLine),
'}' => Ok(HalfwidthandFullwidthForms::FullwidthRightCurlyBracket),
'~' => Ok(HalfwidthandFullwidthForms::FullwidthTilde),
'⦅' => Ok(HalfwidthandFullwidthForms::FullwidthLeftWhiteParenthesis),
'⦆' => Ok(HalfwidthandFullwidthForms::FullwidthRightWhiteParenthesis),
'。' => Ok(HalfwidthandFullwidthForms::HalfwidthIdeographicFullStop),
'「' => Ok(HalfwidthandFullwidthForms::HalfwidthLeftCornerBracket),
'」' => Ok(HalfwidthandFullwidthForms::HalfwidthRightCornerBracket),
'、' => Ok(HalfwidthandFullwidthForms::HalfwidthIdeographicComma),
'・' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaMiddleDot),
'ヲ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterWo),
'ァ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallA),
'ィ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallI),
'ゥ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallU),
'ェ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallE),
'ォ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallO),
'ャ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallYa),
'ュ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallYu),
'ョ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallYo),
'ッ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSmallTu),
'ー' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaDashHiraganaProlongedSoundMark),
'ア' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterA),
'イ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterI),
'ウ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterU),
'エ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterE),
'オ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterO),
'カ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterKa),
'キ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterKi),
'ク' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterKu),
'ケ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterKe),
'コ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterKo),
'サ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSa),
'シ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSi),
'ス' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSu),
'セ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSe),
'ソ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterSo),
'タ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterTa),
'チ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterTi),
'ツ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterTu),
'テ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterTe),
'ト' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterTo),
'ナ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterNa),
'ニ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterNi),
'ヌ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterNu),
'ネ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterNe),
'ノ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterNo),
'ハ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterHa),
'ヒ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterHi),
'フ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterHu),
'ヘ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterHe),
'ホ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterHo),
'マ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterMa),
'ミ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterMi),
'ム' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterMu),
'メ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterMe),
'モ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterMo),
'ヤ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterYa),
'ユ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterYu),
'ヨ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterYo),
'ラ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterRa),
'リ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterRi),
'ル' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterRu),
'レ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterRe),
'ロ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterRo),
'ワ' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterWa),
'ン' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaLetterN),
'゙' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaVoicedSoundMark),
'゚' => Ok(HalfwidthandFullwidthForms::HalfwidthKatakanaSemiDashVoicedSoundMark),
'ᅠ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulFiller),
'ᄀ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterKiyeok),
'ᄁ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterSsangkiyeok),
'ᆪ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterKiyeokDashSios),
'ᄂ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterNieun),
'ᆬ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterNieunDashCieuc),
'ᆭ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterNieunDashHieuh),
'ᄃ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterTikeut),
'ᄄ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterSsangtikeut),
'ᄅ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterRieul),
'ᆰ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashKiyeok),
'ᆱ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashMieum),
'ᆲ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashPieup),
'ᆳ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashSios),
'ᆴ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashThieuth),
'ᆵ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashPhieuph),
'ᄚ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterRieulDashHieuh),
'ᄆ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterMieum),
'ᄇ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterPieup),
'ᄈ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterSsangpieup),
'ᄡ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterPieupDashSios),
'ᄉ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterSios),
'ᄊ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterSsangsios),
'ᄋ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterIeung),
'ᄌ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterCieuc),
'ᄍ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterSsangcieuc),
'ᄎ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterChieuch),
'ᄏ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterKhieukh),
'ᄐ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterThieuth),
'ᄑ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterPhieuph),
'ᄒ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterHieuh),
'ᅡ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterA),
'ᅢ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterAe),
'ᅣ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterYa),
'ᅤ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterYae),
'ᅥ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterEo),
'ᅦ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterE),
'ᅧ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterYeo),
'ᅨ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterYe),
'ᅩ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterO),
'ᅪ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterWa),
'ᅫ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterWae),
'ᅬ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterOe),
'ᅭ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterYo),
'ᅮ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterU),
'ᅯ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterWeo),
'ᅰ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterWe),
'ᅱ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterWi),
'ᅲ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterYu),
'ᅳ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterEu),
'ᅴ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterYi),
'ᅵ' => Ok(HalfwidthandFullwidthForms::HalfwidthHangulLetterI),
'¢' => Ok(HalfwidthandFullwidthForms::FullwidthCentSign),
'£' => Ok(HalfwidthandFullwidthForms::FullwidthPoundSign),
'¬' => Ok(HalfwidthandFullwidthForms::FullwidthNotSign),
' ̄' => Ok(HalfwidthandFullwidthForms::FullwidthMacron),
'¦' => Ok(HalfwidthandFullwidthForms::FullwidthBrokenBar),
'¥' => Ok(HalfwidthandFullwidthForms::FullwidthYenSign),
'₩' => Ok(HalfwidthandFullwidthForms::FullwidthWonSign),
'│' => Ok(HalfwidthandFullwidthForms::HalfwidthFormsLightVertical),
'←' => Ok(HalfwidthandFullwidthForms::HalfwidthLeftwardsArrow),
'↑' => Ok(HalfwidthandFullwidthForms::HalfwidthUpwardsArrow),
'→' => Ok(HalfwidthandFullwidthForms::HalfwidthRightwardsArrow),
'↓' => Ok(HalfwidthandFullwidthForms::HalfwidthDownwardsArrow),
'■' => Ok(HalfwidthandFullwidthForms::HalfwidthBlackSquare),
'○' => Ok(HalfwidthandFullwidthForms::HalfwidthWhiteCircle),
_ => Err(()),
}
}
}
impl Into<u32> for HalfwidthandFullwidthForms {
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 HalfwidthandFullwidthForms {
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 HalfwidthandFullwidthForms {
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 HalfwidthandFullwidthForms {
pub fn new() -> Self {
HalfwidthandFullwidthForms::FullwidthExclamationMark
}
pub fn name(&self) -> String {
let s = std::format!("HalfwidthandFullwidthForms{:#?}", self);
string_morph::to_sentence_case(&s)
}
}