// Copyright 2012-2018 The Rust Project Developers. See the COPYRIGHT // file at the top-level directory of this distribution and at // http://rust-lang.org/COPYRIGHT. // // Licensed under the Apache License, Version 2.0 or the MIT license // , at your // option. This file may not be copied, modified, or distributed // except according to those terms. // NOTE: The following code was generated by "scripts/unicode.py", do not edit directly #![allow(missing_docs, non_upper_case_globals, non_snake_case)] 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. pub const UNICODE_VERSION: (u64, u64, u64) = (15, 0, 0); #[derive(Clone, Copy, PartialEq, Eq, Debug, Hash)] #[non_exhaustive] #[allow(non_camel_case_types)] #[repr(u8)] /// A value of the `Script` property pub enum Script { /// Unknown script Unknown = 0xFF, /// Zyyy Common = 0xFE, /// Zinh, Inherited = 0xFD, /// Adlm Adlam = 0, /// Aghb Caucasian_Albanian = 1, /// Ahom Ahom = 2, /// Arab Arabic = 3, /// Armi Imperial_Aramaic = 4, /// Armn Armenian = 5, /// Avst Avestan = 6, /// Bali Balinese = 7, /// Bamu Bamum = 8, /// Bass Bassa_Vah = 9, /// Batk Batak = 10, /// Beng Bengali = 11, /// Bhks Bhaiksuki = 12, /// Bopo Bopomofo = 13, /// Brah Brahmi = 14, /// Brai Braille = 15, /// Bugi Buginese = 16, /// Buhd Buhid = 17, /// Cakm Chakma = 18, /// Cans Canadian_Aboriginal = 19, /// Cari Carian = 20, /// Cham Cham = 21, /// Cher Cherokee = 22, /// Chrs Chorasmian = 23, /// Copt Coptic = 24, /// Cpmn Cypro_Minoan = 25, /// Cprt Cypriot = 26, /// Cyrl Cyrillic = 27, /// Deva Devanagari = 28, /// Diak Dives_Akuru = 29, /// Dogr Dogra = 30, /// Dsrt Deseret = 31, /// Dupl Duployan = 32, /// Egyp Egyptian_Hieroglyphs = 33, /// Elba Elbasan = 34, /// Elym Elymaic = 35, /// Ethi Ethiopic = 36, /// Geor Georgian = 37, /// Glag Glagolitic = 38, /// Gong Gunjala_Gondi = 39, /// Gonm Masaram_Gondi = 40, /// Goth Gothic = 41, /// Gran Grantha = 42, /// Grek Greek = 43, /// Gujr Gujarati = 44, /// Guru Gurmukhi = 45, /// Hang Hangul = 46, /// Hani Han = 47, /// Hano Hanunoo = 48, /// Hatr Hatran = 49, /// Hebr Hebrew = 50, /// Hira Hiragana = 51, /// Hluw Anatolian_Hieroglyphs = 52, /// Hmng Pahawh_Hmong = 53, /// Hmnp Nyiakeng_Puachue_Hmong = 54, /// Hung Old_Hungarian = 55, /// Ital Old_Italic = 56, /// Java Javanese = 57, /// Kali Kayah_Li = 58, /// Kana Katakana = 59, /// Kawi Kawi = 60, /// Khar Kharoshthi = 61, /// Khmr Khmer = 62, /// Khoj Khojki = 63, /// Kits Khitan_Small_Script = 64, /// Knda Kannada = 65, /// Kthi Kaithi = 66, /// Lana Tai_Tham = 67, /// Laoo Lao = 68, /// Latn Latin = 69, /// Lepc Lepcha = 70, /// Limb Limbu = 71, /// Lina Linear_A = 72, /// Linb Linear_B = 73, /// Lisu Lisu = 74, /// Lyci Lycian = 75, /// Lydi Lydian = 76, /// Mahj Mahajani = 77, /// Maka Makasar = 78, /// Mand Mandaic = 79, /// Mani Manichaean = 80, /// Marc Marchen = 81, /// Medf Medefaidrin = 82, /// Mend Mende_Kikakui = 83, /// Merc Meroitic_Cursive = 84, /// Mero Meroitic_Hieroglyphs = 85, /// Mlym Malayalam = 86, /// Modi Modi = 87, /// Mong Mongolian = 88, /// Mroo Mro = 89, /// Mtei Meetei_Mayek = 90, /// Mult Multani = 91, /// Mymr Myanmar = 92, /// Nagm Nag_Mundari = 93, /// Nand Nandinagari = 94, /// Narb Old_North_Arabian = 95, /// Nbat Nabataean = 96, /// Newa Newa = 97, /// Nkoo Nko = 98, /// Nshu Nushu = 99, /// Ogam Ogham = 100, /// Olck Ol_Chiki = 101, /// Orkh Old_Turkic = 102, /// Orya Oriya = 103, /// Osge Osage = 104, /// Osma Osmanya = 105, /// Ougr Old_Uyghur = 106, /// Palm Palmyrene = 107, /// Pauc Pau_Cin_Hau = 108, /// Perm Old_Permic = 109, /// Phag Phags_Pa = 110, /// Phli Inscriptional_Pahlavi = 111, /// Phlp Psalter_Pahlavi = 112, /// Phnx Phoenician = 113, /// Plrd Miao = 114, /// Prti Inscriptional_Parthian = 115, /// Rjng Rejang = 116, /// Rohg Hanifi_Rohingya = 117, /// Runr Runic = 118, /// Samr Samaritan = 119, /// Sarb Old_South_Arabian = 120, /// Saur Saurashtra = 121, /// Sgnw SignWriting = 122, /// Shaw Shavian = 123, /// Shrd Sharada = 124, /// Sidd Siddham = 125, /// Sind Khudawadi = 126, /// Sinh Sinhala = 127, /// Sogd Sogdian = 128, /// Sogo Old_Sogdian = 129, /// Sora Sora_Sompeng = 130, /// Soyo Soyombo = 131, /// Sund Sundanese = 132, /// Sylo Syloti_Nagri = 133, /// Syrc Syriac = 134, /// Tagb Tagbanwa = 135, /// Takr Takri = 136, /// Tale Tai_Le = 137, /// Talu New_Tai_Lue = 138, /// Taml Tamil = 139, /// Tang Tangut = 140, /// Tavt Tai_Viet = 141, /// Telu Telugu = 142, /// Tfng Tifinagh = 143, /// Tglg Tagalog = 144, /// Thaa Thaana = 145, /// Thai Thai = 146, /// Tibt Tibetan = 147, /// Tirh Tirhuta = 148, /// Tnsa Tangsa = 149, /// Toto Toto = 150, /// Ugar Ugaritic = 151, /// Vaii Vai = 152, /// Vith Vithkuqi = 153, /// Wara Warang_Citi = 154, /// Wcho Wancho = 155, /// Xpeo Old_Persian = 156, /// Xsux Cuneiform = 157, /// Yezi Yezidi = 158, /// Yiii Yi = 159, /// Zanb Zanabazar_Square = 160, } pub const NEXT_SCRIPT: u8 = 161; pub mod script_extensions { use crate::ScriptExtension; pub const COMMON: ScriptExtension = ScriptExtension::new_common(); pub const INHERITED: ScriptExtension = ScriptExtension::new_inherited(); pub const UNKNOWN: ScriptExtension = ScriptExtension::new_unknown(); /// Adlam pub const ADLAM: ScriptExtension = ScriptExtension::new(0x1, 0, 0); /// Adlam pub const ADLM: ScriptExtension = ADLAM; /// Caucasian_Albanian pub const CAUCASIAN_ALBANIAN: ScriptExtension = ScriptExtension::new(0x2, 0, 0); /// Caucasian_Albanian pub const AGHB: ScriptExtension = CAUCASIAN_ALBANIAN; /// Ahom pub const AHOM: ScriptExtension = ScriptExtension::new(0x4, 0, 0); /// Arabic pub const ARABIC: ScriptExtension = ScriptExtension::new(0x8, 0, 0); /// Arabic pub const ARAB: ScriptExtension = ARABIC; /// Imperial_Aramaic pub const IMPERIAL_ARAMAIC: ScriptExtension = ScriptExtension::new(0x10, 0, 0); /// Imperial_Aramaic pub const ARMI: ScriptExtension = IMPERIAL_ARAMAIC; /// Armenian pub const ARMENIAN: ScriptExtension = ScriptExtension::new(0x20, 0, 0); /// Armenian pub const ARMN: ScriptExtension = ARMENIAN; /// Avestan pub const AVESTAN: ScriptExtension = ScriptExtension::new(0x40, 0, 0); /// Avestan pub const AVST: ScriptExtension = AVESTAN; /// Balinese pub const BALINESE: ScriptExtension = ScriptExtension::new(0x80, 0, 0); /// Balinese pub const BALI: ScriptExtension = BALINESE; /// Bamum pub const BAMUM: ScriptExtension = ScriptExtension::new(0x100, 0, 0); /// Bamum pub const BAMU: ScriptExtension = BAMUM; /// Bassa_Vah pub const BASSA_VAH: ScriptExtension = ScriptExtension::new(0x200, 0, 0); /// Bassa_Vah pub const BASS: ScriptExtension = BASSA_VAH; /// Batak pub const BATAK: ScriptExtension = ScriptExtension::new(0x400, 0, 0); /// Batak pub const BATK: ScriptExtension = BATAK; /// Bengali pub const BENGALI: ScriptExtension = ScriptExtension::new(0x800, 0, 0); /// Bengali pub const BENG: ScriptExtension = BENGALI; /// Bhaiksuki pub const BHAIKSUKI: ScriptExtension = ScriptExtension::new(0x1000, 0, 0); /// Bhaiksuki pub const BHKS: ScriptExtension = BHAIKSUKI; /// Bopomofo pub const BOPOMOFO: ScriptExtension = ScriptExtension::new(0x2000, 0, 0); /// Bopomofo pub const BOPO: ScriptExtension = BOPOMOFO; /// Brahmi pub const BRAHMI: ScriptExtension = ScriptExtension::new(0x4000, 0, 0); /// Brahmi pub const BRAH: ScriptExtension = BRAHMI; /// Braille pub const BRAILLE: ScriptExtension = ScriptExtension::new(0x8000, 0, 0); /// Braille pub const BRAI: ScriptExtension = BRAILLE; /// Buginese pub const BUGINESE: ScriptExtension = ScriptExtension::new(0x10000, 0, 0); /// Buginese pub const BUGI: ScriptExtension = BUGINESE; /// Buhid pub const BUHID: ScriptExtension = ScriptExtension::new(0x20000, 0, 0); /// Buhid pub const BUHD: ScriptExtension = BUHID; /// Chakma pub const CHAKMA: ScriptExtension = ScriptExtension::new(0x40000, 0, 0); /// Chakma pub const CAKM: ScriptExtension = CHAKMA; /// Canadian_Aboriginal pub const CANADIAN_ABORIGINAL: ScriptExtension = ScriptExtension::new(0x80000, 0, 0); /// Canadian_Aboriginal pub const CANS: ScriptExtension = CANADIAN_ABORIGINAL; /// Carian pub const CARIAN: ScriptExtension = ScriptExtension::new(0x100000, 0, 0); /// Carian pub const CARI: ScriptExtension = CARIAN; /// Cham pub const CHAM: ScriptExtension = ScriptExtension::new(0x200000, 0, 0); /// Cherokee pub const CHEROKEE: ScriptExtension = ScriptExtension::new(0x400000, 0, 0); /// Cherokee pub const CHER: ScriptExtension = CHEROKEE; /// Chorasmian pub const CHORASMIAN: ScriptExtension = ScriptExtension::new(0x800000, 0, 0); /// Chorasmian pub const CHRS: ScriptExtension = CHORASMIAN; /// Coptic pub const COPTIC: ScriptExtension = ScriptExtension::new(0x1000000, 0, 0); /// Coptic pub const COPT: ScriptExtension = COPTIC; /// Cypro_Minoan pub const CYPRO_MINOAN: ScriptExtension = ScriptExtension::new(0x2000000, 0, 0); /// Cypro_Minoan pub const CPMN: ScriptExtension = CYPRO_MINOAN; /// Cypriot pub const CYPRIOT: ScriptExtension = ScriptExtension::new(0x4000000, 0, 0); /// Cypriot pub const CPRT: ScriptExtension = CYPRIOT; /// Cyrillic pub const CYRILLIC: ScriptExtension = ScriptExtension::new(0x8000000, 0, 0); /// Cyrillic pub const CYRL: ScriptExtension = CYRILLIC; /// Devanagari pub const DEVANAGARI: ScriptExtension = ScriptExtension::new(0x10000000, 0, 0); /// Devanagari pub const DEVA: ScriptExtension = DEVANAGARI; /// Dives_Akuru pub const DIVES_AKURU: ScriptExtension = ScriptExtension::new(0x20000000, 0, 0); /// Dives_Akuru pub const DIAK: ScriptExtension = DIVES_AKURU; /// Dogra pub const DOGRA: ScriptExtension = ScriptExtension::new(0x40000000, 0, 0); /// Dogra pub const DOGR: ScriptExtension = DOGRA; /// Deseret pub const DESERET: ScriptExtension = ScriptExtension::new(0x80000000, 0, 0); /// Deseret pub const DSRT: ScriptExtension = DESERET; /// Duployan pub const DUPLOYAN: ScriptExtension = ScriptExtension::new(0x100000000, 0, 0); /// Duployan pub const DUPL: ScriptExtension = DUPLOYAN; /// Egyptian_Hieroglyphs pub const EGYPTIAN_HIEROGLYPHS: ScriptExtension = ScriptExtension::new(0x200000000, 0, 0); /// Egyptian_Hieroglyphs pub const EGYP: ScriptExtension = EGYPTIAN_HIEROGLYPHS; /// Elbasan pub const ELBASAN: ScriptExtension = ScriptExtension::new(0x400000000, 0, 0); /// Elbasan pub const ELBA: ScriptExtension = ELBASAN; /// Elymaic pub const ELYMAIC: ScriptExtension = ScriptExtension::new(0x800000000, 0, 0); /// Elymaic pub const ELYM: ScriptExtension = ELYMAIC; /// Ethiopic pub const ETHIOPIC: ScriptExtension = ScriptExtension::new(0x1000000000, 0, 0); /// Ethiopic pub const ETHI: ScriptExtension = ETHIOPIC; /// Georgian pub const GEORGIAN: ScriptExtension = ScriptExtension::new(0x2000000000, 0, 0); /// Georgian pub const GEOR: ScriptExtension = GEORGIAN; /// Glagolitic pub const GLAGOLITIC: ScriptExtension = ScriptExtension::new(0x4000000000, 0, 0); /// Glagolitic pub const GLAG: ScriptExtension = GLAGOLITIC; /// Gunjala_Gondi pub const GUNJALA_GONDI: ScriptExtension = ScriptExtension::new(0x8000000000, 0, 0); /// Gunjala_Gondi pub const GONG: ScriptExtension = GUNJALA_GONDI; /// Masaram_Gondi pub const MASARAM_GONDI: ScriptExtension = ScriptExtension::new(0x10000000000, 0, 0); /// Masaram_Gondi pub const GONM: ScriptExtension = MASARAM_GONDI; /// Gothic pub const GOTHIC: ScriptExtension = ScriptExtension::new(0x20000000000, 0, 0); /// Gothic pub const GOTH: ScriptExtension = GOTHIC; /// Grantha pub const GRANTHA: ScriptExtension = ScriptExtension::new(0x40000000000, 0, 0); /// Grantha pub const GRAN: ScriptExtension = GRANTHA; /// Greek pub const GREEK: ScriptExtension = ScriptExtension::new(0x80000000000, 0, 0); /// Greek pub const GREK: ScriptExtension = GREEK; /// Gujarati pub const GUJARATI: ScriptExtension = ScriptExtension::new(0x100000000000, 0, 0); /// Gujarati pub const GUJR: ScriptExtension = GUJARATI; /// Gurmukhi pub const GURMUKHI: ScriptExtension = ScriptExtension::new(0x200000000000, 0, 0); /// Gurmukhi pub const GURU: ScriptExtension = GURMUKHI; /// Hangul pub const HANGUL: ScriptExtension = ScriptExtension::new(0x400000000000, 0, 0); /// Hangul pub const HANG: ScriptExtension = HANGUL; /// Han pub const HAN: ScriptExtension = ScriptExtension::new(0x800000000000, 0, 0); /// Han pub const HANI: ScriptExtension = HAN; /// Hanunoo pub const HANUNOO: ScriptExtension = ScriptExtension::new(0x1000000000000, 0, 0); /// Hanunoo pub const HANO: ScriptExtension = HANUNOO; /// Hatran pub const HATRAN: ScriptExtension = ScriptExtension::new(0x2000000000000, 0, 0); /// Hatran pub const HATR: ScriptExtension = HATRAN; /// Hebrew pub const HEBREW: ScriptExtension = ScriptExtension::new(0x4000000000000, 0, 0); /// Hebrew pub const HEBR: ScriptExtension = HEBREW; /// Hiragana pub const HIRAGANA: ScriptExtension = ScriptExtension::new(0x8000000000000, 0, 0); /// Hiragana pub const HIRA: ScriptExtension = HIRAGANA; /// Anatolian_Hieroglyphs pub const ANATOLIAN_HIEROGLYPHS: ScriptExtension = ScriptExtension::new(0x10000000000000, 0, 0); /// Anatolian_Hieroglyphs pub const HLUW: ScriptExtension = ANATOLIAN_HIEROGLYPHS; /// Pahawh_Hmong pub const PAHAWH_HMONG: ScriptExtension = ScriptExtension::new(0x20000000000000, 0, 0); /// Pahawh_Hmong pub const HMNG: ScriptExtension = PAHAWH_HMONG; /// Nyiakeng_Puachue_Hmong pub const NYIAKENG_PUACHUE_HMONG: ScriptExtension = ScriptExtension::new(0x40000000000000, 0, 0); /// Nyiakeng_Puachue_Hmong pub const HMNP: ScriptExtension = NYIAKENG_PUACHUE_HMONG; /// Old_Hungarian pub const OLD_HUNGARIAN: ScriptExtension = ScriptExtension::new(0x80000000000000, 0, 0); /// Old_Hungarian pub const HUNG: ScriptExtension = OLD_HUNGARIAN; /// Old_Italic pub const OLD_ITALIC: ScriptExtension = ScriptExtension::new(0x100000000000000, 0, 0); /// Old_Italic pub const ITAL: ScriptExtension = OLD_ITALIC; /// Javanese pub const JAVANESE: ScriptExtension = ScriptExtension::new(0x200000000000000, 0, 0); /// Javanese pub const JAVA: ScriptExtension = JAVANESE; /// Kayah_Li pub const KAYAH_LI: ScriptExtension = ScriptExtension::new(0x400000000000000, 0, 0); /// Kayah_Li pub const KALI: ScriptExtension = KAYAH_LI; /// Katakana pub const KATAKANA: ScriptExtension = ScriptExtension::new(0x800000000000000, 0, 0); /// Katakana pub const KANA: ScriptExtension = KATAKANA; /// Kawi pub const KAWI: ScriptExtension = ScriptExtension::new(0x1000000000000000, 0, 0); /// Kharoshthi pub const KHAROSHTHI: ScriptExtension = ScriptExtension::new(0x2000000000000000, 0, 0); /// Kharoshthi pub const KHAR: ScriptExtension = KHAROSHTHI; /// Khmer pub const KHMER: ScriptExtension = ScriptExtension::new(0x4000000000000000, 0, 0); /// Khmer pub const KHMR: ScriptExtension = KHMER; /// Khojki pub const KHOJKI: ScriptExtension = ScriptExtension::new(0x8000000000000000, 0, 0); /// Khojki pub const KHOJ: ScriptExtension = KHOJKI; /// Khitan_Small_Script pub const KHITAN_SMALL_SCRIPT: ScriptExtension = ScriptExtension::new(0, 0x1, 0); /// Khitan_Small_Script pub const KITS: ScriptExtension = KHITAN_SMALL_SCRIPT; /// Kannada pub const KANNADA: ScriptExtension = ScriptExtension::new(0, 0x2, 0); /// Kannada pub const KNDA: ScriptExtension = KANNADA; /// Kaithi pub const KAITHI: ScriptExtension = ScriptExtension::new(0, 0x4, 0); /// Kaithi pub const KTHI: ScriptExtension = KAITHI; /// Tai_Tham pub const TAI_THAM: ScriptExtension = ScriptExtension::new(0, 0x8, 0); /// Tai_Tham pub const LANA: ScriptExtension = TAI_THAM; /// Lao pub const LAO: ScriptExtension = ScriptExtension::new(0, 0x10, 0); /// Lao pub const LAOO: ScriptExtension = LAO; /// Latin pub const LATIN: ScriptExtension = ScriptExtension::new(0, 0x20, 0); /// Latin pub const LATN: ScriptExtension = LATIN; /// Lepcha pub const LEPCHA: ScriptExtension = ScriptExtension::new(0, 0x40, 0); /// Lepcha pub const LEPC: ScriptExtension = LEPCHA; /// Limbu pub const LIMBU: ScriptExtension = ScriptExtension::new(0, 0x80, 0); /// Limbu pub const LIMB: ScriptExtension = LIMBU; /// Linear_A pub const LINEAR_A: ScriptExtension = ScriptExtension::new(0, 0x100, 0); /// Linear_A pub const LINA: ScriptExtension = LINEAR_A; /// Linear_B pub const LINEAR_B: ScriptExtension = ScriptExtension::new(0, 0x200, 0); /// Linear_B pub const LINB: ScriptExtension = LINEAR_B; /// Lisu pub const LISU: ScriptExtension = ScriptExtension::new(0, 0x400, 0); /// Lycian pub const LYCIAN: ScriptExtension = ScriptExtension::new(0, 0x800, 0); /// Lycian pub const LYCI: ScriptExtension = LYCIAN; /// Lydian pub const LYDIAN: ScriptExtension = ScriptExtension::new(0, 0x1000, 0); /// Lydian pub const LYDI: ScriptExtension = LYDIAN; /// Mahajani pub const MAHAJANI: ScriptExtension = ScriptExtension::new(0, 0x2000, 0); /// Mahajani pub const MAHJ: ScriptExtension = MAHAJANI; /// Makasar pub const MAKASAR: ScriptExtension = ScriptExtension::new(0, 0x4000, 0); /// Makasar pub const MAKA: ScriptExtension = MAKASAR; /// Mandaic pub const MANDAIC: ScriptExtension = ScriptExtension::new(0, 0x8000, 0); /// Mandaic pub const MAND: ScriptExtension = MANDAIC; /// Manichaean pub const MANICHAEAN: ScriptExtension = ScriptExtension::new(0, 0x10000, 0); /// Manichaean pub const MANI: ScriptExtension = MANICHAEAN; /// Marchen pub const MARCHEN: ScriptExtension = ScriptExtension::new(0, 0x20000, 0); /// Marchen pub const MARC: ScriptExtension = MARCHEN; /// Medefaidrin pub const MEDEFAIDRIN: ScriptExtension = ScriptExtension::new(0, 0x40000, 0); /// Medefaidrin pub const MEDF: ScriptExtension = MEDEFAIDRIN; /// Mende_Kikakui pub const MENDE_KIKAKUI: ScriptExtension = ScriptExtension::new(0, 0x80000, 0); /// Mende_Kikakui pub const MEND: ScriptExtension = MENDE_KIKAKUI; /// Meroitic_Cursive pub const MEROITIC_CURSIVE: ScriptExtension = ScriptExtension::new(0, 0x100000, 0); /// Meroitic_Cursive pub const MERC: ScriptExtension = MEROITIC_CURSIVE; /// Meroitic_Hieroglyphs pub const MEROITIC_HIEROGLYPHS: ScriptExtension = ScriptExtension::new(0, 0x200000, 0); /// Meroitic_Hieroglyphs pub const MERO: ScriptExtension = MEROITIC_HIEROGLYPHS; /// Malayalam pub const MALAYALAM: ScriptExtension = ScriptExtension::new(0, 0x400000, 0); /// Malayalam pub const MLYM: ScriptExtension = MALAYALAM; /// Modi pub const MODI: ScriptExtension = ScriptExtension::new(0, 0x800000, 0); /// Mongolian pub const MONGOLIAN: ScriptExtension = ScriptExtension::new(0, 0x1000000, 0); /// Mongolian pub const MONG: ScriptExtension = MONGOLIAN; /// Mro pub const MRO: ScriptExtension = ScriptExtension::new(0, 0x2000000, 0); /// Mro pub const MROO: ScriptExtension = MRO; /// Meetei_Mayek pub const MEETEI_MAYEK: ScriptExtension = ScriptExtension::new(0, 0x4000000, 0); /// Meetei_Mayek pub const MTEI: ScriptExtension = MEETEI_MAYEK; /// Multani pub const MULTANI: ScriptExtension = ScriptExtension::new(0, 0x8000000, 0); /// Multani pub const MULT: ScriptExtension = MULTANI; /// Myanmar pub const MYANMAR: ScriptExtension = ScriptExtension::new(0, 0x10000000, 0); /// Myanmar pub const MYMR: ScriptExtension = MYANMAR; /// Nag_Mundari pub const NAG_MUNDARI: ScriptExtension = ScriptExtension::new(0, 0x20000000, 0); /// Nag_Mundari pub const NAGM: ScriptExtension = NAG_MUNDARI; /// Nandinagari pub const NANDINAGARI: ScriptExtension = ScriptExtension::new(0, 0x40000000, 0); /// Nandinagari pub const NAND: ScriptExtension = NANDINAGARI; /// Old_North_Arabian pub const OLD_NORTH_ARABIAN: ScriptExtension = ScriptExtension::new(0, 0x80000000, 0); /// Old_North_Arabian pub const NARB: ScriptExtension = OLD_NORTH_ARABIAN; /// Nabataean pub const NABATAEAN: ScriptExtension = ScriptExtension::new(0, 0x100000000, 0); /// Nabataean pub const NBAT: ScriptExtension = NABATAEAN; /// Newa pub const NEWA: ScriptExtension = ScriptExtension::new(0, 0x200000000, 0); /// Nko pub const NKO: ScriptExtension = ScriptExtension::new(0, 0x400000000, 0); /// Nko pub const NKOO: ScriptExtension = NKO; /// Nushu pub const NUSHU: ScriptExtension = ScriptExtension::new(0, 0x800000000, 0); /// Nushu pub const NSHU: ScriptExtension = NUSHU; /// Ogham pub const OGHAM: ScriptExtension = ScriptExtension::new(0, 0x1000000000, 0); /// Ogham pub const OGAM: ScriptExtension = OGHAM; /// Ol_Chiki pub const OL_CHIKI: ScriptExtension = ScriptExtension::new(0, 0x2000000000, 0); /// Ol_Chiki pub const OLCK: ScriptExtension = OL_CHIKI; /// Old_Turkic pub const OLD_TURKIC: ScriptExtension = ScriptExtension::new(0, 0x4000000000, 0); /// Old_Turkic pub const ORKH: ScriptExtension = OLD_TURKIC; /// Oriya pub const ORIYA: ScriptExtension = ScriptExtension::new(0, 0x8000000000, 0); /// Oriya pub const ORYA: ScriptExtension = ORIYA; /// Osage pub const OSAGE: ScriptExtension = ScriptExtension::new(0, 0x10000000000, 0); /// Osage pub const OSGE: ScriptExtension = OSAGE; /// Osmanya pub const OSMANYA: ScriptExtension = ScriptExtension::new(0, 0x20000000000, 0); /// Osmanya pub const OSMA: ScriptExtension = OSMANYA; /// Old_Uyghur pub const OLD_UYGHUR: ScriptExtension = ScriptExtension::new(0, 0x40000000000, 0); /// Old_Uyghur pub const OUGR: ScriptExtension = OLD_UYGHUR; /// Palmyrene pub const PALMYRENE: ScriptExtension = ScriptExtension::new(0, 0x80000000000, 0); /// Palmyrene pub const PALM: ScriptExtension = PALMYRENE; /// Pau_Cin_Hau pub const PAU_CIN_HAU: ScriptExtension = ScriptExtension::new(0, 0x100000000000, 0); /// Pau_Cin_Hau pub const PAUC: ScriptExtension = PAU_CIN_HAU; /// Old_Permic pub const OLD_PERMIC: ScriptExtension = ScriptExtension::new(0, 0x200000000000, 0); /// Old_Permic pub const PERM: ScriptExtension = OLD_PERMIC; /// Phags_Pa pub const PHAGS_PA: ScriptExtension = ScriptExtension::new(0, 0x400000000000, 0); /// Phags_Pa pub const PHAG: ScriptExtension = PHAGS_PA; /// Inscriptional_Pahlavi pub const INSCRIPTIONAL_PAHLAVI: ScriptExtension = ScriptExtension::new(0, 0x800000000000, 0); /// Inscriptional_Pahlavi pub const PHLI: ScriptExtension = INSCRIPTIONAL_PAHLAVI; /// Psalter_Pahlavi pub const PSALTER_PAHLAVI: ScriptExtension = ScriptExtension::new(0, 0x1000000000000, 0); /// Psalter_Pahlavi pub const PHLP: ScriptExtension = PSALTER_PAHLAVI; /// Phoenician pub const PHOENICIAN: ScriptExtension = ScriptExtension::new(0, 0x2000000000000, 0); /// Phoenician pub const PHNX: ScriptExtension = PHOENICIAN; /// Miao pub const MIAO: ScriptExtension = ScriptExtension::new(0, 0x4000000000000, 0); /// Miao pub const PLRD: ScriptExtension = MIAO; /// Inscriptional_Parthian pub const INSCRIPTIONAL_PARTHIAN: ScriptExtension = ScriptExtension::new(0, 0x8000000000000, 0); /// Inscriptional_Parthian pub const PRTI: ScriptExtension = INSCRIPTIONAL_PARTHIAN; /// Rejang pub const REJANG: ScriptExtension = ScriptExtension::new(0, 0x10000000000000, 0); /// Rejang pub const RJNG: ScriptExtension = REJANG; /// Hanifi_Rohingya pub const HANIFI_ROHINGYA: ScriptExtension = ScriptExtension::new(0, 0x20000000000000, 0); /// Hanifi_Rohingya pub const ROHG: ScriptExtension = HANIFI_ROHINGYA; /// Runic pub const RUNIC: ScriptExtension = ScriptExtension::new(0, 0x40000000000000, 0); /// Runic pub const RUNR: ScriptExtension = RUNIC; /// Samaritan pub const SAMARITAN: ScriptExtension = ScriptExtension::new(0, 0x80000000000000, 0); /// Samaritan pub const SAMR: ScriptExtension = SAMARITAN; /// Old_South_Arabian pub const OLD_SOUTH_ARABIAN: ScriptExtension = ScriptExtension::new(0, 0x100000000000000, 0); /// Old_South_Arabian pub const SARB: ScriptExtension = OLD_SOUTH_ARABIAN; /// Saurashtra pub const SAURASHTRA: ScriptExtension = ScriptExtension::new(0, 0x200000000000000, 0); /// Saurashtra pub const SAUR: ScriptExtension = SAURASHTRA; /// SignWriting pub const SIGNWRITING: ScriptExtension = ScriptExtension::new(0, 0x400000000000000, 0); /// SignWriting pub const SGNW: ScriptExtension = SIGNWRITING; /// Shavian pub const SHAVIAN: ScriptExtension = ScriptExtension::new(0, 0x800000000000000, 0); /// Shavian pub const SHAW: ScriptExtension = SHAVIAN; /// Sharada pub const SHARADA: ScriptExtension = ScriptExtension::new(0, 0x1000000000000000, 0); /// Sharada pub const SHRD: ScriptExtension = SHARADA; /// Siddham pub const SIDDHAM: ScriptExtension = ScriptExtension::new(0, 0x2000000000000000, 0); /// Siddham pub const SIDD: ScriptExtension = SIDDHAM; /// Khudawadi pub const KHUDAWADI: ScriptExtension = ScriptExtension::new(0, 0x4000000000000000, 0); /// Khudawadi pub const SIND: ScriptExtension = KHUDAWADI; /// Sinhala pub const SINHALA: ScriptExtension = ScriptExtension::new(0, 0x8000000000000000, 0); /// Sinhala pub const SINH: ScriptExtension = SINHALA; /// Sogdian pub const SOGDIAN: ScriptExtension = ScriptExtension::new(0, 0, 0x1); /// Sogdian pub const SOGD: ScriptExtension = SOGDIAN; /// Old_Sogdian pub const OLD_SOGDIAN: ScriptExtension = ScriptExtension::new(0, 0, 0x2); /// Old_Sogdian pub const SOGO: ScriptExtension = OLD_SOGDIAN; /// Sora_Sompeng pub const SORA_SOMPENG: ScriptExtension = ScriptExtension::new(0, 0, 0x4); /// Sora_Sompeng pub const SORA: ScriptExtension = SORA_SOMPENG; /// Soyombo pub const SOYOMBO: ScriptExtension = ScriptExtension::new(0, 0, 0x8); /// Soyombo pub const SOYO: ScriptExtension = SOYOMBO; /// Sundanese pub const SUNDANESE: ScriptExtension = ScriptExtension::new(0, 0, 0x10); /// Sundanese pub const SUND: ScriptExtension = SUNDANESE; /// Syloti_Nagri pub const SYLOTI_NAGRI: ScriptExtension = ScriptExtension::new(0, 0, 0x20); /// Syloti_Nagri pub const SYLO: ScriptExtension = SYLOTI_NAGRI; /// Syriac pub const SYRIAC: ScriptExtension = ScriptExtension::new(0, 0, 0x40); /// Syriac pub const SYRC: ScriptExtension = SYRIAC; /// Tagbanwa pub const TAGBANWA: ScriptExtension = ScriptExtension::new(0, 0, 0x80); /// Tagbanwa pub const TAGB: ScriptExtension = TAGBANWA; /// Takri pub const TAKRI: ScriptExtension = ScriptExtension::new(0, 0, 0x100); /// Takri pub const TAKR: ScriptExtension = TAKRI; /// Tai_Le pub const TAI_LE: ScriptExtension = ScriptExtension::new(0, 0, 0x200); /// Tai_Le pub const TALE: ScriptExtension = TAI_LE; /// New_Tai_Lue pub const NEW_TAI_LUE: ScriptExtension = ScriptExtension::new(0, 0, 0x400); /// New_Tai_Lue pub const TALU: ScriptExtension = NEW_TAI_LUE; /// Tamil pub const TAMIL: ScriptExtension = ScriptExtension::new(0, 0, 0x800); /// Tamil pub const TAML: ScriptExtension = TAMIL; /// Tangut pub const TANGUT: ScriptExtension = ScriptExtension::new(0, 0, 0x1000); /// Tangut pub const TANG: ScriptExtension = TANGUT; /// Tai_Viet pub const TAI_VIET: ScriptExtension = ScriptExtension::new(0, 0, 0x2000); /// Tai_Viet pub const TAVT: ScriptExtension = TAI_VIET; /// Telugu pub const TELUGU: ScriptExtension = ScriptExtension::new(0, 0, 0x4000); /// Telugu pub const TELU: ScriptExtension = TELUGU; /// Tifinagh pub const TIFINAGH: ScriptExtension = ScriptExtension::new(0, 0, 0x8000); /// Tifinagh pub const TFNG: ScriptExtension = TIFINAGH; /// Tagalog pub const TAGALOG: ScriptExtension = ScriptExtension::new(0, 0, 0x10000); /// Tagalog pub const TGLG: ScriptExtension = TAGALOG; /// Thaana pub const THAANA: ScriptExtension = ScriptExtension::new(0, 0, 0x20000); /// Thaana pub const THAA: ScriptExtension = THAANA; /// Thai pub const THAI: ScriptExtension = ScriptExtension::new(0, 0, 0x40000); /// Tibetan pub const TIBETAN: ScriptExtension = ScriptExtension::new(0, 0, 0x80000); /// Tibetan pub const TIBT: ScriptExtension = TIBETAN; /// Tirhuta pub const TIRHUTA: ScriptExtension = ScriptExtension::new(0, 0, 0x100000); /// Tirhuta pub const TIRH: ScriptExtension = TIRHUTA; /// Tangsa pub const TANGSA: ScriptExtension = ScriptExtension::new(0, 0, 0x200000); /// Tangsa pub const TNSA: ScriptExtension = TANGSA; /// Toto pub const TOTO: ScriptExtension = ScriptExtension::new(0, 0, 0x400000); /// Ugaritic pub const UGARITIC: ScriptExtension = ScriptExtension::new(0, 0, 0x800000); /// Ugaritic pub const UGAR: ScriptExtension = UGARITIC; /// Vai pub const VAI: ScriptExtension = ScriptExtension::new(0, 0, 0x1000000); /// Vai pub const VAII: ScriptExtension = VAI; /// Vithkuqi pub const VITHKUQI: ScriptExtension = ScriptExtension::new(0, 0, 0x2000000); /// Vithkuqi pub const VITH: ScriptExtension = VITHKUQI; /// Warang_Citi pub const WARANG_CITI: ScriptExtension = ScriptExtension::new(0, 0, 0x4000000); /// Warang_Citi pub const WARA: ScriptExtension = WARANG_CITI; /// Wancho pub const WANCHO: ScriptExtension = ScriptExtension::new(0, 0, 0x8000000); /// Wancho pub const WCHO: ScriptExtension = WANCHO; /// Old_Persian pub const OLD_PERSIAN: ScriptExtension = ScriptExtension::new(0, 0, 0x10000000); /// Old_Persian pub const XPEO: ScriptExtension = OLD_PERSIAN; /// Cuneiform pub const CUNEIFORM: ScriptExtension = ScriptExtension::new(0, 0, 0x20000000); /// Cuneiform pub const XSUX: ScriptExtension = CUNEIFORM; /// Yezidi pub const YEZIDI: ScriptExtension = ScriptExtension::new(0, 0, 0x40000000); /// Yezidi pub const YEZI: ScriptExtension = YEZIDI; /// Yi pub const YI: ScriptExtension = ScriptExtension::new(0, 0, 0x80000000); /// Yi pub const YIII: ScriptExtension = YI; /// Zanabazar_Square pub const ZANABAZAR_SQUARE: ScriptExtension = ScriptExtension::new(0, 0, 0x100000000); /// Zanabazar_Square pub const ZANB: ScriptExtension = ZANABAZAR_SQUARE; /// Arabic, Coptic pub const ARAB_COPT: ScriptExtension = ARAB.union(COPT); /// Arabic, Hanifi_Rohingya pub const ARAB_ROHG: ScriptExtension = ARAB.union(ROHG); /// Arabic, Nko pub const ARAB_NKOO: ScriptExtension = ARAB.union(NKOO); /// Arabic, Syriac pub const ARAB_SYRC: ScriptExtension = ARAB.union(SYRC); /// Arabic, Thaana pub const ARAB_THAA: ScriptExtension = ARAB.union(THAA); /// Bengali, Devanagari pub const BENG_DEVA: ScriptExtension = BENG.union(DEVA); /// Bopomofo, Han pub const BOPO_HANI: ScriptExtension = BOPO.union(HANI); /// Buginese, Javanese pub const BUGI_JAVA: ScriptExtension = BUGI.union(JAVA); /// Cypriot, Linear_B pub const CPRT_LINB: ScriptExtension = CPRT.union(LINB); /// Cyrillic, Glagolitic pub const CYRL_GLAG: ScriptExtension = CYRL.union(GLAG); /// Cyrillic, Latin pub const CYRL_LATN: ScriptExtension = CYRL.union(LATN); /// Cyrillic, Old_Permic pub const CYRL_PERM: ScriptExtension = CYRL.union(PERM); /// Cyrillic, Syriac pub const CYRL_SYRC: ScriptExtension = CYRL.union(SYRC); /// Devanagari, Grantha pub const DEVA_GRAN: ScriptExtension = DEVA.union(GRAN); /// Devanagari, Nandinagari pub const DEVA_NAND: ScriptExtension = DEVA.union(NAND); /// Devanagari, Sharada pub const DEVA_SHRD: ScriptExtension = DEVA.union(SHRD); /// Devanagari, Tamil pub const DEVA_TAML: ScriptExtension = DEVA.union(TAML); /// Georgian, Latin pub const GEOR_LATN: ScriptExtension = GEOR.union(LATN); /// Grantha, Tamil pub const GRAN_TAML: ScriptExtension = GRAN.union(TAML); /// Gujarati, Khojki pub const GUJR_KHOJ: ScriptExtension = GUJR.union(KHOJ); /// Gurmukhi, Multani pub const GURU_MULT: ScriptExtension = GURU.union(MULT); /// Han, Latin pub const HANI_LATN: ScriptExtension = HANI.union(LATN); /// Hiragana, Katakana pub const HIRA_KANA: ScriptExtension = HIRA.union(KANA); /// Kannada, Nandinagari pub const KNDA_NAND: ScriptExtension = KNDA.union(NAND); /// Latin, Mongolian pub const LATN_MONG: ScriptExtension = LATN.union(MONG); /// Manichaean, Old_Uyghur pub const MANI_OUGR: ScriptExtension = MANI.union(OUGR); /// Mongolian, Phags_Pa pub const MONG_PHAG: ScriptExtension = MONG.union(PHAG); /// Arabic, Syriac, Thaana pub const ARAB_SYRC_THAA: ScriptExtension = ARAB.union(SYRC).union(THAA); /// Arabic, Thaana, Yezidi pub const ARAB_THAA_YEZI: ScriptExtension = ARAB.union(THAA).union(YEZI); /// Bengali, Chakma, Syloti_Nagri pub const BENG_CAKM_SYLO: ScriptExtension = BENG.union(CAKM).union(SYLO); /// Chakma, Myanmar, Tai_Le pub const CAKM_MYMR_TALE: ScriptExtension = CAKM.union(MYMR).union(TALE); /// Cypro_Minoan, Cypriot, Linear_B pub const CPMN_CPRT_LINB: ScriptExtension = CPMN.union(CPRT).union(LINB); /// Cypriot, Linear_A, Linear_B pub const CPRT_LINA_LINB: ScriptExtension = CPRT.union(LINA).union(LINB); /// Devanagari, Grantha, Kannada pub const DEVA_GRAN_KNDA: ScriptExtension = DEVA.union(GRAN).union(KNDA); /// Devanagari, Grantha, Latin pub const DEVA_GRAN_LATN: ScriptExtension = DEVA.union(GRAN).union(LATN); /// Han, Hiragana, Katakana pub const HANI_HIRA_KANA: ScriptExtension = HANI.union(HIRA).union(KANA); /// Kayah_Li, Latin, Myanmar pub const KALI_LATN_MYMR: ScriptExtension = KALI.union(LATN).union(MYMR); /// Bengali, Devanagari, Grantha, Kannada pub const BENG_DEVA_GRAN_KNDA: ScriptExtension = BENG.union(DEVA).union(GRAN).union(KNDA); /// Buhid, Hanunoo, Tagbanwa, Tagalog pub const BUHD_HANO_TAGB_TGLG: ScriptExtension = BUHD.union(HANO).union(TAGB).union(TGLG); /// Devanagari, Dogra, Kaithi, Mahajani pub const DEVA_DOGR_KTHI_MAHJ: ScriptExtension = DEVA.union(DOGR).union(KTHI).union(MAHJ); /// Bopomofo, Hangul, Han, Hiragana, Katakana pub const BOPO_HANG_HANI_HIRA_KANA: ScriptExtension = BOPO.union(HANG).union(HANI).union(HIRA).union(KANA); /// Arabic, Nko, Hanifi_Rohingya, Syriac, Thaana, Yezidi pub const ARAB_NKOO_ROHG_SYRC_THAA_YEZI: ScriptExtension = ARAB.union(NKOO).union(ROHG).union(SYRC).union(THAA).union(YEZI); /// Bopomofo, Hangul, Han, Hiragana, Katakana, Yi pub const BOPO_HANG_HANI_HIRA_KANA_YIII: ScriptExtension = BOPO.union(HANG).union(HANI).union(HIRA).union(KANA).union(YIII); /// Devanagari, Kannada, Malayalam, Oriya, Tamil, Telugu pub const DEVA_KNDA_MLYM_ORYA_TAML_TELU: ScriptExtension = DEVA.union(KNDA).union(MLYM).union(ORYA).union(TAML).union(TELU); /// Adlam, Arabic, Nko, Hanifi_Rohingya, Syriac, Thaana, Yezidi pub const ADLM_ARAB_NKOO_ROHG_SYRC_THAA_YEZI: ScriptExtension = ADLM.union(ARAB).union(NKOO).union(ROHG).union(SYRC).union(THAA).union(YEZI); /// Bengali, Devanagari, Grantha, Kannada, Nandinagari, Oriya, Telugu, Tirhuta pub const BENG_DEVA_GRAN_KNDA_NAND_ORYA_TELU_TIRH: ScriptExtension = BENG.union(DEVA).union(GRAN).union(KNDA).union(NAND).union(ORYA).union(TELU).union(TIRH); /// Adlam, Arabic, Mandaic, Manichaean, Old_Uyghur, Psalter_Pahlavi, Hanifi_Rohingya, Sogdian, Syriac pub const ADLM_ARAB_MAND_MANI_OUGR_PHLP_ROHG_SOGD_SYRC: ScriptExtension = ADLM.union(ARAB).union(MAND).union(MANI).union(OUGR).union(PHLP).union(ROHG).union(SOGD).union(SYRC); /// Devanagari, Dogra, Gujarati, Gurmukhi, Khojki, Kaithi, Mahajani, Modi, Khudawadi, Takri, Tirhuta pub const DEVA_DOGR_GUJR_GURU_KHOJ_KTHI_MAHJ_MODI_SIND_TAKR_TIRH: ScriptExtension = DEVA.union(DOGR).union(GUJR).union(GURU).union(KHOJ).union(KTHI).union(MAHJ).union(MODI).union(SIND).union(TAKR).union(TIRH); /// Bengali, Devanagari, Grantha, Gujarati, Gurmukhi, Kannada, Latin, Malayalam, Oriya, Tamil, Telugu, Tirhuta pub const BENG_DEVA_GRAN_GUJR_GURU_KNDA_LATN_MLYM_ORYA_TAML_TELU_TIRH: ScriptExtension = BENG.union(DEVA).union(GRAN).union(GUJR).union(GURU).union(KNDA).union(LATN).union(MLYM).union(ORYA).union(TAML).union(TELU).union(TIRH); /// Bengali, Devanagari, Grantha, Gujarati, Gurmukhi, Kannada, Latin, Malayalam, Oriya, Sharada, Tamil, Telugu, Tirhuta pub const BENG_DEVA_GRAN_GUJR_GURU_KNDA_LATN_MLYM_ORYA_SHRD_TAML_TELU_TIRH: ScriptExtension = BENG.union(DEVA).union(GRAN).union(GUJR).union(GURU).union(KNDA).union(LATN).union(MLYM).union(ORYA).union(SHRD).union(TAML).union(TELU).union(TIRH); /// Devanagari, Dogra, Gujarati, Gurmukhi, Khojki, Kannada, Kaithi, Mahajani, Modi, Nandinagari, Khudawadi, Takri, Tirhuta pub const DEVA_DOGR_GUJR_GURU_KHOJ_KNDA_KTHI_MAHJ_MODI_NAND_SIND_TAKR_TIRH: ScriptExtension = DEVA.union(DOGR).union(GUJR).union(GURU).union(KHOJ).union(KNDA).union(KTHI).union(MAHJ).union(MODI).union(NAND).union(SIND).union(TAKR).union(TIRH); /// Devanagari, Dogra, Gujarati, Gurmukhi, Khojki, Kannada, Kaithi, Mahajani, Malayalam, Modi, Nandinagari, Khudawadi, Takri, Tirhuta pub const DEVA_DOGR_GUJR_GURU_KHOJ_KNDA_KTHI_MAHJ_MLYM_MODI_NAND_SIND_TAKR_TIRH: ScriptExtension = DEVA.union(DOGR).union(GUJR).union(GURU).union(KHOJ).union(KNDA).union(KTHI).union(MAHJ).union(MLYM).union(MODI).union(NAND).union(SIND).union(TAKR).union(TIRH); /// Bengali, Devanagari, Dogra, Gunjala_Gondi, Masaram_Gondi, Grantha, Gujarati, Gurmukhi, Kannada, Mahajani, Malayalam, Nandinagari, Oriya, Khudawadi, Sinhala, Syloti_Nagri, Takri, Tamil, Telugu, Tirhuta pub const BENG_DEVA_DOGR_GONG_GONM_GRAN_GUJR_GURU_KNDA_MAHJ_MLYM_NAND_ORYA_SIND_SINH_SYLO_TAKR_TAML_TELU_TIRH: ScriptExtension = BENG.union(DEVA).union(DOGR).union(GONG).union(GONM).union(GRAN).union(GUJR).union(GURU).union(KNDA).union(MAHJ).union(MLYM).union(NAND).union(ORYA).union(SIND).union(SINH).union(SYLO).union(TAKR).union(TAML).union(TELU).union(TIRH); /// Bengali, Devanagari, Dogra, Gunjala_Gondi, Masaram_Gondi, Grantha, Gujarati, Gurmukhi, Kannada, Limbu, Mahajani, Malayalam, Nandinagari, Oriya, Khudawadi, Sinhala, Syloti_Nagri, Takri, Tamil, Telugu, Tirhuta pub const BENG_DEVA_DOGR_GONG_GONM_GRAN_GUJR_GURU_KNDA_LIMB_MAHJ_MLYM_NAND_ORYA_SIND_SINH_SYLO_TAKR_TAML_TELU_TIRH: ScriptExtension = BENG.union(DEVA).union(DOGR).union(GONG).union(GONM).union(GRAN).union(GUJR).union(GURU).union(KNDA).union(LIMB).union(MAHJ).union(MLYM).union(NAND).union(ORYA).union(SIND).union(SINH).union(SYLO).union(TAKR).union(TAML).union(TELU).union(TIRH); } impl Script { #[inline] pub(crate) fn inner_full_name(self) -> &'static str { match self { Script::Unknown => "Unknown", Script::Common => "Common", Script::Inherited => "Inherited", Script::Adlam => "Adlam", Script::Caucasian_Albanian => "Caucasian_Albanian", Script::Ahom => "Ahom", Script::Arabic => "Arabic", Script::Imperial_Aramaic => "Imperial_Aramaic", Script::Armenian => "Armenian", Script::Avestan => "Avestan", Script::Balinese => "Balinese", Script::Bamum => "Bamum", Script::Bassa_Vah => "Bassa_Vah", Script::Batak => "Batak", Script::Bengali => "Bengali", Script::Bhaiksuki => "Bhaiksuki", Script::Bopomofo => "Bopomofo", Script::Brahmi => "Brahmi", Script::Braille => "Braille", Script::Buginese => "Buginese", Script::Buhid => "Buhid", Script::Chakma => "Chakma", Script::Canadian_Aboriginal => "Canadian_Aboriginal", Script::Carian => "Carian", Script::Cham => "Cham", Script::Cherokee => "Cherokee", Script::Chorasmian => "Chorasmian", Script::Coptic => "Coptic", Script::Cypro_Minoan => "Cypro_Minoan", Script::Cypriot => "Cypriot", Script::Cyrillic => "Cyrillic", Script::Devanagari => "Devanagari", Script::Dives_Akuru => "Dives_Akuru", Script::Dogra => "Dogra", Script::Deseret => "Deseret", Script::Duployan => "Duployan", Script::Egyptian_Hieroglyphs => "Egyptian_Hieroglyphs", Script::Elbasan => "Elbasan", Script::Elymaic => "Elymaic", Script::Ethiopic => "Ethiopic", Script::Georgian => "Georgian", Script::Glagolitic => "Glagolitic", Script::Gunjala_Gondi => "Gunjala_Gondi", Script::Masaram_Gondi => "Masaram_Gondi", Script::Gothic => "Gothic", Script::Grantha => "Grantha", Script::Greek => "Greek", Script::Gujarati => "Gujarati", Script::Gurmukhi => "Gurmukhi", Script::Hangul => "Hangul", Script::Han => "Han", Script::Hanunoo => "Hanunoo", Script::Hatran => "Hatran", Script::Hebrew => "Hebrew", Script::Hiragana => "Hiragana", Script::Anatolian_Hieroglyphs => "Anatolian_Hieroglyphs", Script::Pahawh_Hmong => "Pahawh_Hmong", Script::Nyiakeng_Puachue_Hmong => "Nyiakeng_Puachue_Hmong", Script::Old_Hungarian => "Old_Hungarian", Script::Old_Italic => "Old_Italic", Script::Javanese => "Javanese", Script::Kayah_Li => "Kayah_Li", Script::Katakana => "Katakana", Script::Kawi => "Kawi", Script::Kharoshthi => "Kharoshthi", Script::Khmer => "Khmer", Script::Khojki => "Khojki", Script::Khitan_Small_Script => "Khitan_Small_Script", Script::Kannada => "Kannada", Script::Kaithi => "Kaithi", Script::Tai_Tham => "Tai_Tham", Script::Lao => "Lao", Script::Latin => "Latin", Script::Lepcha => "Lepcha", Script::Limbu => "Limbu", Script::Linear_A => "Linear_A", Script::Linear_B => "Linear_B", Script::Lisu => "Lisu", Script::Lycian => "Lycian", Script::Lydian => "Lydian", Script::Mahajani => "Mahajani", Script::Makasar => "Makasar", Script::Mandaic => "Mandaic", Script::Manichaean => "Manichaean", Script::Marchen => "Marchen", Script::Medefaidrin => "Medefaidrin", Script::Mende_Kikakui => "Mende_Kikakui", Script::Meroitic_Cursive => "Meroitic_Cursive", Script::Meroitic_Hieroglyphs => "Meroitic_Hieroglyphs", Script::Malayalam => "Malayalam", Script::Modi => "Modi", Script::Mongolian => "Mongolian", Script::Mro => "Mro", Script::Meetei_Mayek => "Meetei_Mayek", Script::Multani => "Multani", Script::Myanmar => "Myanmar", Script::Nag_Mundari => "Nag_Mundari", Script::Nandinagari => "Nandinagari", Script::Old_North_Arabian => "Old_North_Arabian", Script::Nabataean => "Nabataean", Script::Newa => "Newa", Script::Nko => "Nko", Script::Nushu => "Nushu", Script::Ogham => "Ogham", Script::Ol_Chiki => "Ol_Chiki", Script::Old_Turkic => "Old_Turkic", Script::Oriya => "Oriya", Script::Osage => "Osage", Script::Osmanya => "Osmanya", Script::Old_Uyghur => "Old_Uyghur", Script::Palmyrene => "Palmyrene", Script::Pau_Cin_Hau => "Pau_Cin_Hau", Script::Old_Permic => "Old_Permic", Script::Phags_Pa => "Phags_Pa", Script::Inscriptional_Pahlavi => "Inscriptional_Pahlavi", Script::Psalter_Pahlavi => "Psalter_Pahlavi", Script::Phoenician => "Phoenician", Script::Miao => "Miao", Script::Inscriptional_Parthian => "Inscriptional_Parthian", Script::Rejang => "Rejang", Script::Hanifi_Rohingya => "Hanifi_Rohingya", Script::Runic => "Runic", Script::Samaritan => "Samaritan", Script::Old_South_Arabian => "Old_South_Arabian", Script::Saurashtra => "Saurashtra", Script::SignWriting => "SignWriting", Script::Shavian => "Shavian", Script::Sharada => "Sharada", Script::Siddham => "Siddham", Script::Khudawadi => "Khudawadi", Script::Sinhala => "Sinhala", Script::Sogdian => "Sogdian", Script::Old_Sogdian => "Old_Sogdian", Script::Sora_Sompeng => "Sora_Sompeng", Script::Soyombo => "Soyombo", Script::Sundanese => "Sundanese", Script::Syloti_Nagri => "Syloti_Nagri", Script::Syriac => "Syriac", Script::Tagbanwa => "Tagbanwa", Script::Takri => "Takri", Script::Tai_Le => "Tai_Le", Script::New_Tai_Lue => "New_Tai_Lue", Script::Tamil => "Tamil", Script::Tangut => "Tangut", Script::Tai_Viet => "Tai_Viet", Script::Telugu => "Telugu", Script::Tifinagh => "Tifinagh", Script::Tagalog => "Tagalog", Script::Thaana => "Thaana", Script::Thai => "Thai", Script::Tibetan => "Tibetan", Script::Tirhuta => "Tirhuta", Script::Tangsa => "Tangsa", Script::Toto => "Toto", Script::Ugaritic => "Ugaritic", Script::Vai => "Vai", Script::Vithkuqi => "Vithkuqi", Script::Warang_Citi => "Warang_Citi", Script::Wancho => "Wancho", Script::Old_Persian => "Old_Persian", Script::Cuneiform => "Cuneiform", Script::Yezidi => "Yezidi", Script::Yi => "Yi", Script::Zanabazar_Square => "Zanabazar_Square", } } #[inline] pub(crate) fn inner_from_full_name(input: &str) -> Option { 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), "Cypro_Minoan" => Some(Script::Cypro_Minoan), "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), "Kawi" => Some(Script::Kawi), "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), "Nag_Mundari" => Some(Script::Nag_Mundari), "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), "Old_Uyghur" => Some(Script::Old_Uyghur), "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), "Tangsa" => Some(Script::Tangsa), "Toto" => Some(Script::Toto), "Ugaritic" => Some(Script::Ugaritic), "Vai" => Some(Script::Vai), "Vithkuqi" => Some(Script::Vithkuqi), "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 { Script::Unknown => "", Script::Common => "Zyyy", Script::Inherited => "Zinh", Script::Adlam => "Adlm", Script::Caucasian_Albanian => "Aghb", Script::Ahom => "Ahom", Script::Arabic => "Arab", Script::Imperial_Aramaic => "Armi", Script::Armenian => "Armn", Script::Avestan => "Avst", Script::Balinese => "Bali", Script::Bamum => "Bamu", Script::Bassa_Vah => "Bass", Script::Batak => "Batk", Script::Bengali => "Beng", Script::Bhaiksuki => "Bhks", Script::Bopomofo => "Bopo", Script::Brahmi => "Brah", Script::Braille => "Brai", Script::Buginese => "Bugi", Script::Buhid => "Buhd", Script::Chakma => "Cakm", Script::Canadian_Aboriginal => "Cans", Script::Carian => "Cari", Script::Cham => "Cham", Script::Cherokee => "Cher", Script::Chorasmian => "Chrs", Script::Coptic => "Copt", Script::Cypro_Minoan => "Cpmn", Script::Cypriot => "Cprt", Script::Cyrillic => "Cyrl", Script::Devanagari => "Deva", Script::Dives_Akuru => "Diak", Script::Dogra => "Dogr", Script::Deseret => "Dsrt", Script::Duployan => "Dupl", Script::Egyptian_Hieroglyphs => "Egyp", Script::Elbasan => "Elba", Script::Elymaic => "Elym", Script::Ethiopic => "Ethi", Script::Georgian => "Geor", Script::Glagolitic => "Glag", Script::Gunjala_Gondi => "Gong", Script::Masaram_Gondi => "Gonm", Script::Gothic => "Goth", Script::Grantha => "Gran", Script::Greek => "Grek", Script::Gujarati => "Gujr", Script::Gurmukhi => "Guru", Script::Hangul => "Hang", Script::Han => "Hani", Script::Hanunoo => "Hano", Script::Hatran => "Hatr", Script::Hebrew => "Hebr", Script::Hiragana => "Hira", Script::Anatolian_Hieroglyphs => "Hluw", Script::Pahawh_Hmong => "Hmng", Script::Nyiakeng_Puachue_Hmong => "Hmnp", Script::Old_Hungarian => "Hung", Script::Old_Italic => "Ital", Script::Javanese => "Java", Script::Kayah_Li => "Kali", Script::Katakana => "Kana", Script::Kawi => "Kawi", Script::Kharoshthi => "Khar", Script::Khmer => "Khmr", Script::Khojki => "Khoj", Script::Khitan_Small_Script => "Kits", Script::Kannada => "Knda", Script::Kaithi => "Kthi", Script::Tai_Tham => "Lana", Script::Lao => "Laoo", Script::Latin => "Latn", Script::Lepcha => "Lepc", Script::Limbu => "Limb", Script::Linear_A => "Lina", Script::Linear_B => "Linb", Script::Lisu => "Lisu", Script::Lycian => "Lyci", Script::Lydian => "Lydi", Script::Mahajani => "Mahj", Script::Makasar => "Maka", Script::Mandaic => "Mand", Script::Manichaean => "Mani", Script::Marchen => "Marc", Script::Medefaidrin => "Medf", Script::Mende_Kikakui => "Mend", Script::Meroitic_Cursive => "Merc", Script::Meroitic_Hieroglyphs => "Mero", Script::Malayalam => "Mlym", Script::Modi => "Modi", Script::Mongolian => "Mong", Script::Mro => "Mroo", Script::Meetei_Mayek => "Mtei", Script::Multani => "Mult", Script::Myanmar => "Mymr", Script::Nag_Mundari => "Nagm", Script::Nandinagari => "Nand", Script::Old_North_Arabian => "Narb", Script::Nabataean => "Nbat", Script::Newa => "Newa", Script::Nko => "Nkoo", Script::Nushu => "Nshu", Script::Ogham => "Ogam", Script::Ol_Chiki => "Olck", Script::Old_Turkic => "Orkh", Script::Oriya => "Orya", Script::Osage => "Osge", Script::Osmanya => "Osma", Script::Old_Uyghur => "Ougr", Script::Palmyrene => "Palm", Script::Pau_Cin_Hau => "Pauc", Script::Old_Permic => "Perm", Script::Phags_Pa => "Phag", Script::Inscriptional_Pahlavi => "Phli", Script::Psalter_Pahlavi => "Phlp", Script::Phoenician => "Phnx", Script::Miao => "Plrd", Script::Inscriptional_Parthian => "Prti", Script::Rejang => "Rjng", Script::Hanifi_Rohingya => "Rohg", Script::Runic => "Runr", Script::Samaritan => "Samr", Script::Old_South_Arabian => "Sarb", Script::Saurashtra => "Saur", Script::SignWriting => "Sgnw", Script::Shavian => "Shaw", Script::Sharada => "Shrd", Script::Siddham => "Sidd", Script::Khudawadi => "Sind", Script::Sinhala => "Sinh", Script::Sogdian => "Sogd", Script::Old_Sogdian => "Sogo", Script::Sora_Sompeng => "Sora", Script::Soyombo => "Soyo", Script::Sundanese => "Sund", Script::Syloti_Nagri => "Sylo", Script::Syriac => "Syrc", Script::Tagbanwa => "Tagb", Script::Takri => "Takr", Script::Tai_Le => "Tale", Script::New_Tai_Lue => "Talu", Script::Tamil => "Taml", Script::Tangut => "Tang", Script::Tai_Viet => "Tavt", Script::Telugu => "Telu", Script::Tifinagh => "Tfng", Script::Tagalog => "Tglg", Script::Thaana => "Thaa", Script::Thai => "Thai", Script::Tibetan => "Tibt", Script::Tirhuta => "Tirh", Script::Tangsa => "Tnsa", Script::Toto => "Toto", Script::Ugaritic => "Ugar", Script::Vai => "Vaii", Script::Vithkuqi => "Vith", Script::Warang_Citi => "Wara", Script::Wancho => "Wcho", Script::Old_Persian => "Xpeo", Script::Cuneiform => "Xsux", Script::Yezidi => "Yezi", Script::Yi => "Yiii", Script::Zanabazar_Square => "Zanb", } } #[inline] pub(crate) fn inner_from_short_name(input: &str) -> Option { 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), "Cpmn" => Some(Script::Cypro_Minoan), "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), "Kawi" => Some(Script::Kawi), "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), "Nagm" => Some(Script::Nag_Mundari), "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), "Ougr" => Some(Script::Old_Uyghur), "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), "Tnsa" => Some(Script::Tangsa), "Toto" => Some(Script::Toto), "Ugar" => Some(Script::Ugaritic), "Vaii" => Some(Script::Vai), "Vith" => Some(Script::Vithkuqi), "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 { 0 => Script::Adlam, 1 => Script::Caucasian_Albanian, 2 => Script::Ahom, 3 => Script::Arabic, 4 => Script::Imperial_Aramaic, 5 => Script::Armenian, 6 => Script::Avestan, 7 => Script::Balinese, 8 => Script::Bamum, 9 => Script::Bassa_Vah, 10 => Script::Batak, 11 => Script::Bengali, 12 => Script::Bhaiksuki, 13 => Script::Bopomofo, 14 => Script::Brahmi, 15 => Script::Braille, 16 => Script::Buginese, 17 => Script::Buhid, 18 => Script::Chakma, 19 => Script::Canadian_Aboriginal, 20 => Script::Carian, 21 => Script::Cham, 22 => Script::Cherokee, 23 => Script::Chorasmian, 24 => Script::Coptic, 25 => Script::Cypro_Minoan, 26 => Script::Cypriot, 27 => Script::Cyrillic, 28 => Script::Devanagari, 29 => Script::Dives_Akuru, 30 => Script::Dogra, 31 => Script::Deseret, 32 => Script::Duployan, 33 => Script::Egyptian_Hieroglyphs, 34 => Script::Elbasan, 35 => Script::Elymaic, 36 => Script::Ethiopic, 37 => Script::Georgian, 38 => Script::Glagolitic, 39 => Script::Gunjala_Gondi, 40 => Script::Masaram_Gondi, 41 => Script::Gothic, 42 => Script::Grantha, 43 => Script::Greek, 44 => Script::Gujarati, 45 => Script::Gurmukhi, 46 => Script::Hangul, 47 => Script::Han, 48 => Script::Hanunoo, 49 => Script::Hatran, 50 => Script::Hebrew, 51 => Script::Hiragana, 52 => Script::Anatolian_Hieroglyphs, 53 => Script::Pahawh_Hmong, 54 => Script::Nyiakeng_Puachue_Hmong, 55 => Script::Old_Hungarian, 56 => Script::Old_Italic, 57 => Script::Javanese, 58 => Script::Kayah_Li, 59 => Script::Katakana, 60 => Script::Kawi, 61 => Script::Kharoshthi, 62 => Script::Khmer, 63 => Script::Khojki, 64 => Script::Khitan_Small_Script, 65 => Script::Kannada, 66 => Script::Kaithi, 67 => Script::Tai_Tham, 68 => Script::Lao, 69 => Script::Latin, 70 => Script::Lepcha, 71 => Script::Limbu, 72 => Script::Linear_A, 73 => Script::Linear_B, 74 => Script::Lisu, 75 => Script::Lycian, 76 => Script::Lydian, 77 => Script::Mahajani, 78 => Script::Makasar, 79 => Script::Mandaic, 80 => Script::Manichaean, 81 => Script::Marchen, 82 => Script::Medefaidrin, 83 => Script::Mende_Kikakui, 84 => Script::Meroitic_Cursive, 85 => Script::Meroitic_Hieroglyphs, 86 => Script::Malayalam, 87 => Script::Modi, 88 => Script::Mongolian, 89 => Script::Mro, 90 => Script::Meetei_Mayek, 91 => Script::Multani, 92 => Script::Myanmar, 93 => Script::Nag_Mundari, 94 => Script::Nandinagari, 95 => Script::Old_North_Arabian, 96 => Script::Nabataean, 97 => Script::Newa, 98 => Script::Nko, 99 => Script::Nushu, 100 => Script::Ogham, 101 => Script::Ol_Chiki, 102 => Script::Old_Turkic, 103 => Script::Oriya, 104 => Script::Osage, 105 => Script::Osmanya, 106 => Script::Old_Uyghur, 107 => Script::Palmyrene, 108 => Script::Pau_Cin_Hau, 109 => Script::Old_Permic, 110 => Script::Phags_Pa, 111 => Script::Inscriptional_Pahlavi, 112 => Script::Psalter_Pahlavi, 113 => Script::Phoenician, 114 => Script::Miao, 115 => Script::Inscriptional_Parthian, 116 => Script::Rejang, 117 => Script::Hanifi_Rohingya, 118 => Script::Runic, 119 => Script::Samaritan, 120 => Script::Old_South_Arabian, 121 => Script::Saurashtra, 122 => Script::SignWriting, 123 => Script::Shavian, 124 => Script::Sharada, 125 => Script::Siddham, 126 => Script::Khudawadi, 127 => Script::Sinhala, 128 => Script::Sogdian, 129 => Script::Old_Sogdian, 130 => Script::Sora_Sompeng, 131 => Script::Soyombo, 132 => Script::Sundanese, 133 => Script::Syloti_Nagri, 134 => Script::Syriac, 135 => Script::Tagbanwa, 136 => Script::Takri, 137 => Script::Tai_Le, 138 => Script::New_Tai_Lue, 139 => Script::Tamil, 140 => Script::Tangut, 141 => Script::Tai_Viet, 142 => Script::Telugu, 143 => Script::Tifinagh, 144 => Script::Tagalog, 145 => Script::Thaana, 146 => Script::Thai, 147 => Script::Tibetan, 148 => Script::Tirhuta, 149 => Script::Tangsa, 150 => Script::Toto, 151 => Script::Ugaritic, 152 => Script::Vai, 153 => Script::Vithkuqi, 154 => Script::Warang_Citi, 155 => Script::Wancho, 156 => Script::Old_Persian, 157 => Script::Cuneiform, 158 => Script::Yezidi, 159 => Script::Yi, 160 => Script::Zanabazar_Square, _ => unreachable!(), } } } pub fn bsearch_range_value_table(c: char, r: &'static [(char, char, T)]) -> Option { use core::cmp::Ordering::{Equal, Less, Greater}; match r.binary_search_by(|&(lo, hi, _)| { if lo <= c && c <= hi { Equal } else if hi < c { Less } else { Greater } }) { Ok(idx) => { let (_, _, cat) = r[idx]; Some(cat) } Err(_) => None } } #[inline] pub fn get_script(c: char) -> Option