📄 grm.java
字号:
/*. . . . . . . . . . . . . . . . . . . .*/
case 57: // expr_list ::= expression
{
ExpList RESULT = null;
int eleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left; int eright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right; Exp e = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-0)).value; RESULT=new ExpList(e,null);
CUP$Grm$result = new java_cup.runtime.Symbol(13/*expr_list*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 56: // expr_seq ::= expression SEMICOLON expr_seq
{
SeqExp RESULT = null;
int eleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).left; int eright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).right; Exp e = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-2)).value; int lleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left; int lright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right; SeqExp l = (SeqExp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-0)).value; RESULT=new SeqExp(eleft,new ExpList(e,l.list));
CUP$Grm$result = new java_cup.runtime.Symbol(15/*expr_seq*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 55: // expr_seq ::= expression
{
SeqExp RESULT = null;
int eleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left; int eright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right; Exp e = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-0)).value; RESULT=new SeqExp(eleft,new ExpList(e,null));
CUP$Grm$result = new java_cup.runtime.Symbol(15/*expr_seq*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 54: // expression ::= IF expression THEN expression ELSE expression
{
Exp RESULT = null;
int ileft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-5)).left; int iright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-5)).right; Object i = (Object)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-5)).value; int e1left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-4)).left; int e1right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-4)).right; Exp e1 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-4)).value; int e2left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).left; int e2right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).right; Exp e2 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-2)).value; int e3left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left; int e3right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right; Exp e3 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-0)).value; RESULT = new IfExp(ileft,e1,e2,e3);
CUP$Grm$result = new java_cup.runtime.Symbol(2/*expression*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-5)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 53: // expression ::= IF expression THEN expression
{
Exp RESULT = null;
int ileft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).left; int iright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).right; Object i = (Object)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-3)).value; int e1left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).left; int e1right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).right; Exp e1 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-2)).value; int e2left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left; int e2right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right; Exp e2 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-0)).value; RESULT = new IfExp(ileft,e1,e2);
CUP$Grm$result = new java_cup.runtime.Symbol(2/*expression*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 52: // expression ::= LET declaration_lists IN expr_seq END
{
Exp RESULT = null;
int lleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-4)).left; int lright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-4)).right; Object l = (Object)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-4)).value; int dleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).left; int dright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).right; DecList d = (DecList)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-3)).value; int eleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-1)).left; int eright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-1)).right; SeqExp e = (SeqExp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-1)).value; RESULT = new LetExp(lleft,d,e);
CUP$Grm$result = new java_cup.runtime.Symbol(2/*expression*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-4)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 51: // expression ::= BREAK
{
Exp RESULT = null;
int bleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left; int bright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right; Object b = (Object)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-0)).value; RESULT = new BreakExp(bleft);
CUP$Grm$result = new java_cup.runtime.Symbol(2/*expression*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 50: // expression ::= FOR ID ASSIGN expression TO expression DO expression
{
Exp RESULT = null;
int fleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-7)).left; int fright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-7)).right; Object f = (Object)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-7)).value; int ileft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-6)).left; int iright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-6)).right; String i = (String)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-6)).value; int e1left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-4)).left; int e1right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-4)).right; Exp e1 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-4)).value; int e2left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).left; int e2right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).right; Exp e2 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-2)).value; int e3left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left; int e3right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right; Exp e3 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-0)).value; RESULT = new ForExp(fleft,new VarDec(ileft,sym(i),null,e1),e2,e3);
CUP$Grm$result = new java_cup.runtime.Symbol(2/*expression*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-7)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 49: // expression ::= WHILE expression DO expression
{
Exp RESULT = null;
int wleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).left; int wright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).right; Object w = (Object)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-3)).value; int e1left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).left; int e1right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).right; Exp e1 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-2)).value; int e2left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left; int e2right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right; Exp e2 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-0)).value; RESULT = new WhileExp(wleft,e1,e2);
CUP$Grm$result = new java_cup.runtime.Symbol(2/*expression*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 48: // expression ::= ID LBRACK expression RBRACK OF expression
{
Exp RESULT = null;
int ileft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-5)).left; int iright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-5)).right; String i = (String)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-5)).value; int e1left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).left; int e1right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).right; Exp e1 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-3)).value; int e2left = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).left; int e2right = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right; Exp e2 = (Exp)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-0)).value;
RESULT = new ArrayExp(ileft,sym(i),e1,e2);
CUP$Grm$result = new java_cup.runtime.Symbol(2/*expression*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-5)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 47: // expression ::= ID LBRACE RBRACE
{
Exp RESULT = null;
int ileft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).left; int iright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).right; String i = (String)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-2)).value; RESULT = new RecordExp(ileft,sym(i),null);
CUP$Grm$result = new java_cup.runtime.Symbol(2/*expression*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-2)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 46: // expression ::= ID LBRACE field_list RBRACE
{
Exp RESULT = null;
int ileft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).left; int iright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).right; String i = (String)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-3)).value; int fleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-1)).left; int fright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-1)).right; FieldExpList f = (FieldExpList)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-1)).value; RESULT = new RecordExp(ileft,sym(i),f);
CUP$Grm$result = new java_cup.runtime.Symbol(2/*expression*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-3)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
/*. . . . . . . . . . . . . . . . . . . .*/
case 45: // expression ::= LPAREN RPAREN
{
Exp RESULT = null;
int eleft = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-1)).left; int eright = ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-1)).right; Object e = (Object)((java_cup.runtime.Symbol) CUP$Grm$stack.elementAt(CUP$Grm$top-1)).value; RESULT=new SeqExp(eleft,null);
CUP$Grm$result = new java_cup.runtime.Symbol(2/*expression*/, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-1)).left, ((java_cup.runtime.Symbol)CUP$Grm$stack.elementAt(CUP$Grm$top-0)).right, RESULT);
}
return CUP$Grm$result;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -