cpp_re.inc
来自「Boost provides free peer-reviewed portab」· INC 代码 · 共 2,356 行 · 第 1/5 页
INC
2,356 行
/* Generated by re2c 0.13.2 on Fri Apr 04 14:19:15 2008 */#line 1 "cpp.re"/*============================================================================= Boost.Wave: A Standard compliant C++ preprocessor library Copyright (c) 2001 Daniel C. Nuffer Copyright (c) 2001-2008 Hartmut Kaiser. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) This is a lexer conforming to the Standard with a few exceptions. So it does allow the '$' to be part of identifiers. If you need strict Standards conforming behaviour, please include the lexer definition provided in the file strict_cpp.re. TODO: handle errors better.=============================================================================*/#line 40 "cpp.re"#line 25 "cpp_re.inc"{ YYCTYPE yych; unsigned int yyaccept = 0; static const unsigned char yybm[] = { /* table 1 .. 8: 0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, 32, 58, 58, 64, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 58, 58, 50, 58, 62, 58, 58, 56, 58, 58, 154, 58, 58, 58, 58, 58, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 58, 58, 58, 58, 42, 56, 58, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 58, 57, 58, 58, 62, 58, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, 58, /* table 9 .. 12: 256 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 0, 48, 48, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 32, 0, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 32, 32, 32, 32, 32, 128, 32, 96, 96, 96, 96, 96, 96, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 0, 32, 32, 32, 32, 96, 96, 96, 96, 96, 96, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, }; if ((YYLIMIT - YYCURSOR) < 17) YYFILL(17); yych = *YYCURSOR; switch (yych) { case 0x00: goto yy88; case 0x01: case 0x02: case 0x03: case 0x04: case 0x05: case 0x06: case 0x07: case 0x08: case 0x0E: case 0x0F: case 0x10: case 0x11: case 0x12: case 0x13: case 0x14: case 0x15: case 0x16: case 0x17: case 0x18: case 0x19: case 0x1A: case 0x1B: case 0x1C: case 0x1D: case 0x1E: case 0x1F: goto yy91; case 0x09: case 0x0B: case 0x0C: goto yy82; case 0x0A: goto yy85; case 0x0D: goto yy87; case ' ': goto yy84; case '!': goto yy68; case '"': goto yy81; case '#': goto yy45; case '$': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'M': case 'N': case 'O': case 'P': case 'Q': case 'R': case 'S': case 'T': case 'U': case 'V': case 'W': case 'X': case 'Y': case 'Z': case 'h': case 'j': case 'k': case 'q': case 'y': case 'z': goto yy76; case '%': goto yy37; case '&': goto yy62; case '\'': goto yy80; case '(': goto yy47; case ')': goto yy49; case '*': goto yy57; case '+': goto yy53; case ',': goto yy74; case '-': goto yy55; case '.': goto yy4; case '/': goto yy2; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy6; case ':': goto yy43; case ';': goto yy51; case '<': goto yy33; case '=': goto yy70; case '>': goto yy72; case '?': goto yy31; case 'L': goto yy77; case '[': goto yy39; case '\\': goto yy78; case ']': goto yy41; case '^': goto yy59; case '_': goto yy28; case 'a': goto yy8; case 'b': goto yy10; case 'c': goto yy11; case 'd': goto yy12; case 'e': goto yy13; case 'f': goto yy14; case 'g': goto yy15; case 'i': goto yy16; case 'l': goto yy17; case 'm': goto yy18; case 'n': goto yy19; case 'o': goto yy20; case 'p': goto yy21; case 'r': goto yy22; case 's': goto yy23; case 't': goto yy24; case 'u': goto yy25; case 'v': goto yy26; case 'w': goto yy27; case 'x': goto yy61; case '{': goto yy29; case '|': goto yy64; case '}': goto yy35; case '~': goto yy66; default: goto yy90; }yy2: ++YYCURSOR; if ((yych = *YYCURSOR) <= '.') { if (yych == '*') goto yy922; } else { if (yych <= '/') goto yy920; if (yych == '=') goto yy918; }#line 178 "cpp.re" { BOOST_WAVE_RET(T_DIVIDE); }#line 238 "cpp_re.inc"yy4: yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); if (yych <= '-') { if (yych == '*') goto yy912; } else { if (yych <= '.') goto yy914; if (yych <= '/') goto yy5; if (yych <= '9') goto yy915; }yy5:#line 164 "cpp.re" { BOOST_WAVE_RET(T_DOT); }#line 252 "cpp_re.inc"yy6: ++YYCURSOR;yy7:#line 45 "cpp.re" { goto pp_number; }#line 258 "cpp_re.inc"yy8: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'r') { if (yych == 'n') goto yy898; goto yy195; } else { if (yych <= 's') goto yy899; if (yych == 'u') goto yy900; goto yy195; }yy9:#line 243 "cpp.re" { BOOST_WAVE_RET(T_IDENTIFIER); }#line 273 "cpp_re.inc"yy10: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'n') { if (yych == 'i') goto yy880; goto yy195; } else { if (yych <= 'o') goto yy881; if (yych == 'r') goto yy882; goto yy195; }yy11: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); switch (yych) { case 'a': goto yy842; case 'h': goto yy843; case 'l': goto yy844; case 'o': goto yy845; default: goto yy195; }yy12: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'n') { if (yych == 'e') goto yy811; goto yy195; } else { if (yych <= 'o') goto yy812; if (yych == 'y') goto yy814; goto yy195; }yy13: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'm') { if (yych == 'l') goto yy786; goto yy195; } else { if (yych <= 'n') goto yy787; if (yych == 'x') goto yy788; goto yy195; }yy14: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); switch (yych) { case 'a': goto yy767; case 'l': goto yy768; case 'o': goto yy769; case 'r': goto yy770; default: goto yy195; }yy15: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'o') goto yy763; goto yy195;yy16: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'l') { if (yych == 'f') goto yy747; goto yy195; } else { if (yych <= 'm') goto yy749; if (yych <= 'n') goto yy750; goto yy195; }yy17: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'o') goto yy743; goto yy195;yy18: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'u') goto yy736; goto yy195;yy19: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'd') { if (yych == 'a') goto yy717; goto yy195; } else { if (yych <= 'e') goto yy718; if (yych == 'o') goto yy719; goto yy195; }yy20: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'p') goto yy703; if (yych == 'r') goto yy704; goto yy195;yy21: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'r') goto yy682; if (yych == 'u') goto yy683; goto yy195;yy22: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'e') goto yy654; goto yy195;yy23: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 's') { if (yych <= 'g') goto yy195; if (yych <= 'h') goto yy615; if (yych <= 'i') goto yy616; goto yy195; } else { if (yych <= 't') goto yy617; if (yych == 'w') goto yy618; goto yy195; }yy24: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych <= 'h') { if (yych == 'e') goto yy578; if (yych <= 'g') goto yy195; goto yy579; } else { if (yych <= 'r') { if (yych <= 'q') goto yy195; goto yy580; } else { if (yych == 'y') goto yy581; goto yy195; } }yy25: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'n') goto yy561; if (yych == 's') goto yy562; goto yy195;yy26: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'i') goto yy543; if (yych == 'o') goto yy544; goto yy195;yy27: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); if (yych == 'c') goto yy531; if (yych == 'h') goto yy532; goto yy195;yy28: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); switch (yych) { case '_': goto yy442; case 'a': goto yy443; case 'b': goto yy444; case 'c': goto yy445; case 'd': goto yy446; case 'f': goto yy447; case 'i': goto yy448; case 's': goto yy449; default: goto yy195; }yy29: ++YYCURSOR;#line 128 "cpp.re" { BOOST_WAVE_RET(T_LEFTBRACE); }#line 446 "cpp_re.inc"yy31: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); if (yych == '?') goto yy407;yy32:#line 153 "cpp.re" { BOOST_WAVE_RET(T_QUESTION_MARK); }#line 454 "cpp_re.inc"yy33: ++YYCURSOR; if ((yych = *YYCURSOR) <= ':') { if (yych == '%') goto yy403; if (yych >= ':') goto yy401; } else { if (yych <= ';') goto yy34; if (yych <= '<') goto yy399; if (yych <= '=') goto yy397; }yy34:#line 194 "cpp.re" { BOOST_WAVE_RET(T_LESS); }#line 468 "cpp_re.inc"yy35: ++YYCURSOR;#line 131 "cpp.re" { BOOST_WAVE_RET(T_RIGHTBRACE); }#line 473 "cpp_re.inc"
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?