/* Generated by re2c 2.2 */ #line 1 "ext/rbs_extension/lexer.re" #include "rbs_extension.h" token rbsparser_next_token(lexstate *state) { lexstate backup; start: backup = *state; #line 13 "ext/rbs_extension/lexer.c" { unsigned int yych; unsigned int yyaccept = 0; yych = peek(state); switch (yych) { case 0x00000000: goto yy2; case '\t': case '\n': case ' ': goto yy6; case '!': goto yy9; case '"': goto yy11; case '#': goto yy12; case '$': goto yy15; case '%': goto yy16; case '&': goto yy17; case '\'': goto yy19; case '(': goto yy20; case ')': goto yy22; case '*': goto yy24; case '+': goto yy26; case ',': goto yy27; case '-': goto yy29; case '.': goto yy30; case '/': case '~': goto yy32; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy33; case ':': goto yy36; case '<': goto yy38; case '=': goto yy40; case '>': goto yy42; case '?': goto yy43; case '@': goto yy45; case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': 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': goto yy46; case '[': goto yy49; case ']': goto yy51; case '^': goto yy53; case '_': goto yy55; case '`': goto yy57; case 'a': goto yy59; case 'b': goto yy61; case 'c': goto yy62; case 'd': goto yy63; case 'e': goto yy64; case 'f': goto yy65; case 'g': case 'h': case 'j': case 'k': case 'l': case 'q': case 'r': case 'w': case 'x': case 'y': case 'z': goto yy66; case 'i': goto yy68; case 'm': goto yy69; case 'n': goto yy70; case 'o': goto yy71; case 'p': goto yy72; case 's': goto yy73; case 't': goto yy74; case 'u': goto yy75; case 'v': goto yy76; case '{': goto yy77; case '|': goto yy79; case '}': goto yy81; default: goto yy4; } yy2: skip(state); #line 138 "ext/rbs_extension/lexer.re" { return next_token(state, pEOF); } #line 121 "ext/rbs_extension/lexer.c" yy4: skip(state); yy5: #line 139 "ext/rbs_extension/lexer.re" { return next_token(state, ErrorToken); } #line 127 "ext/rbs_extension/lexer.c" yy6: skip(state); yych = peek(state); if (yych <= 0x00000008) goto yy8; if (yych <= '\n') goto yy6; if (yych == ' ') goto yy6; yy8: #line 137 "ext/rbs_extension/lexer.re" { state->start = state->current; goto start; } #line 137 "ext/rbs_extension/lexer.c" yy9: skip(state); yych = peek(state); if (yych == '=') goto yy32; if (yych == '~') goto yy32; yy10: #line 49 "ext/rbs_extension/lexer.re" { return next_token(state, tOPERATOR); } #line 146 "ext/rbs_extension/lexer.c" yy11: yyaccept = 0; skip(state); backup = *state; yych = peek(state); if (yych <= 0x00000000) goto yy5; goto yy84; yy12: skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy14; if (yych != '\n') goto yy12; yy14: #line 60 "ext/rbs_extension/lexer.re" { return next_token( state, state->first_token_of_line ? tLINECOMMENT : tCOMMENT ); } #line 167 "ext/rbs_extension/lexer.c" yy15: skip(state); yych = peek(state); if (yych <= ')') { if (yych <= 0x0000001F) { if (yych <= '\n') { if (yych <= 0x00000000) goto yy5; if (yych <= 0x00000008) goto yy90; goto yy5; } else { if (yych == '\r') goto yy5; goto yy90; } } else { if (yych <= '#') { if (yych <= ' ') goto yy5; if (yych <= '"') goto yy93; goto yy90; } else { if (yych == '%') goto yy5; if (yych <= '\'') goto yy93; goto yy5; } } } else { if (yych <= 'Z') { if (yych <= '/') { if (yych == '-') goto yy90; goto yy93; } else { if (yych <= '9') goto yy90; if (yych <= '>') goto yy93; goto yy90; } } else { if (yych <= '^') { if (yych == '\\') goto yy93; goto yy5; } else { if (yych <= 'z') goto yy90; if (yych <= '}') goto yy5; if (yych <= '~') goto yy93; goto yy90; } } } yy16: yyaccept = 1; skip(state); backup = *state; yych = peek(state); if (yych == 'a') goto yy94; goto yy10; yy17: skip(state); #line 34 "ext/rbs_extension/lexer.re" { return next_token(state, pAMP); } #line 225 "ext/rbs_extension/lexer.c" yy19: yyaccept = 0; skip(state); backup = *state; yych = peek(state); if (yych <= 0x00000000) goto yy5; goto yy96; yy20: skip(state); #line 25 "ext/rbs_extension/lexer.re" { return next_token(state, pLPAREN); } #line 237 "ext/rbs_extension/lexer.c" yy22: skip(state); #line 26 "ext/rbs_extension/lexer.re" { return next_token(state, pRPAREN); } #line 242 "ext/rbs_extension/lexer.c" yy24: skip(state); yych = peek(state); if (yych == '*') goto yy101; #line 36 "ext/rbs_extension/lexer.re" { return next_token(state, pSTAR); } #line 249 "ext/rbs_extension/lexer.c" yy26: skip(state); yych = peek(state); if (yych <= '/') goto yy10; if (yych <= '9') goto yy33; if (yych == '@') goto yy32; goto yy10; yy27: skip(state); #line 31 "ext/rbs_extension/lexer.re" { return next_token(state, pCOMMA); } #line 261 "ext/rbs_extension/lexer.c" yy29: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') goto yy10; if (yych <= '9') goto yy33; goto yy10; } else { if (yych <= '>') goto yy103; if (yych == '@') goto yy32; goto yy10; } yy30: yyaccept = 2; skip(state); backup = *state; yych = peek(state); if (yych == '.') goto yy105; yy31: #line 38 "ext/rbs_extension/lexer.re" { return next_token(state, pDOT); } #line 283 "ext/rbs_extension/lexer.c" yy32: skip(state); goto yy10; yy33: skip(state); yych = peek(state); if (yych <= '/') goto yy35; if (yych <= '9') goto yy33; if (yych == '_') goto yy33; yy35: #line 52 "ext/rbs_extension/lexer.re" { return next_token(state, tINTEGER); } #line 296 "ext/rbs_extension/lexer.c" yy36: yyaccept = 3; skip(state); backup = *state; yych = peek(state); switch (yych) { case '!': goto yy106; case '"': goto yy108; case '$': goto yy110; case '%': case '&': case '/': case '^': case '`': case '|': case '~': goto yy111; case '\'': goto yy112; case '*': goto yy114; case '+': case '-': goto yy115; case ':': goto yy116; case '<': goto yy118; case '=': goto yy119; case '>': goto yy120; case '@': goto yy121; case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': case 'G': case 'H': case 'I': case 'J': case 'K': case 'L': 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 '_': case 'a': case 'b': case 'c': case 'd': case 'e': case 'f': case 'g': case 'h': case 'i': case 'j': case 'k': case 'l': 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': goto yy122; case '[': goto yy125; default: goto yy37; } yy37: #line 45 "ext/rbs_extension/lexer.re" { return next_token(state, pCOLON); } #line 381 "ext/rbs_extension/lexer.c" yy38: skip(state); yych = peek(state); if (yych <= ';') goto yy39; if (yych <= '<') goto yy32; if (yych <= '=') goto yy126; yy39: #line 47 "ext/rbs_extension/lexer.re" { return next_token(state, pLT); } #line 391 "ext/rbs_extension/lexer.c" yy40: skip(state); yych = peek(state); if (yych <= '>') { if (yych <= '<') goto yy41; if (yych <= '=') goto yy127; goto yy128; } else { if (yych == '~') goto yy32; } yy41: #line 44 "ext/rbs_extension/lexer.re" { return next_token(state, pEQ); } #line 405 "ext/rbs_extension/lexer.c" yy42: skip(state); yych = peek(state); if (yych <= '<') goto yy10; if (yych <= '>') goto yy32; goto yy10; yy43: skip(state); #line 35 "ext/rbs_extension/lexer.re" { return next_token(state, pQUESTION); } #line 416 "ext/rbs_extension/lexer.c" yy45: yyaccept = 0; skip(state); backup = *state; yych = peek(state); if (yych <= '^') { if (yych <= '?') goto yy5; if (yych <= '@') goto yy130; if (yych <= 'Z') goto yy131; goto yy5; } else { if (yych == '`') goto yy5; if (yych <= 'z') goto yy131; goto yy5; } yy46: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy46; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy48; if (yych <= 'Z') goto yy46; } else { if (yych == '`') goto yy48; if (yych <= 'z') goto yy46; } } yy48: #line 123 "ext/rbs_extension/lexer.re" { return next_token(state, tUIDENT); } #line 454 "ext/rbs_extension/lexer.c" yy49: skip(state); yych = peek(state); if (yych == ']') goto yy138; #line 27 "ext/rbs_extension/lexer.re" { return next_token(state, pLBRACKET); } #line 461 "ext/rbs_extension/lexer.c" yy51: skip(state); #line 28 "ext/rbs_extension/lexer.re" { return next_token(state, pRBRACKET); } #line 466 "ext/rbs_extension/lexer.c" yy53: skip(state); #line 33 "ext/rbs_extension/lexer.re" { return next_token(state, pHAT); } #line 471 "ext/rbs_extension/lexer.c" yy55: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy140; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy56; if (yych <= 'Z') goto yy143; } else { if (yych == '`') goto yy56; if (yych <= 'z') goto yy140; } } yy56: #line 126 "ext/rbs_extension/lexer.re" { return next_token(state, tULLIDENT); } #line 494 "ext/rbs_extension/lexer.c" yy57: yyaccept = 4; skip(state); backup = *state; yych = peek(state); if (yych <= ' ') { if (yych <= 0x00000000) goto yy58; if (yych <= 0x0000001F) goto yy146; } else { if (yych != ':') goto yy146; } yy58: #line 40 "ext/rbs_extension/lexer.re" { return next_token(state, tOPERATOR); } #line 509 "ext/rbs_extension/lexer.c" yy59: skip(state); yych = peek(state); if (yych == 'l') goto yy148; if (yych == 't') goto yy149; goto yy67; yy60: #line 122 "ext/rbs_extension/lexer.re" { return next_token(state, tLIDENT); } #line 519 "ext/rbs_extension/lexer.c" yy61: skip(state); yych = peek(state); if (yych == 'o') goto yy150; goto yy67; yy62: skip(state); yych = peek(state); if (yych == 'l') goto yy151; goto yy67; yy63: skip(state); yych = peek(state); if (yych == 'e') goto yy152; goto yy67; yy64: skip(state); yych = peek(state); if (yych == 'n') goto yy153; if (yych == 'x') goto yy154; goto yy67; yy65: skip(state); yych = peek(state); if (yych == 'a') goto yy155; goto yy67; yy66: skip(state); yych = peek(state); yy67: if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; goto yy60; } else { if (yych <= '9') goto yy66; if (yych <= '<') goto yy60; goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy60; if (yych <= 'Z') goto yy66; goto yy60; } else { if (yych == '`') goto yy60; if (yych <= 'z') goto yy66; goto yy60; } } yy68: skip(state); yych = peek(state); if (yych == 'n') goto yy156; goto yy67; yy69: skip(state); yych = peek(state); if (yych == 'o') goto yy158; goto yy67; yy70: skip(state); yych = peek(state); if (yych == 'i') goto yy159; goto yy67; yy71: skip(state); yych = peek(state); if (yych == 'u') goto yy160; goto yy67; yy72: skip(state); yych = peek(state); if (yych == 'r') goto yy161; if (yych == 'u') goto yy162; goto yy67; yy73: skip(state); yych = peek(state); if (yych == 'e') goto yy163; if (yych == 'i') goto yy164; goto yy67; yy74: skip(state); yych = peek(state); if (yych <= 'q') { if (yych == 'o') goto yy165; goto yy67; } else { if (yych <= 'r') goto yy166; if (yych == 'y') goto yy167; goto yy67; } yy75: skip(state); yych = peek(state); if (yych == 'n') goto yy168; goto yy67; yy76: skip(state); yych = peek(state); if (yych == 'o') goto yy169; goto yy67; yy77: skip(state); #line 29 "ext/rbs_extension/lexer.re" { return next_token(state, pLBRACE); } #line 627 "ext/rbs_extension/lexer.c" yy79: skip(state); #line 32 "ext/rbs_extension/lexer.re" { return next_token(state, pBAR); } #line 632 "ext/rbs_extension/lexer.c" yy81: skip(state); #line 30 "ext/rbs_extension/lexer.re" { return next_token(state, pRBRACE); } #line 637 "ext/rbs_extension/lexer.c" yy83: skip(state); yych = peek(state); yy84: if (yych <= '"') { if (yych <= 0x00000000) goto yy85; if (yych <= '!') goto yy83; goto yy86; } else { if (yych == '\\') goto yy88; goto yy83; } yy85: *state = backup; if (yyaccept <= 4) { if (yyaccept <= 2) { if (yyaccept <= 1) { if (yyaccept == 0) { goto yy5; } else { goto yy10; } } else { goto yy31; } } else { if (yyaccept == 3) { goto yy37; } else { goto yy58; } } } else { if (yyaccept <= 6) { if (yyaccept == 5) { goto yy87; } else { goto yy98; } } else { if (yyaccept == 7) { goto yy185; } else { goto yy193; } } } yy86: skip(state); yy87: #line 100 "ext/rbs_extension/lexer.re" { return next_token(state, tDQSTRING); } #line 690 "ext/rbs_extension/lexer.c" yy88: skip(state); yych = peek(state); if (yych <= '"') { if (yych <= 0x00000000) goto yy85; if (yych <= '!') goto yy83; goto yy170; } else { if (yych == '\\') goto yy88; goto yy83; } yy90: skip(state); yych = peek(state); if (yych <= ',') { if (yych <= '\f') { if (yych <= 0x00000000) goto yy92; if (yych <= 0x00000008) goto yy90; if (yych >= '\v') goto yy90; } else { if (yych <= 0x0000001F) { if (yych >= 0x0000000E) goto yy90; } else { if (yych == '#') goto yy90; } } } else { if (yych <= '>') { if (yych <= '-') goto yy90; if (yych <= '/') goto yy92; if (yych <= '9') goto yy90; } else { if (yych <= '^') { if (yych <= 'Z') goto yy90; } else { if (yych <= 'z') goto yy90; if (yych >= 0x0000007F) goto yy90; } } } yy92: #line 133 "ext/rbs_extension/lexer.re" { return next_token(state, tGIDENT); } #line 734 "ext/rbs_extension/lexer.c" yy93: skip(state); goto yy92; yy94: skip(state); yych = peek(state); if (yych <= 'Z') { if (yych <= '(') { if (yych <= '\'') goto yy85; goto yy171; } else { if (yych == '<') goto yy173; goto yy85; } } else { if (yych <= 'z') { if (yych <= '[') goto yy175; goto yy85; } else { if (yych <= '{') goto yy177; if (yych <= '|') goto yy179; goto yy85; } } yy95: skip(state); yych = peek(state); yy96: if (yych <= '\'') { if (yych <= 0x00000000) goto yy85; if (yych <= '&') goto yy95; } else { if (yych == '\\') goto yy99; goto yy95; } yy97: skip(state); yy98: #line 101 "ext/rbs_extension/lexer.re" { return next_token(state, tSQSTRING); } #line 775 "ext/rbs_extension/lexer.c" yy99: skip(state); yych = peek(state); if (yych <= '\'') { if (yych <= 0x00000000) goto yy85; if (yych <= '&') goto yy95; goto yy181; } else { if (yych == '\\') goto yy99; goto yy95; } yy101: skip(state); #line 37 "ext/rbs_extension/lexer.re" { return next_token(state, pSTAR2); } #line 791 "ext/rbs_extension/lexer.c" yy103: skip(state); #line 42 "ext/rbs_extension/lexer.re" { return next_token(state, pARROW); } #line 796 "ext/rbs_extension/lexer.c" yy105: skip(state); yych = peek(state); if (yych == '.') goto yy182; goto yy85; yy106: skip(state); yych = peek(state); if (yych == '=') goto yy111; if (yych == '~') goto yy111; yy107: #line 120 "ext/rbs_extension/lexer.re" { return next_token(state, tSYMBOL); } #line 810 "ext/rbs_extension/lexer.c" yy108: skip(state); yych = peek(state); if (yych <= '"') { if (yych <= 0x00000000) goto yy85; if (yych <= '!') goto yy108; goto yy184; } else { if (yych == '\\') goto yy186; goto yy108; } yy110: skip(state); yych = peek(state); if (yych <= ')') { if (yych <= 0x0000001F) { if (yych <= '\n') { if (yych <= 0x00000000) goto yy85; if (yych <= 0x00000008) goto yy188; goto yy85; } else { if (yych == '\r') goto yy85; goto yy188; } } else { if (yych <= '#') { if (yych <= ' ') goto yy85; if (yych <= '"') goto yy191; goto yy188; } else { if (yych == '%') goto yy85; if (yych <= '\'') goto yy191; goto yy85; } } } else { if (yych <= 'Z') { if (yych <= '/') { if (yych == '-') goto yy188; goto yy191; } else { if (yych <= '9') goto yy188; if (yych <= '>') goto yy191; goto yy188; } } else { if (yych <= '^') { if (yych == '\\') goto yy191; goto yy85; } else { if (yych <= 'z') goto yy188; if (yych <= '}') goto yy85; if (yych <= '~') goto yy191; goto yy188; } } } yy111: skip(state); goto yy107; yy112: skip(state); yych = peek(state); if (yych <= '\'') { if (yych <= 0x00000000) goto yy85; if (yych <= '&') goto yy112; goto yy192; } else { if (yych == '\\') goto yy194; goto yy112; } yy114: skip(state); yych = peek(state); if (yych == '*') goto yy111; goto yy107; yy115: skip(state); yych = peek(state); if (yych == '@') goto yy111; goto yy107; yy116: skip(state); #line 46 "ext/rbs_extension/lexer.re" { return next_token(state, pCOLON2); } #line 896 "ext/rbs_extension/lexer.c" yy118: skip(state); yych = peek(state); if (yych <= ';') goto yy107; if (yych <= '<') goto yy111; if (yych <= '=') goto yy196; goto yy107; yy119: skip(state); yych = peek(state); if (yych == '=') goto yy197; if (yych == '~') goto yy111; goto yy85; yy120: skip(state); yych = peek(state); if (yych <= '<') goto yy107; if (yych <= '>') goto yy111; goto yy107; yy121: skip(state); yych = peek(state); if (yych <= '^') { if (yych <= '?') goto yy85; if (yych <= '@') goto yy198; if (yych <= 'Z') goto yy199; goto yy85; } else { if (yych == '`') goto yy85; if (yych <= 'z') goto yy199; goto yy85; } yy122: skip(state); yych = peek(state); if (yych <= '>') { if (yych <= '/') { if (yych == '!') goto yy202; } else { if (yych <= '9') goto yy122; if (yych == '=') goto yy202; } } else { if (yych <= '^') { if (yych <= '?') goto yy202; if (yych <= '@') goto yy124; if (yych <= 'Z') goto yy122; } else { if (yych == '`') goto yy124; if (yych <= 'z') goto yy122; } } yy124: #line 116 "ext/rbs_extension/lexer.re" { return next_token(state, tSYMBOL); } #line 952 "ext/rbs_extension/lexer.c" yy125: skip(state); yych = peek(state); if (yych == ']') goto yy197; goto yy85; yy126: skip(state); yych = peek(state); if (yych == '>') goto yy32; goto yy10; yy127: skip(state); yych = peek(state); if (yych == '=') goto yy32; goto yy10; yy128: skip(state); #line 43 "ext/rbs_extension/lexer.re" { return next_token(state, pFATARROW); } #line 972 "ext/rbs_extension/lexer.c" yy130: skip(state); yych = peek(state); if (yych <= '^') { if (yych <= '@') goto yy85; if (yych <= 'Z') goto yy203; goto yy85; } else { if (yych == '`') goto yy85; if (yych <= 'z') goto yy203; goto yy85; } yy131: skip(state); yych = peek(state); if (yych <= 'Z') { if (yych <= '/') goto yy133; if (yych <= '9') goto yy131; if (yych >= 'A') goto yy131; } else { if (yych <= '_') { if (yych >= '_') goto yy131; } else { if (yych <= '`') goto yy133; if (yych <= 'z') goto yy131; } } yy133: #line 130 "ext/rbs_extension/lexer.re" { return next_token(state, tAIDENT); } #line 1003 "ext/rbs_extension/lexer.c" yy134: skip(state); #line 127 "ext/rbs_extension/lexer.re" { return next_token(state, tBANGIDENT); } #line 1008 "ext/rbs_extension/lexer.c" yy136: skip(state); #line 128 "ext/rbs_extension/lexer.re" { return next_token(state, tEQIDENT); } #line 1013 "ext/rbs_extension/lexer.c" yy138: skip(state); yych = peek(state); if (yych == '=') goto yy32; #line 48 "ext/rbs_extension/lexer.re" { return next_token(state, pAREF_OPR); } #line 1020 "ext/rbs_extension/lexer.c" yy140: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy140; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy142; if (yych <= 'Z') goto yy140; } else { if (yych == '`') goto yy142; if (yych <= 'z') goto yy140; } } yy142: #line 124 "ext/rbs_extension/lexer.re" { return next_token(state, tULLIDENT); } #line 1043 "ext/rbs_extension/lexer.c" yy143: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy143; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy145; if (yych <= 'Z') goto yy143; } else { if (yych == '`') goto yy145; if (yych <= 'z') goto yy143; } } yy145: #line 125 "ext/rbs_extension/lexer.re" { return next_token(state, tULIDENT); } #line 1066 "ext/rbs_extension/lexer.c" yy146: skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy85; if (yych == '`') goto yy206; goto yy146; yy148: skip(state); yych = peek(state); if (yych == 'i') goto yy208; goto yy67; yy149: skip(state); yych = peek(state); if (yych == 't') goto yy209; goto yy67; yy150: skip(state); yych = peek(state); if (yych == 'o') goto yy210; if (yych == 't') goto yy211; goto yy67; yy151: skip(state); yych = peek(state); if (yych == 'a') goto yy213; goto yy67; yy152: skip(state); yych = peek(state); if (yych == 'f') goto yy214; goto yy67; yy153: skip(state); yych = peek(state); if (yych == 'd') goto yy216; goto yy67; yy154: skip(state); yych = peek(state); if (yych == 't') goto yy218; goto yy67; yy155: skip(state); yych = peek(state); if (yych == 'l') goto yy219; goto yy67; yy156: skip(state); yych = peek(state); if (yych <= '^') { if (yych <= '9') { if (yych == '!') goto yy134; if (yych >= '0') goto yy66; } else { if (yych <= '=') { if (yych >= '=') goto yy136; } else { if (yych <= '@') goto yy157; if (yych <= 'Z') goto yy66; } } } else { if (yych <= 'c') { if (yych == '`') goto yy157; if (yych <= 'b') goto yy66; goto yy220; } else { if (yych <= 's') { if (yych <= 'r') goto yy66; goto yy221; } else { if (yych <= 't') goto yy222; if (yych <= 'z') goto yy66; } } } yy157: #line 78 "ext/rbs_extension/lexer.re" { return next_token(state, kIN); } #line 1147 "ext/rbs_extension/lexer.c" yy158: skip(state); yych = peek(state); if (yych == 'd') goto yy223; goto yy67; yy159: skip(state); yych = peek(state); if (yych == 'l') goto yy224; goto yy67; yy160: skip(state); yych = peek(state); if (yych == 't') goto yy226; goto yy67; yy161: skip(state); yych = peek(state); if (yych == 'e') goto yy228; if (yych == 'i') goto yy229; goto yy67; yy162: skip(state); yych = peek(state); if (yych == 'b') goto yy230; goto yy67; yy163: skip(state); yych = peek(state); if (yych == 'l') goto yy231; goto yy67; yy164: skip(state); yych = peek(state); if (yych == 'n') goto yy232; goto yy67; yy165: skip(state); yych = peek(state); if (yych == 'p') goto yy233; goto yy67; yy166: skip(state); yych = peek(state); if (yych == 'u') goto yy235; goto yy67; yy167: skip(state); yych = peek(state); if (yych == 'p') goto yy236; goto yy67; yy168: skip(state); yych = peek(state); if (yych == 'c') goto yy237; if (yych == 't') goto yy238; goto yy67; yy169: skip(state); yych = peek(state); if (yych == 'i') goto yy239; goto yy67; yy170: yyaccept = 5; skip(state); backup = *state; yych = peek(state); if (yych <= '"') { if (yych <= 0x00000000) goto yy87; if (yych <= '!') goto yy83; goto yy86; } else { if (yych == '\\') goto yy88; goto yy83; } yy171: skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy85; if (yych == ')') goto yy240; goto yy171; yy173: skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy85; if (yych == '>') goto yy242; goto yy173; yy175: skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy85; if (yych == ']') goto yy244; goto yy175; yy177: skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy85; if (yych == '}') goto yy246; goto yy177; yy179: skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy85; if (yych == '|') goto yy248; goto yy179; yy181: yyaccept = 6; skip(state); backup = *state; yych = peek(state); if (yych <= '\'') { if (yych <= 0x00000000) goto yy98; if (yych <= '&') goto yy95; goto yy97; } else { if (yych == '\\') goto yy99; goto yy95; } yy182: skip(state); #line 39 "ext/rbs_extension/lexer.re" { return next_token(state, pDOT3); } #line 1270 "ext/rbs_extension/lexer.c" yy184: skip(state); yy185: #line 102 "ext/rbs_extension/lexer.re" { return next_token(state, tDQSYMBOL); } #line 1276 "ext/rbs_extension/lexer.c" yy186: skip(state); yych = peek(state); if (yych <= '"') { if (yych <= 0x00000000) goto yy85; if (yych <= '!') goto yy108; goto yy250; } else { if (yych == '\\') goto yy186; goto yy108; } yy188: skip(state); yych = peek(state); if (yych <= ',') { if (yych <= '\f') { if (yych <= 0x00000000) goto yy190; if (yych <= 0x00000008) goto yy188; if (yych >= '\v') goto yy188; } else { if (yych <= 0x0000001F) { if (yych >= 0x0000000E) goto yy188; } else { if (yych == '#') goto yy188; } } } else { if (yych <= '>') { if (yych <= '-') goto yy188; if (yych <= '/') goto yy190; if (yych <= '9') goto yy188; } else { if (yych <= '^') { if (yych <= 'Z') goto yy188; } else { if (yych <= 'z') goto yy188; if (yych >= 0x0000007F) goto yy188; } } } yy190: #line 119 "ext/rbs_extension/lexer.re" { return next_token(state, tSYMBOL); } #line 1320 "ext/rbs_extension/lexer.c" yy191: skip(state); goto yy190; yy192: skip(state); yy193: #line 103 "ext/rbs_extension/lexer.re" { return next_token(state, tSQSYMBOL); } #line 1329 "ext/rbs_extension/lexer.c" yy194: skip(state); yych = peek(state); if (yych <= '\'') { if (yych <= 0x00000000) goto yy85; if (yych <= '&') goto yy112; goto yy251; } else { if (yych == '\\') goto yy194; goto yy112; } yy196: skip(state); yych = peek(state); if (yych == '>') goto yy111; goto yy107; yy197: skip(state); yych = peek(state); if (yych == '=') goto yy111; goto yy107; yy198: skip(state); yych = peek(state); if (yych <= '^') { if (yych <= '@') goto yy85; if (yych <= 'Z') goto yy252; goto yy85; } else { if (yych == '`') goto yy85; if (yych <= 'z') goto yy252; goto yy85; } yy199: skip(state); yych = peek(state); if (yych <= '>') { if (yych <= '/') { if (yych == '!') goto yy255; } else { if (yych <= '9') goto yy199; if (yych == '=') goto yy255; } } else { if (yych <= '^') { if (yych <= '?') goto yy255; if (yych <= '@') goto yy201; if (yych <= 'Z') goto yy199; } else { if (yych == '`') goto yy201; if (yych <= 'z') goto yy199; } } yy201: #line 117 "ext/rbs_extension/lexer.re" { return next_token(state, tSYMBOL); } #line 1386 "ext/rbs_extension/lexer.c" yy202: skip(state); goto yy124; yy203: skip(state); yych = peek(state); if (yych <= 'Z') { if (yych <= '/') goto yy205; if (yych <= '9') goto yy203; if (yych >= 'A') goto yy203; } else { if (yych <= '_') { if (yych >= '_') goto yy203; } else { if (yych <= '`') goto yy205; if (yych <= 'z') goto yy203; } } yy205: #line 131 "ext/rbs_extension/lexer.re" { return next_token(state, tA2IDENT); } #line 1408 "ext/rbs_extension/lexer.c" yy206: skip(state); #line 41 "ext/rbs_extension/lexer.re" { return next_token(state, tQIDENT); } #line 1413 "ext/rbs_extension/lexer.c" yy208: skip(state); yych = peek(state); if (yych == 'a') goto yy256; goto yy67; yy209: skip(state); yych = peek(state); if (yych == 'r') goto yy257; goto yy67; yy210: skip(state); yych = peek(state); if (yych == 'l') goto yy258; goto yy67; yy211: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy212; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy212; if (yych <= 'z') goto yy66; } } yy212: #line 72 "ext/rbs_extension/lexer.re" { return next_token(state, kBOT); } #line 1451 "ext/rbs_extension/lexer.c" yy213: skip(state); yych = peek(state); if (yych == 's') goto yy260; goto yy67; yy214: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy215; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy215; if (yych <= 'z') goto yy66; } } yy215: #line 74 "ext/rbs_extension/lexer.re" { return next_token(state, kDEF); } #line 1479 "ext/rbs_extension/lexer.c" yy216: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy217; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy217; if (yych <= 'z') goto yy66; } } yy217: #line 75 "ext/rbs_extension/lexer.re" { return next_token(state, kEND); } #line 1502 "ext/rbs_extension/lexer.c" yy218: skip(state); yych = peek(state); if (yych == 'e') goto yy261; goto yy67; yy219: skip(state); yych = peek(state); if (yych == 's') goto yy262; goto yy67; yy220: skip(state); yych = peek(state); if (yych == 'l') goto yy263; goto yy67; yy221: skip(state); yych = peek(state); if (yych == 't') goto yy264; goto yy67; yy222: skip(state); yych = peek(state); if (yych == 'e') goto yy265; goto yy67; yy223: skip(state); yych = peek(state); if (yych == 'u') goto yy266; goto yy67; yy224: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy225; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy225; if (yych <= 'z') goto yy66; } } yy225: #line 83 "ext/rbs_extension/lexer.re" { return next_token(state, kNIL); } #line 1555 "ext/rbs_extension/lexer.c" yy226: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy227; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy227; if (yych <= 'z') goto yy66; } } yy227: #line 84 "ext/rbs_extension/lexer.re" { return next_token(state, kOUT); } #line 1578 "ext/rbs_extension/lexer.c" yy228: skip(state); yych = peek(state); if (yych == 'p') goto yy267; goto yy67; yy229: skip(state); yych = peek(state); if (yych == 'v') goto yy268; goto yy67; yy230: skip(state); yych = peek(state); if (yych == 'l') goto yy269; goto yy67; yy231: skip(state); yych = peek(state); if (yych == 'f') goto yy270; goto yy67; yy232: skip(state); yych = peek(state); if (yych == 'g') goto yy272; goto yy67; yy233: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy234; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy234; if (yych <= 'z') goto yy66; } } yy234: #line 90 "ext/rbs_extension/lexer.re" { return next_token(state, kTOP); } #line 1626 "ext/rbs_extension/lexer.c" yy235: skip(state); yych = peek(state); if (yych == 'e') goto yy273; goto yy67; yy236: skip(state); yych = peek(state); if (yych == 'e') goto yy275; goto yy67; yy237: skip(state); yych = peek(state); if (yych == 'h') goto yy277; goto yy67; yy238: skip(state); yych = peek(state); if (yych == 'y') goto yy278; goto yy67; yy239: skip(state); yych = peek(state); if (yych == 'd') goto yy279; goto yy67; yy240: skip(state); #line 55 "ext/rbs_extension/lexer.re" { return next_token(state, tANNOTATION); } #line 1656 "ext/rbs_extension/lexer.c" yy242: skip(state); #line 58 "ext/rbs_extension/lexer.re" { return next_token(state, tANNOTATION); } #line 1661 "ext/rbs_extension/lexer.c" yy244: skip(state); #line 56 "ext/rbs_extension/lexer.re" { return next_token(state, tANNOTATION); } #line 1666 "ext/rbs_extension/lexer.c" yy246: skip(state); #line 54 "ext/rbs_extension/lexer.re" { return next_token(state, tANNOTATION); } #line 1671 "ext/rbs_extension/lexer.c" yy248: skip(state); #line 57 "ext/rbs_extension/lexer.re" { return next_token(state, tANNOTATION); } #line 1676 "ext/rbs_extension/lexer.c" yy250: yyaccept = 7; skip(state); backup = *state; yych = peek(state); if (yych <= '"') { if (yych <= 0x00000000) goto yy185; if (yych <= '!') goto yy108; goto yy184; } else { if (yych == '\\') goto yy186; goto yy108; } yy251: yyaccept = 8; skip(state); backup = *state; yych = peek(state); if (yych <= '\'') { if (yych <= 0x00000000) goto yy193; if (yych <= '&') goto yy112; goto yy192; } else { if (yych == '\\') goto yy194; goto yy112; } yy252: skip(state); yych = peek(state); if (yych <= '>') { if (yych <= '/') { if (yych == '!') goto yy281; } else { if (yych <= '9') goto yy252; if (yych == '=') goto yy281; } } else { if (yych <= '^') { if (yych <= '?') goto yy281; if (yych <= '@') goto yy254; if (yych <= 'Z') goto yy252; } else { if (yych == '`') goto yy254; if (yych <= 'z') goto yy252; } } yy254: #line 118 "ext/rbs_extension/lexer.re" { return next_token(state, tSYMBOL); } #line 1726 "ext/rbs_extension/lexer.c" yy255: skip(state); goto yy201; yy256: skip(state); yych = peek(state); if (yych == 's') goto yy282; goto yy67; yy257: skip(state); yych = peek(state); if (yych == '_') goto yy284; goto yy67; yy258: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy259; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy259; if (yych <= 'z') goto yy66; } } yy259: #line 71 "ext/rbs_extension/lexer.re" { return next_token(state, kBOOL); } #line 1762 "ext/rbs_extension/lexer.c" yy260: skip(state); yych = peek(state); if (yych == 's') goto yy285; goto yy67; yy261: skip(state); yych = peek(state); if (yych == 'n') goto yy287; goto yy67; yy262: skip(state); yych = peek(state); if (yych == 'e') goto yy288; goto yy67; yy263: skip(state); yych = peek(state); if (yych == 'u') goto yy290; goto yy67; yy264: skip(state); yych = peek(state); if (yych == 'a') goto yy291; goto yy67; yy265: skip(state); yych = peek(state); if (yych == 'r') goto yy292; goto yy67; yy266: skip(state); yych = peek(state); if (yych == 'l') goto yy293; goto yy67; yy267: skip(state); yych = peek(state); if (yych == 'e') goto yy294; goto yy67; yy268: skip(state); yych = peek(state); if (yych == 'a') goto yy295; goto yy67; yy269: skip(state); yych = peek(state); if (yych == 'i') goto yy296; goto yy67; yy270: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy271; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy271; if (yych <= 'z') goto yy66; } } yy271: #line 88 "ext/rbs_extension/lexer.re" { return next_token(state, kSELF); } #line 1835 "ext/rbs_extension/lexer.c" yy272: skip(state); yych = peek(state); if (yych == 'l') goto yy297; goto yy67; yy273: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy274; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy274; if (yych <= 'z') goto yy66; } } yy274: #line 91 "ext/rbs_extension/lexer.re" { return next_token(state, kTRUE); } #line 1863 "ext/rbs_extension/lexer.c" yy275: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy276; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy276; if (yych <= 'z') goto yy66; } } yy276: #line 92 "ext/rbs_extension/lexer.re" { return next_token(state, kTYPE); } #line 1886 "ext/rbs_extension/lexer.c" yy277: skip(state); yych = peek(state); if (yych == 'e') goto yy298; goto yy67; yy278: skip(state); yych = peek(state); if (yych == 'p') goto yy299; goto yy67; yy279: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy280; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy280; if (yych <= 'z') goto yy66; } } yy280: #line 95 "ext/rbs_extension/lexer.re" { return next_token(state, kVOID); } #line 1919 "ext/rbs_extension/lexer.c" yy281: skip(state); goto yy254; yy282: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy283; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy283; if (yych <= 'z') goto yy66; } } yy283: #line 67 "ext/rbs_extension/lexer.re" { return next_token(state, kALIAS); } #line 1945 "ext/rbs_extension/lexer.c" yy284: skip(state); yych = peek(state); if (yych <= 'q') { if (yych == 'a') goto yy300; goto yy67; } else { if (yych <= 'r') goto yy301; if (yych == 'w') goto yy302; goto yy67; } yy285: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy286; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy286; if (yych <= 'z') goto yy66; } } yy286: #line 73 "ext/rbs_extension/lexer.re" { return next_token(state, kCLASS); } #line 1979 "ext/rbs_extension/lexer.c" yy287: skip(state); yych = peek(state); if (yych == 'd') goto yy303; goto yy67; yy288: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy289; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy289; if (yych <= 'z') goto yy66; } } yy289: #line 77 "ext/rbs_extension/lexer.re" { return next_token(state, kFALSE); } #line 2007 "ext/rbs_extension/lexer.c" yy290: skip(state); yych = peek(state); if (yych == 'd') goto yy305; goto yy67; yy291: skip(state); yych = peek(state); if (yych == 'n') goto yy306; goto yy67; yy292: skip(state); yych = peek(state); if (yych == 'f') goto yy307; goto yy67; yy293: skip(state); yych = peek(state); if (yych == 'e') goto yy308; goto yy67; yy294: skip(state); yych = peek(state); if (yych == 'n') goto yy310; goto yy67; yy295: skip(state); yych = peek(state); if (yych == 't') goto yy311; goto yy67; yy296: skip(state); yych = peek(state); if (yych == 'c') goto yy312; goto yy67; yy297: skip(state); yych = peek(state); if (yych == 'e') goto yy314; goto yy67; yy298: skip(state); yych = peek(state); if (yych == 'c') goto yy315; goto yy67; yy299: skip(state); yych = peek(state); if (yych == 'e') goto yy316; goto yy67; yy300: skip(state); yych = peek(state); if (yych == 'c') goto yy317; goto yy67; yy301: skip(state); yych = peek(state); if (yych == 'e') goto yy318; goto yy67; yy302: skip(state); yych = peek(state); if (yych == 'r') goto yy319; goto yy67; yy303: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy304; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy304; if (yych <= 'z') goto yy66; } } yy304: #line 76 "ext/rbs_extension/lexer.re" { return next_token(state, kEXTEND); } #line 2095 "ext/rbs_extension/lexer.c" yy305: skip(state); yych = peek(state); if (yych == 'e') goto yy320; goto yy67; yy306: skip(state); yych = peek(state); if (yych == 'c') goto yy322; goto yy67; yy307: skip(state); yych = peek(state); if (yych == 'a') goto yy323; goto yy67; yy308: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy309; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy309; if (yych <= 'z') goto yy66; } } yy309: #line 82 "ext/rbs_extension/lexer.re" { return next_token(state, kMODULE); } #line 2133 "ext/rbs_extension/lexer.c" yy310: skip(state); yych = peek(state); if (yych == 'd') goto yy324; goto yy67; yy311: skip(state); yych = peek(state); if (yych == 'e') goto yy326; goto yy67; yy312: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy313; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy313; if (yych <= 'z') goto yy66; } } yy313: #line 87 "ext/rbs_extension/lexer.re" { return next_token(state, kPUBLIC); } #line 2166 "ext/rbs_extension/lexer.c" yy314: skip(state); yych = peek(state); if (yych == 't') goto yy328; goto yy67; yy315: skip(state); yych = peek(state); if (yych == 'k') goto yy329; goto yy67; yy316: skip(state); yych = peek(state); if (yych == 'd') goto yy330; goto yy67; yy317: skip(state); yych = peek(state); if (yych == 'c') goto yy332; goto yy67; yy318: skip(state); yych = peek(state); if (yych == 'a') goto yy333; goto yy67; yy319: skip(state); yych = peek(state); if (yych == 'i') goto yy334; goto yy67; yy320: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy321; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy321; if (yych <= 'z') goto yy66; } } yy321: #line 79 "ext/rbs_extension/lexer.re" { return next_token(state, kINCLUDE); } #line 2219 "ext/rbs_extension/lexer.c" yy322: skip(state); yych = peek(state); if (yych == 'e') goto yy335; goto yy67; yy323: skip(state); yych = peek(state); if (yych == 'c') goto yy337; goto yy67; yy324: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy325; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy325; if (yych <= 'z') goto yy66; } } yy325: #line 85 "ext/rbs_extension/lexer.re" { return next_token(state, kPREPEND); } #line 2252 "ext/rbs_extension/lexer.c" yy326: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy327; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy327; if (yych <= 'z') goto yy66; } } yy327: #line 86 "ext/rbs_extension/lexer.re" { return next_token(state, kPRIVATE); } #line 2275 "ext/rbs_extension/lexer.c" yy328: skip(state); yych = peek(state); if (yych == 'o') goto yy338; goto yy67; yy329: skip(state); yych = peek(state); if (yych == 'e') goto yy339; goto yy67; yy330: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy331; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy331; if (yych <= 'z') goto yy66; } } yy331: #line 94 "ext/rbs_extension/lexer.re" { return next_token(state, kUNTYPED); } #line 2308 "ext/rbs_extension/lexer.c" yy332: skip(state); yych = peek(state); if (yych == 'e') goto yy340; goto yy67; yy333: skip(state); yych = peek(state); if (yych == 'd') goto yy341; goto yy67; yy334: skip(state); yych = peek(state); if (yych == 't') goto yy342; goto yy67; yy335: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy336; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy336; if (yych <= 'z') goto yy66; } } yy336: #line 80 "ext/rbs_extension/lexer.re" { return next_token(state, kINSTANCE); } #line 2346 "ext/rbs_extension/lexer.c" yy337: skip(state); yych = peek(state); if (yych == 'e') goto yy343; goto yy67; yy338: skip(state); yych = peek(state); if (yych == 'n') goto yy345; goto yy67; yy339: skip(state); yych = peek(state); if (yych == 'd') goto yy347; goto yy67; yy340: skip(state); yych = peek(state); if (yych == 's') goto yy349; goto yy67; yy341: skip(state); yych = peek(state); if (yych == 'e') goto yy350; goto yy67; yy342: skip(state); yych = peek(state); if (yych == 'e') goto yy351; goto yy67; yy343: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy344; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy344; if (yych <= 'z') goto yy66; } } yy344: #line 81 "ext/rbs_extension/lexer.re" { return next_token(state, kINTERFACE); } #line 2399 "ext/rbs_extension/lexer.c" yy345: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy346; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy346; if (yych <= 'z') goto yy66; } } yy346: #line 89 "ext/rbs_extension/lexer.re" { return next_token(state, kSINGLETON); } #line 2422 "ext/rbs_extension/lexer.c" yy347: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy348; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy348; if (yych <= 'z') goto yy66; } } yy348: #line 93 "ext/rbs_extension/lexer.re" { return next_token(state, kUNCHECKED); } #line 2445 "ext/rbs_extension/lexer.c" yy349: skip(state); yych = peek(state); if (yych == 's') goto yy352; goto yy67; yy350: skip(state); yych = peek(state); if (yych == 'r') goto yy353; goto yy67; yy351: skip(state); yych = peek(state); if (yych == 'r') goto yy355; goto yy67; yy352: skip(state); yych = peek(state); if (yych == 'o') goto yy357; goto yy67; yy353: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy354; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy354; if (yych <= 'z') goto yy66; } } yy354: #line 69 "ext/rbs_extension/lexer.re" { return next_token(state, kATTRREADER); } #line 2488 "ext/rbs_extension/lexer.c" yy355: skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy356; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy356; if (yych <= 'z') goto yy66; } } yy356: #line 70 "ext/rbs_extension/lexer.re" { return next_token(state, kATTRWRITER); } #line 2511 "ext/rbs_extension/lexer.c" yy357: skip(state); yych = peek(state); if (yych != 'r') goto yy67; skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy134; } else { if (yych <= '9') goto yy66; if (yych >= '=') goto yy136; } } else { if (yych <= '^') { if (yych <= '@') goto yy359; if (yych <= 'Z') goto yy66; } else { if (yych == '`') goto yy359; if (yych <= 'z') goto yy66; } } yy359: #line 68 "ext/rbs_extension/lexer.re" { return next_token(state, kATTRACCESSOR); } #line 2537 "ext/rbs_extension/lexer.c" } #line 140 "ext/rbs_extension/lexer.re" }