mod constants {
pub const SQUARE_HIRAGANA_HOKA: char = '🈀';
pub const SQUARED_KATAKANA_KOKO: char = '🈁';
pub const SQUARED_KATAKANA_SA: char = '🈂';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_624B: char = '🈐';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5B57: char = '🈑';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_53CC: char = '🈒';
pub const SQUARED_KATAKANA_DE: char = '🈓';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E8C: char = '🈔';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_591A: char = '🈕';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_89E3: char = '🈖';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5929: char = '🈗';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4EA4: char = '🈘';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6620: char = '🈙';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7121: char = '🈚';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6599: char = '🈛';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_524D: char = '🈜';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5F8C: char = '🈝';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_518D: char = '🈞';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_65B0: char = '🈟';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_521D: char = '🈠';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7D42: char = '🈡';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_751F: char = '🈢';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_8CA9: char = '🈣';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_58F0: char = '🈤';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5439: char = '🈥';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6F14: char = '🈦';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6295: char = '🈧';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6355: char = '🈨';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E00: char = '🈩';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E09: char = '🈪';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_904A: char = '🈫';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5DE6: char = '🈬';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E2D: char = '🈭';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_53F3: char = '🈮';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6307: char = '🈯';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_8D70: char = '🈰';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6253: char = '🈱';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7981: char = '🈲';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7A7A: char = '🈳';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5408: char = '🈴';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6E80: char = '🈵';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6709: char = '🈶';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6708: char = '🈷';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7533: char = '🈸';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5272: char = '🈹';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_55B6: char = '🈺';
pub const SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_914D: char = '🈻';
pub const TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_672C: char = '🉀';
pub const TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_4E09: char = '🉁';
pub const TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_4E8C: char = '🉂';
pub const TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_5B89: char = '🉃';
pub const TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_70B9: char = '🉄';
pub const TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_6253: char = '🉅';
pub const TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_76D7: char = '🉆';
pub const TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_52DD: char = '🉇';
pub const TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_6557: char = '🉈';
pub const CIRCLED_IDEOGRAPH_ADVANTAGE: char = '🉐';
pub const CIRCLED_IDEOGRAPH_ACCEPT: char = '🉑';
pub const ROUNDED_SYMBOL_FOR_FU: char = '🉠';
pub const ROUNDED_SYMBOL_FOR_LU: char = '🉡';
pub const ROUNDED_SYMBOL_FOR_SHOU: char = '🉢';
pub const ROUNDED_SYMBOL_FOR_XI: char = '🉣';
pub const ROUNDED_SYMBOL_FOR_SHUANGXI: char = '🉤';
pub const ROUNDED_SYMBOL_FOR_CAI: char = '🉥';
}
#[derive(Debug, Clone, Copy, Hash, PartialEq, Eq)]
pub enum EnclosedIdeographicSupplement {
SquareHiraganaHoka,
SquaredKatakanaKoko,
SquaredKatakanaSa,
SquaredCjkUnifiedIdeographDash624b,
SquaredCjkUnifiedIdeographDash5b57,
SquaredCjkUnifiedIdeographDash53cc,
SquaredKatakanaDe,
SquaredCjkUnifiedIdeographDash4e8c,
SquaredCjkUnifiedIdeographDash591a,
SquaredCjkUnifiedIdeographDash89e3,
SquaredCjkUnifiedIdeographDash5929,
SquaredCjkUnifiedIdeographDash4ea4,
SquaredCjkUnifiedIdeographDash6620,
SquaredCjkUnifiedIdeographDash7121,
SquaredCjkUnifiedIdeographDash6599,
SquaredCjkUnifiedIdeographDash524d,
SquaredCjkUnifiedIdeographDash5f8c,
SquaredCjkUnifiedIdeographDash518d,
SquaredCjkUnifiedIdeographDash65b0,
SquaredCjkUnifiedIdeographDash521d,
SquaredCjkUnifiedIdeographDash7d42,
SquaredCjkUnifiedIdeographDash751f,
SquaredCjkUnifiedIdeographDash8ca9,
SquaredCjkUnifiedIdeographDash58f0,
SquaredCjkUnifiedIdeographDash5439,
SquaredCjkUnifiedIdeographDash6f14,
SquaredCjkUnifiedIdeographDash6295,
SquaredCjkUnifiedIdeographDash6355,
SquaredCjkUnifiedIdeographDash4e00,
SquaredCjkUnifiedIdeographDash4e09,
SquaredCjkUnifiedIdeographDash904a,
SquaredCjkUnifiedIdeographDash5de6,
SquaredCjkUnifiedIdeographDash4e2d,
SquaredCjkUnifiedIdeographDash53f3,
SquaredCjkUnifiedIdeographDash6307,
SquaredCjkUnifiedIdeographDash8d70,
SquaredCjkUnifiedIdeographDash6253,
SquaredCjkUnifiedIdeographDash7981,
SquaredCjkUnifiedIdeographDash7a7a,
SquaredCjkUnifiedIdeographDash5408,
SquaredCjkUnifiedIdeographDash6e80,
SquaredCjkUnifiedIdeographDash6709,
SquaredCjkUnifiedIdeographDash6708,
SquaredCjkUnifiedIdeographDash7533,
SquaredCjkUnifiedIdeographDash5272,
SquaredCjkUnifiedIdeographDash55b6,
SquaredCjkUnifiedIdeographDash914d,
TortoiseShellBracketedCjkUnifiedIdeographDash672c,
TortoiseShellBracketedCjkUnifiedIdeographDash4e09,
TortoiseShellBracketedCjkUnifiedIdeographDash4e8c,
TortoiseShellBracketedCjkUnifiedIdeographDash5b89,
TortoiseShellBracketedCjkUnifiedIdeographDash70b9,
TortoiseShellBracketedCjkUnifiedIdeographDash6253,
TortoiseShellBracketedCjkUnifiedIdeographDash76d7,
TortoiseShellBracketedCjkUnifiedIdeographDash52dd,
TortoiseShellBracketedCjkUnifiedIdeographDash6557,
CircledIdeographAdvantage,
CircledIdeographAccept,
RoundedSymbolForFu,
RoundedSymbolForLu,
RoundedSymbolForShou,
RoundedSymbolForXi,
RoundedSymbolForShuangxi,
RoundedSymbolForCai,
}
impl Into<char> for EnclosedIdeographicSupplement {
fn into(self) -> char {
use constants::*;
match self {
EnclosedIdeographicSupplement::SquareHiraganaHoka => SQUARE_HIRAGANA_HOKA,
EnclosedIdeographicSupplement::SquaredKatakanaKoko => SQUARED_KATAKANA_KOKO,
EnclosedIdeographicSupplement::SquaredKatakanaSa => SQUARED_KATAKANA_SA,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash624b => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_624B,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5b57 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5B57,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash53cc => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_53CC,
EnclosedIdeographicSupplement::SquaredKatakanaDe => SQUARED_KATAKANA_DE,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e8c => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E8C,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash591a => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_591A,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash89e3 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_89E3,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5929 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5929,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4ea4 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4EA4,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6620 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6620,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7121 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7121,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6599 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6599,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash524d => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_524D,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5f8c => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5F8C,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash518d => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_518D,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash65b0 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_65B0,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash521d => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_521D,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7d42 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7D42,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash751f => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_751F,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash8ca9 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_8CA9,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash58f0 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_58F0,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5439 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5439,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6f14 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6F14,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6295 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6295,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6355 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6355,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e00 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E00,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e09 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E09,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash904a => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_904A,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5de6 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5DE6,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e2d => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E2D,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash53f3 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_53F3,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6307 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6307,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash8d70 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_8D70,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6253 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6253,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7981 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7981,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7a7a => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7A7A,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5408 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5408,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6e80 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6E80,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6709 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6709,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6708 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6708,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7533 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7533,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5272 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5272,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash55b6 => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_55B6,
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash914d => SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_914D,
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash672c => TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_672C,
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash4e09 => TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_4E09,
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash4e8c => TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_4E8C,
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash5b89 => TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_5B89,
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash70b9 => TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_70B9,
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash6253 => TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_6253,
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash76d7 => TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_76D7,
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash52dd => TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_52DD,
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash6557 => TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_6557,
EnclosedIdeographicSupplement::CircledIdeographAdvantage => CIRCLED_IDEOGRAPH_ADVANTAGE,
EnclosedIdeographicSupplement::CircledIdeographAccept => CIRCLED_IDEOGRAPH_ACCEPT,
EnclosedIdeographicSupplement::RoundedSymbolForFu => ROUNDED_SYMBOL_FOR_FU,
EnclosedIdeographicSupplement::RoundedSymbolForLu => ROUNDED_SYMBOL_FOR_LU,
EnclosedIdeographicSupplement::RoundedSymbolForShou => ROUNDED_SYMBOL_FOR_SHOU,
EnclosedIdeographicSupplement::RoundedSymbolForXi => ROUNDED_SYMBOL_FOR_XI,
EnclosedIdeographicSupplement::RoundedSymbolForShuangxi => ROUNDED_SYMBOL_FOR_SHUANGXI,
EnclosedIdeographicSupplement::RoundedSymbolForCai => ROUNDED_SYMBOL_FOR_CAI,
}
}
}
impl std::convert::TryFrom<char> for EnclosedIdeographicSupplement {
type Error = ();
fn try_from(c: char) -> Result<Self, Self::Error> {
use constants::*;
match c {
SQUARE_HIRAGANA_HOKA => Ok(EnclosedIdeographicSupplement::SquareHiraganaHoka),
SQUARED_KATAKANA_KOKO => Ok(EnclosedIdeographicSupplement::SquaredKatakanaKoko),
SQUARED_KATAKANA_SA => Ok(EnclosedIdeographicSupplement::SquaredKatakanaSa),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_624B => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash624b),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5B57 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5b57),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_53CC => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash53cc),
SQUARED_KATAKANA_DE => Ok(EnclosedIdeographicSupplement::SquaredKatakanaDe),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E8C => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e8c),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_591A => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash591a),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_89E3 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash89e3),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5929 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5929),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4EA4 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4ea4),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6620 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6620),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7121 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7121),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6599 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6599),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_524D => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash524d),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5F8C => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5f8c),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_518D => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash518d),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_65B0 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash65b0),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_521D => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash521d),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7D42 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7d42),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_751F => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash751f),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_8CA9 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash8ca9),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_58F0 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash58f0),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5439 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5439),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6F14 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6f14),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6295 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6295),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6355 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6355),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E00 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e00),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E09 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e09),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_904A => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash904a),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5DE6 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5de6),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_4E2D => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e2d),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_53F3 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash53f3),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6307 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6307),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_8D70 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash8d70),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6253 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6253),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7981 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7981),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7A7A => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7a7a),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5408 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5408),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6E80 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6e80),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6709 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6709),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_6708 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6708),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_7533 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7533),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_5272 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5272),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_55B6 => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash55b6),
SQUARED_CJK_UNIFIED_IDEOGRAPH_DASH_914D => Ok(EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash914d),
TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_672C => Ok(EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash672c),
TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_4E09 => Ok(EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash4e09),
TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_4E8C => Ok(EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash4e8c),
TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_5B89 => Ok(EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash5b89),
TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_70B9 => Ok(EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash70b9),
TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_6253 => Ok(EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash6253),
TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_76D7 => Ok(EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash76d7),
TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_52DD => Ok(EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash52dd),
TORTOISE_SHELL_BRACKETED_CJK_UNIFIED_IDEOGRAPH_DASH_6557 => Ok(EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash6557),
CIRCLED_IDEOGRAPH_ADVANTAGE => Ok(EnclosedIdeographicSupplement::CircledIdeographAdvantage),
CIRCLED_IDEOGRAPH_ACCEPT => Ok(EnclosedIdeographicSupplement::CircledIdeographAccept),
ROUNDED_SYMBOL_FOR_FU => Ok(EnclosedIdeographicSupplement::RoundedSymbolForFu),
ROUNDED_SYMBOL_FOR_LU => Ok(EnclosedIdeographicSupplement::RoundedSymbolForLu),
ROUNDED_SYMBOL_FOR_SHOU => Ok(EnclosedIdeographicSupplement::RoundedSymbolForShou),
ROUNDED_SYMBOL_FOR_XI => Ok(EnclosedIdeographicSupplement::RoundedSymbolForXi),
ROUNDED_SYMBOL_FOR_SHUANGXI => Ok(EnclosedIdeographicSupplement::RoundedSymbolForShuangxi),
ROUNDED_SYMBOL_FOR_CAI => Ok(EnclosedIdeographicSupplement::RoundedSymbolForCai),
_ => Err(()),
}
}
}
impl Into<u32> for EnclosedIdeographicSupplement {
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 EnclosedIdeographicSupplement {
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 EnclosedIdeographicSupplement {
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 EnclosedIdeographicSupplement {
pub fn new() -> Self {
EnclosedIdeographicSupplement::SquareHiraganaHoka
}
pub fn name(&self) -> &str {
match self {
EnclosedIdeographicSupplement::SquareHiraganaHoka => "square hiragana hoka",
EnclosedIdeographicSupplement::SquaredKatakanaKoko => "squared katakana koko",
EnclosedIdeographicSupplement::SquaredKatakanaSa => "squared katakana sa",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash624b => "squared cjk unified ideograph-624b",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5b57 => "squared cjk unified ideograph-5b57",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash53cc => "squared cjk unified ideograph-53cc",
EnclosedIdeographicSupplement::SquaredKatakanaDe => "squared katakana de",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e8c => "squared cjk unified ideograph-4e8c",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash591a => "squared cjk unified ideograph-591a",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash89e3 => "squared cjk unified ideograph-89e3",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5929 => "squared cjk unified ideograph-5929",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4ea4 => "squared cjk unified ideograph-4ea4",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6620 => "squared cjk unified ideograph-6620",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7121 => "squared cjk unified ideograph-7121",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6599 => "squared cjk unified ideograph-6599",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash524d => "squared cjk unified ideograph-524d",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5f8c => "squared cjk unified ideograph-5f8c",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash518d => "squared cjk unified ideograph-518d",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash65b0 => "squared cjk unified ideograph-65b0",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash521d => "squared cjk unified ideograph-521d",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7d42 => "squared cjk unified ideograph-7d42",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash751f => "squared cjk unified ideograph-751f",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash8ca9 => "squared cjk unified ideograph-8ca9",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash58f0 => "squared cjk unified ideograph-58f0",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5439 => "squared cjk unified ideograph-5439",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6f14 => "squared cjk unified ideograph-6f14",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6295 => "squared cjk unified ideograph-6295",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6355 => "squared cjk unified ideograph-6355",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e00 => "squared cjk unified ideograph-4e00",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e09 => "squared cjk unified ideograph-4e09",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash904a => "squared cjk unified ideograph-904a",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5de6 => "squared cjk unified ideograph-5de6",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash4e2d => "squared cjk unified ideograph-4e2d",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash53f3 => "squared cjk unified ideograph-53f3",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6307 => "squared cjk unified ideograph-6307",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash8d70 => "squared cjk unified ideograph-8d70",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6253 => "squared cjk unified ideograph-6253",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7981 => "squared cjk unified ideograph-7981",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7a7a => "squared cjk unified ideograph-7a7a",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5408 => "squared cjk unified ideograph-5408",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6e80 => "squared cjk unified ideograph-6e80",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6709 => "squared cjk unified ideograph-6709",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash6708 => "squared cjk unified ideograph-6708",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash7533 => "squared cjk unified ideograph-7533",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash5272 => "squared cjk unified ideograph-5272",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash55b6 => "squared cjk unified ideograph-55b6",
EnclosedIdeographicSupplement::SquaredCjkUnifiedIdeographDash914d => "squared cjk unified ideograph-914d",
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash672c => "tortoise shell bracketed cjk unified ideograph-672c",
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash4e09 => "tortoise shell bracketed cjk unified ideograph-4e09",
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash4e8c => "tortoise shell bracketed cjk unified ideograph-4e8c",
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash5b89 => "tortoise shell bracketed cjk unified ideograph-5b89",
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash70b9 => "tortoise shell bracketed cjk unified ideograph-70b9",
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash6253 => "tortoise shell bracketed cjk unified ideograph-6253",
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash76d7 => "tortoise shell bracketed cjk unified ideograph-76d7",
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash52dd => "tortoise shell bracketed cjk unified ideograph-52dd",
EnclosedIdeographicSupplement::TortoiseShellBracketedCjkUnifiedIdeographDash6557 => "tortoise shell bracketed cjk unified ideograph-6557",
EnclosedIdeographicSupplement::CircledIdeographAdvantage => "circled ideograph advantage",
EnclosedIdeographicSupplement::CircledIdeographAccept => "circled ideograph accept",
EnclosedIdeographicSupplement::RoundedSymbolForFu => "rounded symbol for fu",
EnclosedIdeographicSupplement::RoundedSymbolForLu => "rounded symbol for lu",
EnclosedIdeographicSupplement::RoundedSymbolForShou => "rounded symbol for shou",
EnclosedIdeographicSupplement::RoundedSymbolForXi => "rounded symbol for xi",
EnclosedIdeographicSupplement::RoundedSymbolForShuangxi => "rounded symbol for shuangxi",
EnclosedIdeographicSupplement::RoundedSymbolForCai => "rounded symbol for cai",
}
}
}