Update to PCRE 7.2
[platform/upstream/glib.git] / glib / pcre / pcre_chartables.c
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 #include is present because without it 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 #include "pcre_internal.h"
24
25 const unsigned char _pcre_default_tables[] = {
26
27 /* This table is a lower casing table. */
28
29     0,  1,  2,  3,  4,  5,  6,  7,
30     8,  9, 10, 11, 12, 13, 14, 15,
31    16, 17, 18, 19, 20, 21, 22, 23,
32    24, 25, 26, 27, 28, 29, 30, 31,
33    32, 33, 34, 35, 36, 37, 38, 39,
34    40, 41, 42, 43, 44, 45, 46, 47,
35    48, 49, 50, 51, 52, 53, 54, 55,
36    56, 57, 58, 59, 60, 61, 62, 63,
37    64, 97, 98, 99,100,101,102,103,
38   104,105,106,107,108,109,110,111,
39   112,113,114,115,116,117,118,119,
40   120,121,122, 91, 92, 93, 94, 95,
41    96, 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,123,124,125,126,127,
45   128,129,130,131,132,133,134,135,
46   136,137,138,139,140,141,142,143,
47   144,145,146,147,148,149,150,151,
48   152,153,154,155,156,157,158,159,
49   160,161,162,163,164,165,166,167,
50   168,169,170,171,172,173,174,175,
51   176,177,178,179,180,181,182,183,
52   184,185,186,187,188,189,190,191,
53   192,193,194,195,196,197,198,199,
54   200,201,202,203,204,205,206,207,
55   208,209,210,211,212,213,214,215,
56   216,217,218,219,220,221,222,223,
57   224,225,226,227,228,229,230,231,
58   232,233,234,235,236,237,238,239,
59   240,241,242,243,244,245,246,247,
60   248,249,250,251,252,253,254,255,
61
62 /* This table is a case flipping table. */
63
64     0,  1,  2,  3,  4,  5,  6,  7,
65     8,  9, 10, 11, 12, 13, 14, 15,
66    16, 17, 18, 19, 20, 21, 22, 23,
67    24, 25, 26, 27, 28, 29, 30, 31,
68    32, 33, 34, 35, 36, 37, 38, 39,
69    40, 41, 42, 43, 44, 45, 46, 47,
70    48, 49, 50, 51, 52, 53, 54, 55,
71    56, 57, 58, 59, 60, 61, 62, 63,
72    64, 97, 98, 99,100,101,102,103,
73   104,105,106,107,108,109,110,111,
74   112,113,114,115,116,117,118,119,
75   120,121,122, 91, 92, 93, 94, 95,
76    96, 65, 66, 67, 68, 69, 70, 71,
77    72, 73, 74, 75, 76, 77, 78, 79,
78    80, 81, 82, 83, 84, 85, 86, 87,
79    88, 89, 90,123,124,125,126,127,
80   128,129,130,131,132,133,134,135,
81   136,137,138,139,140,141,142,143,
82   144,145,146,147,148,149,150,151,
83   152,153,154,155,156,157,158,159,
84   160,161,162,163,164,165,166,167,
85   168,169,170,171,172,173,174,175,
86   176,177,178,179,180,181,182,183,
87   184,185,186,187,188,189,190,191,
88   192,193,194,195,196,197,198,199,
89   200,201,202,203,204,205,206,207,
90   208,209,210,211,212,213,214,215,
91   216,217,218,219,220,221,222,223,
92   224,225,226,227,228,229,230,231,
93   232,233,234,235,236,237,238,239,
94   240,241,242,243,244,245,246,247,
95   248,249,250,251,252,253,254,255,
96
97 /* This table contains bit maps for various character classes. Each map is 32
98 bytes long and the bits run from the least significant end of each byte. The
99 classes that have their own maps are: space, xdigit, digit, upper, lower, word,
100 graph, print, punct, and cntrl. Other classes are built from combinations. */
101
102   0x00,0x3e,0x00,0x00,0x01,0x00,0x00,0x00,
103   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
104   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
105   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
106
107   0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x03,
108   0x7e,0x00,0x00,0x00,0x7e,0x00,0x00,0x00,
109   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
110   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
111
112   0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x03,
113   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
114   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
115   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
116
117   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
118   0xfe,0xff,0xff,0x07,0x00,0x00,0x00,0x00,
119   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
120   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
121
122   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
123   0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0x07,
124   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
125   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
126
127   0x00,0x00,0x00,0x00,0x00,0x00,0xff,0x03,
128   0xfe,0xff,0xff,0x87,0xfe,0xff,0xff,0x07,
129   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
130   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
131
132   0x00,0x00,0x00,0x00,0xfe,0xff,0xff,0xff,
133   0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
134   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
135   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
136
137   0x00,0x00,0x00,0x00,0xff,0xff,0xff,0xff,
138   0xff,0xff,0xff,0xff,0xff,0xff,0xff,0x7f,
139   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
140   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
141
142   0x00,0x00,0x00,0x00,0xfe,0xff,0x00,0xfc,
143   0x01,0x00,0x00,0xf8,0x01,0x00,0x00,0x78,
144   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
145   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
146
147   0xff,0xff,0xff,0xff,0x00,0x00,0x00,0x00,
148   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x80,
149   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
150   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00,
151
152 /* This table identifies various classes of character by individual bits:
153   0x01   white space character
154   0x02   letter
155   0x04   decimal digit
156   0x08   hexadecimal digit
157   0x10   alphanumeric or '_'
158   0x80   regular expression metacharacter or binary zero
159 */
160
161   0x80,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*   0-  7 */
162   0x00,0x01,0x01,0x00,0x01,0x01,0x00,0x00, /*   8- 15 */
163   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*  16- 23 */
164   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /*  24- 31 */
165   0x01,0x00,0x00,0x00,0x80,0x00,0x00,0x00, /*    - '  */
166   0x80,0x80,0x80,0x80,0x00,0x00,0x80,0x00, /*  ( - /  */
167   0x1c,0x1c,0x1c,0x1c,0x1c,0x1c,0x1c,0x1c, /*  0 - 7  */
168   0x1c,0x1c,0x00,0x00,0x00,0x00,0x00,0x80, /*  8 - ?  */
169   0x00,0x1a,0x1a,0x1a,0x1a,0x1a,0x1a,0x12, /*  @ - G  */
170   0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, /*  H - O  */
171   0x12,0x12,0x12,0x12,0x12,0x12,0x12,0x12, /*  P - W  */
172   0x12,0x12,0x12,0x80,0x80,0x00,0x80,0x10, /*  X - _  */
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,0x00,0x00, /*  x -127 */
177   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 128-135 */
178   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 136-143 */
179   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 144-151 */
180   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 152-159 */
181   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 160-167 */
182   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 168-175 */
183   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 176-183 */
184   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 184-191 */
185   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 192-199 */
186   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 200-207 */
187   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 208-215 */
188   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 216-223 */
189   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 224-231 */
190   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 232-239 */
191   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00, /* 240-247 */
192   0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00};/* 248-255 */
193
194 /* End of pcre_chartables.c */