"Fossies" - the Fresh Open Source Software Archive

Member "pcre-8.42/pcre_chartables.c.dist" (31 Jan 2014, 7848 Bytes) of package /linux/misc/pcre-8.42.tar.bz2:


As a special service "Fossies" has tried to format the requested source page into HTML format using (guessed) C and C++ source code syntax highlighting (style: standard) with prefixed line numbers and code folding option. Alternatively you can here view or download the uninterpreted source code file.

    1 /*************************************************
    2 *      Perl-Compatible Regular Expressions       *
    3 *************************************************/
    4 
    5 /* This file contains character tables that are used when no external tables
    6 are passed to PCRE by the application that calls it. The tables are used only
    7 for characters whose code values are less than 256.
    8 
    9 This is a default version of the tables that assumes ASCII encoding. A program
   10 called dftables (which is distributed with PCRE) can be used to build
   11 alternative versions of this file. This is necessary if you are running in an
   12 EBCDIC environment, or if you want to default to a different encoding, for
   13 example ISO-8859-1. When dftables is run, it creates these tables in the
   14 current locale. If PCRE is configured with --enable-rebuild-chartables, this
   15 happens automatically.
   16 
   17 The following #includes are present because without them gcc 4.x may remove the
   18 array definition from the final binary if PCRE is built into a static library
   19 and dead code stripping is activated. This leads to link errors. Pulling in the
   20 header ensures that the array gets flagged as "someone outside this compilation
   21 unit might reference this" and so it will always be supplied to the linker. */
   22 
   23 #ifdef HAVE_CONFIG_H
   24 #include "config.h"
   25 #endif
   26 
   27 #include "pcre_internal.h"
   28 
   29 const pcre_uint8 PRIV(default_tables)[] = {
   30 
   31 /* This table is a lower casing table. */
   32 
   33     0,  1,  2,  3,  4,  5,  6,  7,
   34     8,  9, 10, 11, 12, 13, 14, 15,
   35    16, 17, 18, 19, 20, 21, 22, 23,
   36    24, 25, 26, 27, 28, 29, 30, 31,
   37    32, 33, 34, 35, 36, 37, 38, 39,
   38    40, 41, 42, 43, 44, 45, 46, 47,
   39    48, 49, 50, 51, 52, 53, 54, 55,
   40    56, 57, 58, 59, 60, 61, 62, 63,
   41    64, 97, 98, 99,100,101,102,103,
   42   104,105,106,107,108,109,110,111,
   43   112,113,114,115,116,117,118,119,
   44   120,121,122, 91, 92, 93, 94, 95,
   45    96, 97, 98, 99,100,101,102,103,
   46   104,105,106,107,108,109,110,111,
   47   112,113,114,115,116,117,118,119,
   48   120,121,122,123,124,125,126,127,
   49   128,129,130,131,132,133,134,135,
   50   136,137,138,139,140,141,142,143,
   51   144,145,146,147,148,149,150,151,
   52   152,153,154,155,156,157,158,159,
   53   160,161,162,163,164,165,166,167,
   54   168,169,170,171,172,173,174,175,
   55   176,177,178,179,180,181,182,183,
   56   184,185,186,187,188,189,190,191,
   57   192,193,194,195,196,197,198,199,
   58   200,201,202,203,204,205,206,207,
   59   208,209,210,211,212,213,214,215,
   60   216,217,218,219,220,221,222,223,
   61   224,225,226,227,228,229,230,231,
   62   232,233,234,235,236,237,238,239,
   63   240,241,242,243,244,245,246,247,
   64   248,249,250,251,252,253,254,255,
   65 
   66 /* This table is a case flipping table. */
   67 
   68     0,  1,  2,  3,  4,  5,  6,  7,
   69     8,  9, 10, 11, 12, 13, 14, 15,
   70    16, 17, 18, 19, 20, 21, 22, 23,
   71    24, 25, 26, 27, 28, 29, 30, 31,
   72    32, 33, 34, 35, 36, 37, 38, 39,
   73    40, 41, 42, 43, 44, 45, 46, 47,
   74    48, 49, 50, 51, 52, 53, 54, 55,
   75    56, 57, 58, 59, 60, 61, 62, 63,
   76    64, 97, 98, 99,100,101,102,103,
   77   104,105,106,107,108,109,110,111,
   78   112,113,114,115,116,117,118,119,
   79   120,121,122, 91, 92, 93, 94, 95,
   80    96, 65, 66, 67, 68, 69, 70, 71,
   81    72, 73, 74, 75, 76, 77, 78, 79,
   82    80, 81, 82, 83, 84, 85, 86, 87,
   83    88, 89, 90,123,124,125,126,127,
   84   128,129,130,131,132,133,134,135,
   85   136,137,138,139,140,141,142,143,
   86   144,145,146,147,148,149,150,151,
   87   152,153,154,155,156,157,158,159,
   88   160,161,162,163,164,165,166,167,
   89   168,169,170,171,172,173,174,175,
   90   176,177,178,179,180,181,182,183,
   91   184,185,186,187,188,189,190,191,
   92   192,193,194,195,196,197,198,199,
   93   200,201,202,203,204,205,206,207,
   94   208,209,210,211,212,213,214,215,
   95   216,217,218,219,220,221,222,223,
   96   224,225,226,227,228,229,230,231,
   97   232,233,234,235,236,237,238,239,
   98   240,241,242,243,244,245,246,247,
   99   248,249,250,251,252,253,254,255,
  100 
  101 /* This table contains bit maps for various character classes. Each map is 32
  102 bytes long and the bits run from the least significant end of each byte. The
  103 classes that have their own maps are: space, xdigit, digit, upper, lower, word,
  104 graph, print, punct, and cntrl. Other classes are built from combinations. */
  105 
  106   0x00,0x3e,0x00,0x00,0x01,0x00,0x00,0x00,
  107   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  108   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  109   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  110 
  111   0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x03,
  112   0x7e,0x00,0x00,0x00,0x7e,0x00,0x00,0x00,
  113   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  114   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  115 
  116   0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x03,
  117   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  118   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  119   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  120 
  121   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  122   0xfe,0xff,0xff,0x07,0x00,0x00,0x00,0x00,
  123   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  124   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  125 
  126   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  127   0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0x07,
  128   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  129   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  130 
  131   0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x03,
  132   0xfe,0xff,0xff,0x87,0xfe,0xff,0xff,0x07,
  133   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  134   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  135 
  136   0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,
  137   0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
  138   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  139   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  140 
  141   0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,
  142   0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
  143   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  144   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  145 
  146   0x00,0x00,0x00,0x00,0xfe,0xff,0x00,0xfc,
  147   0x01,0x00,0x00,0xf8,0x01,0x00,0x00,0x78,
  148   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  149   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  150 
  151   0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,
  152   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
  153   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  154   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
  155 
  156 /* This table identifies various classes of character by individual bits:
  157   0x01   white space character
  158   0x02   letter
  159   0x04   decimal digit
  160   0x08   hexadecimal digit
  161   0x10   alphanumeric or '_'
  162   0x80   regular expression metacharacter or binary zero
  163 */
  164 
  165   0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*   0-  7 */
  166   0x00,0x01,0x01,0x01,0x01,0x01,0x00,0x00, /*   8- 15 */
  167   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*  16- 23 */
  168   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*  24- 31 */
  169   0x01,0x00,0x00,0x00,0x80,0x00,0x00,0x00, /*    - '  */
  170   0x80,0x80,0x80,0x80,0x00,0x00,0x80,0x00, /*  ( - /  */
  171   0x1c,0x1c,0x1c,0x1c,0x1c,0x1c,0x1c,0x1c, /*  0 - 7  */
  172   0x1c,0x1c,0x00,0x00,0x00,0x00,0x00,0x80, /*  8 - ?  */
  173   0x00,0x1a,0x1a,0x1a,0x1a,0x1a,0x1a,0x12, /*  @ - G  */
  174   0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, /*  H - O  */
  175   0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, /*  P - W  */
  176   0x12,0x12,0x12,0x80,0x80,0x00,0x80,0x10, /*  X - _  */
  177   0x00,0x1a,0x1a,0x1a,0x1a,0x1a,0x1a,0x12, /*  ` - g  */
  178   0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, /*  h - o  */
  179   0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, /*  p - w  */
  180   0x12,0x12,0x12,0x80,0x80,0x00,0x00,0x00, /*  x -127 */
  181   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 128-135 */
  182   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 136-143 */
  183   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 144-151 */
  184   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 152-159 */
  185   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 160-167 */
  186   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 168-175 */
  187   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 176-183 */
  188   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 184-191 */
  189   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 192-199 */
  190   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 200-207 */
  191   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 208-215 */
  192   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 216-223 */
  193   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 224-231 */
  194   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 232-239 */
  195   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 240-247 */
  196   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};/* 248-255 */
  197 
  198 /* End of pcre_chartables.c */