#![allow(missing_docs, non_upper_case_globals, non_snake_case)]
-use super::ScriptExtension;
+pub use tables_impl::*;
+
+#[rustfmt::skip]
+mod tables_impl {
+use crate::ScriptExtension;
/// The version of [Unicode](http://www.unicode.org/)
/// that this version of unicode-script is based on.
}
impl Script {
+
#[inline]
pub(crate) fn inner_full_name(self) -> &'static str {
match self {
}
}
+ #[inline]
+ pub(crate) fn inner_from_full_name(input: &str) -> Option<Self> {
+ match input {
+ "Unknown" => Some(Script::Unknown),
+ "Common" => Some(Script::Common),
+ "Inherited" => Some(Script::Inherited),
+ "Adlam" => Some(Script::Adlam),
+ "Caucasian_Albanian" => Some(Script::Caucasian_Albanian),
+ "Ahom" => Some(Script::Ahom),
+ "Arabic" => Some(Script::Arabic),
+ "Imperial_Aramaic" => Some(Script::Imperial_Aramaic),
+ "Armenian" => Some(Script::Armenian),
+ "Avestan" => Some(Script::Avestan),
+ "Balinese" => Some(Script::Balinese),
+ "Bamum" => Some(Script::Bamum),
+ "Bassa_Vah" => Some(Script::Bassa_Vah),
+ "Batak" => Some(Script::Batak),
+ "Bengali" => Some(Script::Bengali),
+ "Bhaiksuki" => Some(Script::Bhaiksuki),
+ "Bopomofo" => Some(Script::Bopomofo),
+ "Brahmi" => Some(Script::Brahmi),
+ "Braille" => Some(Script::Braille),
+ "Buginese" => Some(Script::Buginese),
+ "Buhid" => Some(Script::Buhid),
+ "Chakma" => Some(Script::Chakma),
+ "Canadian_Aboriginal" => Some(Script::Canadian_Aboriginal),
+ "Carian" => Some(Script::Carian),
+ "Cham" => Some(Script::Cham),
+ "Cherokee" => Some(Script::Cherokee),
+ "Chorasmian" => Some(Script::Chorasmian),
+ "Coptic" => Some(Script::Coptic),
+ "Cypriot" => Some(Script::Cypriot),
+ "Cyrillic" => Some(Script::Cyrillic),
+ "Devanagari" => Some(Script::Devanagari),
+ "Dives_Akuru" => Some(Script::Dives_Akuru),
+ "Dogra" => Some(Script::Dogra),
+ "Deseret" => Some(Script::Deseret),
+ "Duployan" => Some(Script::Duployan),
+ "Egyptian_Hieroglyphs" => Some(Script::Egyptian_Hieroglyphs),
+ "Elbasan" => Some(Script::Elbasan),
+ "Elymaic" => Some(Script::Elymaic),
+ "Ethiopic" => Some(Script::Ethiopic),
+ "Georgian" => Some(Script::Georgian),
+ "Glagolitic" => Some(Script::Glagolitic),
+ "Gunjala_Gondi" => Some(Script::Gunjala_Gondi),
+ "Masaram_Gondi" => Some(Script::Masaram_Gondi),
+ "Gothic" => Some(Script::Gothic),
+ "Grantha" => Some(Script::Grantha),
+ "Greek" => Some(Script::Greek),
+ "Gujarati" => Some(Script::Gujarati),
+ "Gurmukhi" => Some(Script::Gurmukhi),
+ "Hangul" => Some(Script::Hangul),
+ "Han" => Some(Script::Han),
+ "Hanunoo" => Some(Script::Hanunoo),
+ "Hatran" => Some(Script::Hatran),
+ "Hebrew" => Some(Script::Hebrew),
+ "Hiragana" => Some(Script::Hiragana),
+ "Anatolian_Hieroglyphs" => Some(Script::Anatolian_Hieroglyphs),
+ "Pahawh_Hmong" => Some(Script::Pahawh_Hmong),
+ "Nyiakeng_Puachue_Hmong" => Some(Script::Nyiakeng_Puachue_Hmong),
+ "Old_Hungarian" => Some(Script::Old_Hungarian),
+ "Old_Italic" => Some(Script::Old_Italic),
+ "Javanese" => Some(Script::Javanese),
+ "Kayah_Li" => Some(Script::Kayah_Li),
+ "Katakana" => Some(Script::Katakana),
+ "Kharoshthi" => Some(Script::Kharoshthi),
+ "Khmer" => Some(Script::Khmer),
+ "Khojki" => Some(Script::Khojki),
+ "Khitan_Small_Script" => Some(Script::Khitan_Small_Script),
+ "Kannada" => Some(Script::Kannada),
+ "Kaithi" => Some(Script::Kaithi),
+ "Tai_Tham" => Some(Script::Tai_Tham),
+ "Lao" => Some(Script::Lao),
+ "Latin" => Some(Script::Latin),
+ "Lepcha" => Some(Script::Lepcha),
+ "Limbu" => Some(Script::Limbu),
+ "Linear_A" => Some(Script::Linear_A),
+ "Linear_B" => Some(Script::Linear_B),
+ "Lisu" => Some(Script::Lisu),
+ "Lycian" => Some(Script::Lycian),
+ "Lydian" => Some(Script::Lydian),
+ "Mahajani" => Some(Script::Mahajani),
+ "Makasar" => Some(Script::Makasar),
+ "Mandaic" => Some(Script::Mandaic),
+ "Manichaean" => Some(Script::Manichaean),
+ "Marchen" => Some(Script::Marchen),
+ "Medefaidrin" => Some(Script::Medefaidrin),
+ "Mende_Kikakui" => Some(Script::Mende_Kikakui),
+ "Meroitic_Cursive" => Some(Script::Meroitic_Cursive),
+ "Meroitic_Hieroglyphs" => Some(Script::Meroitic_Hieroglyphs),
+ "Malayalam" => Some(Script::Malayalam),
+ "Modi" => Some(Script::Modi),
+ "Mongolian" => Some(Script::Mongolian),
+ "Mro" => Some(Script::Mro),
+ "Meetei_Mayek" => Some(Script::Meetei_Mayek),
+ "Multani" => Some(Script::Multani),
+ "Myanmar" => Some(Script::Myanmar),
+ "Nandinagari" => Some(Script::Nandinagari),
+ "Old_North_Arabian" => Some(Script::Old_North_Arabian),
+ "Nabataean" => Some(Script::Nabataean),
+ "Newa" => Some(Script::Newa),
+ "Nko" => Some(Script::Nko),
+ "Nushu" => Some(Script::Nushu),
+ "Ogham" => Some(Script::Ogham),
+ "Ol_Chiki" => Some(Script::Ol_Chiki),
+ "Old_Turkic" => Some(Script::Old_Turkic),
+ "Oriya" => Some(Script::Oriya),
+ "Osage" => Some(Script::Osage),
+ "Osmanya" => Some(Script::Osmanya),
+ "Palmyrene" => Some(Script::Palmyrene),
+ "Pau_Cin_Hau" => Some(Script::Pau_Cin_Hau),
+ "Old_Permic" => Some(Script::Old_Permic),
+ "Phags_Pa" => Some(Script::Phags_Pa),
+ "Inscriptional_Pahlavi" => Some(Script::Inscriptional_Pahlavi),
+ "Psalter_Pahlavi" => Some(Script::Psalter_Pahlavi),
+ "Phoenician" => Some(Script::Phoenician),
+ "Miao" => Some(Script::Miao),
+ "Inscriptional_Parthian" => Some(Script::Inscriptional_Parthian),
+ "Rejang" => Some(Script::Rejang),
+ "Hanifi_Rohingya" => Some(Script::Hanifi_Rohingya),
+ "Runic" => Some(Script::Runic),
+ "Samaritan" => Some(Script::Samaritan),
+ "Old_South_Arabian" => Some(Script::Old_South_Arabian),
+ "Saurashtra" => Some(Script::Saurashtra),
+ "SignWriting" => Some(Script::SignWriting),
+ "Shavian" => Some(Script::Shavian),
+ "Sharada" => Some(Script::Sharada),
+ "Siddham" => Some(Script::Siddham),
+ "Khudawadi" => Some(Script::Khudawadi),
+ "Sinhala" => Some(Script::Sinhala),
+ "Sogdian" => Some(Script::Sogdian),
+ "Old_Sogdian" => Some(Script::Old_Sogdian),
+ "Sora_Sompeng" => Some(Script::Sora_Sompeng),
+ "Soyombo" => Some(Script::Soyombo),
+ "Sundanese" => Some(Script::Sundanese),
+ "Syloti_Nagri" => Some(Script::Syloti_Nagri),
+ "Syriac" => Some(Script::Syriac),
+ "Tagbanwa" => Some(Script::Tagbanwa),
+ "Takri" => Some(Script::Takri),
+ "Tai_Le" => Some(Script::Tai_Le),
+ "New_Tai_Lue" => Some(Script::New_Tai_Lue),
+ "Tamil" => Some(Script::Tamil),
+ "Tangut" => Some(Script::Tangut),
+ "Tai_Viet" => Some(Script::Tai_Viet),
+ "Telugu" => Some(Script::Telugu),
+ "Tifinagh" => Some(Script::Tifinagh),
+ "Tagalog" => Some(Script::Tagalog),
+ "Thaana" => Some(Script::Thaana),
+ "Thai" => Some(Script::Thai),
+ "Tibetan" => Some(Script::Tibetan),
+ "Tirhuta" => Some(Script::Tirhuta),
+ "Ugaritic" => Some(Script::Ugaritic),
+ "Vai" => Some(Script::Vai),
+ "Warang_Citi" => Some(Script::Warang_Citi),
+ "Wancho" => Some(Script::Wancho),
+ "Old_Persian" => Some(Script::Old_Persian),
+ "Cuneiform" => Some(Script::Cuneiform),
+ "Yezidi" => Some(Script::Yezidi),
+ "Yi" => Some(Script::Yi),
+ "Zanabazar_Square" => Some(Script::Zanabazar_Square),
+ _ => None,
+ }
+ }
+
#[inline]
pub(crate) fn inner_short_name(self) -> &'static str {
match self {
}
}
+ #[inline]
+ pub(crate) fn inner_from_short_name(input: &str) -> Option<Self> {
+ match input {
+ "Zyyy" => Some(Script::Common),
+ "Zinh" => Some(Script::Inherited),
+ "Adlm" => Some(Script::Adlam),
+ "Aghb" => Some(Script::Caucasian_Albanian),
+ "Ahom" => Some(Script::Ahom),
+ "Arab" => Some(Script::Arabic),
+ "Armi" => Some(Script::Imperial_Aramaic),
+ "Armn" => Some(Script::Armenian),
+ "Avst" => Some(Script::Avestan),
+ "Bali" => Some(Script::Balinese),
+ "Bamu" => Some(Script::Bamum),
+ "Bass" => Some(Script::Bassa_Vah),
+ "Batk" => Some(Script::Batak),
+ "Beng" => Some(Script::Bengali),
+ "Bhks" => Some(Script::Bhaiksuki),
+ "Bopo" => Some(Script::Bopomofo),
+ "Brah" => Some(Script::Brahmi),
+ "Brai" => Some(Script::Braille),
+ "Bugi" => Some(Script::Buginese),
+ "Buhd" => Some(Script::Buhid),
+ "Cakm" => Some(Script::Chakma),
+ "Cans" => Some(Script::Canadian_Aboriginal),
+ "Cari" => Some(Script::Carian),
+ "Cham" => Some(Script::Cham),
+ "Cher" => Some(Script::Cherokee),
+ "Chrs" => Some(Script::Chorasmian),
+ "Copt" => Some(Script::Coptic),
+ "Cprt" => Some(Script::Cypriot),
+ "Cyrl" => Some(Script::Cyrillic),
+ "Deva" => Some(Script::Devanagari),
+ "Diak" => Some(Script::Dives_Akuru),
+ "Dogr" => Some(Script::Dogra),
+ "Dsrt" => Some(Script::Deseret),
+ "Dupl" => Some(Script::Duployan),
+ "Egyp" => Some(Script::Egyptian_Hieroglyphs),
+ "Elba" => Some(Script::Elbasan),
+ "Elym" => Some(Script::Elymaic),
+ "Ethi" => Some(Script::Ethiopic),
+ "Geor" => Some(Script::Georgian),
+ "Glag" => Some(Script::Glagolitic),
+ "Gong" => Some(Script::Gunjala_Gondi),
+ "Gonm" => Some(Script::Masaram_Gondi),
+ "Goth" => Some(Script::Gothic),
+ "Gran" => Some(Script::Grantha),
+ "Grek" => Some(Script::Greek),
+ "Gujr" => Some(Script::Gujarati),
+ "Guru" => Some(Script::Gurmukhi),
+ "Hang" => Some(Script::Hangul),
+ "Hani" => Some(Script::Han),
+ "Hano" => Some(Script::Hanunoo),
+ "Hatr" => Some(Script::Hatran),
+ "Hebr" => Some(Script::Hebrew),
+ "Hira" => Some(Script::Hiragana),
+ "Hluw" => Some(Script::Anatolian_Hieroglyphs),
+ "Hmng" => Some(Script::Pahawh_Hmong),
+ "Hmnp" => Some(Script::Nyiakeng_Puachue_Hmong),
+ "Hung" => Some(Script::Old_Hungarian),
+ "Ital" => Some(Script::Old_Italic),
+ "Java" => Some(Script::Javanese),
+ "Kali" => Some(Script::Kayah_Li),
+ "Kana" => Some(Script::Katakana),
+ "Khar" => Some(Script::Kharoshthi),
+ "Khmr" => Some(Script::Khmer),
+ "Khoj" => Some(Script::Khojki),
+ "Kits" => Some(Script::Khitan_Small_Script),
+ "Knda" => Some(Script::Kannada),
+ "Kthi" => Some(Script::Kaithi),
+ "Lana" => Some(Script::Tai_Tham),
+ "Laoo" => Some(Script::Lao),
+ "Latn" => Some(Script::Latin),
+ "Lepc" => Some(Script::Lepcha),
+ "Limb" => Some(Script::Limbu),
+ "Lina" => Some(Script::Linear_A),
+ "Linb" => Some(Script::Linear_B),
+ "Lisu" => Some(Script::Lisu),
+ "Lyci" => Some(Script::Lycian),
+ "Lydi" => Some(Script::Lydian),
+ "Mahj" => Some(Script::Mahajani),
+ "Maka" => Some(Script::Makasar),
+ "Mand" => Some(Script::Mandaic),
+ "Mani" => Some(Script::Manichaean),
+ "Marc" => Some(Script::Marchen),
+ "Medf" => Some(Script::Medefaidrin),
+ "Mend" => Some(Script::Mende_Kikakui),
+ "Merc" => Some(Script::Meroitic_Cursive),
+ "Mero" => Some(Script::Meroitic_Hieroglyphs),
+ "Mlym" => Some(Script::Malayalam),
+ "Modi" => Some(Script::Modi),
+ "Mong" => Some(Script::Mongolian),
+ "Mroo" => Some(Script::Mro),
+ "Mtei" => Some(Script::Meetei_Mayek),
+ "Mult" => Some(Script::Multani),
+ "Mymr" => Some(Script::Myanmar),
+ "Nand" => Some(Script::Nandinagari),
+ "Narb" => Some(Script::Old_North_Arabian),
+ "Nbat" => Some(Script::Nabataean),
+ "Newa" => Some(Script::Newa),
+ "Nkoo" => Some(Script::Nko),
+ "Nshu" => Some(Script::Nushu),
+ "Ogam" => Some(Script::Ogham),
+ "Olck" => Some(Script::Ol_Chiki),
+ "Orkh" => Some(Script::Old_Turkic),
+ "Orya" => Some(Script::Oriya),
+ "Osge" => Some(Script::Osage),
+ "Osma" => Some(Script::Osmanya),
+ "Palm" => Some(Script::Palmyrene),
+ "Pauc" => Some(Script::Pau_Cin_Hau),
+ "Perm" => Some(Script::Old_Permic),
+ "Phag" => Some(Script::Phags_Pa),
+ "Phli" => Some(Script::Inscriptional_Pahlavi),
+ "Phlp" => Some(Script::Psalter_Pahlavi),
+ "Phnx" => Some(Script::Phoenician),
+ "Plrd" => Some(Script::Miao),
+ "Prti" => Some(Script::Inscriptional_Parthian),
+ "Rjng" => Some(Script::Rejang),
+ "Rohg" => Some(Script::Hanifi_Rohingya),
+ "Runr" => Some(Script::Runic),
+ "Samr" => Some(Script::Samaritan),
+ "Sarb" => Some(Script::Old_South_Arabian),
+ "Saur" => Some(Script::Saurashtra),
+ "Sgnw" => Some(Script::SignWriting),
+ "Shaw" => Some(Script::Shavian),
+ "Shrd" => Some(Script::Sharada),
+ "Sidd" => Some(Script::Siddham),
+ "Sind" => Some(Script::Khudawadi),
+ "Sinh" => Some(Script::Sinhala),
+ "Sogd" => Some(Script::Sogdian),
+ "Sogo" => Some(Script::Old_Sogdian),
+ "Sora" => Some(Script::Sora_Sompeng),
+ "Soyo" => Some(Script::Soyombo),
+ "Sund" => Some(Script::Sundanese),
+ "Sylo" => Some(Script::Syloti_Nagri),
+ "Syrc" => Some(Script::Syriac),
+ "Tagb" => Some(Script::Tagbanwa),
+ "Takr" => Some(Script::Takri),
+ "Tale" => Some(Script::Tai_Le),
+ "Talu" => Some(Script::New_Tai_Lue),
+ "Taml" => Some(Script::Tamil),
+ "Tang" => Some(Script::Tangut),
+ "Tavt" => Some(Script::Tai_Viet),
+ "Telu" => Some(Script::Telugu),
+ "Tfng" => Some(Script::Tifinagh),
+ "Tglg" => Some(Script::Tagalog),
+ "Thaa" => Some(Script::Thaana),
+ "Thai" => Some(Script::Thai),
+ "Tibt" => Some(Script::Tibetan),
+ "Tirh" => Some(Script::Tirhuta),
+ "Ugar" => Some(Script::Ugaritic),
+ "Vaii" => Some(Script::Vai),
+ "Wara" => Some(Script::Warang_Citi),
+ "Wcho" => Some(Script::Wancho),
+ "Xpeo" => Some(Script::Old_Persian),
+ "Xsux" => Some(Script::Cuneiform),
+ "Yezi" => Some(Script::Yezidi),
+ "Yiii" => Some(Script::Yi),
+ "Zanb" => Some(Script::Zanabazar_Square),
+ _ => None,
+ }
+ }
+
#[inline]
pub(crate) fn for_integer(value: u8) -> Self {
match value {
_ => unreachable!(),
}
}
+
}
pub fn bsearch_range_value_table<T: Copy>(c: char, r: &'static [(char, char, T)]) -> Option<T> {
script_extensions::HANI), ('\u{1f250}', '\u{1f251}', script_extensions::HANI)
];
+
+}