/* Generated by re2c */ #line 1 "unicode_group_So.u--encoding-policy(ignore).re" #include #define YYCTYPE unsigned int bool scan(const YYCTYPE * start, const YYCTYPE * const limit) { __attribute__((unused)) const YYCTYPE * YYMARKER; // silence compiler warnings when YYMARKER is not used # define YYCURSOR start So: #line 13 "unicode_group_So.u--encoding-policy(ignore).c" { YYCTYPE yych; yych = *YYCURSOR; if (yych <= 0x00002FD5) { if (yych <= 0x00002125) { if (yych <= 0x00000F33) { if (yych <= 0x000006FE) { if (yych <= 0x000000B6) { if (yych <= 0x000000AD) { if (yych <= 0x000000A7) { if (yych >= 0x000000A6) goto yy4; } else { if (yych == 0x000000A9) goto yy4; } } else { if (yych <= 0x000000AF) { if (yych <= 0x000000AE) goto yy4; } else { if (yych <= 0x000000B0) goto yy4; if (yych >= 0x000000B6) goto yy4; } } } else { if (yych <= 0x000006DD) { if (yych <= 0x00000482) { if (yych >= 0x00000482) goto yy4; } else { if (yych <= 0x0000060D) goto yy2; if (yych <= 0x0000060F) goto yy4; } } else { if (yych <= 0x000006E8) { if (yych <= 0x000006DE) goto yy4; } else { if (yych <= 0x000006E9) goto yy4; if (yych >= 0x000006FD) goto yy4; } } } } else { if (yych <= 0x00000BFA) { if (yych <= 0x00000B6F) { if (yych <= 0x000007F6) { if (yych >= 0x000007F6) goto yy4; } else { if (yych == 0x000009FA) goto yy4; } } else { if (yych <= 0x00000BF2) { if (yych <= 0x00000B70) goto yy4; } else { if (yych != 0x00000BF9) goto yy4; } } } else { if (yych <= 0x00000F00) { if (yych <= 0x00000C7F) { if (yych >= 0x00000C7F) goto yy4; } else { if (yych == 0x00000D79) goto yy4; } } else { if (yych <= 0x00000F17) { if (yych <= 0x00000F03) goto yy4; if (yych >= 0x00000F13) goto yy4; } else { if (yych <= 0x00000F19) goto yy2; if (yych <= 0x00000F1F) goto yy4; } } } } } else { if (yych <= 0x0000193F) { if (yych <= 0x00000FCD) { if (yych <= 0x00000F38) { if (yych <= 0x00000F35) { if (yych <= 0x00000F34) goto yy4; } else { if (yych != 0x00000F37) goto yy4; } } else { if (yych <= 0x00000FC5) { if (yych >= 0x00000FBE) goto yy4; } else { if (yych <= 0x00000FC6) goto yy2; if (yych <= 0x00000FCC) goto yy4; } } } else { if (yych <= 0x0000109F) { if (yych <= 0x00000FD4) { if (yych <= 0x00000FCF) goto yy4; } else { if (yych <= 0x00000FD8) goto yy4; if (yych >= 0x0000109E) goto yy4; } } else { if (yych <= 0x00001360) { if (yych >= 0x00001360) goto yy4; } else { if (yych <= 0x0000138F) goto yy2; if (yych <= 0x00001399) goto yy4; } } } } else { if (yych <= 0x00002102) { if (yych <= 0x00001B6A) { if (yych <= 0x000019DD) { if (yych <= 0x00001940) goto yy4; } else { if (yych <= 0x000019FF) goto yy4; if (yych >= 0x00001B61) goto yy4; } } else { if (yych <= 0x00001B7C) { if (yych >= 0x00001B74) goto yy4; } else { if (yych <= 0x000020FF) goto yy2; if (yych <= 0x00002101) goto yy4; } } } else { if (yych <= 0x00002114) { if (yych <= 0x00002107) { if (yych <= 0x00002106) goto yy4; } else { if (yych <= 0x00002109) goto yy4; if (yych >= 0x00002114) goto yy4; } } else { if (yych <= 0x0000211D) { if (yych <= 0x00002115) goto yy2; if (yych <= 0x00002117) goto yy4; } else { if (yych != 0x00002124) goto yy4; } } } } } } else { if (yych <= 0x0000237C) { if (yych <= 0x000021A2) { if (yych <= 0x0000214A) { if (yych <= 0x0000212D) { if (yych <= 0x00002127) { if (yych >= 0x00002127) goto yy4; } else { if (yych == 0x00002129) goto yy4; } } else { if (yych <= 0x00002139) { if (yych <= 0x0000212E) goto yy4; } else { if (yych <= 0x0000213B) goto yy4; if (yych >= 0x0000214A) goto yy4; } } } else { if (yych <= 0x00002194) { if (yych <= 0x0000214D) { if (yych >= 0x0000214C) goto yy4; } else { if (yych == 0x0000214F) goto yy4; } } else { if (yych <= 0x0000219B) { if (yych <= 0x00002199) goto yy4; } else { if (yych != 0x000021A0) goto yy4; } } } } else { if (yych <= 0x000021D3) { if (yych <= 0x000021AE) { if (yych <= 0x000021A5) { if (yych >= 0x000021A4) goto yy4; } else { if (yych <= 0x000021A6) goto yy2; if (yych <= 0x000021AD) goto yy4; } } else { if (yych <= 0x000021CF) { if (yych <= 0x000021CD) goto yy4; } else { if (yych != 0x000021D2) goto yy4; } } } else { if (yych <= 0x0000230B) { if (yych <= 0x000021F3) { if (yych >= 0x000021D5) goto yy4; } else { if (yych <= 0x000022FF) goto yy2; if (yych <= 0x00002307) goto yy4; } } else { if (yych <= 0x00002328) { if (yych <= 0x0000231F) goto yy4; if (yych >= 0x00002322) goto yy4; } else { if (yych <= 0x0000232A) goto yy2; if (yych <= 0x0000237B) goto yy4; } } } } } else { if (yych <= 0x0000266F) { if (yych <= 0x0000249B) { if (yych <= 0x000023F3) { if (yych <= 0x000023B3) { if (yych <= 0x0000239A) goto yy4; } else { if (yych <= 0x000023DB) goto yy4; if (yych >= 0x000023E2) goto yy4; } } else { if (yych <= 0x00002426) { if (yych >= 0x00002400) goto yy4; } else { if (yych <= 0x0000243F) goto yy2; if (yych <= 0x0000244A) goto yy4; } } } else { if (yych <= 0x000025C0) { if (yych <= 0x000024FF) { if (yych <= 0x000024E9) goto yy4; } else { if (yych != 0x000025B7) goto yy4; } } else { if (yych <= 0x000025F7) { if (yych >= 0x000025C2) goto yy4; } else { if (yych <= 0x000025FF) goto yy2; if (yych <= 0x0000266E) goto yy4; } } } } else { if (yych <= 0x00002B44) { if (yych <= 0x000027BF) { if (yych <= 0x00002700) { if (yych <= 0x000026FF) goto yy4; } else { if (yych <= 0x00002767) goto yy4; if (yych >= 0x00002794) goto yy4; } } else { if (yych <= 0x000028FF) { if (yych >= 0x00002800) goto yy4; } else { if (yych <= 0x00002AFF) goto yy2; if (yych <= 0x00002B2F) goto yy4; } } } else { if (yych <= 0x00002CEA) { if (yych <= 0x00002B4F) { if (yych <= 0x00002B46) goto yy4; } else { if (yych <= 0x00002B59) goto yy4; if (yych >= 0x00002CE5) goto yy4; } } else { if (yych <= 0x00002E9A) { if (yych <= 0x00002E7F) goto yy2; if (yych <= 0x00002E99) goto yy4; } else { if (yych <= 0x00002EF3) goto yy4; if (yych >= 0x00002F00) goto yy4; } } } } } } } else { if (yych <= 0x0001D356) { if (yych <= 0x0000AA76) { if (yych <= 0x0000321E) { if (yych <= 0x00003037) { if (yych <= 0x00003011) { if (yych <= 0x00002FFB) { if (yych >= 0x00002FF0) goto yy4; } else { if (yych == 0x00003004) goto yy4; } } else { if (yych <= 0x0000301F) { if (yych <= 0x00003013) goto yy4; } else { if (yych <= 0x00003020) goto yy4; if (yych >= 0x00003036) goto yy4; } } } else { if (yych <= 0x00003195) { if (yych <= 0x0000303F) { if (yych >= 0x0000303E) goto yy4; } else { if (yych <= 0x0000318F) goto yy2; if (yych <= 0x00003191) goto yy4; } } else { if (yych <= 0x000031BF) { if (yych <= 0x0000319F) goto yy4; } else { if (yych <= 0x000031E3) goto yy4; if (yych >= 0x00003200) goto yy4; } } } } else { if (yych <= 0x000033FF) { if (yych <= 0x00003289) { if (yych <= 0x00003250) { if (yych >= 0x0000322A) goto yy4; } else { if (yych <= 0x0000325F) goto yy2; if (yych <= 0x0000327F) goto yy4; } } else { if (yych <= 0x000032BF) { if (yych <= 0x000032B0) goto yy4; } else { if (yych != 0x000032FF) goto yy4; } } } else { if (yych <= 0x0000A827) { if (yych <= 0x00004DFF) { if (yych >= 0x00004DC0) goto yy4; } else { if (yych <= 0x0000A48F) goto yy2; if (yych <= 0x0000A4C6) goto yy4; } } else { if (yych <= 0x0000A837) { if (yych <= 0x0000A82B) goto yy4; if (yych >= 0x0000A836) goto yy4; } else { if (yych == 0x0000A839) goto yy4; } } } } } else { if (yych <= 0x000101CF) { if (yych <= 0x0000FFFB) { if (yych <= 0x0000FFE4) { if (yych <= 0x0000FDFC) { if (yych <= 0x0000AA79) goto yy4; } else { if (yych <= 0x0000FDFD) goto yy4; if (yych >= 0x0000FFE4) goto yy4; } } else { if (yych <= 0x0000FFE8) { if (yych >= 0x0000FFE8) goto yy4; } else { if (yych <= 0x0000FFEC) goto yy2; if (yych <= 0x0000FFEE) goto yy4; } } } else { if (yych <= 0x0001013F) { if (yych <= 0x00010101) { if (yych <= 0x0000FFFD) goto yy4; } else { if (yych <= 0x00010102) goto yy4; if (yych >= 0x00010137) goto yy4; } } else { if (yych <= 0x00010189) { if (yych >= 0x00010179) goto yy4; } else { if (yych <= 0x0001018F) goto yy2; if (yych <= 0x0001019B) goto yy4; } } } } else { if (yych <= 0x0001D182) { if (yych <= 0x0001D126) { if (yych <= 0x0001CFFF) { if (yych <= 0x000101FC) goto yy4; } else { if (yych <= 0x0001D0F5) goto yy4; if (yych >= 0x0001D100) goto yy4; } } else { if (yych <= 0x0001D164) { if (yych >= 0x0001D129) goto yy4; } else { if (yych <= 0x0001D169) goto yy2; if (yych <= 0x0001D16C) goto yy4; } } } else { if (yych <= 0x0001D1DD) { if (yych <= 0x0001D18B) { if (yych <= 0x0001D184) goto yy4; } else { if (yych <= 0x0001D1A9) goto yy4; if (yych >= 0x0001D1AE) goto yy4; } } else { if (yych <= 0x0001D244) { if (yych <= 0x0001D1FF) goto yy2; if (yych <= 0x0001D241) goto yy4; } else { if (yych <= 0x0001D245) goto yy4; if (yych >= 0x0001D300) goto yy4; } } } } } } else { if (yych <= 0x0001F3FF) { if (yych <= 0x0001F202) { if (yych <= 0x0001F0CF) { if (yych <= 0x0001F09F) { if (yych <= 0x0001F02B) { if (yych >= 0x0001F000) goto yy4; } else { if (yych <= 0x0001F02F) goto yy2; if (yych <= 0x0001F093) goto yy4; } } else { if (yych <= 0x0001F0B0) { if (yych <= 0x0001F0AE) goto yy4; } else { if (yych <= 0x0001F0BE) goto yy4; if (yych >= 0x0001F0C1) goto yy4; } } } else { if (yych <= 0x0001F12F) { if (yych <= 0x0001F0DF) { if (yych >= 0x0001F0D1) goto yy4; } else { if (yych <= 0x0001F10F) goto yy2; if (yych <= 0x0001F12E) goto yy4; } } else { if (yych <= 0x0001F16F) { if (yych <= 0x0001F169) goto yy4; } else { if (yych <= 0x0001F19A) goto yy4; if (yych >= 0x0001F1E6) goto yy4; } } } } else { if (yych <= 0x0001F335) { if (yych <= 0x0001F24F) { if (yych <= 0x0001F23A) { if (yych >= 0x0001F210) goto yy4; } else { if (yych <= 0x0001F23F) goto yy2; if (yych <= 0x0001F248) goto yy4; } } else { if (yych <= 0x0001F2FF) { if (yych <= 0x0001F251) goto yy4; } else { if (yych <= 0x0001F320) goto yy4; if (yych >= 0x0001F330) goto yy4; } } } else { if (yych <= 0x0001F39F) { if (yych <= 0x0001F37C) { if (yych >= 0x0001F337) goto yy4; } else { if (yych <= 0x0001F37F) goto yy2; if (yych <= 0x0001F393) goto yy4; } } else { if (yych <= 0x0001F3CA) { if (yych != 0x0001F3C5) goto yy4; } else { if (yych <= 0x0001F3DF) goto yy2; if (yych <= 0x0001F3F0) goto yy4; } } } } } else { if (yych <= 0x0001F618) { if (yych <= 0x0001F54F) { if (yych <= 0x0001F4F7) { if (yych <= 0x0001F43F) { if (yych <= 0x0001F43E) goto yy4; } else { if (yych != 0x0001F441) goto yy4; } } else { if (yych <= 0x0001F4FC) { if (yych >= 0x0001F4F9) goto yy4; } else { if (yych <= 0x0001F4FF) goto yy2; if (yych <= 0x0001F53D) goto yy4; } } } else { if (yych <= 0x0001F610) { if (yych <= 0x0001F5FA) { if (yych <= 0x0001F567) goto yy4; } else { if (yych != 0x0001F600) goto yy4; } } else { if (yych <= 0x0001F615) { if (yych <= 0x0001F611) goto yy2; if (yych <= 0x0001F614) goto yy4; } else { if (yych != 0x0001F617) goto yy4; } } } } else { if (yych <= 0x0001F62D) { if (yych <= 0x0001F61F) { if (yych <= 0x0001F61A) { if (yych >= 0x0001F61A) goto yy4; } else { if (yych <= 0x0001F61B) goto yy2; if (yych <= 0x0001F61E) goto yy4; } } else { if (yych <= 0x0001F627) { if (yych <= 0x0001F625) goto yy4; } else { if (yych != 0x0001F62C) goto yy4; } } } else { if (yych <= 0x0001F644) { if (yych <= 0x0001F633) { if (yych >= 0x0001F630) goto yy4; } else { if (yych <= 0x0001F634) goto yy2; if (yych <= 0x0001F640) goto yy4; } } else { if (yych <= 0x0001F6C5) { if (yych <= 0x0001F64F) goto yy4; if (yych >= 0x0001F680) goto yy4; } else { if (yych <= 0x0001F6FF) goto yy2; if (yych <= 0x0001F773) goto yy4; } } } } } } } yy2: ++YYCURSOR; #line 13 "unicode_group_So.u--encoding-policy(ignore).re" { return YYCURSOR == limit; } #line 584 "unicode_group_So.u--encoding-policy(ignore).c" yy4: ++YYCURSOR; #line 12 "unicode_group_So.u--encoding-policy(ignore).re" { goto So; } #line 589 "unicode_group_So.u--encoding-policy(ignore).c" } #line 14 "unicode_group_So.u--encoding-policy(ignore).re" } static const unsigned int chars_So [] = {0xa6,0xa7, 0xa9,0xa9, 0xae,0xae, 0xb0,0xb0, 0xb6,0xb6, 0x482,0x482, 0x60e,0x60f, 0x6de,0x6de, 0x6e9,0x6e9, 0x6fd,0x6fe, 0x7f6,0x7f6, 0x9fa,0x9fa, 0xb70,0xb70, 0xbf3,0xbf8, 0xbfa,0xbfa, 0xc7f,0xc7f, 0xd79,0xd79, 0xf01,0xf03, 0xf13,0xf17, 0xf1a,0xf1f, 0xf34,0xf34, 0xf36,0xf36, 0xf38,0xf38, 0xfbe,0xfc5, 0xfc7,0xfcc, 0xfce,0xfcf, 0xfd5,0xfd8, 0x109e,0x109f, 0x1360,0x1360, 0x1390,0x1399, 0x1940,0x1940, 0x19de,0x19ff, 0x1b61,0x1b6a, 0x1b74,0x1b7c, 0x2100,0x2101, 0x2103,0x2106, 0x2108,0x2109, 0x2114,0x2114, 0x2116,0x2117, 0x211e,0x2123, 0x2125,0x2125, 0x2127,0x2127, 0x2129,0x2129, 0x212e,0x212e, 0x213a,0x213b, 0x214a,0x214a, 0x214c,0x214d, 0x214f,0x214f, 0x2195,0x2199, 0x219c,0x219f, 0x21a1,0x21a2, 0x21a4,0x21a5, 0x21a7,0x21ad, 0x21af,0x21cd, 0x21d0,0x21d1, 0x21d3,0x21d3, 0x21d5,0x21f3, 0x2300,0x2307, 0x230c,0x231f, 0x2322,0x2328, 0x232b,0x237b, 0x237d,0x239a, 0x23b4,0x23db, 0x23e2,0x23f3, 0x2400,0x2426, 0x2440,0x244a, 0x249c,0x24e9, 0x2500,0x25b6, 0x25b8,0x25c0, 0x25c2,0x25f7, 0x2600,0x266e, 0x2670,0x26ff, 0x2701,0x2767, 0x2794,0x27bf, 0x2800,0x28ff, 0x2b00,0x2b2f, 0x2b45,0x2b46, 0x2b50,0x2b59, 0x2ce5,0x2cea, 0x2e80,0x2e99, 0x2e9b,0x2ef3, 0x2f00,0x2fd5, 0x2ff0,0x2ffb, 0x3004,0x3004, 0x3012,0x3013, 0x3020,0x3020, 0x3036,0x3037, 0x303e,0x303f, 0x3190,0x3191, 0x3196,0x319f, 0x31c0,0x31e3, 0x3200,0x321e, 0x322a,0x3250, 0x3260,0x327f, 0x328a,0x32b0, 0x32c0,0x32fe, 0x3300,0x33ff, 0x4dc0,0x4dff, 0xa490,0xa4c6, 0xa828,0xa82b, 0xa836,0xa837, 0xa839,0xa839, 0xaa77,0xaa79, 0xfdfd,0xfdfd, 0xffe4,0xffe4, 0xffe8,0xffe8, 0xffed,0xffee, 0xfffc,0xfffd, 0x10102,0x10102, 0x10137,0x1013f, 0x10179,0x10189, 0x10190,0x1019b, 0x101d0,0x101fc, 0x1d000,0x1d0f5, 0x1d100,0x1d126, 0x1d129,0x1d164, 0x1d16a,0x1d16c, 0x1d183,0x1d184, 0x1d18c,0x1d1a9, 0x1d1ae,0x1d1dd, 0x1d200,0x1d241, 0x1d245,0x1d245, 0x1d300,0x1d356, 0x1f000,0x1f02b, 0x1f030,0x1f093, 0x1f0a0,0x1f0ae, 0x1f0b1,0x1f0be, 0x1f0c1,0x1f0cf, 0x1f0d1,0x1f0df, 0x1f110,0x1f12e, 0x1f130,0x1f169, 0x1f170,0x1f19a, 0x1f1e6,0x1f202, 0x1f210,0x1f23a, 0x1f240,0x1f248, 0x1f250,0x1f251, 0x1f300,0x1f320, 0x1f330,0x1f335, 0x1f337,0x1f37c, 0x1f380,0x1f393, 0x1f3a0,0x1f3c4, 0x1f3c6,0x1f3ca, 0x1f3e0,0x1f3f0, 0x1f400,0x1f43e, 0x1f440,0x1f440, 0x1f442,0x1f4f7, 0x1f4f9,0x1f4fc, 0x1f500,0x1f53d, 0x1f550,0x1f567, 0x1f5fb,0x1f5ff, 0x1f601,0x1f610, 0x1f612,0x1f614, 0x1f616,0x1f616, 0x1f618,0x1f618, 0x1f61a,0x1f61a, 0x1f61c,0x1f61e, 0x1f620,0x1f625, 0x1f628,0x1f62b, 0x1f62d,0x1f62d, 0x1f630,0x1f633, 0x1f635,0x1f640, 0x1f645,0x1f64f, 0x1f680,0x1f6c5, 0x1f700,0x1f773, 0x0,0x0}; static unsigned int encode_utf32 (const unsigned int * ranges, unsigned int ranges_count, unsigned int * s) { unsigned int * const s_start = s; for (unsigned int i = 0; i < ranges_count; i += 2) for (unsigned int j = ranges[i]; j <= ranges[i + 1]; ++j) *s++ = j; return s - s_start; } int main () { YYCTYPE * buffer_So = new YYCTYPE [4399]; unsigned int buffer_len = encode_utf32 (chars_So, sizeof (chars_So) / sizeof (unsigned int), buffer_So); if (!scan (reinterpret_cast (buffer_So), reinterpret_cast (buffer_So + buffer_len))) printf("test 'So' failed\n"); delete [] buffer_So; return 0; }