/* Generated by re2c */ #line 1 "modula.re" #include #include #include typedef unsigned int uint; typedef unsigned char uchar; #define BSIZE 8192 #define YYCTYPE uchar #define YYCURSOR cursor #define YYLIMIT s->lim #define YYMARKER s->ptr #define YYCTXMARKER s->ctx #define YYFILL {cursor = fill(s, cursor);} #define RETURN(i) {s->cur = cursor; return i;} typedef struct Scanner { int fd; uchar *bot, *tok, *ptr, *ctx, *cur, *pos, *lim, *top, *eof; uint line; } Scanner; uchar *fill(Scanner *s, uchar *cursor){ if(!s->eof){ uint cnt = s->tok - s->bot; if(cnt){ memcpy(s->bot, s->tok, s->lim - s->tok); s->tok = s->bot; s->ptr -= cnt; cursor -= cnt; s->pos -= cnt; s->lim -= cnt; } if((s->top - s->lim) < BSIZE){ uchar *buf = (uchar*) malloc(((s->lim - s->bot) + BSIZE)*sizeof(uchar)); memcpy(buf, s->tok, s->lim - s->tok); s->tok = buf; s->ptr = &buf[s->ptr - s->bot]; cursor = &buf[cursor - s->bot]; s->pos = &buf[s->pos - s->bot]; s->lim = &buf[s->lim - s->bot]; s->top = &s->lim[BSIZE]; free(s->bot); s->bot = buf; } if((cnt = read(s->fd, (char*) s->lim, BSIZE)) != BSIZE){ s->eof = &s->lim[cnt]; *(s->eof)++ = '\n'; } s->lim += cnt; } return cursor; } int scan(Scanner *s){ uchar *cursor = s->cur; uint depth; std: s->tok = cursor; #line 65 "modula.re" #line 68 "" { YYCTYPE yych; unsigned int yyaccept = 0; if((YYLIMIT - YYCURSOR) < 15) YYFILL(15); yych = *YYCURSOR; switch(yych) { case 0x09: case ' ': goto yy73; case 0x0A: goto yy75; case '"': goto yy9; case '#': goto yy10; case '&': goto yy12; case '\'': goto yy7; case '(': goto yy2; case ')': goto yy14; case '*': goto yy16; case '+': goto yy18; case ',': goto yy20; case '-': goto yy22; case '.': goto yy24; case '/': goto yy26; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': goto yy4; case '8': case '9': goto yy6; case ':': goto yy28; case ';': goto yy30; case '<': goto yy32; case '=': goto yy34; case '>': goto yy36; case 'A': goto yy52; case 'B': goto yy54; case 'C': goto yy55; case 'D': goto yy56; case 'E': goto yy57; case 'F': goto yy58; case 'G': case 'H': case 'J': case 'K': case 'X': case 'Y': case 'Z': 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 yy72; case 'I': goto yy59; case 'L': goto yy60; case 'M': goto yy61; case 'N': goto yy62; case 'O': goto yy63; case 'P': goto yy64; case 'Q': goto yy65; case 'R': goto yy66; case 'S': goto yy67; case 'T': goto yy68; case 'U': goto yy69; case 'V': goto yy70; case 'W': goto yy71; case '[': goto yy38; case ']': goto yy40; case '^': goto yy42; case '{': goto yy44; case '|': goto yy46; case '}': goto yy48; case '~': goto yy50; default: goto yy77; } yy2: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '*': goto yy297; default: goto yy3; } yy3: #line 80 "modula.re" {RETURN(9);} #line 176 "" yy4: YYCTXMARKER = YYCURSOR + 1; yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); goto yy292; yy5: #line 70 "modula.re" {RETURN(1);} #line 185 "" yy6: YYCTXMARKER = YYCURSOR + 1; yyaccept = 0; yych = *(YYMARKER = ++YYCURSOR); goto yy278; yy7: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); switch(yych) { case 0x0A: goto yy8; default: goto yy274; } yy8: #line 159 "modula.re" { printf("unexpected character: %c\n", *s->tok); goto std; } #line 204 "" yy9: yyaccept = 1; yych = *(YYMARKER = ++YYCURSOR); switch(yych) { case 0x0A: goto yy8; default: goto yy269; } yy10: ++YYCURSOR; #line 78 "modula.re" {RETURN(7);} #line 216 "" yy12: ++YYCURSOR; #line 79 "modula.re" {RETURN(8);} #line 221 "" yy14: ++YYCURSOR; #line 81 "modula.re" {RETURN(10);} #line 226 "" yy16: ++YYCURSOR; #line 82 "modula.re" {RETURN(11);} #line 231 "" yy18: ++YYCURSOR; #line 83 "modula.re" {RETURN(12);} #line 236 "" yy20: ++YYCURSOR; #line 84 "modula.re" {RETURN(13);} #line 241 "" yy22: ++YYCURSOR; #line 85 "modula.re" {RETURN(14);} #line 246 "" yy24: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '.': goto yy266; default: goto yy25; } yy25: #line 86 "modula.re" {RETURN(15);} #line 256 "" yy26: ++YYCURSOR; #line 88 "modula.re" {RETURN(17);} #line 261 "" yy28: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '=': goto yy264; default: goto yy29; } yy29: #line 89 "modula.re" {RETURN(18);} #line 271 "" yy30: ++YYCURSOR; #line 91 "modula.re" {RETURN(20);} #line 276 "" yy32: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '=': goto yy262; case '>': goto yy260; default: goto yy33; } yy33: #line 92 "modula.re" {RETURN(21);} #line 287 "" yy34: ++YYCURSOR; #line 95 "modula.re" {RETURN(24);} #line 292 "" yy36: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '=': goto yy258; default: goto yy37; } yy37: #line 96 "modula.re" {RETURN(25);} #line 302 "" yy38: ++YYCURSOR; #line 98 "modula.re" {RETURN(27);} #line 307 "" yy40: ++YYCURSOR; #line 99 "modula.re" {RETURN(28);} #line 312 "" yy42: ++YYCURSOR; #line 100 "modula.re" {RETURN(29);} #line 317 "" yy44: ++YYCURSOR; #line 101 "modula.re" {RETURN(30);} #line 322 "" yy46: ++YYCURSOR; #line 102 "modula.re" {RETURN(31);} #line 327 "" yy48: ++YYCURSOR; #line 103 "modula.re" {RETURN(32);} #line 332 "" yy50: ++YYCURSOR; #line 104 "modula.re" {RETURN(33);} #line 337 "" yy52: ++YYCURSOR; switch((yych = *YYCURSOR)) { case 'N': goto yy250; case 'R': goto yy251; default: goto yy81; } yy53: #line 147 "modula.re" {RETURN(74);} #line 348 "" yy54: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy243; case 'Y': goto yy244; default: goto yy81; } yy55: yych = *++YYCURSOR; switch(yych) { case 'A': goto yy234; case 'O': goto yy235; default: goto yy81; } yy56: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy219; case 'I': goto yy220; case 'O': goto yy221; default: goto yy81; } yy57: yych = *++YYCURSOR; switch(yych) { case 'L': goto yy200; case 'N': goto yy201; case 'X': goto yy202; default: goto yy81; } yy58: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy193; case 'R': goto yy194; default: goto yy81; } yy59: yych = *++YYCURSOR; switch(yych) { case 'F': goto yy171; case 'M': goto yy173; case 'N': goto yy174; default: goto yy81; } yy60: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy167; default: goto yy81; } yy61: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy160; default: goto yy81; } yy62: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy157; default: goto yy81; } yy63: yych = *++YYCURSOR; switch(yych) { case 'F': goto yy153; case 'R': goto yy155; default: goto yy81; } yy64: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy137; case 'R': goto yy138; default: goto yy81; } yy65: yych = *++YYCURSOR; switch(yych) { case 'U': goto yy128; default: goto yy81; } yy66: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy112; default: goto yy81; } yy67: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy109; default: goto yy81; } yy68: yych = *++YYCURSOR; switch(yych) { case 'H': goto yy99; case 'O': goto yy100; case 'Y': goto yy102; default: goto yy81; } yy69: yych = *++YYCURSOR; switch(yych) { case 'N': goto yy94; default: goto yy81; } yy70: yych = *++YYCURSOR; switch(yych) { case 'A': goto yy91; default: goto yy81; } yy71: yych = *++YYCURSOR; switch(yych) { case 'H': goto yy82; case 'I': goto yy83; default: goto yy81; } yy72: yych = *++YYCURSOR; goto yy81; yy73: ++YYCURSOR; yych = *YYCURSOR; goto yy79; yy74: #line 149 "modula.re" { goto std; } #line 481 "" yy75: ++YYCURSOR; #line 152 "modula.re" { if(cursor == s->eof) RETURN(0); s->pos = cursor; s->line++; goto std; } #line 490 "" yy77: yych = *++YYCURSOR; goto yy8; yy78: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy79: switch(yych) { case 0x09: case ' ': goto yy78; default: goto yy74; } yy80: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy81: switch(yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy53; } yy82: yych = *++YYCURSOR; switch(yych) { case 'I': goto yy87; default: goto yy81; } yy83: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy84; default: goto yy81; } yy84: yych = *++YYCURSOR; switch(yych) { case 'H': goto yy85; default: goto yy81; } yy85: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy86; } yy86: #line 145 "modula.re" {RETURN(73);} #line 662 "" yy87: yych = *++YYCURSOR; switch(yych) { case 'L': goto yy88; default: goto yy81; } yy88: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy89; default: goto yy81; } yy89: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy90; } yy90: #line 144 "modula.re" {RETURN(72);} #line 745 "" yy91: yych = *++YYCURSOR; switch(yych) { case 'R': goto yy92; default: goto yy81; } yy92: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy93; } yy93: #line 143 "modula.re" {RETURN(71);} #line 822 "" yy94: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy95; default: goto yy81; } yy95: yych = *++YYCURSOR; switch(yych) { case 'I': goto yy96; default: goto yy81; } yy96: yych = *++YYCURSOR; switch(yych) { case 'L': goto yy97; default: goto yy81; } yy97: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy98; } yy98: #line 142 "modula.re" {RETURN(70);} #line 911 "" yy99: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy106; default: goto yy81; } yy100: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy101; } yy101: #line 140 "modula.re" {RETURN(68);} #line 988 "" yy102: yych = *++YYCURSOR; switch(yych) { case 'P': goto yy103; default: goto yy81; } yy103: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy104; default: goto yy81; } yy104: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy105; } yy105: #line 141 "modula.re" {RETURN(69);} #line 1071 "" yy106: yych = *++YYCURSOR; switch(yych) { case 'N': goto yy107; default: goto yy81; } yy107: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy108; } yy108: #line 139 "modula.re" {RETURN(67);} #line 1148 "" yy109: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy110; default: goto yy81; } yy110: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy111; } yy111: #line 138 "modula.re" {RETURN(66);} #line 1225 "" yy112: yych = *++YYCURSOR; switch(yych) { case 'C': goto yy113; case 'P': goto yy114; case 'T': goto yy115; default: goto yy81; } yy113: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy124; default: goto yy81; } yy114: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy120; default: goto yy81; } yy115: yych = *++YYCURSOR; switch(yych) { case 'U': goto yy116; default: goto yy81; } yy116: yych = *++YYCURSOR; switch(yych) { case 'R': goto yy117; default: goto yy81; } yy117: yych = *++YYCURSOR; switch(yych) { case 'N': goto yy118; default: goto yy81; } yy118: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy119; } yy119: #line 137 "modula.re" {RETURN(65);} #line 1334 "" yy120: yych = *++YYCURSOR; switch(yych) { case 'A': goto yy121; default: goto yy81; } yy121: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy122; default: goto yy81; } yy122: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy123; } yy123: #line 136 "modula.re" {RETURN(64);} #line 1417 "" yy124: yych = *++YYCURSOR; switch(yych) { case 'R': goto yy125; default: goto yy81; } yy125: yych = *++YYCURSOR; switch(yych) { case 'D': goto yy126; default: goto yy81; } yy126: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy127; } yy127: #line 135 "modula.re" {RETURN(63);} #line 1500 "" yy128: yych = *++YYCURSOR; switch(yych) { case 'A': goto yy129; default: goto yy81; } yy129: yych = *++YYCURSOR; switch(yych) { case 'L': goto yy130; default: goto yy81; } yy130: yych = *++YYCURSOR; switch(yych) { case 'I': goto yy131; default: goto yy81; } yy131: yych = *++YYCURSOR; switch(yych) { case 'F': goto yy132; default: goto yy81; } yy132: yych = *++YYCURSOR; switch(yych) { case 'I': goto yy133; default: goto yy81; } yy133: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy134; default: goto yy81; } yy134: yych = *++YYCURSOR; switch(yych) { case 'D': goto yy135; default: goto yy81; } yy135: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy136; } yy136: #line 134 "modula.re" {RETURN(62);} #line 1613 "" yy137: yych = *++YYCURSOR; switch(yych) { case 'I': goto yy147; default: goto yy81; } yy138: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy139; default: goto yy81; } yy139: yych = *++YYCURSOR; switch(yych) { case 'C': goto yy140; default: goto yy81; } yy140: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy141; default: goto yy81; } yy141: yych = *++YYCURSOR; switch(yych) { case 'D': goto yy142; default: goto yy81; } yy142: yych = *++YYCURSOR; switch(yych) { case 'U': goto yy143; default: goto yy81; } yy143: yych = *++YYCURSOR; switch(yych) { case 'R': goto yy144; default: goto yy81; } yy144: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy145; default: goto yy81; } yy145: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy146; } yy146: #line 133 "modula.re" {RETURN(61);} #line 1732 "" yy147: yych = *++YYCURSOR; switch(yych) { case 'N': goto yy148; default: goto yy81; } yy148: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy149; default: goto yy81; } yy149: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy150; default: goto yy81; } yy150: yych = *++YYCURSOR; switch(yych) { case 'R': goto yy151; default: goto yy81; } yy151: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy152; } yy152: #line 132 "modula.re" {RETURN(60);} #line 1827 "" yy153: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy154; } yy154: #line 130 "modula.re" {RETURN(58);} #line 1898 "" yy155: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy156; } yy156: #line 131 "modula.re" {RETURN(59);} #line 1969 "" yy157: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy158; default: goto yy81; } yy158: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy159; } yy159: #line 129 "modula.re" {RETURN(57);} #line 2046 "" yy160: yych = *++YYCURSOR; switch(yych) { case 'D': goto yy161; default: goto yy81; } yy161: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 'V': case 'W': case 'X': case 'Y': case 'Z': 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 yy80; case 'U': goto yy163; default: goto yy162; } yy162: #line 127 "modula.re" {RETURN(55);} #line 2123 "" yy163: yych = *++YYCURSOR; switch(yych) { case 'L': goto yy164; default: goto yy81; } yy164: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy165; default: goto yy81; } yy165: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy166; } yy166: #line 128 "modula.re" {RETURN(56);} #line 2206 "" yy167: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy168; default: goto yy81; } yy168: yych = *++YYCURSOR; switch(yych) { case 'P': goto yy169; default: goto yy81; } yy169: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy170; } yy170: #line 126 "modula.re" {RETURN(54);} #line 2289 "" yy171: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy172; } yy172: #line 122 "modula.re" {RETURN(50);} #line 2360 "" yy173: yych = *++YYCURSOR; switch(yych) { case 'P': goto yy176; default: goto yy81; } yy174: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy175; } yy175: #line 125 "modula.re" {RETURN(53);} #line 2437 "" yy176: yych = *++YYCURSOR; switch(yych) { case 'L': goto yy177; case 'O': goto yy178; default: goto yy81; } yy177: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy182; default: goto yy81; } yy178: yych = *++YYCURSOR; switch(yych) { case 'R': goto yy179; default: goto yy81; } yy179: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy180; default: goto yy81; } yy180: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy181; } yy181: #line 124 "modula.re" {RETURN(52);} #line 2533 "" yy182: yych = *++YYCURSOR; switch(yych) { case 'M': goto yy183; default: goto yy81; } yy183: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy184; default: goto yy81; } yy184: yych = *++YYCURSOR; switch(yych) { case 'N': goto yy185; default: goto yy81; } yy185: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy186; default: goto yy81; } yy186: yych = *++YYCURSOR; switch(yych) { case 'A': goto yy187; default: goto yy81; } yy187: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy188; default: goto yy81; } yy188: yych = *++YYCURSOR; switch(yych) { case 'I': goto yy189; default: goto yy81; } yy189: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy190; default: goto yy81; } yy190: yych = *++YYCURSOR; switch(yych) { case 'N': goto yy191; default: goto yy81; } yy191: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy192; } yy192: #line 123 "modula.re" {RETURN(51);} #line 2658 "" yy193: yych = *++YYCURSOR; switch(yych) { case 'R': goto yy198; default: goto yy81; } yy194: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy195; default: goto yy81; } yy195: yych = *++YYCURSOR; switch(yych) { case 'M': goto yy196; default: goto yy81; } yy196: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy197; } yy197: #line 121 "modula.re" {RETURN(49);} #line 2747 "" yy198: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy199; } yy199: #line 120 "modula.re" {RETURN(48);} #line 2818 "" yy200: yych = *++YYCURSOR; switch(yych) { case 'S': goto yy213; default: goto yy81; } yy201: yych = *++YYCURSOR; switch(yych) { case 'D': goto yy211; default: goto yy81; } yy202: yych = *++YYCURSOR; switch(yych) { case 'I': goto yy203; case 'P': goto yy204; default: goto yy81; } yy203: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy209; default: goto yy81; } yy204: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy205; default: goto yy81; } yy205: yych = *++YYCURSOR; switch(yych) { case 'R': goto yy206; default: goto yy81; } yy206: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy207; default: goto yy81; } yy207: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy208; } yy208: #line 119 "modula.re" {RETURN(47);} #line 2932 "" yy209: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy210; } yy210: #line 118 "modula.re" {RETURN(46);} #line 3003 "" yy211: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy212; } yy212: #line 117 "modula.re" {RETURN(45);} #line 3074 "" yy213: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy214; case 'I': goto yy216; default: goto yy81; } yy214: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy215; } yy215: #line 115 "modula.re" {RETURN(43);} #line 3152 "" yy216: yych = *++YYCURSOR; switch(yych) { case 'F': goto yy217; default: goto yy81; } yy217: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy218; } yy218: #line 116 "modula.re" {RETURN(44);} #line 3229 "" yy219: yych = *++YYCURSOR; switch(yych) { case 'F': goto yy225; default: goto yy81; } yy220: yych = *++YYCURSOR; switch(yych) { case 'V': goto yy223; default: goto yy81; } yy221: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy222; } yy222: #line 114 "modula.re" {RETURN(42);} #line 3312 "" yy223: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy224; } yy224: #line 113 "modula.re" {RETURN(41);} #line 3383 "" yy225: yych = *++YYCURSOR; switch(yych) { case 'I': goto yy226; default: goto yy81; } yy226: yych = *++YYCURSOR; switch(yych) { case 'N': goto yy227; default: goto yy81; } yy227: yych = *++YYCURSOR; switch(yych) { case 'I': goto yy228; default: goto yy81; } yy228: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy229; default: goto yy81; } yy229: yych = *++YYCURSOR; switch(yych) { case 'I': goto yy230; default: goto yy81; } yy230: yych = *++YYCURSOR; switch(yych) { case 'O': goto yy231; default: goto yy81; } yy231: yych = *++YYCURSOR; switch(yych) { case 'N': goto yy232; default: goto yy81; } yy232: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy233; } yy233: #line 112 "modula.re" {RETURN(40);} #line 3496 "" yy234: yych = *++YYCURSOR; switch(yych) { case 'S': goto yy240; default: goto yy81; } yy235: yych = *++YYCURSOR; switch(yych) { case 'N': goto yy236; default: goto yy81; } yy236: yych = *++YYCURSOR; switch(yych) { case 'S': goto yy237; default: goto yy81; } yy237: yych = *++YYCURSOR; switch(yych) { case 'T': goto yy238; default: goto yy81; } yy238: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy239; } yy239: #line 111 "modula.re" {RETURN(39);} #line 3591 "" yy240: yych = *++YYCURSOR; switch(yych) { case 'E': goto yy241; default: goto yy81; } yy241: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy242; } yy242: #line 110 "modula.re" {RETURN(38);} #line 3668 "" yy243: yych = *++YYCURSOR; switch(yych) { case 'G': goto yy246; default: goto yy81; } yy244: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy245; } yy245: #line 109 "modula.re" {RETURN(37);} #line 3745 "" yy246: yych = *++YYCURSOR; switch(yych) { case 'I': goto yy247; default: goto yy81; } yy247: yych = *++YYCURSOR; switch(yych) { case 'N': goto yy248; default: goto yy81; } yy248: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy249; } yy249: #line 108 "modula.re" {RETURN(36);} #line 3828 "" yy250: yych = *++YYCURSOR; switch(yych) { case 'D': goto yy256; default: goto yy81; } yy251: yych = *++YYCURSOR; switch(yych) { case 'R': goto yy252; default: goto yy81; } yy252: yych = *++YYCURSOR; switch(yych) { case 'A': goto yy253; default: goto yy81; } yy253: yych = *++YYCURSOR; switch(yych) { case 'Y': goto yy254; default: goto yy81; } yy254: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy255; } yy255: #line 107 "modula.re" {RETURN(35);} #line 3923 "" yy256: ++YYCURSOR; switch((yych = *YYCURSOR)) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': 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 '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 yy80; default: goto yy257; } yy257: #line 106 "modula.re" {RETURN(34);} #line 3994 "" yy258: ++YYCURSOR; #line 97 "modula.re" {RETURN(26);} #line 3999 "" yy260: ++YYCURSOR; #line 94 "modula.re" {RETURN(23);} #line 4004 "" yy262: ++YYCURSOR; #line 93 "modula.re" {RETURN(22);} #line 4009 "" yy264: ++YYCURSOR; #line 90 "modula.re" {RETURN(19);} #line 4014 "" yy266: ++YYCURSOR; #line 87 "modula.re" {RETURN(16);} #line 4019 "" yy268: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy269: switch(yych) { case 0x0A: goto yy270; case '"': goto yy271; default: goto yy268; } yy270: YYCURSOR = YYMARKER; switch(yyaccept) { case 0: goto yy5; case 1: goto yy8; case 2: goto yy276; case 3: goto yy294; case 4: goto yy296; } yy271: ++YYCURSOR; #line 76 "modula.re" {RETURN(6);} #line 4043 "" yy273: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; yy274: switch(yych) { case 0x0A: goto yy270; case '\'': goto yy271; default: goto yy273; } yy275: yyaccept = 2; yych = *(YYMARKER = ++YYCURSOR); switch(yych) { case '.': goto yy283; default: goto yy286; } yy276: #line 75 "modula.re" {RETURN(5);} #line 4064 "" yy277: YYCTXMARKER = YYCURSOR + 1; yyaccept = 0; YYMARKER = ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 4) YYFILL(4); yych = *YYCURSOR; yy278: switch(yych) { case '.': goto yy275; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy277; case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': goto yy279; case 'H': goto yy281; default: goto yy5; } yy279: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; switch(yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': goto yy279; case 'H': goto yy281; default: goto yy270; } yy281: ++YYCURSOR; #line 74 "modula.re" {RETURN(4);} #line 4121 "" yy283: ++YYCURSOR; YYCURSOR = YYCTXMARKER; #line 71 "modula.re" {RETURN(1);} #line 4127 "" yy285: yyaccept = 2; YYMARKER = ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 3) YYFILL(3); yych = *YYCURSOR; yy286: switch(yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy285; case 'E': goto yy287; default: goto yy276; } yy287: yych = *++YYCURSOR; switch(yych) { case '+': case '-': goto yy288; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy289; default: goto yy270; } yy288: yych = *++YYCURSOR; switch(yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy289; default: goto yy270; } yy289: ++YYCURSOR; if(YYLIMIT == YYCURSOR) YYFILL(1); yych = *YYCURSOR; switch(yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': goto yy289; default: goto yy276; } yy291: YYCTXMARKER = YYCURSOR + 1; yyaccept = 0; YYMARKER = ++YYCURSOR; if((YYLIMIT - YYCURSOR) < 4) YYFILL(4); yych = *YYCURSOR; yy292: switch(yych) { case '.': goto yy275; case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': goto yy291; case '8': case '9': goto yy277; case 'A': case 'D': case 'E': case 'F': goto yy279; case 'B': goto yy293; case 'C': goto yy295; case 'H': goto yy281; default: goto yy5; } yy293: yyaccept = 3; yych = *(YYMARKER = ++YYCURSOR); switch(yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': goto yy279; case 'H': goto yy281; default: goto yy294; } yy294: #line 72 "modula.re" {RETURN(2);} #line 4251 "" yy295: yyaccept = 4; yych = *(YYMARKER = ++YYCURSOR); switch(yych) { case '0': case '1': case '2': case '3': case '4': case '5': case '6': case '7': case '8': case '9': case 'A': case 'B': case 'C': case 'D': case 'E': case 'F': goto yy279; case 'H': goto yy281; default: goto yy296; } yy296: #line 73 "modula.re" {RETURN(3);} #line 4278 "" yy297: ++YYCURSOR; #line 68 "modula.re" { depth = 1; goto comment; } #line 4283 "" } #line 163 "modula.re" comment: #line 4289 "" { YYCTYPE yych; if((YYLIMIT - YYCURSOR) < 2) YYFILL(2); yych = *YYCURSOR; switch(yych) { case 0x0A: goto yy304; case '(': goto yy303; case '*': goto yy301; default: goto yy306; } yy301: ++YYCURSOR; switch((yych = *YYCURSOR)) { case ')': goto yy309; default: goto yy302; } yy302: #line 180 "modula.re" { goto comment; } #line 4309 "" yy303: yych = *++YYCURSOR; switch(yych) { case '*': goto yy307; default: goto yy302; } yy304: ++YYCURSOR; #line 175 "modula.re" { if(cursor == s->eof) RETURN(0); s->tok = s->pos = cursor; s->line++; goto comment; } #line 4324 "" yy306: yych = *++YYCURSOR; goto yy302; yy307: ++YYCURSOR; #line 173 "modula.re" { ++depth; goto comment; } #line 4332 "" yy309: ++YYCURSOR; #line 167 "modula.re" { if(--depth == 0) goto std; else goto comment; } #line 4342 "" } #line 181 "modula.re" } /* void putStr(FILE *o, char *s, uint l){ while(l-- > 0) putc(*s++, o); } */ main(){ Scanner in; memset((char*) &in, 0, sizeof(in)); in.fd = 0; while(scan(&in)){ /* putc('<', stdout); putStr(stdout, (char*) in.tok, in.cur - in.tok); putc('>', stdout); putc('\n', stdout); */ } }