📄 tiger.lex.java
字号:
case -8:
break;
case 8:
{return tok(sym.RBRACK, null);}
case -9:
break;
case 9:
{return tok(sym.LBRACE, null);}
case -10:
break;
case 10:
{return tok(sym.RBRACE, null);}
case -11:
break;
case 11:
{return tok(sym.DOT, null);}
case -12:
break;
case 12:
{return tok(sym.PLUS, null);}
case -13:
break;
case 13:
{return tok(sym.MINUS, null);}
case -14:
break;
case 14:
{return tok(sym.TIMES, null);}
case -15:
break;
case 15:
{return tok(sym.DIVIDE, null);}
case -16:
break;
case 16:
{return tok(sym.EQ, null);}
case -17:
break;
case 17:
{return tok(sym.LT, null);}
case -18:
break;
case 18:
{return tok(sym.GT, null);}
case -19:
break;
case 19:
{return tok(sym.AND, null);}
case -20:
break;
case 20:
{return tok(sym.OR, null);}
case -21:
break;
case 21:
{return tok(sym.ID,yytext());}
case -22:
break;
case 22:
{}
case -23:
break;
case 23:
{newline();}
case -24:
break;
case 24:
{err("非法字符.");}
case -25:
break;
case 25:
{ yybegin(STRING); temp = new StringBuffer(""); str_beg = yychar+1; }
case -26:
break;
case 26:
{return tok(sym.INT, new Integer(yytext()));}
case -27:
break;
case 27:
{return tok(sym.ASSIGN, null);}
case -28:
break;
case 28:
{yybegin(COMMENT); comment_count++;}
case -29:
break;
case 29:
{return tok(sym.LE, null);}
case -30:
break;
case 30:
{return tok(sym.NEQ, null);}
case -31:
break;
case 31:
{return tok(sym.GE, null);}
case -32:
break;
case 32:
{return tok(sym.TO, null);}
case -33:
break;
case 33:
{return tok(sym.IF, null);}
case -34:
break;
case 34:
{return tok(sym.IN, null);}
case -35:
break;
case 35:
{return tok(sym.OF, null);}
case -36:
break;
case 36:
{return tok(sym.DO, null);}
case -37:
break;
case 37:
{err("非法ID.");}
case -38:
break;
case 38:
{return tok(sym.FOR, null);}
case -39:
break;
case 39:
{return tok(sym.NIL, null);}
case -40:
break;
case 40:
{return tok(sym.END, null);}
case -41:
break;
case 41:
{return tok(sym.LET, null);}
case -42:
break;
case 42:
{return tok(sym.VAR, null);}
case -43:
break;
case 43:
{return tok(sym.TYPE, null);}
case -44:
break;
case 44:
{return tok(sym.THEN, null);}
case -45:
break;
case 45:
{return tok(sym.ELSE, null);}
case -46:
break;
case 46:
{return tok(sym.ARRAY, null);}
case -47:
break;
case 47:
{return tok(sym.WHILE, null);}
case -48:
break;
case 48:
{return tok(sym.BREAK, null);}
case -49:
break;
case 49:
{return tok(sym.FUNCTION, null);}
case -50:
break;
case 50:
{}
case -51:
break;
case 51:
{yybegin(STARINCOM);}
case -52:
break;
case 52:
{yybegin(COMMENT); }
case -53:
break;
case 53:
{yybegin(STARINCOM);}
case -54:
break;
case 54:
{comment_count--;yybegin(YYINITIAL); }
case -55:
break;
case 55:
{temp = temp.append(yytext());}
case -56:
break;
case 56:
{ yybegin(YYINITIAL); newline(); err("字符串语句不匹配,缺少\""); str_beg = -1; return tok(sym.STRING,temp.toString()); }
case -57:
break;
case 57:
{yybegin(YYINITIAL); str_beg = -1; return tok(sym.STRING,temp.toString());}
case -58:
break;
case 58:
{ if(yytext().charAt(1) == 'n') temp.append("\n"); else if(yytext().charAt(1) == 't') temp.append("\t"); else if(yytext().charAt(1) == '\"') temp.append("\""); else if(yytext().charAt(1) == '\\') temp.append("\\"); else err("非法字符."); }
case -59:
break;
case 59:
{newline();}
case -60:
break;
case 60:
{temp.append((char)Integer.parseInt(yytext().substring(1,4)));}
case -61:
break;
case 62:
{return tok(sym.ID,yytext());}
case -62:
break;
case 63:
{}
case -63:
break;
case 64:
{yybegin(COMMENT); }
case -64:
break;
case 65:
{temp = temp.append(yytext());}
case -65:
break;
case 66:
{ if(yytext().charAt(1) == 'n') temp.append("\n"); else if(yytext().charAt(1) == 't') temp.append("\t"); else if(yytext().charAt(1) == '\"') temp.append("\""); else if(yytext().charAt(1) == '\\') temp.append("\\"); else err("非法字符."); }
case -66:
break;
case 68:
{return tok(sym.ID,yytext());}
case -67:
break;
case 69:
{ if(yytext().charAt(1) == 'n') temp.append("\n"); else if(yytext().charAt(1) == 't') temp.append("\t"); else if(yytext().charAt(1) == '\"') temp.append("\""); else if(yytext().charAt(1) == '\\') temp.append("\\"); else err("非法字符."); }
case -68:
break;
case 71:
{return tok(sym.ID,yytext());}
case -69:
break;
case 72:
{return tok(sym.ID,yytext());}
case -70:
break;
case 73:
{return tok(sym.ID,yytext());}
case -71:
break;
case 74:
{return tok(sym.ID,yytext());}
case -72:
break;
case 75:
{return tok(sym.ID,yytext());}
case -73:
break;
case 76:
{return tok(sym.ID,yytext());}
case -74:
break;
case 77:
{return tok(sym.ID,yytext());}
case -75:
break;
case 78:
{return tok(sym.ID,yytext());}
case -76:
break;
case 79:
{return tok(sym.ID,yytext());}
case -77:
break;
case 80:
{return tok(sym.ID,yytext());}
case -78:
break;
case 81:
{return tok(sym.ID,yytext());}
case -79:
break;
case 82:
{return tok(sym.ID,yytext());}
case -80:
break;
case 83:
{return tok(sym.ID,yytext());}
case -81:
break;
case 84:
{return tok(sym.ID,yytext());}
case -82:
break;
case 85:
{return tok(sym.ID,yytext());}
case -83:
break;
case 86:
{return tok(sym.ID,yytext());}
case -84:
break;
case 87:
{return tok(sym.ID,yytext());}
case -85:
break;
case 88:
{return tok(sym.ID,yytext());}
case -86:
break;
case 89:
{return tok(sym.ID,yytext());}
case -87:
break;
case 90:
{return tok(sym.ID,yytext());}
case -88:
break;
case 91:
{return tok(sym.ID,yytext());}
case -89:
break;
case 92:
{return tok(sym.ID,yytext());}
case -90:
break;
case 93:
{return tok(sym.ID,yytext());}
case -91:
break;
case 94:
{return tok(sym.ID,yytext());}
case -92:
break;
case 95:
{return tok(sym.ID,yytext());}
case -93:
break;
case 96:
{return tok(sym.ID,yytext());}
case -94:
break;
case 97:
{return tok(sym.ID,yytext());}
case -95:
break;
case 98:
{return tok(sym.ID,yytext());}
case -96:
break;
case 99:
{return tok(sym.ID,yytext());}
case -97:
break;
case 100:
{return tok(sym.ID,yytext());}
case -98:
break;
case 101:
{return tok(sym.ID,yytext());}
case -99:
break;
case 102:
{return tok(sym.ID,yytext());}
case -100:
break;
case 103:
{return tok(sym.ID,yytext());}
case -101:
break;
case 104:
{return tok(sym.ID,yytext());}
case -102:
break;
case 105:
{return tok(sym.ID,yytext());}
case -103:
break;
case 106:
{return tok(sym.ID,yytext());}
case -104:
break;
case 107:
{return tok(sym.ID,yytext());}
case -105:
break;
default:
yy_error(YY_E_INTERNAL,false);
case -1:
}
yy_initial = true;
yy_state = yy_state_dtrans[yy_lexical_state];
yy_next_state = YY_NO_STATE;
yy_last_accept_state = YY_NO_STATE;
yy_mark_start();
yy_this_accept = yy_acpt[yy_state];
if (YY_NOT_ACCEPT != yy_this_accept) {
yy_last_accept_state = yy_state;
yy_mark_end();
}
}
}
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -