File:  [ELWIX - Embedded LightWeight unIX -] / embedaddon / pcre / pcre_chartables.c.dist
Revision 1.1.1.3 (vendor branch): download - view: text, annotated - select for diffs - revision graph
Sun Jun 15 19:46:04 2014 UTC (9 years, 11 months ago) by misho
Branches: pcre, MAIN
CVS tags: v8_34, HEAD
pcre 8.34

    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 */

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>