]> git.proxmox.com Git - rustc.git/blobdiff - vendor/unicode-script/src/tables.rs
New upstream version 1.55.0+dfsg1
[rustc.git] / vendor / unicode-script / src / tables.rs
index c7cf53c3aec8a593848eb8ab713b1ce3cc445957..e31a7229febd4c177f8d6c96667c9cc6d69097c5 100644 (file)
 
 #![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.
@@ -1053,6 +1057,7 @@ pub mod script_extensions {
 }
 
 impl Script {
+
     #[inline]
     pub(crate) fn inner_full_name(self) -> &'static str {
         match self {
@@ -1216,6 +1221,170 @@ impl Script {
         }
     }
 
+    #[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 {
@@ -1379,6 +1548,169 @@ impl Script {
         }
     }
 
+    #[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 {
@@ -1539,6 +1871,7 @@ impl Script {
             _ => unreachable!(),
         }
     }
+
 }
 
 pub fn bsearch_range_value_table<T: Copy>(c: char, r: &'static [(char, char, T)]) -> Option<T> {
@@ -2774,3 +3107,5 @@ pub fn get_script_extension(c: char) -> Option<ScriptExtension> {
         script_extensions::HANI), ('\u{1f250}', '\u{1f251}', script_extensions::HANI)
     ];
 
+
+}