⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 grammarparser.java

📁 SkipOOMiniJOOL教学语言的编译器前端
💻 JAVA
📖 第 1 页 / 共 3 页
字号:
			RESULT = new ArrayList();
		RESULT.add(rs);
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(8/*righthand_sides*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).left, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 11: // prod_name ::= NONTERMINAL             {              SimpleName RESULT = null;		int ntleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).left;		int ntright = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right;		String nt = (String)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).value;			RESULT = new SimpleName(nt);
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(7/*prod_name*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).left, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 10: // production ::= prod_name ARROW righthand_sides SEMICOLON             {              Production RESULT = null;		int pnleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-3)).left;		int pnright = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-3)).right;		SimpleName pn = (SimpleName)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-3)).value;		int rssleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).left;		int rssright = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).right;		List rss = (List)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).value;			RESULT = new Production(pn, rss);
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(6/*production*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-3)).left, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 9: // productions ::= productions production             {              List RESULT = null;		int psleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).left;		int psright = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).right;		List ps = (List)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).value;		int pleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).left;		int pright = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right;		Production p = (Production)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).value;			ps.add(p);
		RESULT = ps;
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(5/*productions*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).left, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 8: // productions ::= production             {              List RESULT = null;		int pleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).left;		int pright = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right;		Production p = (Production)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).value;			RESULT = new ArrayList();
		RESULT.add(p);
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(5/*productions*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).left, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 7: // production_list ::= productions             {              List RESULT = null;		int psleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).left;		int psright = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right;		List ps = (List)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).value;			RESULT = ps;
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(4/*production_list*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).left, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 6: // production_list ::=             {              List RESULT = null;			RESULT = new ArrayList();
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(4/*production_list*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 5: // prologue_opt ::= PROLOGUE ACTIONCODE             {              String RESULT = null;		int codeleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).left;		int coderight = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right;		String code = (String)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).value;			RESULT = code;
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(3/*prologue_opt*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).left, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 4: // prologue_opt ::=             {              String RESULT = null;			RESULT = "";
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(3/*prologue_opt*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 3: // imports_opt ::= IMPORTS ACTIONCODE             {              String RESULT = null;		int codeleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).left;		int coderight = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right;		String code = (String)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).value;			RESULT = code;
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(2/*imports_opt*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).left, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 2: // imports_opt ::=             {              String RESULT = null;			RESULT = "";
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(2/*imports_opt*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 1: // spec ::= imports_opt prologue_opt production_list             {              Object RESULT = null;		int ileft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-2)).left;		int iright = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-2)).right;		String i = (String)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-2)).value;		int pleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).left;		int pright = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).right;		String p = (String)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).value;		int lleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).left;		int lright = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right;		List l = (List)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).value;			root = new Spec(l, i, p);
		success = true;
	              CUP$GrammarParser$result = new java_cup.runtime.Symbol(1/*spec*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-2)).left, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          return CUP$GrammarParser$result;          /*. . . . . . . . . . . . . . . . . . . .*/          case 0: // $START ::= spec EOF             {              Object RESULT = null;		int start_valleft = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).left;		int start_valright = ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).right;		Object start_val = (Object)((java_cup.runtime.Symbol) CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).value;		RESULT = start_val;              CUP$GrammarParser$result = new java_cup.runtime.Symbol(0/*$START*/, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-1)).left, ((java_cup.runtime.Symbol)CUP$GrammarParser$stack.elementAt(CUP$GrammarParser$top-0)).right, RESULT);            }          /* ACCEPT */          CUP$GrammarParser$parser.done_parsing();          return CUP$GrammarParser$result;          /* . . . . . .*/          default:            throw new Exception(               "Invalid action number found in internal parse table");        }    }}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -