use strum::{AsRefStr, Display, EnumString};
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, AsRefStr, Display, EnumString)]
#[strum(ascii_case_insensitive)]
pub enum ScriptListEnum {
#[strum(serialize = "Devanagari")]
Devanagari,
#[strum(serialize = "Telugu")]
Telugu,
#[strum(serialize = "Tamil")]
Tamil,
#[strum(serialize = "Tamil-Extended")]
TamilExtended,
#[strum(serialize = "Bengali")]
Bengali,
#[strum(serialize = "Kannada")]
Kannada,
#[strum(serialize = "Gujarati")]
Gujarati,
#[strum(serialize = "Malayalam")]
Malayalam,
#[strum(serialize = "Odia")]
Odia,
#[strum(serialize = "Sinhala")]
Sinhala,
#[strum(serialize = "Normal")]
Normal,
#[strum(serialize = "Romanized")]
Romanized,
#[strum(serialize = "Gurumukhi")]
Gurumukhi,
#[strum(serialize = "Assamese")]
Assamese,
#[strum(serialize = "Purna-Devanagari")]
PurnaDevanagari,
#[strum(serialize = "Brahmi")]
Brahmi,
#[strum(serialize = "Granth")]
Granth,
#[strum(serialize = "Modi")]
Modi,
#[strum(serialize = "Sharada")]
Sharada,
#[strum(serialize = "Siddham")]
Siddham,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq, Hash, AsRefStr, Display, EnumString)]
#[strum(ascii_case_insensitive)]
pub enum Script {
#[strum(serialize = "Devanagari")]
Devanagari,
#[strum(serialize = "Telugu")]
Telugu,
#[strum(serialize = "Tamil")]
Tamil,
#[strum(serialize = "Tamil-Extended")]
TamilExtended,
#[strum(serialize = "Bengali")]
Bengali,
#[strum(serialize = "Kannada")]
Kannada,
#[strum(serialize = "Gujarati")]
Gujarati,
#[strum(serialize = "Malayalam")]
Malayalam,
#[strum(serialize = "Odia")]
Odia,
#[strum(serialize = "Sinhala")]
Sinhala,
#[strum(serialize = "Normal")]
Normal,
#[strum(serialize = "Romanized")]
Romanized,
#[strum(serialize = "Gurumukhi")]
Gurumukhi,
#[strum(serialize = "Assamese")]
Assamese,
#[strum(serialize = "Purna-Devanagari")]
PurnaDevanagari,
#[strum(serialize = "Brahmi")]
Brahmi,
#[strum(serialize = "Granth")]
Granth,
#[strum(serialize = "Modi")]
Modi,
#[strum(serialize = "Sharada")]
Sharada,
#[strum(serialize = "Siddham")]
Siddham,
#[strum(serialize = "English")]
English,
#[strum(serialize = "Sanskrit")]
Sanskrit,
#[strum(serialize = "Hindi")]
Hindi,
#[strum(serialize = "Marathi")]
Marathi,
#[strum(serialize = "Nepali")]
Nepali,
#[strum(serialize = "Punjabi")]
Punjabi,
#[strum(serialize = "nep")]
Nep,
#[strum(serialize = "nor")]
Nor,
#[strum(serialize = "norm")]
Norm,
#[strum(serialize = "sa")]
Sa,
#[strum(serialize = "hi")]
Hi,
#[strum(serialize = "sin")]
Sin,
#[strum(serialize = "kan")]
Kan,
#[strum(serialize = "be")]
Be,
#[strum(serialize = "tam-ext")]
TamExt,
#[strum(serialize = "la")]
La,
#[strum(serialize = "gur")]
Gur,
#[strum(serialize = "tam")]
Tam,
#[strum(serialize = "or")]
Or,
#[strum(serialize = "pun")]
Pun,
#[strum(serialize = "tel")]
Tel,
#[strum(serialize = "ben")]
Ben,
#[strum(serialize = "gu")]
Gu,
#[strum(serialize = "eng")]
Eng,
#[strum(serialize = "lat")]
Lat,
#[strum(serialize = "san")]
San,
#[strum(serialize = "de")]
De,
#[strum(serialize = "od")]
Od,
#[strum(serialize = "si")]
Si,
#[strum(serialize = "sinh")]
Sinh,
#[strum(serialize = "guj")]
Guj,
#[strum(serialize = "dev")]
Dev,
#[strum(serialize = "en")]
En,
#[strum(serialize = "hin")]
Hin,
#[strum(serialize = "mal")]
Mal,
#[strum(serialize = "ne")]
Ne,
#[strum(serialize = "oriya")]
Oriya,
#[strum(serialize = "as")]
ValueAs,
#[strum(serialize = "te")]
Te,
#[strum(serialize = "rom")]
Rom,
#[strum(serialize = "ta-ext")]
TaExt,
#[strum(serialize = "ka")]
Ka,
#[strum(serialize = "mar")]
Mar,
}
impl From<Script> for ScriptListEnum {
fn from(lang: Script) -> Self {
match lang {
Script::Devanagari => ScriptListEnum::Devanagari,
Script::Telugu => ScriptListEnum::Telugu,
Script::Tamil => ScriptListEnum::Tamil,
Script::TamilExtended => ScriptListEnum::TamilExtended,
Script::Bengali => ScriptListEnum::Bengali,
Script::Kannada => ScriptListEnum::Kannada,
Script::Gujarati => ScriptListEnum::Gujarati,
Script::Malayalam => ScriptListEnum::Malayalam,
Script::Odia => ScriptListEnum::Odia,
Script::Sinhala => ScriptListEnum::Sinhala,
Script::Normal => ScriptListEnum::Normal,
Script::Romanized => ScriptListEnum::Romanized,
Script::Gurumukhi => ScriptListEnum::Gurumukhi,
Script::Assamese => ScriptListEnum::Assamese,
Script::PurnaDevanagari => ScriptListEnum::PurnaDevanagari,
Script::Brahmi => ScriptListEnum::Brahmi,
Script::Granth => ScriptListEnum::Granth,
Script::Modi => ScriptListEnum::Modi,
Script::Sharada => ScriptListEnum::Sharada,
Script::Siddham => ScriptListEnum::Siddham,
Script::English => ScriptListEnum::Normal,
Script::Sanskrit => ScriptListEnum::Devanagari,
Script::Hindi => ScriptListEnum::Devanagari,
Script::Marathi => ScriptListEnum::Devanagari,
Script::Nepali => ScriptListEnum::Devanagari,
Script::Punjabi => ScriptListEnum::Gurumukhi,
Script::Nep => ScriptListEnum::Devanagari,
Script::Nor => ScriptListEnum::Normal,
Script::Norm => ScriptListEnum::Normal,
Script::Sa => ScriptListEnum::Devanagari,
Script::Hi => ScriptListEnum::Devanagari,
Script::Sin => ScriptListEnum::Sinhala,
Script::Kan => ScriptListEnum::Kannada,
Script::Be => ScriptListEnum::Bengali,
Script::TamExt => ScriptListEnum::TamilExtended,
Script::La => ScriptListEnum::Normal,
Script::Gur => ScriptListEnum::Gurumukhi,
Script::Tam => ScriptListEnum::Tamil,
Script::Or => ScriptListEnum::Odia,
Script::Pun => ScriptListEnum::Gurumukhi,
Script::Tel => ScriptListEnum::Telugu,
Script::Ben => ScriptListEnum::Bengali,
Script::Gu => ScriptListEnum::Gujarati,
Script::Eng => ScriptListEnum::Normal,
Script::Lat => ScriptListEnum::Normal,
Script::San => ScriptListEnum::Devanagari,
Script::De => ScriptListEnum::Devanagari,
Script::Od => ScriptListEnum::Odia,
Script::Si => ScriptListEnum::Sinhala,
Script::Sinh => ScriptListEnum::Sinhala,
Script::Guj => ScriptListEnum::Gujarati,
Script::Dev => ScriptListEnum::Devanagari,
Script::En => ScriptListEnum::Normal,
Script::Hin => ScriptListEnum::Devanagari,
Script::Mal => ScriptListEnum::Malayalam,
Script::Ne => ScriptListEnum::Devanagari,
Script::Oriya => ScriptListEnum::Odia,
Script::ValueAs => ScriptListEnum::Assamese,
Script::Te => ScriptListEnum::Telugu,
Script::Rom => ScriptListEnum::Romanized,
Script::TaExt => ScriptListEnum::TamilExtended,
Script::Ka => ScriptListEnum::Kannada,
Script::Mar => ScriptListEnum::Devanagari,
}
}
}