1// GENERATED BY make_perl_groups.pl; DO NOT EDIT.
2// make_perl_groups.pl >perl_groups.cc
3
4#include "re2/unicode_groups.h"
5
6namespace re2 {
7
8static const URange16 code1[] = { /* \d */
9 { 0x30, 0x39 },
10};
11static const URange16 code2[] = { /* \s */
12 { 0x9, 0xa },
13 { 0xc, 0xd },
14 { 0x20, 0x20 },
15};
16static const URange16 code3[] = { /* \w */
17 { 0x30, 0x39 },
18 { 0x41, 0x5a },
19 { 0x5f, 0x5f },
20 { 0x61, 0x7a },
21};
22const UGroup perl_groups[] = {
23 { "\\d", +1, code1, 1 },
24 { "\\D", -1, code1, 1 },
25 { "\\s", +1, code2, 3 },
26 { "\\S", -1, code2, 3 },
27 { "\\w", +1, code3, 4 },
28 { "\\W", -1, code3, 4 },
29};
30const int num_perl_groups = 6;
31static const URange16 code4[] = { /* [:alnum:] */
32 { 0x30, 0x39 },
33 { 0x41, 0x5a },
34 { 0x61, 0x7a },
35};
36static const URange16 code5[] = { /* [:alpha:] */
37 { 0x41, 0x5a },
38 { 0x61, 0x7a },
39};
40static const URange16 code6[] = { /* [:ascii:] */
41 { 0x0, 0x7f },
42};
43static const URange16 code7[] = { /* [:blank:] */
44 { 0x9, 0x9 },
45 { 0x20, 0x20 },
46};
47static const URange16 code8[] = { /* [:cntrl:] */
48 { 0x0, 0x1f },
49 { 0x7f, 0x7f },
50};
51static const URange16 code9[] = { /* [:digit:] */
52 { 0x30, 0x39 },
53};
54static const URange16 code10[] = { /* [:graph:] */
55 { 0x21, 0x7e },
56};
57static const URange16 code11[] = { /* [:lower:] */
58 { 0x61, 0x7a },
59};
60static const URange16 code12[] = { /* [:print:] */
61 { 0x20, 0x7e },
62};
63static const URange16 code13[] = { /* [:punct:] */
64 { 0x21, 0x2f },
65 { 0x3a, 0x40 },
66 { 0x5b, 0x60 },
67 { 0x7b, 0x7e },
68};
69static const URange16 code14[] = { /* [:space:] */
70 { 0x9, 0xd },
71 { 0x20, 0x20 },
72};
73static const URange16 code15[] = { /* [:upper:] */
74 { 0x41, 0x5a },
75};
76static const URange16 code16[] = { /* [:word:] */
77 { 0x30, 0x39 },
78 { 0x41, 0x5a },
79 { 0x5f, 0x5f },
80 { 0x61, 0x7a },
81};
82static const URange16 code17[] = { /* [:xdigit:] */
83 { 0x30, 0x39 },
84 { 0x41, 0x46 },
85 { 0x61, 0x66 },
86};
87const UGroup posix_groups[] = {
88 { "[:alnum:]", +1, code4, 3 },
89 { "[:^alnum:]", -1, code4, 3 },
90 { "[:alpha:]", +1, code5, 2 },
91 { "[:^alpha:]", -1, code5, 2 },
92 { "[:ascii:]", +1, code6, 1 },
93 { "[:^ascii:]", -1, code6, 1 },
94 { "[:blank:]", +1, code7, 2 },
95 { "[:^blank:]", -1, code7, 2 },
96 { "[:cntrl:]", +1, code8, 2 },
97 { "[:^cntrl:]", -1, code8, 2 },
98 { "[:digit:]", +1, code9, 1 },
99 { "[:^digit:]", -1, code9, 1 },
100 { "[:graph:]", +1, code10, 1 },
101 { "[:^graph:]", -1, code10, 1 },
102 { "[:lower:]", +1, code11, 1 },
103 { "[:^lower:]", -1, code11, 1 },
104 { "[:print:]", +1, code12, 1 },
105 { "[:^print:]", -1, code12, 1 },
106 { "[:punct:]", +1, code13, 4 },
107 { "[:^punct:]", -1, code13, 4 },
108 { "[:space:]", +1, code14, 2 },
109 { "[:^space:]", -1, code14, 2 },
110 { "[:upper:]", +1, code15, 1 },
111 { "[:^upper:]", -1, code15, 1 },
112 { "[:word:]", +1, code16, 4 },
113 { "[:^word:]", -1, code16, 4 },
114 { "[:xdigit:]", +1, code17, 3 },
115 { "[:^xdigit:]", -1, code17, 3 },
116};
117const int num_posix_groups = 28;
118
119} // namespace re2
120