📄 parser.java
字号:
FunctionDec RESULT = null;
int e1left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 7)).left;
int e1right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 7)).right;
String e1 = (String) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 7)).value;
int e2left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 5)).left;
int e2right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 5)).right;
FieldList e2 = (FieldList) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 5)).value;
int e5left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 2)).left;
int e5right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 2)).right;
String e5 = (String) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 2)).value;
int e4left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).left;
int e4right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right;
Exp e4 = (Exp) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).value;
RESULT = new FunctionDec(e1left, sym(e1), e2, new NameTy(e5left,
sym(e5)), e4, null);
CUP$parser$result = new com.sun.java_cup.internal.runtime.Symbol(
8/* function_declaration */,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 8)).left,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right, RESULT);
}
return CUP$parser$result;
/* . . . . . . . . . . . . . . . . . . . . */
case 50: // function_declaration ::= FUNCTION ID LPAREN type_fields
// RPAREN EQ expr
{
FunctionDec RESULT = null;
int e1left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 5)).left;
int e1right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 5)).right;
String e1 = (String) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 5)).value;
int e2left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 3)).left;
int e2right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 3)).right;
FieldList e2 = (FieldList) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 3)).value;
int e3left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).left;
int e3right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right;
Exp e3 = (Exp) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).value;
RESULT = new FunctionDec(e1left, sym(e1), e2, null, e3, null);
CUP$parser$result = new com.sun.java_cup.internal.runtime.Symbol(
8/* function_declaration */,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 6)).left,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right, RESULT);
}
return CUP$parser$result;
/* . . . . . . . . . . . . . . . . . . . . */
case 49: // declaration ::= function_declaration
{
Dec RESULT = null;
int eleft = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).left;
int eright = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right;
FunctionDec e = (FunctionDec) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).value;
RESULT = e;
CUP$parser$result = new com.sun.java_cup.internal.runtime.Symbol(
6/* declaration */,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).left,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right, RESULT);
}
return CUP$parser$result;
/* . . . . . . . . . . . . . . . . . . . . */
case 48: // declaration ::= variable_declaration
{
Dec RESULT = null;
int eleft = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).left;
int eright = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right;
VarDec e = (VarDec) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).value;
RESULT = e;
CUP$parser$result = new com.sun.java_cup.internal.runtime.Symbol(
6/* declaration */,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).left,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right, RESULT);
}
return CUP$parser$result;
/* . . . . . . . . . . . . . . . . . . . . */
case 47: // declaration ::= type_declaration
{
Dec RESULT = null;
int eleft = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).left;
int eright = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right;
TypeDec e = (TypeDec) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).value;
RESULT = e;
CUP$parser$result = new com.sun.java_cup.internal.runtime.Symbol(
6/* declaration */,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).left,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right, RESULT);
}
return CUP$parser$result;
/* . . . . . . . . . . . . . . . . . . . . */
case 46: // declaration_list ::= declaration declaration_list
{
DecList RESULT = null;
int e1left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 1)).left;
int e1right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 1)).right;
Dec e1 = (Dec) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 1)).value;
int e2left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).left;
int e2right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right;
DecList e2 = (DecList) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).value;
if (e1 instanceof TypeDec && e2.head instanceof TypeDec) {
((TypeDec) e1).next = (TypeDec) e2.head;
e2.head = (TypeDec) e1;
RESULT = e2;
} else {
if (e1 instanceof FunctionDec && e2.head instanceof FunctionDec) {
((FunctionDec) e1).next = (FunctionDec) e2.head;
e2.head = (FunctionDec) e1;
RESULT = e2;
} else
RESULT = new DecList(e1, e2);
}
CUP$parser$result = new com.sun.java_cup.internal.runtime.Symbol(
7/* declaration_list */,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 1)).left,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right, RESULT);
}
return CUP$parser$result;
/* . . . . . . . . . . . . . . . . . . . . */
case 45: // declaration_list ::= declaration
{
DecList RESULT = null;
int eleft = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).left;
int eright = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right;
Dec e = (Dec) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).value;
RESULT = new DecList(e, null);
CUP$parser$result = new com.sun.java_cup.internal.runtime.Symbol(
7/* declaration_list */,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).left,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right, RESULT);
}
return CUP$parser$result;
/* . . . . . . . . . . . . . . . . . . . . */
case 44: // lvalue ::= lvalue LBRACK expr RBRACK
{
Var RESULT = null;
int e1left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 3)).left;
int e1right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 3)).right;
Var e1 = (Var) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 3)).value;
int e2left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 1)).left;
int e2right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 1)).right;
Exp e2 = (Exp) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 1)).value;
RESULT = new SubscriptVar(e1left, e1, e2);
CUP$parser$result = new com.sun.java_cup.internal.runtime.Symbol(
11/* lvalue */,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 3)).left,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right, RESULT);
}
return CUP$parser$result;
/* . . . . . . . . . . . . . . . . . . . . */
case 43: // lvalue ::= ID LBRACK expr RBRACK
{
Var RESULT = null;
int idleft = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 3)).left;
int idright = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 3)).right;
String id = (String) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 3)).value;
int eleft = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 1)).left;
int eright = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 1)).right;
Exp e = (Exp) ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 1)).value;
RESULT = new SubscriptVar(idleft, new SimpleVar(idleft, sym(id)), e);
CUP$parser$result = new com.sun.java_cup.internal.runtime.Symbol(
11/* lvalue */,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 3)).left,
((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 0)).right, RESULT);
}
return CUP$parser$result;
/* . . . . . . . . . . . . . . . . . . . . */
case 42: // lvalue ::= lvalue DOT ID
{
Var RESULT = null;
int e1left = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top - 2)).left;
int e1right = ((com.sun.java_cup.internal.runtime.Symbol) CUP$parser$stack
.elementAt(CUP$parser$top
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -