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 6 namespace re2 { 7 8 static const URange16 code1[] = { /* \d */ 9 { 0x30, 0x39 }, 10 }; 11 static const URange16 code2[] = { /* \s */ 12 { 0x9, 0xa }, 13 { 0xc, 0xd }, 14 { 0x20, 0x20 }, 15 }; 16 static const URange16 code3[] = { /* \w */ 17 { 0x30, 0x39 }, 18 { 0x41, 0x5a }, 19 { 0x5f, 0x5f }, 20 { 0x61, 0x7a }, 21 }; 22 const 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 }; 30 const int num_perl_groups = 6; 31 static const URange16 code4[] = { /* [:alnum:] */ 32 { 0x30, 0x39 }, 33 { 0x41, 0x5a }, 34 { 0x61, 0x7a }, 35 }; 36 static const URange16 code5[] = { /* [:alpha:] */ 37 { 0x41, 0x5a }, 38 { 0x61, 0x7a }, 39 }; 40 static const URange16 code6[] = { /* [:ascii:] */ 41 { 0x0, 0x7f }, 42 }; 43 static const URange16 code7[] = { /* [:blank:] */ 44 { 0x9, 0x9 }, 45 { 0x20, 0x20 }, 46 }; 47 static const URange16 code8[] = { /* [:cntrl:] */ 48 { 0x0, 0x1f }, 49 { 0x7f, 0x7f }, 50 }; 51 static const URange16 code9[] = { /* [:digit:] */ 52 { 0x30, 0x39 }, 53 }; 54 static const URange16 code10[] = { /* [:graph:] */ 55 { 0x21, 0x7e }, 56 }; 57 static const URange16 code11[] = { /* [:lower:] */ 58 { 0x61, 0x7a }, 59 }; 60 static const URange16 code12[] = { /* [:print:] */ 61 { 0x20, 0x7e }, 62 }; 63 static const URange16 code13[] = { /* [:punct:] */ 64 { 0x21, 0x2f }, 65 { 0x3a, 0x40 }, 66 { 0x5b, 0x60 }, 67 { 0x7b, 0x7e }, 68 }; 69 static const URange16 code14[] = { /* [:space:] */ 70 { 0x9, 0xd }, 71 { 0x20, 0x20 }, 72 }; 73 static const URange16 code15[] = { /* [:upper:] */ 74 { 0x41, 0x5a }, 75 }; 76 static const URange16 code16[] = { /* [:word:] */ 77 { 0x30, 0x39 }, 78 { 0x41, 0x5a }, 79 { 0x5f, 0x5f }, 80 { 0x61, 0x7a }, 81 }; 82 static const URange16 code17[] = { /* [:xdigit:] */ 83 { 0x30, 0x39 }, 84 { 0x41, 0x46 }, 85 { 0x61, 0x66 }, 86 }; 87 const 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 }; 117 const int num_posix_groups = 28; 118 119 } // namespace re2 120