/* Generated by re2c 3.1 */ #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 yy1; case '\t': case '\n': case '\r': case ' ': goto yy4; case '!': goto yy6; case '"': goto yy8; case '#': goto yy9; case '$': goto yy11; case '%': goto yy12; case '&': goto yy13; case '\'': goto yy14; case '(': goto yy15; case ')': goto yy16; case '*': goto yy17; case '+': goto yy18; case ',': goto yy19; case '-': goto yy20; case '.': goto yy21; case '/': case '~': goto yy23; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy24; case ':': goto yy26; case '<': goto yy28; case '=': goto yy30; case '>': goto yy32; case '?': goto yy33; case '@': goto yy34; 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 yy35; case '[': goto yy37; case ']': goto yy38; case '^': goto yy39; case '_': goto yy40; case '`': goto yy42; case 'a': goto yy44; case 'b': goto yy46; case 'c': goto yy47; case 'd': goto yy48; case 'e': goto yy49; case 'f': goto yy50; case 'g': case 'h': case 'j': case 'k': case 'l': case 'q': case 'r': case 'w': case 'x': case 'y': case 'z': goto yy51; case 'i': goto yy53; case 'm': goto yy54; case 'n': goto yy55; case 'o': goto yy56; case 'p': goto yy57; case 's': goto yy58; case 't': goto yy59; case 'u': goto yy60; case 'v': goto yy61; case '{': goto yy62; case '|': goto yy63; case '}': goto yy64; default: goto yy2; } yy1: rbs_skip(state); #line 145 "ext/rbs_extension/lexer.re" { return next_token(state, pEOF); } #line 122 "ext/rbs_extension/lexer.c" yy2: rbs_skip(state); yy3: #line 146 "ext/rbs_extension/lexer.re" { return next_token(state, ErrorToken); } #line 128 "ext/rbs_extension/lexer.c" yy4: rbs_skip(state); yych = peek(state); if (yych <= '\f') { if (yych <= 0x00000008) goto yy5; if (yych <= '\n') goto yy4; } else { if (yych <= '\r') goto yy4; if (yych == ' ') goto yy4; } yy5: #line 144 "ext/rbs_extension/lexer.re" { state->start = state->current; goto start; } #line 142 "ext/rbs_extension/lexer.c" yy6: rbs_skip(state); yych = peek(state); if (yych == '=') goto yy23; if (yych == '~') goto yy23; yy7: #line 49 "ext/rbs_extension/lexer.re" { return next_token(state, tOPERATOR); } #line 151 "ext/rbs_extension/lexer.c" yy8: yyaccept = 0; rbs_skip(state); backup = *state; yych = peek(state); if (yych <= 0x00000000) goto yy3; goto yy66; yy9: rbs_skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy10; if (yych != '\n') goto yy9; yy10: #line 60 "ext/rbs_extension/lexer.re" { return next_token( state, state->first_token_of_line ? tLINECOMMENT : tCOMMENT ); } #line 172 "ext/rbs_extension/lexer.c" yy11: rbs_skip(state); yych = peek(state); if (yych <= ')') { if (yych <= 0x0000001F) { if (yych <= '\n') { if (yych <= 0x00000000) goto yy3; if (yych <= 0x00000008) goto yy70; goto yy3; } else { if (yych == '\r') goto yy3; goto yy70; } } else { if (yych <= '#') { if (yych <= ' ') goto yy3; if (yych <= '"') goto yy72; goto yy70; } else { if (yych == '%') goto yy3; if (yych <= '\'') goto yy72; goto yy3; } } } else { if (yych <= 'Z') { if (yych <= '/') { if (yych == '-') goto yy70; goto yy72; } else { if (yych <= '9') goto yy70; if (yych <= '>') goto yy72; goto yy70; } } else { if (yych <= '^') { if (yych == '\\') goto yy72; goto yy3; } else { if (yych <= 'z') goto yy70; if (yych <= '}') goto yy3; if (yych <= '~') goto yy72; goto yy70; } } } yy12: yyaccept = 1; rbs_skip(state); backup = *state; yych = peek(state); if (yych == 'a') goto yy73; goto yy7; yy13: rbs_skip(state); #line 34 "ext/rbs_extension/lexer.re" { return next_token(state, pAMP); } #line 230 "ext/rbs_extension/lexer.c" yy14: yyaccept = 0; rbs_skip(state); backup = *state; yych = peek(state); if (yych <= 0x00000000) goto yy3; goto yy75; yy15: rbs_skip(state); #line 25 "ext/rbs_extension/lexer.re" { return next_token(state, pLPAREN); } #line 242 "ext/rbs_extension/lexer.c" yy16: rbs_skip(state); #line 26 "ext/rbs_extension/lexer.re" { return next_token(state, pRPAREN); } #line 247 "ext/rbs_extension/lexer.c" yy17: rbs_skip(state); yych = peek(state); if (yych == '*') goto yy79; #line 36 "ext/rbs_extension/lexer.re" { return next_token(state, pSTAR); } #line 254 "ext/rbs_extension/lexer.c" yy18: rbs_skip(state); yych = peek(state); if (yych <= '/') goto yy7; if (yych <= '9') goto yy24; if (yych == '@') goto yy23; goto yy7; yy19: rbs_skip(state); #line 31 "ext/rbs_extension/lexer.re" { return next_token(state, pCOMMA); } #line 266 "ext/rbs_extension/lexer.c" yy20: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') goto yy7; if (yych <= '9') goto yy24; goto yy7; } else { if (yych <= '>') goto yy80; if (yych == '@') goto yy23; goto yy7; } yy21: yyaccept = 2; rbs_skip(state); backup = *state; yych = peek(state); if (yych == '.') goto yy81; yy22: #line 38 "ext/rbs_extension/lexer.re" { return next_token(state, pDOT); } #line 288 "ext/rbs_extension/lexer.c" yy23: rbs_skip(state); goto yy7; yy24: rbs_skip(state); yych = peek(state); if (yych <= '/') goto yy25; if (yych <= '9') goto yy24; if (yych == '_') goto yy24; yy25: #line 52 "ext/rbs_extension/lexer.re" { return next_token(state, tINTEGER); } #line 301 "ext/rbs_extension/lexer.c" yy26: yyaccept = 3; rbs_skip(state); backup = *state; yych = peek(state); switch (yych) { case '!': goto yy82; case '"': goto yy84; case '$': goto yy85; case '%': case '&': case '/': case '^': case '`': case '|': case '~': goto yy86; case '\'': goto yy87; case '*': goto yy88; case '+': case '-': goto yy89; case ':': goto yy90; case '<': goto yy91; case '=': goto yy92; case '>': goto yy93; case '@': goto yy94; 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 yy95; case '[': goto yy97; default: goto yy27; } yy27: #line 45 "ext/rbs_extension/lexer.re" { return next_token(state, pCOLON); } #line 386 "ext/rbs_extension/lexer.c" yy28: rbs_skip(state); yych = peek(state); if (yych <= ';') goto yy29; if (yych <= '<') goto yy23; if (yych <= '=') goto yy98; yy29: #line 47 "ext/rbs_extension/lexer.re" { return next_token(state, pLT); } #line 396 "ext/rbs_extension/lexer.c" yy30: rbs_skip(state); yych = peek(state); if (yych <= '>') { if (yych <= '<') goto yy31; if (yych <= '=') goto yy99; goto yy100; } else { if (yych == '~') goto yy23; } yy31: #line 44 "ext/rbs_extension/lexer.re" { return next_token(state, pEQ); } #line 410 "ext/rbs_extension/lexer.c" yy32: rbs_skip(state); yych = peek(state); if (yych <= '<') goto yy7; if (yych <= '>') goto yy23; goto yy7; yy33: rbs_skip(state); #line 35 "ext/rbs_extension/lexer.re" { return next_token(state, pQUESTION); } #line 421 "ext/rbs_extension/lexer.c" yy34: yyaccept = 0; rbs_skip(state); backup = *state; yych = peek(state); if (yych <= '^') { if (yych <= '?') goto yy3; if (yych <= '@') goto yy101; if (yych <= 'Z') goto yy102; goto yy3; } else { if (yych == '`') goto yy3; if (yych <= 'z') goto yy102; goto yy3; } yy35: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy35; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy36; if (yych <= 'Z') goto yy35; } else { if (yych == '`') goto yy36; if (yych <= 'z') goto yy35; } } yy36: #line 130 "ext/rbs_extension/lexer.re" { return next_token(state, tUIDENT); } #line 459 "ext/rbs_extension/lexer.c" yy37: rbs_skip(state); yych = peek(state); if (yych == ']') goto yy106; #line 27 "ext/rbs_extension/lexer.re" { return next_token(state, pLBRACKET); } #line 466 "ext/rbs_extension/lexer.c" yy38: rbs_skip(state); #line 28 "ext/rbs_extension/lexer.re" { return next_token(state, pRBRACKET); } #line 471 "ext/rbs_extension/lexer.c" yy39: rbs_skip(state); #line 33 "ext/rbs_extension/lexer.re" { return next_token(state, pHAT); } #line 476 "ext/rbs_extension/lexer.c" yy40: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy107; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy41; if (yych <= 'Z') goto yy110; } else { if (yych <= '_') goto yy112; if (yych <= '`') goto yy41; if (yych <= 'z') goto yy107; } } yy41: #line 133 "ext/rbs_extension/lexer.re" { return next_token(state, tULLIDENT); } #line 500 "ext/rbs_extension/lexer.c" yy42: yyaccept = 4; rbs_skip(state); backup = *state; yych = peek(state); if (yych <= ' ') { if (yych <= 0x00000000) goto yy43; if (yych <= 0x0000001F) goto yy113; } else { if (yych != ':') goto yy113; } yy43: #line 40 "ext/rbs_extension/lexer.re" { return next_token(state, tOPERATOR); } #line 515 "ext/rbs_extension/lexer.c" yy44: rbs_skip(state); yych = peek(state); if (yych <= 'r') { if (yych == 'l') goto yy114; goto yy52; } else { if (yych <= 's') goto yy115; if (yych <= 't') goto yy117; goto yy52; } yy45: #line 129 "ext/rbs_extension/lexer.re" { return next_token(state, tLIDENT); } #line 530 "ext/rbs_extension/lexer.c" yy46: rbs_skip(state); yych = peek(state); if (yych == 'o') goto yy118; goto yy52; yy47: rbs_skip(state); yych = peek(state); if (yych == 'l') goto yy119; goto yy52; yy48: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy120; goto yy52; yy49: rbs_skip(state); yych = peek(state); if (yych == 'n') goto yy121; if (yych == 'x') goto yy122; goto yy52; yy50: rbs_skip(state); yych = peek(state); if (yych == 'a') goto yy123; goto yy52; yy51: rbs_skip(state); yych = peek(state); yy52: if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; goto yy45; } else { if (yych <= '9') goto yy51; if (yych <= '<') goto yy45; goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy45; if (yych <= 'Z') goto yy51; goto yy45; } else { if (yych == '`') goto yy45; if (yych <= 'z') goto yy51; goto yy45; } } yy53: rbs_skip(state); yych = peek(state); if (yych == 'n') goto yy124; goto yy52; yy54: rbs_skip(state); yych = peek(state); if (yych == 'o') goto yy126; goto yy52; yy55: rbs_skip(state); yych = peek(state); if (yych == 'i') goto yy127; goto yy52; yy56: rbs_skip(state); yych = peek(state); if (yych == 'u') goto yy128; goto yy52; yy57: rbs_skip(state); yych = peek(state); if (yych == 'r') goto yy129; if (yych == 'u') goto yy130; goto yy52; yy58: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy131; if (yych == 'i') goto yy132; goto yy52; yy59: rbs_skip(state); yych = peek(state); if (yych <= 'q') { if (yych == 'o') goto yy133; goto yy52; } else { if (yych <= 'r') goto yy134; if (yych == 'y') goto yy135; goto yy52; } yy60: rbs_skip(state); yych = peek(state); if (yych == 'n') goto yy136; if (yych == 's') goto yy137; goto yy52; yy61: rbs_skip(state); yych = peek(state); if (yych == 'o') goto yy138; goto yy52; yy62: rbs_skip(state); #line 29 "ext/rbs_extension/lexer.re" { return next_token(state, pLBRACE); } #line 639 "ext/rbs_extension/lexer.c" yy63: rbs_skip(state); #line 32 "ext/rbs_extension/lexer.re" { return next_token(state, pBAR); } #line 644 "ext/rbs_extension/lexer.c" yy64: rbs_skip(state); #line 30 "ext/rbs_extension/lexer.re" { return next_token(state, pRBRACE); } #line 649 "ext/rbs_extension/lexer.c" yy65: rbs_skip(state); yych = peek(state); yy66: if (yych <= '"') { if (yych <= 0x00000000) goto yy67; if (yych <= '!') goto yy65; goto yy68; } else { if (yych == '\\') goto yy69; goto yy65; } yy67: *state = backup; if (yyaccept <= 3) { if (yyaccept <= 1) { if (yyaccept == 0) { goto yy3; } else { goto yy7; } } else { if (yyaccept == 2) { goto yy22; } else { goto yy27; } } } else { if (yyaccept <= 5) { if (yyaccept == 4) { goto yy43; } else { goto yy77; } } else { goto yy154; } } yy68: rbs_skip(state); #line 107 "ext/rbs_extension/lexer.re" { return next_token(state, tDQSTRING); } #line 693 "ext/rbs_extension/lexer.c" yy69: rbs_skip(state); yych = peek(state); if (yych == 'u') goto yy139; if (yych == 'x') goto yy140; goto yy65; yy70: rbs_skip(state); yych = peek(state); if (yych <= ',') { if (yych <= '\f') { if (yych <= 0x00000000) goto yy71; if (yych <= 0x00000008) goto yy70; if (yych >= '\v') goto yy70; } else { if (yych <= 0x0000001F) { if (yych >= 0x0000000E) goto yy70; } else { if (yych == '#') goto yy70; } } } else { if (yych <= '>') { if (yych <= '-') goto yy70; if (yych <= '/') goto yy71; if (yych <= '9') goto yy70; } else { if (yych <= '^') { if (yych <= 'Z') goto yy70; } else { if (yych <= 'z') goto yy70; if (yych >= 0x0000007F) goto yy70; } } } yy71: #line 140 "ext/rbs_extension/lexer.re" { return next_token(state, tGIDENT); } #line 732 "ext/rbs_extension/lexer.c" yy72: rbs_skip(state); goto yy71; yy73: rbs_skip(state); yych = peek(state); if (yych <= 'Z') { if (yych <= '(') { if (yych <= '\'') goto yy67; goto yy141; } else { if (yych == '<') goto yy142; goto yy67; } } else { if (yych <= 'z') { if (yych <= '[') goto yy143; goto yy67; } else { if (yych <= '{') goto yy144; if (yych <= '|') goto yy145; goto yy67; } } yy74: rbs_skip(state); yych = peek(state); yy75: if (yych <= '\'') { if (yych <= 0x00000000) goto yy67; if (yych <= '&') goto yy74; } else { if (yych == '\\') goto yy78; goto yy74; } yy76: rbs_skip(state); yy77: #line 108 "ext/rbs_extension/lexer.re" { return next_token(state, tSQSTRING); } #line 773 "ext/rbs_extension/lexer.c" yy78: rbs_skip(state); yych = peek(state); if (yych <= '\'') { if (yych <= 0x00000000) goto yy67; if (yych <= '&') goto yy74; goto yy146; } else { if (yych == '\\') goto yy78; goto yy74; } yy79: rbs_skip(state); #line 37 "ext/rbs_extension/lexer.re" { return next_token(state, pSTAR2); } #line 789 "ext/rbs_extension/lexer.c" yy80: rbs_skip(state); #line 42 "ext/rbs_extension/lexer.re" { return next_token(state, pARROW); } #line 794 "ext/rbs_extension/lexer.c" yy81: rbs_skip(state); yych = peek(state); if (yych == '.') goto yy147; goto yy67; yy82: rbs_skip(state); yych = peek(state); if (yych == '=') goto yy86; if (yych == '~') goto yy86; yy83: #line 127 "ext/rbs_extension/lexer.re" { return next_token(state, tSYMBOL); } #line 808 "ext/rbs_extension/lexer.c" yy84: rbs_skip(state); yych = peek(state); if (yych <= '"') { if (yych <= 0x00000000) goto yy67; if (yych <= '!') goto yy84; goto yy148; } else { if (yych == '\\') goto yy149; goto yy84; } yy85: rbs_skip(state); yych = peek(state); if (yych <= ')') { if (yych <= 0x0000001F) { if (yych <= '\n') { if (yych <= 0x00000000) goto yy67; if (yych <= 0x00000008) goto yy150; goto yy67; } else { if (yych == '\r') goto yy67; goto yy150; } } else { if (yych <= '#') { if (yych <= ' ') goto yy67; if (yych <= '"') goto yy152; goto yy150; } else { if (yych == '%') goto yy67; if (yych <= '\'') goto yy152; goto yy67; } } } else { if (yych <= 'Z') { if (yych <= '/') { if (yych == '-') goto yy150; goto yy152; } else { if (yych <= '9') goto yy150; if (yych <= '>') goto yy152; goto yy150; } } else { if (yych <= '^') { if (yych == '\\') goto yy152; goto yy67; } else { if (yych <= 'z') goto yy150; if (yych <= '}') goto yy67; if (yych <= '~') goto yy152; goto yy150; } } } yy86: rbs_skip(state); goto yy83; yy87: rbs_skip(state); yych = peek(state); if (yych <= '\'') { if (yych <= 0x00000000) goto yy67; if (yych <= '&') goto yy87; goto yy153; } else { if (yych == '\\') goto yy155; goto yy87; } yy88: rbs_skip(state); yych = peek(state); if (yych == '*') goto yy86; goto yy83; yy89: rbs_skip(state); yych = peek(state); if (yych == '@') goto yy86; goto yy83; yy90: rbs_skip(state); #line 46 "ext/rbs_extension/lexer.re" { return next_token(state, pCOLON2); } #line 894 "ext/rbs_extension/lexer.c" yy91: rbs_skip(state); yych = peek(state); if (yych <= ';') goto yy83; if (yych <= '<') goto yy86; if (yych <= '=') goto yy156; goto yy83; yy92: rbs_skip(state); yych = peek(state); if (yych == '=') goto yy157; if (yych == '~') goto yy86; goto yy67; yy93: rbs_skip(state); yych = peek(state); if (yych <= '<') goto yy83; if (yych <= '>') goto yy86; goto yy83; yy94: rbs_skip(state); yych = peek(state); if (yych <= '^') { if (yych <= '?') goto yy67; if (yych <= '@') goto yy158; if (yych <= 'Z') goto yy159; goto yy67; } else { if (yych == '`') goto yy67; if (yych <= 'z') goto yy159; goto yy67; } yy95: rbs_skip(state); yych = peek(state); if (yych <= '>') { if (yych <= '/') { if (yych == '!') goto yy161; } else { if (yych <= '9') goto yy95; if (yych == '=') goto yy161; } } else { if (yych <= '^') { if (yych <= '?') goto yy161; if (yych <= '@') goto yy96; if (yych <= 'Z') goto yy95; } else { if (yych == '`') goto yy96; if (yych <= 'z') goto yy95; } } yy96: #line 123 "ext/rbs_extension/lexer.re" { return next_token(state, tSYMBOL); } #line 950 "ext/rbs_extension/lexer.c" yy97: rbs_skip(state); yych = peek(state); if (yych == ']') goto yy157; goto yy67; yy98: rbs_skip(state); yych = peek(state); if (yych == '>') goto yy23; goto yy7; yy99: rbs_skip(state); yych = peek(state); if (yych == '=') goto yy23; goto yy7; yy100: rbs_skip(state); #line 43 "ext/rbs_extension/lexer.re" { return next_token(state, pFATARROW); } #line 970 "ext/rbs_extension/lexer.c" yy101: rbs_skip(state); yych = peek(state); if (yych <= '^') { if (yych <= '@') goto yy67; if (yych <= 'Z') goto yy162; goto yy67; } else { if (yych == '`') goto yy67; if (yych <= 'z') goto yy162; goto yy67; } yy102: rbs_skip(state); yych = peek(state); if (yych <= 'Z') { if (yych <= '/') goto yy103; if (yych <= '9') goto yy102; if (yych >= 'A') goto yy102; } else { if (yych <= '_') { if (yych >= '_') goto yy102; } else { if (yych <= '`') goto yy103; if (yych <= 'z') goto yy102; } } yy103: #line 137 "ext/rbs_extension/lexer.re" { return next_token(state, tAIDENT); } #line 1001 "ext/rbs_extension/lexer.c" yy104: rbs_skip(state); #line 134 "ext/rbs_extension/lexer.re" { return next_token(state, tBANGIDENT); } #line 1006 "ext/rbs_extension/lexer.c" yy105: rbs_skip(state); #line 135 "ext/rbs_extension/lexer.re" { return next_token(state, tEQIDENT); } #line 1011 "ext/rbs_extension/lexer.c" yy106: rbs_skip(state); yych = peek(state); if (yych == '=') goto yy23; #line 48 "ext/rbs_extension/lexer.re" { return next_token(state, pAREF_OPR); } #line 1018 "ext/rbs_extension/lexer.c" yy107: rbs_skip(state); yych = peek(state); yy108: if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy107; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy109; if (yych <= 'Z') goto yy107; } else { if (yych == '`') goto yy109; if (yych <= 'z') goto yy107; } } yy109: #line 131 "ext/rbs_extension/lexer.re" { return next_token(state, tULLIDENT); } #line 1042 "ext/rbs_extension/lexer.c" yy110: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy110; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy111; if (yych <= 'Z') goto yy110; } else { if (yych == '`') goto yy111; if (yych <= 'z') goto yy110; } } yy111: #line 132 "ext/rbs_extension/lexer.re" { return next_token(state, tULIDENT); } #line 1065 "ext/rbs_extension/lexer.c" yy112: rbs_skip(state); yych = peek(state); if (yych == 't') goto yy164; goto yy108; yy113: rbs_skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy67; if (yych == '`') goto yy165; goto yy113; yy114: rbs_skip(state); yych = peek(state); if (yych == 'i') goto yy166; goto yy52; yy115: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy116; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy116; if (yych <= 'z') goto yy51; } } yy116: #line 97 "ext/rbs_extension/lexer.re" { return next_token(state, kAS); } #line 1104 "ext/rbs_extension/lexer.c" yy117: rbs_skip(state); yych = peek(state); if (yych == 't') goto yy167; goto yy52; yy118: rbs_skip(state); yych = peek(state); if (yych == 'o') goto yy168; if (yych == 't') goto yy169; goto yy52; yy119: rbs_skip(state); yych = peek(state); if (yych == 'a') goto yy171; goto yy52; yy120: rbs_skip(state); yych = peek(state); if (yych == 'f') goto yy172; goto yy52; yy121: rbs_skip(state); yych = peek(state); if (yych == 'd') goto yy174; goto yy52; yy122: rbs_skip(state); yych = peek(state); if (yych == 't') goto yy176; goto yy52; yy123: rbs_skip(state); yych = peek(state); if (yych == 'l') goto yy177; goto yy52; yy124: rbs_skip(state); yych = peek(state); if (yych <= '^') { if (yych <= '9') { if (yych == '!') goto yy104; if (yych >= '0') goto yy51; } else { if (yych <= '=') { if (yych >= '=') goto yy105; } else { if (yych <= '@') goto yy125; if (yych <= 'Z') goto yy51; } } } else { if (yych <= 'c') { if (yych == '`') goto yy125; if (yych <= 'b') goto yy51; goto yy178; } else { if (yych <= 's') { if (yych <= 'r') goto yy51; goto yy179; } else { if (yych <= 't') goto yy180; if (yych <= 'z') goto yy51; } } } yy125: #line 78 "ext/rbs_extension/lexer.re" { return next_token(state, kIN); } #line 1174 "ext/rbs_extension/lexer.c" yy126: rbs_skip(state); yych = peek(state); if (yych == 'd') goto yy181; goto yy52; yy127: rbs_skip(state); yych = peek(state); if (yych == 'l') goto yy182; goto yy52; yy128: rbs_skip(state); yych = peek(state); if (yych == 't') goto yy184; goto yy52; yy129: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy186; if (yych == 'i') goto yy187; goto yy52; yy130: rbs_skip(state); yych = peek(state); if (yych == 'b') goto yy188; goto yy52; yy131: rbs_skip(state); yych = peek(state); if (yych == 'l') goto yy189; goto yy52; yy132: rbs_skip(state); yych = peek(state); if (yych == 'n') goto yy190; goto yy52; yy133: rbs_skip(state); yych = peek(state); if (yych == 'p') goto yy191; goto yy52; yy134: rbs_skip(state); yych = peek(state); if (yych == 'u') goto yy193; goto yy52; yy135: rbs_skip(state); yych = peek(state); if (yych == 'p') goto yy194; goto yy52; yy136: rbs_skip(state); yych = peek(state); if (yych == 'c') goto yy195; if (yych == 't') goto yy196; goto yy52; yy137: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy197; goto yy52; yy138: rbs_skip(state); yych = peek(state); if (yych == 'i') goto yy199; goto yy52; yy139: rbs_skip(state); yych = peek(state); if (yych <= '@') { if (yych <= '/') goto yy67; if (yych <= '9') goto yy200; goto yy67; } else { if (yych <= 'F') goto yy200; if (yych <= '`') goto yy67; if (yych <= 'f') goto yy200; goto yy67; } yy140: rbs_skip(state); yych = peek(state); if (yych <= '/') goto yy67; if (yych <= '9') goto yy65; if (yych <= '`') goto yy67; if (yych <= 'f') goto yy65; goto yy67; yy141: rbs_skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy67; if (yych == ')') goto yy201; goto yy141; yy142: rbs_skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy67; if (yych == '>') goto yy202; goto yy142; yy143: rbs_skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy67; if (yych == ']') goto yy203; goto yy143; yy144: rbs_skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy67; if (yych == '}') goto yy204; goto yy144; yy145: rbs_skip(state); yych = peek(state); if (yych <= 0x00000000) goto yy67; if (yych == '|') goto yy205; goto yy145; yy146: yyaccept = 5; rbs_skip(state); backup = *state; yych = peek(state); if (yych <= '\'') { if (yych <= 0x00000000) goto yy77; if (yych <= '&') goto yy74; goto yy76; } else { if (yych == '\\') goto yy78; goto yy74; } yy147: rbs_skip(state); #line 39 "ext/rbs_extension/lexer.re" { return next_token(state, pDOT3); } #line 1310 "ext/rbs_extension/lexer.c" yy148: rbs_skip(state); #line 109 "ext/rbs_extension/lexer.re" { return next_token(state, tDQSYMBOL); } #line 1315 "ext/rbs_extension/lexer.c" yy149: rbs_skip(state); yych = peek(state); if (yych == 'u') goto yy206; if (yych == 'x') goto yy207; goto yy84; yy150: rbs_skip(state); yych = peek(state); if (yych <= ',') { if (yych <= '\f') { if (yych <= 0x00000000) goto yy151; if (yych <= 0x00000008) goto yy150; if (yych >= '\v') goto yy150; } else { if (yych <= 0x0000001F) { if (yych >= 0x0000000E) goto yy150; } else { if (yych == '#') goto yy150; } } } else { if (yych <= '>') { if (yych <= '-') goto yy150; if (yych <= '/') goto yy151; if (yych <= '9') goto yy150; } else { if (yych <= '^') { if (yych <= 'Z') goto yy150; } else { if (yych <= 'z') goto yy150; if (yych >= 0x0000007F) goto yy150; } } } yy151: #line 126 "ext/rbs_extension/lexer.re" { return next_token(state, tSYMBOL); } #line 1354 "ext/rbs_extension/lexer.c" yy152: rbs_skip(state); goto yy151; yy153: rbs_skip(state); yy154: #line 110 "ext/rbs_extension/lexer.re" { return next_token(state, tSQSYMBOL); } #line 1363 "ext/rbs_extension/lexer.c" yy155: rbs_skip(state); yych = peek(state); if (yych <= '\'') { if (yych <= 0x00000000) goto yy67; if (yych <= '&') goto yy87; goto yy208; } else { if (yych == '\\') goto yy155; goto yy87; } yy156: rbs_skip(state); yych = peek(state); if (yych == '>') goto yy86; goto yy83; yy157: rbs_skip(state); yych = peek(state); if (yych == '=') goto yy86; goto yy83; yy158: rbs_skip(state); yych = peek(state); if (yych <= '^') { if (yych <= '@') goto yy67; if (yych <= 'Z') goto yy209; goto yy67; } else { if (yych == '`') goto yy67; if (yych <= 'z') goto yy209; goto yy67; } yy159: rbs_skip(state); yych = peek(state); if (yych <= '>') { if (yych <= '/') { if (yych == '!') goto yy211; } else { if (yych <= '9') goto yy159; if (yych == '=') goto yy211; } } else { if (yych <= '^') { if (yych <= '?') goto yy211; if (yych <= '@') goto yy160; if (yych <= 'Z') goto yy159; } else { if (yych == '`') goto yy160; if (yych <= 'z') goto yy159; } } yy160: #line 124 "ext/rbs_extension/lexer.re" { return next_token(state, tSYMBOL); } #line 1420 "ext/rbs_extension/lexer.c" yy161: rbs_skip(state); goto yy96; yy162: rbs_skip(state); yych = peek(state); if (yych <= 'Z') { if (yych <= '/') goto yy163; if (yych <= '9') goto yy162; if (yych >= 'A') goto yy162; } else { if (yych <= '_') { if (yych >= '_') goto yy162; } else { if (yych <= '`') goto yy163; if (yych <= 'z') goto yy162; } } yy163: #line 138 "ext/rbs_extension/lexer.re" { return next_token(state, tA2IDENT); } #line 1442 "ext/rbs_extension/lexer.c" yy164: rbs_skip(state); yych = peek(state); if (yych == 'o') goto yy212; goto yy108; yy165: rbs_skip(state); #line 41 "ext/rbs_extension/lexer.re" { return next_token(state, tQIDENT); } #line 1452 "ext/rbs_extension/lexer.c" yy166: rbs_skip(state); yych = peek(state); if (yych == 'a') goto yy213; goto yy52; yy167: rbs_skip(state); yych = peek(state); if (yych == 'r') goto yy214; goto yy52; yy168: rbs_skip(state); yych = peek(state); if (yych == 'l') goto yy215; goto yy52; yy169: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy170; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy170; if (yych <= 'z') goto yy51; } } yy170: #line 72 "ext/rbs_extension/lexer.re" { return next_token(state, kBOT); } #line 1490 "ext/rbs_extension/lexer.c" yy171: rbs_skip(state); yych = peek(state); if (yych == 's') goto yy217; goto yy52; yy172: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy173; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy173; if (yych <= 'z') goto yy51; } } yy173: #line 74 "ext/rbs_extension/lexer.re" { return next_token(state, kDEF); } #line 1518 "ext/rbs_extension/lexer.c" yy174: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy175; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy175; if (yych <= 'z') goto yy51; } } yy175: #line 75 "ext/rbs_extension/lexer.re" { return next_token(state, kEND); } #line 1541 "ext/rbs_extension/lexer.c" yy176: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy218; goto yy52; yy177: rbs_skip(state); yych = peek(state); if (yych == 's') goto yy219; goto yy52; yy178: rbs_skip(state); yych = peek(state); if (yych == 'l') goto yy220; goto yy52; yy179: rbs_skip(state); yych = peek(state); if (yych == 't') goto yy221; goto yy52; yy180: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy222; goto yy52; yy181: rbs_skip(state); yych = peek(state); if (yych == 'u') goto yy223; goto yy52; yy182: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy183; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy183; if (yych <= 'z') goto yy51; } } yy183: #line 83 "ext/rbs_extension/lexer.re" { return next_token(state, kNIL); } #line 1594 "ext/rbs_extension/lexer.c" yy184: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy185; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy185; if (yych <= 'z') goto yy51; } } yy185: #line 84 "ext/rbs_extension/lexer.re" { return next_token(state, kOUT); } #line 1617 "ext/rbs_extension/lexer.c" yy186: rbs_skip(state); yych = peek(state); if (yych == 'p') goto yy224; goto yy52; yy187: rbs_skip(state); yych = peek(state); if (yych == 'v') goto yy225; goto yy52; yy188: rbs_skip(state); yych = peek(state); if (yych == 'l') goto yy226; goto yy52; yy189: rbs_skip(state); yych = peek(state); if (yych == 'f') goto yy227; goto yy52; yy190: rbs_skip(state); yych = peek(state); if (yych == 'g') goto yy229; goto yy52; yy191: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy192; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy192; if (yych <= 'z') goto yy51; } } yy192: #line 90 "ext/rbs_extension/lexer.re" { return next_token(state, kTOP); } #line 1665 "ext/rbs_extension/lexer.c" yy193: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy230; goto yy52; yy194: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy232; goto yy52; yy195: rbs_skip(state); yych = peek(state); if (yych == 'h') goto yy234; goto yy52; yy196: rbs_skip(state); yych = peek(state); if (yych == 'y') goto yy235; goto yy52; yy197: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy198; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy198; if (yych <= 'z') goto yy51; } } yy198: #line 96 "ext/rbs_extension/lexer.re" { return next_token(state, kUSE); } #line 1708 "ext/rbs_extension/lexer.c" yy199: rbs_skip(state); yych = peek(state); if (yych == 'd') goto yy236; goto yy52; yy200: rbs_skip(state); yych = peek(state); if (yych <= '@') { if (yych <= '/') goto yy67; if (yych <= '9') goto yy238; goto yy67; } else { if (yych <= 'F') goto yy238; if (yych <= '`') goto yy67; if (yych <= 'f') goto yy238; goto yy67; } yy201: rbs_skip(state); #line 55 "ext/rbs_extension/lexer.re" { return next_token(state, tANNOTATION); } #line 1731 "ext/rbs_extension/lexer.c" yy202: rbs_skip(state); #line 58 "ext/rbs_extension/lexer.re" { return next_token(state, tANNOTATION); } #line 1736 "ext/rbs_extension/lexer.c" yy203: rbs_skip(state); #line 56 "ext/rbs_extension/lexer.re" { return next_token(state, tANNOTATION); } #line 1741 "ext/rbs_extension/lexer.c" yy204: rbs_skip(state); #line 54 "ext/rbs_extension/lexer.re" { return next_token(state, tANNOTATION); } #line 1746 "ext/rbs_extension/lexer.c" yy205: rbs_skip(state); #line 57 "ext/rbs_extension/lexer.re" { return next_token(state, tANNOTATION); } #line 1751 "ext/rbs_extension/lexer.c" yy206: rbs_skip(state); yych = peek(state); if (yych <= '@') { if (yych <= '/') goto yy67; if (yych <= '9') goto yy239; goto yy67; } else { if (yych <= 'F') goto yy239; if (yych <= '`') goto yy67; if (yych <= 'f') goto yy239; goto yy67; } yy207: rbs_skip(state); yych = peek(state); if (yych <= '/') goto yy67; if (yych <= '9') goto yy84; if (yych <= '`') goto yy67; if (yych <= 'f') goto yy84; goto yy67; yy208: yyaccept = 6; rbs_skip(state); backup = *state; yych = peek(state); if (yych <= '\'') { if (yych <= 0x00000000) goto yy154; if (yych <= '&') goto yy87; goto yy153; } else { if (yych == '\\') goto yy155; goto yy87; } yy209: rbs_skip(state); yych = peek(state); if (yych <= '>') { if (yych <= '/') { if (yych == '!') goto yy240; } else { if (yych <= '9') goto yy209; if (yych == '=') goto yy240; } } else { if (yych <= '^') { if (yych <= '?') goto yy240; if (yych <= '@') goto yy210; if (yych <= 'Z') goto yy209; } else { if (yych == '`') goto yy210; if (yych <= 'z') goto yy209; } } yy210: #line 125 "ext/rbs_extension/lexer.re" { return next_token(state, tSYMBOL); } #line 1809 "ext/rbs_extension/lexer.c" yy211: rbs_skip(state); goto yy160; yy212: rbs_skip(state); yych = peek(state); if (yych == 'd') goto yy241; goto yy108; yy213: rbs_skip(state); yych = peek(state); if (yych == 's') goto yy242; goto yy52; yy214: rbs_skip(state); yych = peek(state); if (yych == '_') goto yy244; goto yy52; yy215: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy216; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy216; if (yych <= 'z') goto yy51; } } yy216: #line 71 "ext/rbs_extension/lexer.re" { return next_token(state, kBOOL); } #line 1850 "ext/rbs_extension/lexer.c" yy217: rbs_skip(state); yych = peek(state); if (yych == 's') goto yy245; goto yy52; yy218: rbs_skip(state); yych = peek(state); if (yych == 'n') goto yy247; goto yy52; yy219: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy248; goto yy52; yy220: rbs_skip(state); yych = peek(state); if (yych == 'u') goto yy250; goto yy52; yy221: rbs_skip(state); yych = peek(state); if (yych == 'a') goto yy251; goto yy52; yy222: rbs_skip(state); yych = peek(state); if (yych == 'r') goto yy252; goto yy52; yy223: rbs_skip(state); yych = peek(state); if (yych == 'l') goto yy253; goto yy52; yy224: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy254; goto yy52; yy225: rbs_skip(state); yych = peek(state); if (yych == 'a') goto yy255; goto yy52; yy226: rbs_skip(state); yych = peek(state); if (yych == 'i') goto yy256; goto yy52; yy227: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy228; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy228; if (yych <= 'z') goto yy51; } } yy228: #line 88 "ext/rbs_extension/lexer.re" { return next_token(state, kSELF); } #line 1923 "ext/rbs_extension/lexer.c" yy229: rbs_skip(state); yych = peek(state); if (yych == 'l') goto yy257; goto yy52; yy230: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy231; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy231; if (yych <= 'z') goto yy51; } } yy231: #line 91 "ext/rbs_extension/lexer.re" { return next_token(state, kTRUE); } #line 1951 "ext/rbs_extension/lexer.c" yy232: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy233; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy233; if (yych <= 'z') goto yy51; } } yy233: #line 92 "ext/rbs_extension/lexer.re" { return next_token(state, kTYPE); } #line 1974 "ext/rbs_extension/lexer.c" yy234: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy258; goto yy52; yy235: rbs_skip(state); yych = peek(state); if (yych == 'p') goto yy259; goto yy52; yy236: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy237; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy237; if (yych <= 'z') goto yy51; } } yy237: #line 95 "ext/rbs_extension/lexer.re" { return next_token(state, kVOID); } #line 2007 "ext/rbs_extension/lexer.c" yy238: rbs_skip(state); yych = peek(state); if (yych <= '@') { if (yych <= '/') goto yy67; if (yych <= '9') goto yy260; goto yy67; } else { if (yych <= 'F') goto yy260; if (yych <= '`') goto yy67; if (yych <= 'f') goto yy260; goto yy67; } yy239: rbs_skip(state); yych = peek(state); if (yych <= '@') { if (yych <= '/') goto yy67; if (yych <= '9') goto yy261; goto yy67; } else { if (yych <= 'F') goto yy261; if (yych <= '`') goto yy67; if (yych <= 'f') goto yy261; goto yy67; } yy240: rbs_skip(state); goto yy210; yy241: rbs_skip(state); yych = peek(state); if (yych == 'o') goto yy262; goto yy108; yy242: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy243; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy243; if (yych <= 'z') goto yy51; } } yy243: #line 67 "ext/rbs_extension/lexer.re" { return next_token(state, kALIAS); } #line 2064 "ext/rbs_extension/lexer.c" yy244: rbs_skip(state); yych = peek(state); if (yych <= 'q') { if (yych == 'a') goto yy263; goto yy52; } else { if (yych <= 'r') goto yy264; if (yych == 'w') goto yy265; goto yy52; } yy245: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy246; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy246; if (yych <= 'z') goto yy51; } } yy246: #line 73 "ext/rbs_extension/lexer.re" { return next_token(state, kCLASS); } #line 2098 "ext/rbs_extension/lexer.c" yy247: rbs_skip(state); yych = peek(state); if (yych == 'd') goto yy266; goto yy52; yy248: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy249; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy249; if (yych <= 'z') goto yy51; } } yy249: #line 77 "ext/rbs_extension/lexer.re" { return next_token(state, kFALSE); } #line 2126 "ext/rbs_extension/lexer.c" yy250: rbs_skip(state); yych = peek(state); if (yych == 'd') goto yy268; goto yy52; yy251: rbs_skip(state); yych = peek(state); if (yych == 'n') goto yy269; goto yy52; yy252: rbs_skip(state); yych = peek(state); if (yych == 'f') goto yy270; goto yy52; yy253: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy271; goto yy52; yy254: rbs_skip(state); yych = peek(state); if (yych == 'n') goto yy273; goto yy52; yy255: rbs_skip(state); yych = peek(state); if (yych == 't') goto yy274; goto yy52; yy256: rbs_skip(state); yych = peek(state); if (yych == 'c') goto yy275; goto yy52; yy257: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy277; goto yy52; yy258: rbs_skip(state); yych = peek(state); if (yych == 'c') goto yy278; goto yy52; yy259: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy279; goto yy52; yy260: rbs_skip(state); yych = peek(state); if (yych <= '@') { if (yych <= '/') goto yy67; if (yych <= '9') goto yy65; goto yy67; } else { if (yych <= 'F') goto yy65; if (yych <= '`') goto yy67; if (yych <= 'f') goto yy65; goto yy67; } yy261: rbs_skip(state); yych = peek(state); if (yych <= '@') { if (yych <= '/') goto yy67; if (yych <= '9') goto yy280; goto yy67; } else { if (yych <= 'F') goto yy280; if (yych <= '`') goto yy67; if (yych <= 'f') goto yy280; goto yy67; } yy262: rbs_skip(state); yych = peek(state); if (yych == '_') goto yy281; goto yy108; yy263: rbs_skip(state); yych = peek(state); if (yych == 'c') goto yy282; goto yy52; yy264: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy283; goto yy52; yy265: rbs_skip(state); yych = peek(state); if (yych == 'r') goto yy284; goto yy52; yy266: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy267; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy267; if (yych <= 'z') goto yy51; } } yy267: #line 76 "ext/rbs_extension/lexer.re" { return next_token(state, kEXTEND); } #line 2245 "ext/rbs_extension/lexer.c" yy268: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy285; goto yy52; yy269: rbs_skip(state); yych = peek(state); if (yych == 'c') goto yy287; goto yy52; yy270: rbs_skip(state); yych = peek(state); if (yych == 'a') goto yy288; goto yy52; yy271: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy272; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy272; if (yych <= 'z') goto yy51; } } yy272: #line 82 "ext/rbs_extension/lexer.re" { return next_token(state, kMODULE); } #line 2283 "ext/rbs_extension/lexer.c" yy273: rbs_skip(state); yych = peek(state); if (yych == 'd') goto yy289; goto yy52; yy274: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy291; goto yy52; yy275: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy276; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy276; if (yych <= 'z') goto yy51; } } yy276: #line 87 "ext/rbs_extension/lexer.re" { return next_token(state, kPUBLIC); } #line 2316 "ext/rbs_extension/lexer.c" yy277: rbs_skip(state); yych = peek(state); if (yych == 't') goto yy293; goto yy52; yy278: rbs_skip(state); yych = peek(state); if (yych == 'k') goto yy294; goto yy52; yy279: rbs_skip(state); yych = peek(state); if (yych == 'd') goto yy295; goto yy52; yy280: rbs_skip(state); yych = peek(state); if (yych <= '@') { if (yych <= '/') goto yy67; if (yych <= '9') goto yy84; goto yy67; } else { if (yych <= 'F') goto yy84; if (yych <= '`') goto yy67; if (yych <= 'f') goto yy84; goto yy67; } yy281: rbs_skip(state); yych = peek(state); if (yych == '_') goto yy297; goto yy108; yy282: rbs_skip(state); yych = peek(state); if (yych == 'c') goto yy299; goto yy52; yy283: rbs_skip(state); yych = peek(state); if (yych == 'a') goto yy300; goto yy52; yy284: rbs_skip(state); yych = peek(state); if (yych == 'i') goto yy301; goto yy52; yy285: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy286; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy286; if (yych <= 'z') goto yy51; } } yy286: #line 79 "ext/rbs_extension/lexer.re" { return next_token(state, kINCLUDE); } #line 2387 "ext/rbs_extension/lexer.c" yy287: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy302; goto yy52; yy288: rbs_skip(state); yych = peek(state); if (yych == 'c') goto yy304; goto yy52; yy289: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy290; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy290; if (yych <= 'z') goto yy51; } } yy290: #line 85 "ext/rbs_extension/lexer.re" { return next_token(state, kPREPEND); } #line 2420 "ext/rbs_extension/lexer.c" yy291: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy292; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy292; if (yych <= 'z') goto yy51; } } yy292: #line 86 "ext/rbs_extension/lexer.re" { return next_token(state, kPRIVATE); } #line 2443 "ext/rbs_extension/lexer.c" yy293: rbs_skip(state); yych = peek(state); if (yych == 'o') goto yy305; goto yy52; yy294: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy306; goto yy52; yy295: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy296; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy296; if (yych <= 'z') goto yy51; } } yy296: #line 94 "ext/rbs_extension/lexer.re" { return next_token(state, kUNTYPED); } #line 2476 "ext/rbs_extension/lexer.c" yy297: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy107; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy298; if (yych <= 'Z') goto yy107; } else { if (yych == '`') goto yy298; if (yych <= 'z') goto yy107; } } yy298: #line 98 "ext/rbs_extension/lexer.re" { return next_token(state, k__TODO__); } #line 2499 "ext/rbs_extension/lexer.c" yy299: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy307; goto yy52; yy300: rbs_skip(state); yych = peek(state); if (yych == 'd') goto yy308; goto yy52; yy301: rbs_skip(state); yych = peek(state); if (yych == 't') goto yy309; goto yy52; yy302: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy303; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy303; if (yych <= 'z') goto yy51; } } yy303: #line 80 "ext/rbs_extension/lexer.re" { return next_token(state, kINSTANCE); } #line 2537 "ext/rbs_extension/lexer.c" yy304: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy310; goto yy52; yy305: rbs_skip(state); yych = peek(state); if (yych == 'n') goto yy312; goto yy52; yy306: rbs_skip(state); yych = peek(state); if (yych == 'd') goto yy314; goto yy52; yy307: rbs_skip(state); yych = peek(state); if (yych == 's') goto yy316; goto yy52; yy308: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy317; goto yy52; yy309: rbs_skip(state); yych = peek(state); if (yych == 'e') goto yy318; goto yy52; yy310: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy311; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy311; if (yych <= 'z') goto yy51; } } yy311: #line 81 "ext/rbs_extension/lexer.re" { return next_token(state, kINTERFACE); } #line 2590 "ext/rbs_extension/lexer.c" yy312: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy313; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy313; if (yych <= 'z') goto yy51; } } yy313: #line 89 "ext/rbs_extension/lexer.re" { return next_token(state, kSINGLETON); } #line 2613 "ext/rbs_extension/lexer.c" yy314: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy315; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy315; if (yych <= 'z') goto yy51; } } yy315: #line 93 "ext/rbs_extension/lexer.re" { return next_token(state, kUNCHECKED); } #line 2636 "ext/rbs_extension/lexer.c" yy316: rbs_skip(state); yych = peek(state); if (yych == 's') goto yy319; goto yy52; yy317: rbs_skip(state); yych = peek(state); if (yych == 'r') goto yy320; goto yy52; yy318: rbs_skip(state); yych = peek(state); if (yych == 'r') goto yy322; goto yy52; yy319: rbs_skip(state); yych = peek(state); if (yych == 'o') goto yy324; goto yy52; yy320: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy321; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy321; if (yych <= 'z') goto yy51; } } yy321: #line 69 "ext/rbs_extension/lexer.re" { return next_token(state, kATTRREADER); } #line 2679 "ext/rbs_extension/lexer.c" yy322: rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy323; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy323; if (yych <= 'z') goto yy51; } } yy323: #line 70 "ext/rbs_extension/lexer.re" { return next_token(state, kATTRWRITER); } #line 2702 "ext/rbs_extension/lexer.c" yy324: rbs_skip(state); yych = peek(state); if (yych != 'r') goto yy52; rbs_skip(state); yych = peek(state); if (yych <= '=') { if (yych <= '/') { if (yych == '!') goto yy104; } else { if (yych <= '9') goto yy51; if (yych >= '=') goto yy105; } } else { if (yych <= '^') { if (yych <= '@') goto yy325; if (yych <= 'Z') goto yy51; } else { if (yych == '`') goto yy325; if (yych <= 'z') goto yy51; } } yy325: #line 68 "ext/rbs_extension/lexer.re" { return next_token(state, kATTRACCESSOR); } #line 2728 "ext/rbs_extension/lexer.c" } #line 147 "ext/rbs_extension/lexer.re" }