mod constants {
pub const LETTER_A: char = '𑩐';
pub const VOWEL_SIGN_I: char = '𑩑';
pub const VOWEL_SIGN_UE: char = '𑩒';
pub const VOWEL_SIGN_U: char = '𑩓';
pub const VOWEL_SIGN_E: char = '𑩔';
pub const VOWEL_SIGN_O: char = '𑩕';
pub const VOWEL_SIGN_OE: char = '𑩖';
pub const VOWEL_SIGN_AI: char = '𑩗';
pub const VOWEL_SIGN_AU: char = '𑩘';
pub const VOWEL_SIGN_VOCALIC_R: char = '𑩙';
pub const VOWEL_SIGN_VOCALIC_L: char = '𑩚';
pub const VOWEL_LENGTH_MARK: char = '𑩛';
pub const LETTER_KA: char = '𑩜';
pub const LETTER_KHA: char = '𑩝';
pub const LETTER_GA: char = '𑩞';
pub const LETTER_GHA: char = '𑩟';
pub const LETTER_NGA: char = '𑩠';
pub const LETTER_CA: char = '𑩡';
pub const LETTER_CHA: char = '𑩢';
pub const LETTER_JA: char = '𑩣';
pub const LETTER_JHA: char = '𑩤';
pub const LETTER_NYA: char = '𑩥';
pub const LETTER_TTA: char = '𑩦';
pub const LETTER_TTHA: char = '𑩧';
pub const LETTER_DDA: char = '𑩨';
pub const LETTER_DDHA: char = '𑩩';
pub const LETTER_NNA: char = '𑩪';
pub const LETTER_TA: char = '𑩫';
pub const LETTER_THA: char = '𑩬';
pub const LETTER_DA: char = '𑩭';
pub const LETTER_DHA: char = '𑩮';
pub const LETTER_NA: char = '𑩯';
pub const LETTER_PA: char = '𑩰';
pub const LETTER_PHA: char = '𑩱';
pub const LETTER_BA: char = '𑩲';
pub const LETTER_BHA: char = '𑩳';
pub const LETTER_MA: char = '𑩴';
pub const LETTER_TSA: char = '𑩵';
pub const LETTER_TSHA: char = '𑩶';
pub const LETTER_DZA: char = '𑩷';
pub const LETTER_ZHA: char = '𑩸';
pub const LETTER_ZA: char = '𑩹';
pub const LETTER__DASH_A: char = '𑩺';
pub const LETTER_YA: char = '𑩻';
pub const LETTER_RA: char = '𑩼';
pub const LETTER_LA: char = '𑩽';
pub const LETTER_VA: char = '𑩾';
pub const LETTER_SHA: char = '𑩿';
pub const LETTER_SSA: char = '𑪀';
pub const LETTER_SA: char = '𑪁';
pub const LETTER_HA: char = '𑪂';
pub const LETTER_KSSA: char = '𑪃';
pub const SIGN_JIHVAMULIYA: char = '𑪄';
pub const SIGN_UPADHMANIYA: char = '𑪅';
pub const CLUSTER_DASH_INITIAL_LETTER_RA: char = '𑪆';
pub const CLUSTER_DASH_INITIAL_LETTER_LA: char = '𑪇';
pub const CLUSTER_DASH_INITIAL_LETTER_SHA: char = '𑪈';
pub const CLUSTER_DASH_INITIAL_LETTER_SA: char = '𑪉';
pub const FINAL_CONSONANT_SIGN_G: char = '𑪊';
pub const FINAL_CONSONANT_SIGN_K: char = '𑪋';
pub const FINAL_CONSONANT_SIGN_NG: char = '𑪌';
pub const FINAL_CONSONANT_SIGN_D: char = '𑪍';
pub const FINAL_CONSONANT_SIGN_N: char = '𑪎';
pub const FINAL_CONSONANT_SIGN_B: char = '𑪏';
pub const FINAL_CONSONANT_SIGN_M: char = '𑪐';
pub const FINAL_CONSONANT_SIGN_R: char = '𑪑';
pub const FINAL_CONSONANT_SIGN_L: char = '𑪒';
pub const FINAL_CONSONANT_SIGN_SH: char = '𑪓';
pub const FINAL_CONSONANT_SIGN_S: char = '𑪔';
pub const FINAL_CONSONANT_SIGN__DASH_A: char = '𑪕';
pub const SIGN_ANUSVARA: char = '𑪖';
pub const SIGN_VISARGA: char = '𑪗';
pub const GEMINATION_MARK: char = '𑪘';
pub const SUBJOINER: char = '𑪙';
pub const MARK_TSHEG: char = '𑪚';
pub const MARK_SHAD: char = '𑪛';
pub const MARK_DOUBLE_SHAD: char = '𑪜';
pub const MARK_PLUTA: char = '𑪝';
pub const HEAD_MARK_WITH_MOON_AND_SUN_AND_TRIPLE_FLAME: char = '𑪞';
pub const HEAD_MARK_WITH_MOON_AND_SUN_AND_FLAME: char = '𑪟';
pub const HEAD_MARK_WITH_MOON_AND_SUN: char = '𑪠';
pub const TERMINAL_MARK_DASH_1: char = '𑪡';
pub const TERMINAL_MARK_DASH_2: char = '𑪢';
}
#[derive(Debug, Clone, Copy, Hash, PartialEq, Eq)]
pub enum Soyombo {
LetterA,
VowelSignI,
VowelSignUe,
VowelSignU,
VowelSignE,
VowelSignO,
VowelSignOe,
VowelSignAi,
VowelSignAu,
VowelSignVocalicR,
VowelSignVocalicL,
VowelLengthMark,
LetterKa,
LetterKha,
LetterGa,
LetterGha,
LetterNga,
LetterCa,
LetterCha,
LetterJa,
LetterJha,
LetterNya,
LetterTta,
LetterTtha,
LetterDda,
LetterDdha,
LetterNna,
LetterTa,
LetterTha,
LetterDa,
LetterDha,
LetterNa,
LetterPa,
LetterPha,
LetterBa,
LetterBha,
LetterMa,
LetterTsa,
LetterTsha,
LetterDza,
LetterZha,
LetterZa,
LetterDashA,
LetterYa,
LetterRa,
LetterLa,
LetterVa,
LetterSha,
LetterSsa,
LetterSa,
LetterHa,
LetterKssa,
SignJihvamuliya,
SignUpadhmaniya,
ClusterDashInitialLetterRa,
ClusterDashInitialLetterLa,
ClusterDashInitialLetterSha,
ClusterDashInitialLetterSa,
FinalConsonantSignG,
FinalConsonantSignK,
FinalConsonantSignNg,
FinalConsonantSignD,
FinalConsonantSignN,
FinalConsonantSignB,
FinalConsonantSignM,
FinalConsonantSignR,
FinalConsonantSignL,
FinalConsonantSignSh,
FinalConsonantSignS,
FinalConsonantSignDashA,
SignAnusvara,
SignVisarga,
GeminationMark,
Subjoiner,
MarkTsheg,
MarkShad,
MarkDoubleShad,
MarkPluta,
HeadMarkWithMoonAndSunAndTripleFlame,
HeadMarkWithMoonAndSunAndFlame,
HeadMarkWithMoonAndSun,
TerminalMarkDash1,
TerminalMarkDash2,
}
impl Into<char> for Soyombo {
fn into(self) -> char {
use constants::*;
match self {
Soyombo::LetterA => LETTER_A,
Soyombo::VowelSignI => VOWEL_SIGN_I,
Soyombo::VowelSignUe => VOWEL_SIGN_UE,
Soyombo::VowelSignU => VOWEL_SIGN_U,
Soyombo::VowelSignE => VOWEL_SIGN_E,
Soyombo::VowelSignO => VOWEL_SIGN_O,
Soyombo::VowelSignOe => VOWEL_SIGN_OE,
Soyombo::VowelSignAi => VOWEL_SIGN_AI,
Soyombo::VowelSignAu => VOWEL_SIGN_AU,
Soyombo::VowelSignVocalicR => VOWEL_SIGN_VOCALIC_R,
Soyombo::VowelSignVocalicL => VOWEL_SIGN_VOCALIC_L,
Soyombo::VowelLengthMark => VOWEL_LENGTH_MARK,
Soyombo::LetterKa => LETTER_KA,
Soyombo::LetterKha => LETTER_KHA,
Soyombo::LetterGa => LETTER_GA,
Soyombo::LetterGha => LETTER_GHA,
Soyombo::LetterNga => LETTER_NGA,
Soyombo::LetterCa => LETTER_CA,
Soyombo::LetterCha => LETTER_CHA,
Soyombo::LetterJa => LETTER_JA,
Soyombo::LetterJha => LETTER_JHA,
Soyombo::LetterNya => LETTER_NYA,
Soyombo::LetterTta => LETTER_TTA,
Soyombo::LetterTtha => LETTER_TTHA,
Soyombo::LetterDda => LETTER_DDA,
Soyombo::LetterDdha => LETTER_DDHA,
Soyombo::LetterNna => LETTER_NNA,
Soyombo::LetterTa => LETTER_TA,
Soyombo::LetterTha => LETTER_THA,
Soyombo::LetterDa => LETTER_DA,
Soyombo::LetterDha => LETTER_DHA,
Soyombo::LetterNa => LETTER_NA,
Soyombo::LetterPa => LETTER_PA,
Soyombo::LetterPha => LETTER_PHA,
Soyombo::LetterBa => LETTER_BA,
Soyombo::LetterBha => LETTER_BHA,
Soyombo::LetterMa => LETTER_MA,
Soyombo::LetterTsa => LETTER_TSA,
Soyombo::LetterTsha => LETTER_TSHA,
Soyombo::LetterDza => LETTER_DZA,
Soyombo::LetterZha => LETTER_ZHA,
Soyombo::LetterZa => LETTER_ZA,
Soyombo::LetterDashA => LETTER__DASH_A,
Soyombo::LetterYa => LETTER_YA,
Soyombo::LetterRa => LETTER_RA,
Soyombo::LetterLa => LETTER_LA,
Soyombo::LetterVa => LETTER_VA,
Soyombo::LetterSha => LETTER_SHA,
Soyombo::LetterSsa => LETTER_SSA,
Soyombo::LetterSa => LETTER_SA,
Soyombo::LetterHa => LETTER_HA,
Soyombo::LetterKssa => LETTER_KSSA,
Soyombo::SignJihvamuliya => SIGN_JIHVAMULIYA,
Soyombo::SignUpadhmaniya => SIGN_UPADHMANIYA,
Soyombo::ClusterDashInitialLetterRa => CLUSTER_DASH_INITIAL_LETTER_RA,
Soyombo::ClusterDashInitialLetterLa => CLUSTER_DASH_INITIAL_LETTER_LA,
Soyombo::ClusterDashInitialLetterSha => CLUSTER_DASH_INITIAL_LETTER_SHA,
Soyombo::ClusterDashInitialLetterSa => CLUSTER_DASH_INITIAL_LETTER_SA,
Soyombo::FinalConsonantSignG => FINAL_CONSONANT_SIGN_G,
Soyombo::FinalConsonantSignK => FINAL_CONSONANT_SIGN_K,
Soyombo::FinalConsonantSignNg => FINAL_CONSONANT_SIGN_NG,
Soyombo::FinalConsonantSignD => FINAL_CONSONANT_SIGN_D,
Soyombo::FinalConsonantSignN => FINAL_CONSONANT_SIGN_N,
Soyombo::FinalConsonantSignB => FINAL_CONSONANT_SIGN_B,
Soyombo::FinalConsonantSignM => FINAL_CONSONANT_SIGN_M,
Soyombo::FinalConsonantSignR => FINAL_CONSONANT_SIGN_R,
Soyombo::FinalConsonantSignL => FINAL_CONSONANT_SIGN_L,
Soyombo::FinalConsonantSignSh => FINAL_CONSONANT_SIGN_SH,
Soyombo::FinalConsonantSignS => FINAL_CONSONANT_SIGN_S,
Soyombo::FinalConsonantSignDashA => FINAL_CONSONANT_SIGN__DASH_A,
Soyombo::SignAnusvara => SIGN_ANUSVARA,
Soyombo::SignVisarga => SIGN_VISARGA,
Soyombo::GeminationMark => GEMINATION_MARK,
Soyombo::Subjoiner => SUBJOINER,
Soyombo::MarkTsheg => MARK_TSHEG,
Soyombo::MarkShad => MARK_SHAD,
Soyombo::MarkDoubleShad => MARK_DOUBLE_SHAD,
Soyombo::MarkPluta => MARK_PLUTA,
Soyombo::HeadMarkWithMoonAndSunAndTripleFlame => HEAD_MARK_WITH_MOON_AND_SUN_AND_TRIPLE_FLAME,
Soyombo::HeadMarkWithMoonAndSunAndFlame => HEAD_MARK_WITH_MOON_AND_SUN_AND_FLAME,
Soyombo::HeadMarkWithMoonAndSun => HEAD_MARK_WITH_MOON_AND_SUN,
Soyombo::TerminalMarkDash1 => TERMINAL_MARK_DASH_1,
Soyombo::TerminalMarkDash2 => TERMINAL_MARK_DASH_2,
}
}
}
impl std::convert::TryFrom<char> for Soyombo {
type Error = ();
fn try_from(c: char) -> Result<Self, Self::Error> {
use constants::*;
match c {
LETTER_A => Ok(Soyombo::LetterA),
VOWEL_SIGN_I => Ok(Soyombo::VowelSignI),
VOWEL_SIGN_UE => Ok(Soyombo::VowelSignUe),
VOWEL_SIGN_U => Ok(Soyombo::VowelSignU),
VOWEL_SIGN_E => Ok(Soyombo::VowelSignE),
VOWEL_SIGN_O => Ok(Soyombo::VowelSignO),
VOWEL_SIGN_OE => Ok(Soyombo::VowelSignOe),
VOWEL_SIGN_AI => Ok(Soyombo::VowelSignAi),
VOWEL_SIGN_AU => Ok(Soyombo::VowelSignAu),
VOWEL_SIGN_VOCALIC_R => Ok(Soyombo::VowelSignVocalicR),
VOWEL_SIGN_VOCALIC_L => Ok(Soyombo::VowelSignVocalicL),
VOWEL_LENGTH_MARK => Ok(Soyombo::VowelLengthMark),
LETTER_KA => Ok(Soyombo::LetterKa),
LETTER_KHA => Ok(Soyombo::LetterKha),
LETTER_GA => Ok(Soyombo::LetterGa),
LETTER_GHA => Ok(Soyombo::LetterGha),
LETTER_NGA => Ok(Soyombo::LetterNga),
LETTER_CA => Ok(Soyombo::LetterCa),
LETTER_CHA => Ok(Soyombo::LetterCha),
LETTER_JA => Ok(Soyombo::LetterJa),
LETTER_JHA => Ok(Soyombo::LetterJha),
LETTER_NYA => Ok(Soyombo::LetterNya),
LETTER_TTA => Ok(Soyombo::LetterTta),
LETTER_TTHA => Ok(Soyombo::LetterTtha),
LETTER_DDA => Ok(Soyombo::LetterDda),
LETTER_DDHA => Ok(Soyombo::LetterDdha),
LETTER_NNA => Ok(Soyombo::LetterNna),
LETTER_TA => Ok(Soyombo::LetterTa),
LETTER_THA => Ok(Soyombo::LetterTha),
LETTER_DA => Ok(Soyombo::LetterDa),
LETTER_DHA => Ok(Soyombo::LetterDha),
LETTER_NA => Ok(Soyombo::LetterNa),
LETTER_PA => Ok(Soyombo::LetterPa),
LETTER_PHA => Ok(Soyombo::LetterPha),
LETTER_BA => Ok(Soyombo::LetterBa),
LETTER_BHA => Ok(Soyombo::LetterBha),
LETTER_MA => Ok(Soyombo::LetterMa),
LETTER_TSA => Ok(Soyombo::LetterTsa),
LETTER_TSHA => Ok(Soyombo::LetterTsha),
LETTER_DZA => Ok(Soyombo::LetterDza),
LETTER_ZHA => Ok(Soyombo::LetterZha),
LETTER_ZA => Ok(Soyombo::LetterZa),
LETTER__DASH_A => Ok(Soyombo::LetterDashA),
LETTER_YA => Ok(Soyombo::LetterYa),
LETTER_RA => Ok(Soyombo::LetterRa),
LETTER_LA => Ok(Soyombo::LetterLa),
LETTER_VA => Ok(Soyombo::LetterVa),
LETTER_SHA => Ok(Soyombo::LetterSha),
LETTER_SSA => Ok(Soyombo::LetterSsa),
LETTER_SA => Ok(Soyombo::LetterSa),
LETTER_HA => Ok(Soyombo::LetterHa),
LETTER_KSSA => Ok(Soyombo::LetterKssa),
SIGN_JIHVAMULIYA => Ok(Soyombo::SignJihvamuliya),
SIGN_UPADHMANIYA => Ok(Soyombo::SignUpadhmaniya),
CLUSTER_DASH_INITIAL_LETTER_RA => Ok(Soyombo::ClusterDashInitialLetterRa),
CLUSTER_DASH_INITIAL_LETTER_LA => Ok(Soyombo::ClusterDashInitialLetterLa),
CLUSTER_DASH_INITIAL_LETTER_SHA => Ok(Soyombo::ClusterDashInitialLetterSha),
CLUSTER_DASH_INITIAL_LETTER_SA => Ok(Soyombo::ClusterDashInitialLetterSa),
FINAL_CONSONANT_SIGN_G => Ok(Soyombo::FinalConsonantSignG),
FINAL_CONSONANT_SIGN_K => Ok(Soyombo::FinalConsonantSignK),
FINAL_CONSONANT_SIGN_NG => Ok(Soyombo::FinalConsonantSignNg),
FINAL_CONSONANT_SIGN_D => Ok(Soyombo::FinalConsonantSignD),
FINAL_CONSONANT_SIGN_N => Ok(Soyombo::FinalConsonantSignN),
FINAL_CONSONANT_SIGN_B => Ok(Soyombo::FinalConsonantSignB),
FINAL_CONSONANT_SIGN_M => Ok(Soyombo::FinalConsonantSignM),
FINAL_CONSONANT_SIGN_R => Ok(Soyombo::FinalConsonantSignR),
FINAL_CONSONANT_SIGN_L => Ok(Soyombo::FinalConsonantSignL),
FINAL_CONSONANT_SIGN_SH => Ok(Soyombo::FinalConsonantSignSh),
FINAL_CONSONANT_SIGN_S => Ok(Soyombo::FinalConsonantSignS),
FINAL_CONSONANT_SIGN__DASH_A => Ok(Soyombo::FinalConsonantSignDashA),
SIGN_ANUSVARA => Ok(Soyombo::SignAnusvara),
SIGN_VISARGA => Ok(Soyombo::SignVisarga),
GEMINATION_MARK => Ok(Soyombo::GeminationMark),
SUBJOINER => Ok(Soyombo::Subjoiner),
MARK_TSHEG => Ok(Soyombo::MarkTsheg),
MARK_SHAD => Ok(Soyombo::MarkShad),
MARK_DOUBLE_SHAD => Ok(Soyombo::MarkDoubleShad),
MARK_PLUTA => Ok(Soyombo::MarkPluta),
HEAD_MARK_WITH_MOON_AND_SUN_AND_TRIPLE_FLAME => Ok(Soyombo::HeadMarkWithMoonAndSunAndTripleFlame),
HEAD_MARK_WITH_MOON_AND_SUN_AND_FLAME => Ok(Soyombo::HeadMarkWithMoonAndSunAndFlame),
HEAD_MARK_WITH_MOON_AND_SUN => Ok(Soyombo::HeadMarkWithMoonAndSun),
TERMINAL_MARK_DASH_1 => Ok(Soyombo::TerminalMarkDash1),
TERMINAL_MARK_DASH_2 => Ok(Soyombo::TerminalMarkDash2),
_ => Err(()),
}
}
}
impl Into<u32> for Soyombo {
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 Soyombo {
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 Soyombo {
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 Soyombo {
pub fn new() -> Self {
Soyombo::LetterA
}
pub fn name(&self) -> &str {
match self {
Soyombo::LetterA => "soyombo letter a",
Soyombo::VowelSignI => "soyombo vowel sign i",
Soyombo::VowelSignUe => "soyombo vowel sign ue",
Soyombo::VowelSignU => "soyombo vowel sign u",
Soyombo::VowelSignE => "soyombo vowel sign e",
Soyombo::VowelSignO => "soyombo vowel sign o",
Soyombo::VowelSignOe => "soyombo vowel sign oe",
Soyombo::VowelSignAi => "soyombo vowel sign ai",
Soyombo::VowelSignAu => "soyombo vowel sign au",
Soyombo::VowelSignVocalicR => "soyombo vowel sign vocalic r",
Soyombo::VowelSignVocalicL => "soyombo vowel sign vocalic l",
Soyombo::VowelLengthMark => "soyombo vowel length mark",
Soyombo::LetterKa => "soyombo letter ka",
Soyombo::LetterKha => "soyombo letter kha",
Soyombo::LetterGa => "soyombo letter ga",
Soyombo::LetterGha => "soyombo letter gha",
Soyombo::LetterNga => "soyombo letter nga",
Soyombo::LetterCa => "soyombo letter ca",
Soyombo::LetterCha => "soyombo letter cha",
Soyombo::LetterJa => "soyombo letter ja",
Soyombo::LetterJha => "soyombo letter jha",
Soyombo::LetterNya => "soyombo letter nya",
Soyombo::LetterTta => "soyombo letter tta",
Soyombo::LetterTtha => "soyombo letter ttha",
Soyombo::LetterDda => "soyombo letter dda",
Soyombo::LetterDdha => "soyombo letter ddha",
Soyombo::LetterNna => "soyombo letter nna",
Soyombo::LetterTa => "soyombo letter ta",
Soyombo::LetterTha => "soyombo letter tha",
Soyombo::LetterDa => "soyombo letter da",
Soyombo::LetterDha => "soyombo letter dha",
Soyombo::LetterNa => "soyombo letter na",
Soyombo::LetterPa => "soyombo letter pa",
Soyombo::LetterPha => "soyombo letter pha",
Soyombo::LetterBa => "soyombo letter ba",
Soyombo::LetterBha => "soyombo letter bha",
Soyombo::LetterMa => "soyombo letter ma",
Soyombo::LetterTsa => "soyombo letter tsa",
Soyombo::LetterTsha => "soyombo letter tsha",
Soyombo::LetterDza => "soyombo letter dza",
Soyombo::LetterZha => "soyombo letter zha",
Soyombo::LetterZa => "soyombo letter za",
Soyombo::LetterDashA => "soyombo letter -a",
Soyombo::LetterYa => "soyombo letter ya",
Soyombo::LetterRa => "soyombo letter ra",
Soyombo::LetterLa => "soyombo letter la",
Soyombo::LetterVa => "soyombo letter va",
Soyombo::LetterSha => "soyombo letter sha",
Soyombo::LetterSsa => "soyombo letter ssa",
Soyombo::LetterSa => "soyombo letter sa",
Soyombo::LetterHa => "soyombo letter ha",
Soyombo::LetterKssa => "soyombo letter kssa",
Soyombo::SignJihvamuliya => "soyombo sign jihvamuliya",
Soyombo::SignUpadhmaniya => "soyombo sign upadhmaniya",
Soyombo::ClusterDashInitialLetterRa => "soyombo cluster-initial letter ra",
Soyombo::ClusterDashInitialLetterLa => "soyombo cluster-initial letter la",
Soyombo::ClusterDashInitialLetterSha => "soyombo cluster-initial letter sha",
Soyombo::ClusterDashInitialLetterSa => "soyombo cluster-initial letter sa",
Soyombo::FinalConsonantSignG => "soyombo final consonant sign g",
Soyombo::FinalConsonantSignK => "soyombo final consonant sign k",
Soyombo::FinalConsonantSignNg => "soyombo final consonant sign ng",
Soyombo::FinalConsonantSignD => "soyombo final consonant sign d",
Soyombo::FinalConsonantSignN => "soyombo final consonant sign n",
Soyombo::FinalConsonantSignB => "soyombo final consonant sign b",
Soyombo::FinalConsonantSignM => "soyombo final consonant sign m",
Soyombo::FinalConsonantSignR => "soyombo final consonant sign r",
Soyombo::FinalConsonantSignL => "soyombo final consonant sign l",
Soyombo::FinalConsonantSignSh => "soyombo final consonant sign sh",
Soyombo::FinalConsonantSignS => "soyombo final consonant sign s",
Soyombo::FinalConsonantSignDashA => "soyombo final consonant sign -a",
Soyombo::SignAnusvara => "soyombo sign anusvara",
Soyombo::SignVisarga => "soyombo sign visarga",
Soyombo::GeminationMark => "soyombo gemination mark",
Soyombo::Subjoiner => "soyombo subjoiner",
Soyombo::MarkTsheg => "soyombo mark tsheg",
Soyombo::MarkShad => "soyombo mark shad",
Soyombo::MarkDoubleShad => "soyombo mark double shad",
Soyombo::MarkPluta => "soyombo mark pluta",
Soyombo::HeadMarkWithMoonAndSunAndTripleFlame => "soyombo head mark with moon and sun and triple flame",
Soyombo::HeadMarkWithMoonAndSunAndFlame => "soyombo head mark with moon and sun and flame",
Soyombo::HeadMarkWithMoonAndSun => "soyombo head mark with moon and sun",
Soyombo::TerminalMarkDash1 => "soyombo terminal mark-1",
Soyombo::TerminalMarkDash2 => "soyombo terminal mark-2",
}
}
}