Home | History | Annotate | Download | only in pcre
      1 /*************************************************
      2 *          Unicode Property Table handler        *
      3 *************************************************/
      4 
      5 #ifndef _UCP_H
      6 #define _UCP_H
      7 
      8 /* This file contains definitions of the property values that are returned by
      9 the UCD access macros. New values that are added for new releases of Unicode
     10 should always be at the end of each enum, for backwards compatibility. */
     11 
     12 /* These are the general character categories. */
     13 
     14 enum {
     15   ucp_C,     /* Other */
     16   ucp_L,     /* Letter */
     17   ucp_M,     /* Mark */
     18   ucp_N,     /* Number */
     19   ucp_P,     /* Punctuation */
     20   ucp_S,     /* Symbol */
     21   ucp_Z      /* Separator */
     22 };
     23 
     24 /* These are the particular character types. */
     25 
     26 enum {
     27   ucp_Cc,    /* Control */
     28   ucp_Cf,    /* Format */
     29   ucp_Cn,    /* Unassigned */
     30   ucp_Co,    /* Private use */
     31   ucp_Cs,    /* Surrogate */
     32   ucp_Ll,    /* Lower case letter */
     33   ucp_Lm,    /* Modifier letter */
     34   ucp_Lo,    /* Other letter */
     35   ucp_Lt,    /* Title case letter */
     36   ucp_Lu,    /* Upper case letter */
     37   ucp_Mc,    /* Spacing mark */
     38   ucp_Me,    /* Enclosing mark */
     39   ucp_Mn,    /* Non-spacing mark */
     40   ucp_Nd,    /* Decimal number */
     41   ucp_Nl,    /* Letter number */
     42   ucp_No,    /* Other number */
     43   ucp_Pc,    /* Connector punctuation */
     44   ucp_Pd,    /* Dash punctuation */
     45   ucp_Pe,    /* Close punctuation */
     46   ucp_Pf,    /* Final punctuation */
     47   ucp_Pi,    /* Initial punctuation */
     48   ucp_Po,    /* Other punctuation */
     49   ucp_Ps,    /* Open punctuation */
     50   ucp_Sc,    /* Currency symbol */
     51   ucp_Sk,    /* Modifier symbol */
     52   ucp_Sm,    /* Mathematical symbol */
     53   ucp_So,    /* Other symbol */
     54   ucp_Zl,    /* Line separator */
     55   ucp_Zp,    /* Paragraph separator */
     56   ucp_Zs     /* Space separator */
     57 };
     58 
     59 /* These are the script identifications. */
     60 
     61 enum {
     62   ucp_Arabic,
     63   ucp_Armenian,
     64   ucp_Bengali,
     65   ucp_Bopomofo,
     66   ucp_Braille,
     67   ucp_Buginese,
     68   ucp_Buhid,
     69   ucp_Canadian_Aboriginal,
     70   ucp_Cherokee,
     71   ucp_Common,
     72   ucp_Coptic,
     73   ucp_Cypriot,
     74   ucp_Cyrillic,
     75   ucp_Deseret,
     76   ucp_Devanagari,
     77   ucp_Ethiopic,
     78   ucp_Georgian,
     79   ucp_Glagolitic,
     80   ucp_Gothic,
     81   ucp_Greek,
     82   ucp_Gujarati,
     83   ucp_Gurmukhi,
     84   ucp_Han,
     85   ucp_Hangul,
     86   ucp_Hanunoo,
     87   ucp_Hebrew,
     88   ucp_Hiragana,
     89   ucp_Inherited,
     90   ucp_Kannada,
     91   ucp_Katakana,
     92   ucp_Kharoshthi,
     93   ucp_Khmer,
     94   ucp_Lao,
     95   ucp_Latin,
     96   ucp_Limbu,
     97   ucp_Linear_B,
     98   ucp_Malayalam,
     99   ucp_Mongolian,
    100   ucp_Myanmar,
    101   ucp_New_Tai_Lue,
    102   ucp_Ogham,
    103   ucp_Old_Italic,
    104   ucp_Old_Persian,
    105   ucp_Oriya,
    106   ucp_Osmanya,
    107   ucp_Runic,
    108   ucp_Shavian,
    109   ucp_Sinhala,
    110   ucp_Syloti_Nagri,
    111   ucp_Syriac,
    112   ucp_Tagalog,
    113   ucp_Tagbanwa,
    114   ucp_Tai_Le,
    115   ucp_Tamil,
    116   ucp_Telugu,
    117   ucp_Thaana,
    118   ucp_Thai,
    119   ucp_Tibetan,
    120   ucp_Tifinagh,
    121   ucp_Ugaritic,
    122   ucp_Yi,
    123   /* New for Unicode 5.0: */
    124   ucp_Balinese,
    125   ucp_Cuneiform,
    126   ucp_Nko,
    127   ucp_Phags_Pa,
    128   ucp_Phoenician,
    129   /* New for Unicode 5.1: */
    130   ucp_Carian,
    131   ucp_Cham,
    132   ucp_Kayah_Li,
    133   ucp_Lepcha,
    134   ucp_Lycian,
    135   ucp_Lydian,
    136   ucp_Ol_Chiki,
    137   ucp_Rejang,
    138   ucp_Saurashtra,
    139   ucp_Sundanese,
    140   ucp_Vai,
    141   /* New for Unicode 5.2: */
    142   ucp_Avestan,
    143   ucp_Bamum,
    144   ucp_Egyptian_Hieroglyphs,
    145   ucp_Imperial_Aramaic,
    146   ucp_Inscriptional_Pahlavi,
    147   ucp_Inscriptional_Parthian,
    148   ucp_Javanese,
    149   ucp_Kaithi,
    150   ucp_Lisu,
    151   ucp_Meetei_Mayek,
    152   ucp_Old_South_Arabian,
    153   ucp_Old_Turkic,
    154   ucp_Samaritan,
    155   ucp_Tai_Tham,
    156   ucp_Tai_Viet
    157 };
    158 
    159 #endif
    160 
    161 /* End of ucp.h */
    162