#pragma once using namespace System; namespace Indic::Lekhya::ICU::Net { // Modelled after https://github.com/NightOwl888/ICU4N/blob/1545efb0950fcbbd17e078fed2c3989faef3548a/src/ICU4N/Globalization/UScript.cs#L38 public enum class UScriptCode { Common = 0, Inherited = 1, Arabic = 2, Armenian = 3, Bengali = 4, Bopomofo = 5, Cherokee = 6, Coptic = 7, Cyrillic = 8, Deseret = 9, Devanagari = 10, Ethiopic = 11, Georgian = 12, Gothic = 13, Greek = 14, Gujarati = 15, Gurmukhi = 16, Han = 17, Hangul = 18, Hebrew = 19, Hiragana = 20, Kannada = 21, Katakana = 22, Khmer = 23, Lao = 24, Latin = 25, Malayalam = 26, Mongolian = 27, Myanmar = 28, Ogham = 29, OldItalic = 30, Oriya = 31, Runic = 32, Sinhala = 33, Syriac = 34, Tamil = 35, Telugu = 36, Thaana = 37, Thai = 38, Tibetan = 39, CanadianAboriginal = 40, Yi = 41, Tagalog = 42, Hanunoo = 43, Buhid = 44, Tagbanwa = 45, Braille = 46, Cypriot = 47, Limbu = 48, LinearB = 49, Osmanya = 50, Shavian = 51, TaiLe = 52, Ugaritic = 53, KatakanaOrHiragana = 54, Buginese = 55, Glagolitic = 56, Kharoshthi = 57, SylotiNagri = 58, NewTaiLue = 59, Tifinagh = 60, OldPersian = 61, Balinese = 62, Batak = 63, Blis = 64, Brahmi = 65, Cham = 66, Cirt = 67, Cyrs = 68, Egyd = 69, Egyh = 70, EgyptianHieroglyphs = 71, Geok = 72, Hans = 73, Hant = 74, PahawhHmong = 75, OldHungarian = 76, Inds = 77, Javanese = 78, KayahLi = 79, Latf = 80, Latg = 81, Lepcha = 82, LinearA = 83, Mandaic = 84, Maya = 85, MeroiticHieroglyphs = 86, Nko = 87, OldTurkic = 88, OldPermic = 89, PhagsPa = 90, Phoenician = 91, Miao = 92, Roro = 93, Sara = 94, Syre = 95, Syrj = 96, Syrn = 97, Teng = 98, Vai = 99, Visp = 100, Cuneiform = 101, Zxxx = 102, Unknown = 103, Carian = 104, Jpan = 105, TaiTham = 106, Lycian = 107, Lydian = 108, OlChiki = 109, Rejang = 110, Saurashtra = 111, SignWriting = 112, Sundanese = 113, Moon = 114, MeeteiMayek = 115, ImperialAramaic = 116, Avestan = 117, Chakma = 118, Kore = 119, Kaithi = 120, Manichaean = 121, InscriptionalPahlavi = 122, PsalterPahlavi = 123, Phlv = 124, InscriptionalParthian = 125, Samaritan = 126, TaiViet = 127, Zmth = 128, Zsym = 129, Bamum = 130, Lisu = 131, Nkgb = 132, OldSouthArabian = 133, BassaVah = 134, Duployan = 135, Elbasan = 136, Grantha = 137, Kpel = 138, Loma = 139, MendeKikakui = 140, MeroiticCursive = 141, OldNorthArabian = 142, Nabataean = 143, Palmyrene = 144, Khudawadi = 145, WarangCiti = 146, Afak = 147, Jurc = 148, Mro = 149, Nushu = 150, Sharada = 151, SoraSompeng = 152, Takri = 153, Tangut = 154, Wole = 155, AnatolianHieroglyphs = 156, Khojki = 157, Tirhuta = 158, CaucasianAlbanian = 159, Mahajani = 160, Ahom = 161, Hatran = 162, Modi = 163, Multani = 164, PauCinHau = 165, Siddham = 166, Adlam = 167, Bhaiksuki = 168, Marchen = 169, Newa = 170, Osage = 171, Hanb = 172, Jamo = 173, Zsye = 174, MasaramGondi = 175, Soyombo = 176, ZanabazarSquare = 177, Dogra = 178, GunjalaGondi = 179, Makasar = 180, Medefaidrin = 181, HanifiRohingya = 182, Sogdian = 183, OldSogdian = 184, Elymaic = 185, NyiakengPuachueHmong = 186, Nandinagari = 187, Wancho = 188, Chorasmian = 189, DivesAkuru = 190, KhitanSmallScript = 191, Yezidi = 192, CyproMinoan = 193, OldUyghur = 194, Tangsa = 195, Toto = 196, Vithkuqi = 197, Kawi = 198, NagMundari = 199, Ucas = CanadianAboriginal, Sindhi = Khudawadi, Mandaean = Mandaic, Meroitic = MeroiticHieroglyphs, Phonetic_Pollard = Miao, // generated by printTomlIncludes ahom = Ahom, assamese = Latin + 2000, balinese = Balinese, bengali = Bengali, bhaiksuki = Bhaiksuki, brahmi = Brahmi, brahmi_tamil = Latin + 2001, burmese = Latin + 2002, cham = Cham, devanagari = Devanagari, dogra = Dogra, gondi_gunjala = Latin + 2003, gondi_masaram = Latin + 2004, grantha = Grantha, grantha_pandya = Latin + 2005, gujarati = Gujarati, gurmukhi = Gurmukhi, javanese = Javanese, kannada = Kannada, khamti_shan = Latin + 2006, kharoshthi = Kharoshthi, khmer = Khmer, khom_thai = Thai, khudawadi = Khudawadi, lao = Lao, lao_pali = Latin + 2007, lepcha = Lepcha, limbu = Limbu, malayalam = Malayalam, manipuri = Latin + 2008, marchen = Marchen, modi = Modi, mon = Cyrillic, mro = Mro, newa = Newa, ol_chiki = OlChiki, oriya = Oriya, phags_pa = PhagsPa, ranjana = Latin + 2009, rohingya = Latin + 2010, shan = Latin + 2011, sharada = Sharada, siddham = Siddham, sinhala = Sinhala, sora_sompeng = SoraSompeng, tai_laing = Latin + 2012, takri = Takri, tamil = Tamil, tamil_extended = Latin + 2013, tamil_subscripted = Latin + 2014, tamil_superscripted = Latin + 2015, telugu = Telugu, thai = Thai, tibetan = Tibetan, tirhuta_maithili = Latin + 2016, urdu = Latin + 2017, vattelutu = Latin + 2018, wancho = Wancho, warang_citi = WarangCiti, zanbazar_square = Latin + 2019, Latin_avestan = Avestan, Latin_baraha = Latin + 1000, Latin_cyrillic = Cyrillic, Latin_hk = Latin + 1001, Latin_hk_dravidian = Latin + 1002, Latin_iast = Latin + 1003, Latin_iast_iso_m = Latin + 1004, Latin_iso = Latin, Latin_iso_vedic = Latin + 1005, Latin_itrans = Latin + 1006, Latin_itrans_dravidian = Latin + 1007, Latin_itrans_lowercase = Latin + 1008, Latin_kolkata_v2 = Latin + 1009, Latin_mahajani = Mahajani, Latin_multani = Multani, Latin_optitrans = Latin + 1010, Latin_optitrans_dravidian = Latin + 1011, Latin_persian_old = Latin + 1012, Latin_slp1 = Latin + 1013, Latin_slp1_accented = Latin + 1014, Latin_titus = Latin + 1015, Latin_velthuis = Latin + 1016, Latin_wx = Latin + 1017, }; public ref class UScripts abstract sealed { public: static UScriptCode scriptForCodePoint(UInt32 codePoint); static String^ scriptForCodePoint2(UInt32 codePoint); static UScriptCode GetScript(int codepoint); static String^ GetScriptName(int codepoint); static String^ GetName(UScriptCode scriptCode); static String^ GetShortName(UScriptCode scriptCode); static UScriptCode GetCodeFromName(String^ name); }; };