Ignore:
Timestamp:
Dec 31, 2014, 9:44:46 PM (4 years ago)
Author:
cameron
Message:

UCD property resolution initial check in

File:
1 edited

Legend:

Unmodified
Added
Removed
  • icGREP/icgrep-devel/icgrep/UCD/PropertyValueAliases.h

    r4366 r4380  
    1414namespace UCD {
    1515
    16   namespace Binary {
     16  namespace Binary_ns {
    1717    enum value_t {
    1818      N, Y};
     19    const std::vector<std::string> enum_names = {
     20      "N", "Y"};
    1921    const std::vector<std::string> value_names = {
    2022      "No", "Yes"};
     
    2426  }
    2527
    26   namespace JSN {
     28  namespace JSN_ns {
    2729    enum value_t {
    2830      A, AE, B, BB, BS, C, D, DD, E, EO, EU, G, GG, GS, H, I, J, JJ, K, L,
    2931      LB, LG, LH, LM, LP, LS, LT, M, N, NG, NH, NJ, O, OE, P, R, S, SS, T,
    3032      U, WA, WAE, WE, WEO, WI, YA, YAE, YE, YEO, YI, YO, YU};
    31     const std::vector<std::string> value_names = {
     33    const std::vector<std::string> enum_names = {
    3234      "A", "AE", "B", "BB", "BS", "C", "D", "DD", "E", "EO", "EU", "G",
    3335      "GG", "GS", "H", "I", "J", "JJ", "K", "L", "LB", "LG", "LH", "LM",
     
    3537      "S", "SS", "T", "U", "WA", "WAE", "WE", "WEO", "WI", "YA", "YAE",
    3638      "YE", "YEO", "YI", "YO", "YU"};
    37     const std::unordered_map<std::string, int> aliases_only_map = {
    38       };
    39   }
    40 
    41   namespace AGE {
     39    const std::vector<std::string> value_names = {
     40      "A", "AE", "B", "BB", "BS", "C", "D", "DD", "E", "EO", "EU", "G",
     41      "GG", "GS", "H", "I", "J", "JJ", "K", "L", "LB", "LG", "LH", "LM",
     42      "LP", "LS", "LT", "M", "N", "NG", "NH", "NJ", "O", "OE", "P", "R",
     43      "S", "SS", "T", "U", "WA", "WAE", "WE", "WEO", "WI", "YA", "YAE",
     44      "YE", "YEO", "YI", "YO", "YU"};
     45    const std::unordered_map<std::string, int> aliases_only_map = {
     46      };
     47  }
     48
     49  namespace AGE_ns {
    4250    enum value_t {
    4351      V1_1, V2_0, V2_1, V3_0, V3_1, V3_2, V4_0, V4_1, V5_0, V5_1, V5_2,
    4452      V6_0, V6_1, V6_2, V6_3, V7_0, Unassigned};
    45     const std::vector<std::string> value_names = {
     53    const std::vector<std::string> enum_names = {
    4654      "V1_1", "V2_0", "V2_1", "V3_0", "V3_1", "V3_2", "V4_0", "V4_1",
    4755      "V5_0", "V5_1", "V5_2", "V6_0", "V6_1", "V6_2", "V6_3", "V7_0",
    4856      "Unassigned"};
    49     const std::unordered_map<std::string, int> aliases_only_map = {
    50       {"1.1", AGE::V1_1}, {"2.0", AGE::V2_0}, {"2.1", AGE::V2_1},
    51       {"3.0", AGE::V3_0}, {"3.1", AGE::V3_1}, {"3.2", AGE::V3_2},
    52       {"4.0", AGE::V4_0}, {"4.1", AGE::V4_1}, {"5.0", AGE::V5_0},
    53       {"5.1", AGE::V5_1}, {"5.2", AGE::V5_2}, {"6.0", AGE::V6_0},
    54       {"6.1", AGE::V6_1}, {"6.2", AGE::V6_2}, {"6.3", AGE::V6_3},
    55       {"7.0", AGE::V7_0}, {"na", AGE::Unassigned}};
    56   }
    57 
    58   namespace BLK {
     57    const std::vector<std::string> value_names = {
     58      "V1_1", "V2_0", "V2_1", "V3_0", "V3_1", "V3_2", "V4_0", "V4_1",
     59      "V5_0", "V5_1", "V5_2", "V6_0", "V6_1", "V6_2", "V6_3", "V7_0",
     60      "Unassigned"};
     61    const std::unordered_map<std::string, int> aliases_only_map = {
     62      {"1.1", AGE_ns::V1_1}, {"2.0", AGE_ns::V2_0}, {"2.1", AGE_ns::V2_1},
     63      {"3.0", AGE_ns::V3_0}, {"3.1", AGE_ns::V3_1}, {"3.2", AGE_ns::V3_2},
     64      {"4.0", AGE_ns::V4_0}, {"4.1", AGE_ns::V4_1}, {"5.0", AGE_ns::V5_0},
     65      {"5.1", AGE_ns::V5_1}, {"5.2", AGE_ns::V5_2}, {"6.0", AGE_ns::V6_0},
     66      {"6.1", AGE_ns::V6_1}, {"6.2", AGE_ns::V6_2}, {"6.3", AGE_ns::V6_3},
     67      {"7.0", AGE_ns::V7_0}, {"na", AGE_ns::Unassigned}};
     68  }
     69
     70  namespace BLK_ns {
    5971    enum value_t {
    6072      Aegean_Numbers, Alchemical, Alphabetic_PF, Ancient_Greek_Music,
     
    109121      Vertical_Forms, VS, VS_Sup, Warang_Citi, Yi_Radicals, Yi_Syllables,
    110122      Yijing};
     123    const std::vector<std::string> enum_names = {
     124      "Aegean_Numbers", "Alchemical", "Alphabetic_PF",
     125      "Ancient_Greek_Music", "Ancient_Greek_Numbers", "Ancient_Symbols",
     126      "Arabic", "Arabic_Ext_A", "Arabic_Math", "Arabic_PF_A", "Arabic_PF_B",
     127      "Arabic_Sup", "Armenian", "Arrows", "ASCII", "Avestan", "Balinese",
     128      "Bamum", "Bamum_Sup", "Bassa_Vah", "Batak", "Bengali",
     129      "Block_Elements", "Bopomofo", "Bopomofo_Ext", "Box_Drawing", "Brahmi",
     130      "Braille", "Buginese", "Buhid", "Byzantine_Music", "Carian",
     131      "Caucasian_Albanian", "Chakma", "Cham", "Cherokee", "CJK",
     132      "CJK_Compat", "CJK_Compat_Forms", "CJK_Compat_Ideographs",
     133      "CJK_Compat_Ideographs_Sup", "CJK_Ext_A", "CJK_Ext_B", "CJK_Ext_C",
     134      "CJK_Ext_D", "CJK_Radicals_Sup", "CJK_Strokes", "CJK_Symbols",
     135      "Compat_Jamo", "Control_Pictures", "Coptic", "Coptic_Epact_Numbers",
     136      "Counting_Rod", "Cuneiform", "Cuneiform_Numbers", "Currency_Symbols",
     137      "Cypriot_Syllabary", "Cyrillic", "Cyrillic_Ext_A", "Cyrillic_Ext_B",
     138      "Cyrillic_Sup", "Deseret", "Devanagari", "Devanagari_Ext",
     139      "Diacriticals", "Diacriticals_Ext", "Diacriticals_For_Symbols",
     140      "Diacriticals_Sup", "Dingbats", "Domino", "Duployan",
     141      "Egyptian_Hieroglyphs", "Elbasan", "Emoticons", "Enclosed_Alphanum",
     142      "Enclosed_Alphanum_Sup", "Enclosed_CJK", "Enclosed_Ideographic_Sup",
     143      "Ethiopic", "Ethiopic_Ext", "Ethiopic_Ext_A", "Ethiopic_Sup",
     144      "Geometric_Shapes", "Geometric_Shapes_Ext", "Georgian",
     145      "Georgian_Sup", "Glagolitic", "Gothic", "Grantha", "Greek",
     146      "Greek_Ext", "Gujarati", "Gurmukhi", "Half_And_Full_Forms",
     147      "Half_Marks", "Hangul", "Hanunoo", "Hebrew", "High_PU_Surrogates",
     148      "High_Surrogates", "Hiragana", "IDC", "Imperial_Aramaic",
     149      "Indic_Number_Forms", "Inscriptional_Pahlavi",
     150      "Inscriptional_Parthian", "IPA_Ext", "Jamo", "Jamo_Ext_A",
     151      "Jamo_Ext_B", "Javanese", "Kaithi", "Kana_Sup", "Kanbun", "Kangxi",
     152      "Kannada", "Katakana", "Katakana_Ext", "Kayah_Li", "Kharoshthi",
     153      "Khmer", "Khmer_Symbols", "Khojki", "Khudawadi", "Lao", "Latin_1_Sup",
     154      "Latin_Ext_A", "Latin_Ext_Additional", "Latin_Ext_B", "Latin_Ext_C",
     155      "Latin_Ext_D", "Latin_Ext_E", "Lepcha", "Letterlike_Symbols", "Limbu",
     156      "Linear_A", "Linear_B_Ideograms", "Linear_B_Syllabary", "Lisu",
     157      "Low_Surrogates", "Lycian", "Lydian", "Mahajani", "Mahjong",
     158      "Malayalam", "Mandaic", "Manichaean", "Math_Alphanum",
     159      "Math_Operators", "Meetei_Mayek", "Meetei_Mayek_Ext", "Mende_Kikakui",
     160      "Meroitic_Cursive", "Meroitic_Hieroglyphs", "Miao", "Misc_Arrows",
     161      "Misc_Math_Symbols_A", "Misc_Math_Symbols_B", "Misc_Pictographs",
     162      "Misc_Symbols", "Misc_Technical", "Modi", "Modifier_Letters",
     163      "Modifier_Tone_Letters", "Mongolian", "Mro", "Music", "Myanmar",
     164      "Myanmar_Ext_A", "Myanmar_Ext_B", "Nabataean", "NB", "New_Tai_Lue",
     165      "NKo", "Number_Forms", "OCR", "Ogham", "Ol_Chiki", "Old_Italic",
     166      "Old_North_Arabian", "Old_Permic", "Old_Persian", "Old_South_Arabian",
     167      "Old_Turkic", "Oriya", "Ornamental_Dingbats", "Osmanya",
     168      "Pahawh_Hmong", "Palmyrene", "Pau_Cin_Hau", "Phags_Pa", "Phaistos",
     169      "Phoenician", "Phonetic_Ext", "Phonetic_Ext_Sup", "Playing_Cards",
     170      "Psalter_Pahlavi", "PUA", "Punctuation", "Rejang", "Rumi", "Runic",
     171      "Samaritan", "Saurashtra", "Sharada", "Shavian",
     172      "Shorthand_Format_Controls", "Siddham", "Sinhala",
     173      "Sinhala_Archaic_Numbers", "Small_Forms", "Sora_Sompeng", "Specials",
     174      "Sundanese", "Sundanese_Sup", "Sup_Arrows_A", "Sup_Arrows_B",
     175      "Sup_Arrows_C", "Sup_Math_Operators", "Sup_PUA_A", "Sup_PUA_B",
     176      "Sup_Punctuation", "Super_And_Sub", "Syloti_Nagri", "Syriac",
     177      "Tagalog", "Tagbanwa", "Tags", "Tai_Le", "Tai_Tham", "Tai_Viet",
     178      "Tai_Xuan_Jing", "Takri", "Tamil", "Telugu", "Thaana", "Thai",
     179      "Tibetan", "Tifinagh", "Tirhuta", "Transport_And_Map", "UCAS",
     180      "UCAS_Ext", "Ugaritic", "Vai", "Vedic_Ext", "Vertical_Forms", "VS",
     181      "VS_Sup", "Warang_Citi", "Yi_Radicals", "Yi_Syllables", "Yijing"};
    111182    const std::vector<std::string> value_names = {
    112183      "Aegean_Numbers", "Alchemical_Symbols",
     
    197268      "Yi_Syllables", "Yijing_Hexagram_Symbols"};
    198269    const std::unordered_map<std::string, int> aliases_only_map = {
    199       {"alchemical", BLK::Alchemical}, {"alphabeticpf", BLK::Alphabetic_PF},
    200       {"ancientgreekmusic", BLK::Ancient_Greek_Music},
    201       {"arabicexta", BLK::Arabic_Ext_A}, {"arabicmath", BLK::Arabic_Math},
    202       {"arabicpfa", BLK::Arabic_PF_A}, {"arabicpfb", BLK::Arabic_PF_B},
    203       {"arabicsup", BLK::Arabic_Sup}, {"ascii", BLK::ASCII},
    204       {"bamumsup", BLK::Bamum_Sup}, {"bopomofoext", BLK::Bopomofo_Ext},
    205       {"braille", BLK::Braille}, {"byzantinemusic", BLK::Byzantine_Music},
    206       {"canadiansyllabics", BLK::UCAS}, {"cjk", BLK::CJK},
    207       {"cjkcompat", BLK::CJK_Compat},
    208       {"cjkcompatforms", BLK::CJK_Compat_Forms},
    209       {"cjkcompatideographs", BLK::CJK_Compat_Ideographs},
    210       {"cjkcompatideographssup", BLK::CJK_Compat_Ideographs_Sup},
    211       {"cjkexta", BLK::CJK_Ext_A}, {"cjkextb", BLK::CJK_Ext_B},
    212       {"cjkextc", BLK::CJK_Ext_C}, {"cjkextd", BLK::CJK_Ext_D},
    213       {"cjkradicalssup", BLK::CJK_Radicals_Sup},
    214       {"cjksymbols", BLK::CJK_Symbols},
    215       {"combiningmarksforsymbols", BLK::Diacriticals_For_Symbols},
    216       {"compatjamo", BLK::Compat_Jamo}, {"countingrod", BLK::Counting_Rod},
    217       {"cuneiformnumbers", BLK::Cuneiform_Numbers},
    218       {"cyrillicexta", BLK::Cyrillic_Ext_A},
    219       {"cyrillicextb", BLK::Cyrillic_Ext_B},
    220       {"cyrillicsup", BLK::Cyrillic_Sup},
    221       {"cyrillicsupplementary", BLK::Cyrillic_Sup},
    222       {"devanagariext", BLK::Devanagari_Ext},
    223       {"diacriticals", BLK::Diacriticals},
    224       {"diacriticalsext", BLK::Diacriticals_Ext},
    225       {"diacriticalsforsymbols", BLK::Diacriticals_For_Symbols},
    226       {"diacriticalssup", BLK::Diacriticals_Sup}, {"domino", BLK::Domino},
    227       {"enclosedalphanum", BLK::Enclosed_Alphanum},
    228       {"enclosedalphanumsup", BLK::Enclosed_Alphanum_Sup},
    229       {"enclosedcjk", BLK::Enclosed_CJK},
    230       {"enclosedideographicsup", BLK::Enclosed_Ideographic_Sup},
    231       {"ethiopicext", BLK::Ethiopic_Ext},
    232       {"ethiopicexta", BLK::Ethiopic_Ext_A},
    233       {"ethiopicsup", BLK::Ethiopic_Sup},
    234       {"geometricshapesext", BLK::Geometric_Shapes_Ext},
    235       {"georgiansup", BLK::Georgian_Sup}, {"greek", BLK::Greek},
    236       {"greekext", BLK::Greek_Ext},
    237       {"halfandfullforms", BLK::Half_And_Full_Forms},
    238       {"halfmarks", BLK::Half_Marks}, {"hangul", BLK::Hangul},
    239       {"highpusurrogates", BLK::High_PU_Surrogates}, {"idc", BLK::IDC},
    240       {"indicnumberforms", BLK::Indic_Number_Forms},
    241       {"ipaext", BLK::IPA_Ext}, {"jamo", BLK::Jamo},
    242       {"jamoexta", BLK::Jamo_Ext_A}, {"jamoextb", BLK::Jamo_Ext_B},
    243       {"kanasup", BLK::Kana_Sup}, {"kangxi", BLK::Kangxi},
    244       {"katakanaext", BLK::Katakana_Ext}, {"latin1", BLK::Latin_1_Sup},
    245       {"latin1sup", BLK::Latin_1_Sup}, {"latinexta", BLK::Latin_Ext_A},
    246       {"latinextadditional", BLK::Latin_Ext_Additional},
    247       {"latinextb", BLK::Latin_Ext_B}, {"latinextc", BLK::Latin_Ext_C},
    248       {"latinextd", BLK::Latin_Ext_D}, {"latinexte", BLK::Latin_Ext_E},
    249       {"mahjong", BLK::Mahjong}, {"mathalphanum", BLK::Math_Alphanum},
    250       {"mathoperators", BLK::Math_Operators},
    251       {"meeteimayekext", BLK::Meetei_Mayek_Ext},
    252       {"miscarrows", BLK::Misc_Arrows},
    253       {"miscmathsymbolsa", BLK::Misc_Math_Symbols_A},
    254       {"miscmathsymbolsb", BLK::Misc_Math_Symbols_B},
    255       {"miscpictographs", BLK::Misc_Pictographs},
    256       {"miscsymbols", BLK::Misc_Symbols},
    257       {"misctechnical", BLK::Misc_Technical},
    258       {"modifierletters", BLK::Modifier_Letters}, {"music", BLK::Music},
    259       {"myanmarexta", BLK::Myanmar_Ext_A},
    260       {"myanmarextb", BLK::Myanmar_Ext_B}, {"nb", BLK::NB},
    261       {"ocr", BLK::OCR}, {"phaistos", BLK::Phaistos},
    262       {"phoneticext", BLK::Phonetic_Ext},
    263       {"phoneticextsup", BLK::Phonetic_Ext_Sup}, {"privateuse", BLK::PUA},
    264       {"pua", BLK::PUA}, {"punctuation", BLK::Punctuation},
    265       {"rumi", BLK::Rumi}, {"smallforms", BLK::Small_Forms},
    266       {"sundanesesup", BLK::Sundanese_Sup},
    267       {"suparrowsa", BLK::Sup_Arrows_A}, {"suparrowsb", BLK::Sup_Arrows_B},
    268       {"suparrowsc", BLK::Sup_Arrows_C},
    269       {"superandsub", BLK::Super_And_Sub},
    270       {"supmathoperators", BLK::Sup_Math_Operators},
    271       {"suppuaa", BLK::Sup_PUA_A}, {"suppuab", BLK::Sup_PUA_B},
    272       {"suppunctuation", BLK::Sup_Punctuation},
    273       {"taixuanjing", BLK::Tai_Xuan_Jing},
    274       {"transportandmap", BLK::Transport_And_Map}, {"ucas", BLK::UCAS},
    275       {"ucasext", BLK::UCAS_Ext}, {"vedicext", BLK::Vedic_Ext},
    276       {"vs", BLK::VS}, {"vssup", BLK::VS_Sup}, {"yijing", BLK::Yijing}};
    277   }
    278 
    279   namespace SC {
     270      {"canadiansyllabics", BLK_ns::UCAS},
     271      {"combiningmarksforsymbols", BLK_ns::Diacriticals_For_Symbols},
     272      {"cyrillicsupplementary", BLK_ns::Cyrillic_Sup},
     273      {"latin1", BLK_ns::Latin_1_Sup}, {"privateuse", BLK_ns::PUA}};
     274  }
     275
     276  namespace SC_ns {
    280277    enum value_t {
    281278      Aghb, Arab, Armi, Armn, Avst, Bali, Bamu, Bass, Batk, Beng, Bopo,
     
    291288      Tavt, Telu, Tfng, Tglg, Thaa, Thai, Tibt, Tirh, Ugar, Vaii, Wara,
    292289      Xpeo, Xsux, Yiii, Zinh, Zyyy, Zzzz};
     290    const std::vector<std::string> enum_names = {
     291      "Aghb", "Arab", "Armi", "Armn", "Avst", "Bali", "Bamu", "Bass",
     292      "Batk", "Beng", "Bopo", "Brah", "Brai", "Bugi", "Buhd", "Cakm",
     293      "Cans", "Cari", "Cham", "Cher", "Copt", "Cprt", "Cyrl", "Deva",
     294      "Dsrt", "Dupl", "Egyp", "Elba", "Ethi", "Geor", "Glag", "Goth",
     295      "Gran", "Grek", "Gujr", "Guru", "Hang", "Hani", "Hano", "Hebr",
     296      "Hira", "Hmng", "Hrkt", "Ital", "Java", "Kali", "Kana", "Khar",
     297      "Khmr", "Khoj", "Knda", "Kthi", "Lana", "Laoo", "Latn", "Lepc",
     298      "Limb", "Lina", "Linb", "Lisu", "Lyci", "Lydi", "Mahj", "Mand",
     299      "Mani", "Mend", "Merc", "Mero", "Mlym", "Modi", "Mong", "Mroo",
     300      "Mtei", "Mymr", "Narb", "Nbat", "Nkoo", "Ogam", "Olck", "Orkh",
     301      "Orya", "Osma", "Palm", "Pauc", "Perm", "Phag", "Phli", "Phlp",
     302      "Phnx", "Plrd", "Prti", "Rjng", "Runr", "Samr", "Sarb", "Saur",
     303      "Shaw", "Shrd", "Sidd", "Sind", "Sinh", "Sora", "Sund", "Sylo",
     304      "Syrc", "Tagb", "Takr", "Tale", "Talu", "Taml", "Tavt", "Telu",
     305      "Tfng", "Tglg", "Thaa", "Thai", "Tibt", "Tirh", "Ugar", "Vaii",
     306      "Wara", "Xpeo", "Xsux", "Yiii", "Zinh", "Zyyy", "Zzzz"};
    293307    const std::vector<std::string> value_names = {
    294308      "Caucasian_Albanian", "Arabic", "Imperial_Aramaic", "Armenian",
     
    318332      "Common", "Unknown"};
    319333    const std::unordered_map<std::string, int> aliases_only_map = {
    320       {"aghb", SC::Aghb}, {"arab", SC::Arab}, {"armi", SC::Armi},
    321       {"armn", SC::Armn}, {"avst", SC::Avst}, {"bali", SC::Bali},
    322       {"bamu", SC::Bamu}, {"bass", SC::Bass}, {"batk", SC::Batk},
    323       {"beng", SC::Beng}, {"bopo", SC::Bopo}, {"brah", SC::Brah},
    324       {"brai", SC::Brai}, {"bugi", SC::Bugi}, {"buhd", SC::Buhd},
    325       {"cakm", SC::Cakm}, {"cans", SC::Cans}, {"cari", SC::Cari},
    326       {"cher", SC::Cher}, {"copt", SC::Copt}, {"cprt", SC::Cprt},
    327       {"cyrl", SC::Cyrl}, {"deva", SC::Deva}, {"dsrt", SC::Dsrt},
    328       {"dupl", SC::Dupl}, {"egyp", SC::Egyp}, {"elba", SC::Elba},
    329       {"ethi", SC::Ethi}, {"geor", SC::Geor}, {"glag", SC::Glag},
    330       {"goth", SC::Goth}, {"gran", SC::Gran}, {"grek", SC::Grek},
    331       {"gujr", SC::Gujr}, {"guru", SC::Guru}, {"hang", SC::Hang},
    332       {"hani", SC::Hani}, {"hano", SC::Hano}, {"hebr", SC::Hebr},
    333       {"hira", SC::Hira}, {"hmng", SC::Hmng}, {"hrkt", SC::Hrkt},
    334       {"ital", SC::Ital}, {"java", SC::Java}, {"kali", SC::Kali},
    335       {"kana", SC::Kana}, {"khar", SC::Khar}, {"khmr", SC::Khmr},
    336       {"khoj", SC::Khoj}, {"knda", SC::Knda}, {"kthi", SC::Kthi},
    337       {"lana", SC::Lana}, {"laoo", SC::Laoo}, {"latn", SC::Latn},
    338       {"lepc", SC::Lepc}, {"limb", SC::Limb}, {"lina", SC::Lina},
    339       {"linb", SC::Linb}, {"lyci", SC::Lyci}, {"lydi", SC::Lydi},
    340       {"mahj", SC::Mahj}, {"mand", SC::Mand}, {"mani", SC::Mani},
    341       {"mend", SC::Mend}, {"merc", SC::Merc}, {"mero", SC::Mero},
    342       {"mlym", SC::Mlym}, {"mong", SC::Mong}, {"mroo", SC::Mroo},
    343       {"mtei", SC::Mtei}, {"mymr", SC::Mymr}, {"narb", SC::Narb},
    344       {"nbat", SC::Nbat}, {"nkoo", SC::Nkoo}, {"ogam", SC::Ogam},
    345       {"olck", SC::Olck}, {"orkh", SC::Orkh}, {"orya", SC::Orya},
    346       {"osma", SC::Osma}, {"palm", SC::Palm}, {"pauc", SC::Pauc},
    347       {"perm", SC::Perm}, {"phag", SC::Phag}, {"phli", SC::Phli},
    348       {"phlp", SC::Phlp}, {"phnx", SC::Phnx}, {"plrd", SC::Plrd},
    349       {"prti", SC::Prti}, {"qaac", SC::Copt}, {"qaai", SC::Zinh},
    350       {"rjng", SC::Rjng}, {"runr", SC::Runr}, {"samr", SC::Samr},
    351       {"sarb", SC::Sarb}, {"saur", SC::Saur}, {"shaw", SC::Shaw},
    352       {"shrd", SC::Shrd}, {"sidd", SC::Sidd}, {"sind", SC::Sind},
    353       {"sinh", SC::Sinh}, {"sora", SC::Sora}, {"sund", SC::Sund},
    354       {"sylo", SC::Sylo}, {"syrc", SC::Syrc}, {"tagb", SC::Tagb},
    355       {"takr", SC::Takr}, {"tale", SC::Tale}, {"talu", SC::Talu},
    356       {"taml", SC::Taml}, {"tavt", SC::Tavt}, {"telu", SC::Telu},
    357       {"tfng", SC::Tfng}, {"tglg", SC::Tglg}, {"thaa", SC::Thaa},
    358       {"tibt", SC::Tibt}, {"tirh", SC::Tirh}, {"ugar", SC::Ugar},
    359       {"vaii", SC::Vaii}, {"wara", SC::Wara}, {"xpeo", SC::Xpeo},
    360       {"xsux", SC::Xsux}, {"yiii", SC::Yiii}, {"zinh", SC::Zinh},
    361       {"zyyy", SC::Zyyy}, {"zzzz", SC::Zzzz}};
    362   }
    363 
    364   namespace BC {
     334      {"qaac", SC_ns::Copt}, {"qaai", SC_ns::Zinh}};
     335  }
     336
     337  namespace BC_ns {
    365338    enum value_t {
    366339      AL, AN, B, BN, CS, EN, ES, ET, FSI, L, LRE, LRI, LRO, NSM, ON, PDF,
    367340      PDI, R, RLE, RLI, RLO, S, WS};
     341    const std::vector<std::string> enum_names = {
     342      "AL", "AN", "B", "BN", "CS", "EN", "ES", "ET", "FSI", "L", "LRE",
     343      "LRI", "LRO", "NSM", "ON", "PDF", "PDI", "R", "RLE", "RLI", "RLO",
     344      "S", "WS"};
    368345    const std::vector<std::string> value_names = {
    369346      "Arabic_Letter", "Arabic_Number", "Paragraph_Separator",
     
    376353      "Right_To_Left_Override", "Segment_Separator", "White_Space"};
    377354    const std::unordered_map<std::string, int> aliases_only_map = {
    378       {"al", BC::AL}, {"an", BC::AN}, {"b", BC::B}, {"bn", BC::BN},
    379       {"cs", BC::CS}, {"en", BC::EN}, {"es", BC::ES}, {"et", BC::ET},
    380       {"fsi", BC::FSI}, {"l", BC::L}, {"lre", BC::LRE}, {"lri", BC::LRI},
    381       {"lro", BC::LRO}, {"nsm", BC::NSM}, {"on", BC::ON}, {"pdf", BC::PDF},
    382       {"pdi", BC::PDI}, {"r", BC::R}, {"rle", BC::RLE}, {"rli", BC::RLI},
    383       {"rlo", BC::RLO}, {"s", BC::S}, {"ws", BC::WS}};
    384   }
    385 
    386   namespace BPT {
     355      };
     356  }
     357
     358  namespace BPT_ns {
    387359    enum value_t {
    388360      c, n, o};
     361    const std::vector<std::string> enum_names = {
     362      "c", "n", "o"};
    389363    const std::vector<std::string> value_names = {
    390364      "Close", "None", "Open"};
    391365    const std::unordered_map<std::string, int> aliases_only_map = {
    392       {"c", BPT::c}, {"n", BPT::n}, {"o", BPT::o}};
    393   }
    394 
    395   namespace CCC {
     366      };
     367  }
     368
     369  namespace CCC_ns {
    396370    enum value_t {
    397371      NR, OV, NK, KV, VR, CCC10, CCC11, CCC12, CCC13, CCC14, CCC15, CCC16,
     
    406380      118, 122, 129, 130, 132, 133, 200, 202, 214, 216, 218, 220, 222, 224,
    407381      226, 228, 230, 232, 233, 234, 240};
     382    const std::vector<std::string> enum_names = {
     383      "NR", "OV", "NK", "KV", "VR", "CCC10", "CCC11", "CCC12", "CCC13",
     384      "CCC14", "CCC15", "CCC16", "CCC17", "CCC18", "CCC19", "CCC20",
     385      "CCC21", "CCC22", "CCC23", "CCC24", "CCC25", "CCC26", "CCC27",
     386      "CCC28", "CCC29", "CCC30", "CCC31", "CCC32", "CCC33", "CCC34",
     387      "CCC35", "CCC36", "CCC84", "CCC91", "CCC103", "CCC107", "CCC118",
     388      "CCC122", "CCC129", "CCC130", "CCC132", "CCC133", "ATBL", "ATB",
     389      "ATA", "ATAR", "BL", "B", "BR", "L", "R", "AL", "A", "AR", "DB", "DA",
     390      "IS"};
    408391    const std::vector<std::string> value_names = {
    409392      "Not_Reordered", "Overlay", "Nukta", "Kana_Voicing", "Virama",
     
    418401      "Double_Below", "Double_Above", "Iota_Subscript"};
    419402    const std::unordered_map<std::string, int> aliases_only_map = {
    420       {"a", CCC::A}, {"al", CCC::AL}, {"ar", CCC::AR}, {"ata", CCC::ATA},
    421       {"atar", CCC::ATAR}, {"atb", CCC::ATB}, {"atbl", CCC::ATBL},
    422       {"b", CCC::B}, {"bl", CCC::BL}, {"br", CCC::BR}, {"da", CCC::DA},
    423       {"db", CCC::DB}, {"is", CCC::IS}, {"kv", CCC::KV}, {"l", CCC::L},
    424       {"nk", CCC::NK}, {"nr", CCC::NR}, {"ov", CCC::OV}, {"r", CCC::R},
    425       {"vr", CCC::VR}};
    426   }
    427 
    428   namespace DT {
     403      };
     404  }
     405
     406  namespace DT_ns {
    429407    enum value_t {
    430408      Can, Com, Enc, Fin, Font, Fra, Init, Iso, Med, Nar, Nb, None, Sml,
    431409      Sqr, Sub, Sup, Vert, Wide};
     410    const std::vector<std::string> enum_names = {
     411      "Can", "Com", "Enc", "Fin", "Font", "Fra", "Init", "Iso", "Med",
     412      "Nar", "Nb", "None", "Sml", "Sqr", "Sub", "Sup", "Vert", "Wide"};
    432413    const std::vector<std::string> value_names = {
    433414      "Canonical", "Compat", "Circle", "Final", "Font", "Fraction",
     
    435416      "Square", "Sub", "Super", "Vertical", "Wide"};
    436417    const std::unordered_map<std::string, int> aliases_only_map = {
    437       {"can", DT::Can}, {"com", DT::Com}, {"enc", DT::Enc},
    438       {"fin", DT::Fin}, {"fra", DT::Fra}, {"init", DT::Init},
    439       {"med", DT::Med}, {"nar", DT::Nar}, {"nb", DT::Nb}, {"o", DT::Iso},
    440       {"sml", DT::Sml}, {"sqr", DT::Sqr}, {"sup", DT::Sup},
    441       {"vert", DT::Vert}};
    442   }
    443 
    444   namespace EA {
     418      };
     419  }
     420
     421  namespace EA_ns {
    445422    enum value_t {
    446423      A, F, H, N, Na, W};
     424    const std::vector<std::string> enum_names = {
     425      "A", "F", "H", "N", "Na", "W"};
    447426    const std::vector<std::string> value_names = {
    448427      "Ambiguous", "Fullwidth", "Halfwidth", "Neutral", "Narrow", "Wide"};
    449428    const std::unordered_map<std::string, int> aliases_only_map = {
    450       {"a", EA::A}, {"f", EA::F}, {"h", EA::H}, {"n", EA::N},
    451       {"na", EA::Na}, {"w", EA::W}};
    452   }
    453 
    454   namespace GC {
     429      };
     430  }
     431
     432  namespace GC_ns {
    455433    enum value_t {
    456434      C, Cc, Cf, Cn, Co, Cs, L, LC, Ll, Lm, Lo, Lt, Lu, M, Mc, Me, Mn, N,
    457435      Nd, Nl, No, P, Pc, Pd, Pe, Pf, Pi, Po, Ps, S, Sc, Sk, Sm, So, Z, Zl,
    458436      Zp, Zs};
     437    const std::vector<std::string> enum_names = {
     438      "C", "Cc", "Cf", "Cn", "Co", "Cs", "L", "LC", "Ll", "Lm", "Lo", "Lt",
     439      "Lu", "M", "Mc", "Me", "Mn", "N", "Nd", "Nl", "No", "P", "Pc", "Pd",
     440      "Pe", "Pf", "Pi", "Po", "Ps", "S", "Sc", "Sk", "Sm", "So", "Z", "Zl",
     441      "Zp", "Zs"};
    459442    const std::vector<std::string> value_names = {
    460443      "Other", "Control", "Format", "Unassigned", "Private_Use",
     
    470453      "Space_Separator"};
    471454    const std::unordered_map<std::string, int> aliases_only_map = {
    472       {"c", GC::C}, {"cc", GC::Cc}, {"cf", GC::Cf}, {"cn", GC::Cn},
    473       {"cntrl", GC::Cc}, {"co", GC::Co}, {"combiningmark", GC::M},
    474       {"cs", GC::Cs}, {"digit", GC::Nd}, {"l", GC::L}, {"lc", GC::LC},
    475       {"ll", GC::Ll}, {"lm", GC::Lm}, {"lo", GC::Lo}, {"lt", GC::Lt},
    476       {"lu", GC::Lu}, {"m", GC::M}, {"mc", GC::Mc}, {"me", GC::Me},
    477       {"mn", GC::Mn}, {"n", GC::N}, {"nd", GC::Nd}, {"nl", GC::Nl},
    478       {"no", GC::No}, {"p", GC::P}, {"pc", GC::Pc}, {"pd", GC::Pd},
    479       {"pe", GC::Pe}, {"pf", GC::Pf}, {"pi", GC::Pi}, {"po", GC::Po},
    480       {"ps", GC::Ps}, {"punct", GC::P}, {"s", GC::S}, {"sc", GC::Sc},
    481       {"sk", GC::Sk}, {"sm", GC::Sm}, {"so", GC::So}, {"z", GC::Z},
    482       {"zl", GC::Zl}, {"zp", GC::Zp}, {"zs", GC::Zs}};
    483   }
    484 
    485   namespace GCB {
     455      {"cntrl", GC_ns::Cc}, {"combiningmark", GC_ns::M},
     456      {"digit", GC_ns::Nd}, {"punct", GC_ns::P}};
     457  }
     458
     459  namespace GCB_ns {
    486460    enum value_t {
    487461      CN, CR, EX, L, LF, LV, LVT, PP, RI, SM, T, V, XX};
     462    const std::vector<std::string> enum_names = {
     463      "CN", "CR", "EX", "L", "LF", "LV", "LVT", "PP", "RI", "SM", "T", "V",
     464      "XX"};
    488465    const std::vector<std::string> value_names = {
    489466      "Control", "CR", "Extend", "L", "LF", "LV", "LVT", "Prepend",
    490467      "Regional_Indicator", "SpacingMark", "T", "V", "Other"};
    491468    const std::unordered_map<std::string, int> aliases_only_map = {
    492       {"cn", GCB::CN}, {"ex", GCB::EX}, {"pp", GCB::PP}, {"ri", GCB::RI},
    493       {"sm", GCB::SM}, {"xx", GCB::XX}};
    494   }
    495 
    496   namespace HST {
     469      };
     470  }
     471
     472  namespace HST_ns {
    497473    enum value_t {
    498474      L, LV, LVT, NA, T, V};
     475    const std::vector<std::string> enum_names = {
     476      "L", "LV", "LVT", "NA", "T", "V"};
    499477    const std::vector<std::string> value_names = {
    500478      "Leading_Jamo", "LV_Syllable", "LVT_Syllable", "Not_Applicable",
    501479      "Trailing_Jamo", "Vowel_Jamo"};
    502480    const std::unordered_map<std::string, int> aliases_only_map = {
    503       {"l", HST::L}, {"lv", HST::LV}, {"lvt", HST::LVT}, {"na", HST::NA},
    504       {"t", HST::T}, {"v", HST::V}};
    505   }
    506 
    507   namespace INMC {
     481      };
     482  }
     483
     484  namespace INMC_ns {
    508485    enum value_t {
    509486      Bottom, Bottom_And_Right, Left, Left_And_Right, NA, Overstruck, Right,
    510487      Top, Top_And_Bottom, Top_And_Bottom_And_Right, Top_And_Left,
    511488      Top_And_Left_And_Right, Top_And_Right, Visual_Order_Left};
    512     const std::vector<std::string> value_names = {
     489    const std::vector<std::string> enum_names = {
    513490      "Bottom", "Bottom_And_Right", "Left", "Left_And_Right", "NA",
    514491      "Overstruck", "Right", "Top", "Top_And_Bottom",
    515492      "Top_And_Bottom_And_Right", "Top_And_Left", "Top_And_Left_And_Right",
    516493      "Top_And_Right", "Visual_Order_Left"};
    517     const std::unordered_map<std::string, int> aliases_only_map = {
    518       };
    519   }
    520 
    521   namespace INSC {
     494    const std::vector<std::string> value_names = {
     495      "Bottom", "Bottom_And_Right", "Left", "Left_And_Right", "NA",
     496      "Overstruck", "Right", "Top", "Top_And_Bottom",
     497      "Top_And_Bottom_And_Right", "Top_And_Left", "Top_And_Left_And_Right",
     498      "Top_And_Right", "Visual_Order_Left"};
     499    const std::unordered_map<std::string, int> aliases_only_map = {
     500      };
     501  }
     502
     503  namespace INSC_ns {
    522504    enum value_t {
    523505      Avagraha, Bindu, Brahmi_Joining_Number, Cantillation_Mark, Consonant,
     
    529511      Tone_Letter, Tone_Mark, Virama, Visarga, Vowel, Vowel_Dependent,
    530512      Vowel_Independent};
    531     const std::vector<std::string> value_names = {
     513    const std::vector<std::string> enum_names = {
    532514      "Avagraha", "Bindu", "Brahmi_Joining_Number", "Cantillation_Mark",
    533515      "Consonant", "Consonant_Dead", "Consonant_Final",
     
    539521      "Tone_Letter", "Tone_Mark", "Virama", "Visarga", "Vowel",
    540522      "Vowel_Dependent", "Vowel_Independent"};
    541     const std::unordered_map<std::string, int> aliases_only_map = {
    542       };
    543   }
    544 
    545   namespace JG {
     523    const std::vector<std::string> value_names = {
     524      "Avagraha", "Bindu", "Brahmi_Joining_Number", "Cantillation_Mark",
     525      "Consonant", "Consonant_Dead", "Consonant_Final",
     526      "Consonant_Head_Letter", "Consonant_Medial", "Consonant_Placeholder",
     527      "Consonant_Preceding_Repha", "Consonant_Subjoined",
     528      "Consonant_Succeeding_Repha", "Gemination_Mark", "Invisible_Stacker",
     529      "Joiner", "Modifying_Letter", "Non_Joiner", "Nukta", "Number",
     530      "Number_Joiner", "Other", "Pure_Killer", "Register_Shifter",
     531      "Tone_Letter", "Tone_Mark", "Virama", "Visarga", "Vowel",
     532      "Vowel_Dependent", "Vowel_Independent"};
     533    const std::unordered_map<std::string, int> aliases_only_map = {
     534      };
     535  }
     536
     537  namespace JG_ns {
    546538    enum value_t {
    547539      Ain, Alaph, Alef, Beh, Beth, Burushaski_Yeh_Barree, Dal, Dalath_Rish,
     
    560552      Teh_Marbuta, Teh_Marbuta_Goal, Teth, Waw, Yeh, Yeh_Barree,
    561553      Yeh_With_Tail, Yudh, Yudh_He, Zain, Zhain};
     554    const std::vector<std::string> enum_names = {
     555      "Ain", "Alaph", "Alef", "Beh", "Beth", "Burushaski_Yeh_Barree", "Dal",
     556      "Dalath_Rish", "E", "Farsi_Yeh", "Fe", "Feh", "Final_Semkath", "Gaf",
     557      "Gamal", "Hah", "He", "Heh", "Heh_Goal", "Heth", "Kaf", "Kaph",
     558      "Khaph", "Knotted_Heh", "Lam", "Lamadh", "Manichaean_Aleph",
     559      "Manichaean_Ayin", "Manichaean_Beth", "Manichaean_Daleth",
     560      "Manichaean_Dhamedh", "Manichaean_Five", "Manichaean_Gimel",
     561      "Manichaean_Heth", "Manichaean_Hundred", "Manichaean_Kaph",
     562      "Manichaean_Lamedh", "Manichaean_Mem", "Manichaean_Nun",
     563      "Manichaean_One", "Manichaean_Pe", "Manichaean_Qoph",
     564      "Manichaean_Resh", "Manichaean_Sadhe", "Manichaean_Samekh",
     565      "Manichaean_Taw", "Manichaean_Ten", "Manichaean_Teth",
     566      "Manichaean_Thamedh", "Manichaean_Twenty", "Manichaean_Waw",
     567      "Manichaean_Yodh", "Manichaean_Zayin", "Meem", "Mim",
     568      "No_Joining_Group", "Noon", "Nun", "Nya", "Pe", "Qaf", "Qaph", "Reh",
     569      "Reversed_Pe", "Rohingya_Yeh", "Sad", "Sadhe", "Seen", "Semkath",
     570      "Shin", "Straight_Waw", "Swash_Kaf", "Syriac_Waw", "Tah", "Taw",
     571      "Teh_Marbuta", "Teh_Marbuta_Goal", "Teth", "Waw", "Yeh", "Yeh_Barree",
     572      "Yeh_With_Tail", "Yudh", "Yudh_He", "Zain", "Zhain"};
    562573    const std::vector<std::string> value_names = {
    563574      "Ain", "Alaph", "Alef", "Beh", "Beth", "Burushaski_Yeh_Barree", "Dal",
     
    580591      "Yeh_Barree", "Yeh_With_Tail", "Yudh", "Yudh_He", "Zain", "Zhain"};
    581592    const std::unordered_map<std::string, int> aliases_only_map = {
    582       {"tehmarbutagoal", JG::Teh_Marbuta_Goal}};
    583   }
    584 
    585   namespace JT {
     593      };
     594  }
     595
     596  namespace JT_ns {
    586597    enum value_t {
    587598      C, D, L, R, T, U};
     599    const std::vector<std::string> enum_names = {
     600      "C", "D", "L", "R", "T", "U"};
    588601    const std::vector<std::string> value_names = {
    589602      "Join_Causing", "Dual_Joining", "Left_Joining", "Right_Joining",
    590603      "Transparent", "Non_Joining"};
    591604    const std::unordered_map<std::string, int> aliases_only_map = {
    592       {"c", JT::C}, {"d", JT::D}, {"l", JT::L}, {"r", JT::R}, {"t", JT::T},
    593       {"u", JT::U}};
    594   }
    595 
    596   namespace LB {
     605      };
     606  }
     607
     608  namespace LB_ns {
    597609    enum value_t {
    598610      AI, AL, B2, BA, BB, BK, CB, CJ, CL, CM, CP, CR, EX, GL, H2, H3, HL,
    599611      HY, ID, IN, IS, JL, JT, JV, LF, NL, NS, NU, OP, PO, PR, QU, RI, SA,
    600612      SG, SP, SY, WJ, XX, ZW};
     613    const std::vector<std::string> enum_names = {
     614      "AI", "AL", "B2", "BA", "BB", "BK", "CB", "CJ", "CL", "CM", "CP",
     615      "CR", "EX", "GL", "H2", "H3", "HL", "HY", "ID", "IN", "IS", "JL",
     616      "JT", "JV", "LF", "NL", "NS", "NU", "OP", "PO", "PR", "QU", "RI",
     617      "SA", "SG", "SP", "SY", "WJ", "XX", "ZW"};
    601618    const std::vector<std::string> value_names = {
    602619      "Ambiguous", "Alphabetic", "Break_Both", "Break_After",
     
    611628      "Word_Joiner", "Unknown", "ZWSpace"};
    612629    const std::unordered_map<std::string, int> aliases_only_map = {
    613       {"ai", LB::AI}, {"al", LB::AL}, {"b2", LB::B2}, {"ba", LB::BA},
    614       {"bb", LB::BB}, {"bk", LB::BK}, {"cb", LB::CB}, {"cj", LB::CJ},
    615       {"cl", LB::CL}, {"cm", LB::CM}, {"cp", LB::CP}, {"cr", LB::CR},
    616       {"ex", LB::EX}, {"gl", LB::GL}, {"hl", LB::HL}, {"hy", LB::HY},
    617       {"id", LB::ID}, {"in", LB::IN}, {"inseperable", LB::IN},
    618       {"is", LB::IS}, {"lf", LB::LF}, {"nl", LB::NL}, {"ns", LB::NS},
    619       {"nu", LB::NU}, {"op", LB::OP}, {"po", LB::PO}, {"pr", LB::PR},
    620       {"qu", LB::QU}, {"ri", LB::RI}, {"sa", LB::SA}, {"sg", LB::SG},
    621       {"sp", LB::SP}, {"sy", LB::SY}, {"wj", LB::WJ}, {"xx", LB::XX},
    622       {"zw", LB::ZW}};
    623   }
    624 
    625   namespace NFC_QC {
     630      {"inseperable", LB_ns::IN}};
     631  }
     632
     633  namespace NFC_QC_ns {
    626634    enum value_t {
    627635      M, N, Y};
     636    const std::vector<std::string> enum_names = {
     637      "M", "N", "Y"};
    628638    const std::vector<std::string> value_names = {
    629639      "Maybe", "No", "Yes"};
    630640    const std::unordered_map<std::string, int> aliases_only_map = {
    631       {"m", NFC_QC::M}, {"n", NFC_QC::N}, {"y", NFC_QC::Y}};
    632   }
    633 
    634   namespace NFD_QC {
     641      };
     642  }
     643
     644  namespace NFD_QC_ns {
    635645    enum value_t {
    636646      N, Y};
     647    const std::vector<std::string> enum_names = {
     648      "N", "Y"};
    637649    const std::vector<std::string> value_names = {
    638650      "No", "Yes"};
    639651    const std::unordered_map<std::string, int> aliases_only_map = {
    640       {"n", NFD_QC::N}, {"y", NFD_QC::Y}};
    641   }
    642 
    643   namespace NFKC_QC {
     652      };
     653  }
     654
     655  namespace NFKC_QC_ns {
    644656    enum value_t {
    645657      M, N, Y};
     658    const std::vector<std::string> enum_names = {
     659      "M", "N", "Y"};
    646660    const std::vector<std::string> value_names = {
    647661      "Maybe", "No", "Yes"};
    648662    const std::unordered_map<std::string, int> aliases_only_map = {
    649       {"m", NFKC_QC::M}, {"n", NFKC_QC::N}, {"y", NFKC_QC::Y}};
    650   }
    651 
    652   namespace NFKD_QC {
     663      };
     664  }
     665
     666  namespace NFKD_QC_ns {
    653667    enum value_t {
    654668      N, Y};
     669    const std::vector<std::string> enum_names = {
     670      "N", "Y"};
    655671    const std::vector<std::string> value_names = {
    656672      "No", "Yes"};
    657673    const std::unordered_map<std::string, int> aliases_only_map = {
    658       {"n", NFKD_QC::N}, {"y", NFKD_QC::Y}};
    659   }
    660 
    661   namespace NT {
     674      };
     675  }
     676
     677  namespace NT_ns {
    662678    enum value_t {
    663679      De, Di, None, Nu};
     680    const std::vector<std::string> enum_names = {
     681      "De", "Di", "None", "Nu"};
    664682    const std::vector<std::string> value_names = {
    665683      "Decimal", "Digit", "None", "Numeric"};
    666684    const std::unordered_map<std::string, int> aliases_only_map = {
    667       {"de", NT::De}, {"di", NT::Di}, {"nu", NT::Nu}};
    668   }
    669 
    670   namespace SB {
     685      };
     686  }
     687
     688  namespace SB_ns {
    671689    enum value_t {
    672690      AT, CL, CR, EX, FO, LE, LF, LO, NU, SC, SE, SP, ST, UP, XX};
     691    const std::vector<std::string> enum_names = {
     692      "AT", "CL", "CR", "EX", "FO", "LE", "LF", "LO", "NU", "SC", "SE",
     693      "SP", "ST", "UP", "XX"};
    673694    const std::vector<std::string> value_names = {
    674695      "ATerm", "Close", "CR", "Extend", "Format", "OLetter", "LF", "Lower",
    675696      "Numeric", "SContinue", "Sep", "Sp", "STerm", "Upper", "Other"};
    676697    const std::unordered_map<std::string, int> aliases_only_map = {
    677       {"at", SB::AT}, {"cl", SB::CL}, {"ex", SB::EX}, {"fo", SB::FO},
    678       {"le", SB::LE}, {"lo", SB::LO}, {"nu", SB::NU}, {"sc", SB::SC},
    679       {"se", SB::SE}, {"st", SB::ST}, {"up", SB::UP}, {"xx", SB::XX}};
    680   }
    681 
    682   namespace WB {
     698      };
     699  }
     700
     701  namespace WB_ns {
    683702    enum value_t {
    684703      CR, DQ, EX, Extend, FO, HL, KA, LE, LF, MB, ML, MN, NL, NU, RI, SQ,
    685704      XX};
     705    const std::vector<std::string> enum_names = {
     706      "CR", "DQ", "EX", "Extend", "FO", "HL", "KA", "LE", "LF", "MB", "ML",
     707      "MN", "NL", "NU", "RI", "SQ", "XX"};
    686708    const std::vector<std::string> value_names = {
    687709      "CR", "Double_Quote", "ExtendNumLet", "Extend", "Format",
     
    690712      "Single_Quote", "Other"};
    691713    const std::unordered_map<std::string, int> aliases_only_map = {
    692       {"dq", WB::DQ}, {"ex", WB::EX}, {"fo", WB::FO}, {"hl", WB::HL},
    693       {"ka", WB::KA}, {"le", WB::LE}, {"mb", WB::MB}, {"ml", WB::ML},
    694       {"mn", WB::MN}, {"nl", WB::NL}, {"nu", WB::NU}, {"ri", WB::RI},
    695       {"sq", WB::SQ}, {"xx", WB::XX}};
     714      };
    696715  }
    697716}
Note: See TracChangeset for help on using the changeset viewer.