All Downloads are FREE. Search and download functionalities are using the official Maven repository.

bsh.Parser Maven / Gradle / Ivy

The newest version!
/*
 * #%L
 * The AIBench Shell Plugin
 * %%
 * Copyright (C) 2006 - 2017 Daniel Glez-Peña and Florentino Fdez-Riverola
 * %%
 * This program is free software: you can redistribute it and/or modify
 * it under the terms of the GNU Lesser General Public License as
 * published by the Free Software Foundation, either version 3 of the
 * License, or (at your option) any later version.
 * 
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Lesser Public License for more details.
 * 
 * You should have received a copy of the GNU General Lesser Public
 * License along with this program.  If not, see
 * .
 * #L%
 */
/* Generated By:JJTree&JavaCC: Do not edit this line. Parser.java */
package bsh;

import java.io.FileReader;
import java.io.IOException;
import java.io.Reader;

/**
 * This is the BeanShell parser. It is used internally by the Interpreter class
 * (which is probably what you are looking for). The parser knows only how to
 * parse the structure of the language, it does not understand names, commands,
 * etc.
 * 

* You can use the Parser from the command line to do basic structural * validation of BeanShell files without actually executing them. e.g. *

*
 *   java bsh.Parser [ -p ] file [ file ] [ ... ]
 * 
*

* The -p option causes the abstract syntax to be printed. *

* *

* From code you'd use the Parser like this: *

*
 * Parser parser = new Parser(in);
 * while (!(eof = parser.Line())) {
 *         SimpleNode node = parser.popNode();
 *         // use the node, etc. (See bsh.BSH* classes)
 * }
 * 
*/ public class Parser/* @bgen(jjtree) */ implements ParserTreeConstants, ParserConstants {/* * @bgen * ( * jjtree) */ protected JJTParserState jjtree = new JJTParserState(); boolean retainComments = false; public void setRetainComments(boolean b) { retainComments = b; } void jjtreeOpenNodeScope(Node n) { ((SimpleNode) n).firstToken = getToken(1); } void jjtreeCloseNodeScope(Node n) { ((SimpleNode) n).lastToken = getToken(0); } /** * Re-initialize the input stream and token source. */ void reInitInput(Reader in) { ReInit(in); } public SimpleNode popNode() { if (jjtree.nodeArity() > 0) // number of child nodes return (SimpleNode) jjtree.popNode(); else return null; } /** * Explicitly re-initialize just the token reader. This seems to be * necessary to avoid certain looping errors when reading bogus input. See * Interpreter. */ void reInitTokenInput(Reader in) { jj_input_stream.ReInit(in, jj_input_stream.getEndLine(), jj_input_stream.getEndColumn()); } public static void main(String[] args) throws IOException, ParseException { boolean print = false; int i = 0; if (args[0].equals("-p")) { i++; print = true; } for (; i < args.length; i++) { Reader in = new FileReader(args[i]); Parser parser = new Parser(in); parser.setRetainComments(true); while (!parser.Line()/* eof */) if (print) System.out.println(parser.popNode()); } } /** * Lookahead for the enhanced for statement. Expect "for" "(" and then see * whether we hit ":" or a ";" first. */ boolean isRegularForStatement() { int curTok = 1; Token tok; tok = getToken(curTok++); if (tok.kind != FOR) return false; tok = getToken(curTok++); if (tok.kind != LPAREN) return false; while (true) { tok = getToken(curTok++); switch (tok.kind) { case COLON: return false; case SEMICOLON: return true; case EOF: return false; } } } /** * Generate a ParseException with the specified message, pointing to the * current token. The auto-generated Parser.generateParseException() method * does not provide line number info, therefore we do this. */ ParseException createParseException(String message) { Token errortok = token; int line = errortok.beginLine, column = errortok.beginColumn; String mess = (errortok.kind == 0) ? tokenImage[0] : errortok.image; return new ParseException("Parse error at line " + line + ", column " + column + " : " + message); } /* * Thanks to Sreenivasa Viswanadha for suggesting how to get rid of * expensive lookahead here. */ final public boolean Line() throws ParseException { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case 0: jj_consume_token(0); Interpreter.debug("End of File!"); { if (true) return true; } break; default: if (jj_2_1(1)) { BlockStatement(); { if (true) return false; } } else { jj_consume_token(-1); throw new ParseException(); } } throw new Error("Missing return statement in function"); } /* * ********************************************************************** * THE JAVA LANGUAGE GRAMMAR STARTS HERE * *********************************************************************/ /* * Gather modifiers for a class, method, or field. I lookahead is true then * we are being called as part of a lookahead and we should not enforce any * rules. Otherwise we validate based on context (field, method, class) */ final public Modifiers Modifiers(int context, boolean lookahead) throws ParseException { Modifiers mods = null; label_1: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case ABSTRACT: case FINAL: case NATIVE: case PRIVATE: case PROTECTED: case PUBLIC: case STATIC: case STRICTFP: case SYNCHRONIZED: case TRANSIENT: case VOLATILE: ; break; default: break label_1; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case PRIVATE: jj_consume_token(PRIVATE); break; case PROTECTED: jj_consume_token(PROTECTED); break; case PUBLIC: jj_consume_token(PUBLIC); break; case SYNCHRONIZED: jj_consume_token(SYNCHRONIZED); break; case FINAL: jj_consume_token(FINAL); break; case NATIVE: jj_consume_token(NATIVE); break; case TRANSIENT: jj_consume_token(TRANSIENT); break; case VOLATILE: jj_consume_token(VOLATILE); break; case ABSTRACT: jj_consume_token(ABSTRACT); break; case STATIC: jj_consume_token(STATIC); break; case STRICTFP: jj_consume_token(STRICTFP); break; default: jj_consume_token(-1); throw new ParseException(); } if (!lookahead) try { if (mods == null) mods = new Modifiers(); mods.addModifier(context, getToken(0).image); } catch (IllegalStateException e) { { if (true) throw createParseException(e.getMessage()); } } } { if (true) return mods; } throw new Error("Missing return statement in function"); } final public void ClassDeclaration() throws ParseException { /* @bgen(jjtree) ClassDeclaration */ BSHClassDeclaration jjtn000 = new BSHClassDeclaration(JJTCLASSDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Modifiers mods; Token name; int numInterfaces; try { mods = Modifiers(Modifiers.CLASS, false); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case CLASS: jj_consume_token(CLASS); break; case INTERFACE: jj_consume_token(INTERFACE); jjtn000.isInterface = true; break; default: jj_consume_token(-1); throw new ParseException(); } name = jj_consume_token(IDENTIFIER); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case EXTENDS: jj_consume_token(EXTENDS); AmbiguousName(); jjtn000.extend = true; break; default: ; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case IMPLEMENTS: jj_consume_token(IMPLEMENTS); numInterfaces = NameList(); jjtn000.numInterfaces = numInterfaces; break; default: ; } Block(); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.modifiers = mods; jjtn000.name = name.image; } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void MethodDeclaration() throws ParseException { /* @bgen(jjtree) MethodDeclaration */ BSHMethodDeclaration jjtn000 = new BSHMethodDeclaration(JJTMETHODDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Token t = null; Modifiers mods; int count; try { mods = Modifiers(Modifiers.METHOD, false); jjtn000.modifiers = mods; if (jj_2_2(2147483647)) { t = jj_consume_token(IDENTIFIER); jjtn000.name = t.image; } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: case VOID: case IDENTIFIER: ReturnType(); t = jj_consume_token(IDENTIFIER); jjtn000.name = t.image; break; default: jj_consume_token(-1); throw new ParseException(); } } FormalParameters(); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case THROWS: jj_consume_token(THROWS); count = NameList(); jjtn000.numThrows = count; break; default: ; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LBRACE: Block(); break; case SEMICOLON: jj_consume_token(SEMICOLON); break; default: jj_consume_token(-1); throw new ParseException(); } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void PackageDeclaration() throws ParseException { /* @bgen(jjtree) PackageDeclaration */ BSHPackageDeclaration jjtn000 = new BSHPackageDeclaration(JJTPACKAGEDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(PACKAGE); AmbiguousName(); } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void ImportDeclaration() throws ParseException { /* @bgen(jjtree) ImportDeclaration */ BSHImportDeclaration jjtn000 = new BSHImportDeclaration(JJTIMPORTDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Token s = null; Token t = null; try { if (jj_2_3(3)) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case STATIC: s = jj_consume_token(STATIC); break; default: ; } jj_consume_token(IMPORT); AmbiguousName(); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case DOT: t = jj_consume_token(DOT); jj_consume_token(STAR); break; default: ; } jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); if (s != null) jjtn000.staticImport = true; if (t != null) jjtn000.importPackage = true; } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case IMPORT: jj_consume_token(IMPORT); jj_consume_token(STAR); jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.superImport = true; break; default: jj_consume_token(-1); throw new ParseException(); } } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void VariableDeclarator() throws ParseException { /* @bgen(jjtree) VariableDeclarator */ BSHVariableDeclarator jjtn000 = new BSHVariableDeclarator(JJTVARIABLEDECLARATOR); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Token t; try { t = jj_consume_token(IDENTIFIER); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case ASSIGN: jj_consume_token(ASSIGN); VariableInitializer(); break; default: ; } jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.name = t.image; } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } /* * this originally handled postfix array dimensions... * * void VariableDeclaratorId() #VariableDeclaratorId : { Token t; } { * t= { jjtThis.name = t.image; } ( "[" "]" { * jjtThis.addUndefinedDimension(); } )* } */ final public void VariableInitializer() throws ParseException { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LBRACE: ArrayInitializer(); break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case BANG: case TILDE: case INCR: case DECR: case PLUS: case MINUS: Expression(); break; default: jj_consume_token(-1); throw new ParseException(); } } final public void ArrayInitializer() throws ParseException { /* @bgen(jjtree) ArrayInitializer */ BSHArrayInitializer jjtn000 = new BSHArrayInitializer(JJTARRAYINITIALIZER); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(LBRACE); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case LBRACE: case BANG: case TILDE: case INCR: case DECR: case PLUS: case MINUS: VariableInitializer(); label_2: while (true) { if (jj_2_4(2)) { ; } else { break label_2; } jj_consume_token(COMMA); VariableInitializer(); } break; default: ; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case COMMA: jj_consume_token(COMMA); break; default: ; } jj_consume_token(RBRACE); } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void FormalParameters() throws ParseException { /* @bgen(jjtree) FormalParameters */ BSHFormalParameters jjtn000 = new BSHFormalParameters(JJTFORMALPARAMETERS); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(LPAREN); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: case IDENTIFIER: FormalParameter(); label_3: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case COMMA: ; break; default: break label_3; } jj_consume_token(COMMA); FormalParameter(); } break; default: ; } jj_consume_token(RPAREN); } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void FormalParameter() throws ParseException { /* @bgen(jjtree) FormalParameter */ BSHFormalParameter jjtn000 = new BSHFormalParameter(JJTFORMALPARAMETER); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Token t; try { if (jj_2_5(2)) { Type(); t = jj_consume_token(IDENTIFIER); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.name = t.image; } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case IDENTIFIER: t = jj_consume_token(IDENTIFIER); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.name = t.image; break; default: jj_consume_token(-1); throw new ParseException(); } } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } /* * Type, name and expression syntax follows. */ final public void Type() throws ParseException { /* @bgen(jjtree) Type */ BSHType jjtn000 = new BSHType(JJTTYPE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: PrimitiveType(); break; case IDENTIFIER: AmbiguousName(); break; default: jj_consume_token(-1); throw new ParseException(); } label_4: while (true) { if (jj_2_6(2)) { ; } else { break label_4; } jj_consume_token(LBRACKET); jj_consume_token(RBRACKET); jjtn000.addArrayDimension(); } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } /* * Originally called ResultType in the grammar */ final public void ReturnType() throws ParseException { /* @bgen(jjtree) ReturnType */ BSHReturnType jjtn000 = new BSHReturnType(JJTRETURNTYPE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case VOID: jj_consume_token(VOID); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.isVoid = true; break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: case IDENTIFIER: Type(); break; default: jj_consume_token(-1); throw new ParseException(); } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void PrimitiveType() throws ParseException { /* @bgen(jjtree) PrimitiveType */ BSHPrimitiveType jjtn000 = new BSHPrimitiveType(JJTPRIMITIVETYPE); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: jj_consume_token(BOOLEAN); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.type = Boolean.TYPE; break; case CHAR: jj_consume_token(CHAR); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.type = Character.TYPE; break; case BYTE: jj_consume_token(BYTE); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.type = Byte.TYPE; break; case SHORT: jj_consume_token(SHORT); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.type = Short.TYPE; break; case INT: jj_consume_token(INT); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.type = Integer.TYPE; break; case LONG: jj_consume_token(LONG); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.type = Long.TYPE; break; case FLOAT: jj_consume_token(FLOAT); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.type = Float.TYPE; break; case DOUBLE: jj_consume_token(DOUBLE); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.type = Double.TYPE; break; default: jj_consume_token(-1); throw new ParseException(); } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void AmbiguousName() throws ParseException { /* @bgen(jjtree) AmbiguousName */ BSHAmbiguousName jjtn000 = new BSHAmbiguousName(JJTAMBIGUOUSNAME); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Token t; StringBuffer s; try { t = jj_consume_token(IDENTIFIER); s = new StringBuffer(t.image); label_5: while (true) { if (jj_2_7(2)) { ; } else { break label_5; } jj_consume_token(DOT); t = jj_consume_token(IDENTIFIER); s.append("." + t.image); } jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.text = s.toString(); } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public int NameList() throws ParseException { int count = 0; AmbiguousName(); ++count; label_6: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case COMMA: ; break; default: break label_6; } jj_consume_token(COMMA); AmbiguousName(); ++count; } { if (true) return count; } throw new Error("Missing return statement in function"); } /* * Expression syntax follows. */ final public void Expression() throws ParseException { if (jj_2_8(2147483647)) { Assignment(); } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case BANG: case TILDE: case INCR: case DECR: case PLUS: case MINUS: ConditionalExpression(); break; default: jj_consume_token(-1); throw new ParseException(); } } } final public void Assignment() throws ParseException { /* @bgen(jjtree) Assignment */ BSHAssignment jjtn000 = new BSHAssignment(JJTASSIGNMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); int op; try { PrimaryExpression(); op = AssignmentOperator(); jjtn000.operator = op; Expression(); } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public int AssignmentOperator() throws ParseException { Token t; switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case ASSIGN: jj_consume_token(ASSIGN); break; case STARASSIGN: jj_consume_token(STARASSIGN); break; case SLASHASSIGN: jj_consume_token(SLASHASSIGN); break; case MODASSIGN: jj_consume_token(MODASSIGN); break; case PLUSASSIGN: jj_consume_token(PLUSASSIGN); break; case MINUSASSIGN: jj_consume_token(MINUSASSIGN); break; case ANDASSIGN: jj_consume_token(ANDASSIGN); break; case XORASSIGN: jj_consume_token(XORASSIGN); break; case ORASSIGN: jj_consume_token(ORASSIGN); break; case LSHIFTASSIGN: jj_consume_token(LSHIFTASSIGN); break; case LSHIFTASSIGNX: jj_consume_token(LSHIFTASSIGNX); break; case RSIGNEDSHIFTASSIGN: jj_consume_token(RSIGNEDSHIFTASSIGN); break; case RSIGNEDSHIFTASSIGNX: jj_consume_token(RSIGNEDSHIFTASSIGNX); break; case RUNSIGNEDSHIFTASSIGN: jj_consume_token(RUNSIGNEDSHIFTASSIGN); break; case RUNSIGNEDSHIFTASSIGNX: jj_consume_token(RUNSIGNEDSHIFTASSIGNX); break; default: jj_consume_token(-1); throw new ParseException(); } t = getToken(0); { if (true) return t.kind; } throw new Error("Missing return statement in function"); } final public void ConditionalExpression() throws ParseException { ConditionalOrExpression(); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case HOOK: jj_consume_token(HOOK); Expression(); jj_consume_token(COLON); BSHTernaryExpression jjtn001 = new BSHTernaryExpression(JJTTERNARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { ConditionalExpression(); } catch (Throwable jjte001) { if (jjtc001) { jjtree.clearNodeScope(jjtn001); jjtc001 = false; } else { jjtree.popNode(); } if (jjte001 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte001; } } if (jjte001 instanceof ParseException) { { if (true) throw (ParseException) jjte001; } } { if (true) throw (Error) jjte001; } } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 3); jjtreeCloseNodeScope(jjtn001); } } break; default: ; } } final public void ConditionalOrExpression() throws ParseException { Token t = null; ConditionalAndExpression(); label_7: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOL_OR: case BOOL_ORX: ; break; default: break label_7; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOL_OR: t = jj_consume_token(BOOL_OR); break; case BOOL_ORX: t = jj_consume_token(BOOL_ORX); break; default: jj_consume_token(-1); throw new ParseException(); } ConditionalAndExpression(); BSHBinaryExpression jjtn001 = new BSHBinaryExpression(JJTBINARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 2); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 2); jjtreeCloseNodeScope(jjtn001); } } } } final public void ConditionalAndExpression() throws ParseException { Token t = null; InclusiveOrExpression(); label_8: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOL_AND: case BOOL_ANDX: ; break; default: break label_8; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOL_AND: t = jj_consume_token(BOOL_AND); break; case BOOL_ANDX: t = jj_consume_token(BOOL_ANDX); break; default: jj_consume_token(-1); throw new ParseException(); } InclusiveOrExpression(); BSHBinaryExpression jjtn001 = new BSHBinaryExpression(JJTBINARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 2); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 2); jjtreeCloseNodeScope(jjtn001); } } } } final public void InclusiveOrExpression() throws ParseException { Token t = null; ExclusiveOrExpression(); label_9: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BIT_OR: case BIT_ORX: ; break; default: break label_9; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BIT_OR: t = jj_consume_token(BIT_OR); break; case BIT_ORX: t = jj_consume_token(BIT_ORX); break; default: jj_consume_token(-1); throw new ParseException(); } ExclusiveOrExpression(); BSHBinaryExpression jjtn001 = new BSHBinaryExpression(JJTBINARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 2); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 2); jjtreeCloseNodeScope(jjtn001); } } } } final public void ExclusiveOrExpression() throws ParseException { Token t = null; AndExpression(); label_10: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case XOR: ; break; default: break label_10; } t = jj_consume_token(XOR); AndExpression(); BSHBinaryExpression jjtn001 = new BSHBinaryExpression(JJTBINARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 2); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 2); jjtreeCloseNodeScope(jjtn001); } } } } final public void AndExpression() throws ParseException { Token t = null; EqualityExpression(); label_11: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BIT_AND: case BIT_ANDX: ; break; default: break label_11; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BIT_AND: t = jj_consume_token(BIT_AND); break; case BIT_ANDX: t = jj_consume_token(BIT_ANDX); break; default: jj_consume_token(-1); throw new ParseException(); } EqualityExpression(); BSHBinaryExpression jjtn001 = new BSHBinaryExpression(JJTBINARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 2); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 2); jjtreeCloseNodeScope(jjtn001); } } } } final public void EqualityExpression() throws ParseException { Token t = null; InstanceOfExpression(); label_12: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case EQ: case NE: ; break; default: break label_12; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case EQ: t = jj_consume_token(EQ); break; case NE: t = jj_consume_token(NE); break; default: jj_consume_token(-1); throw new ParseException(); } InstanceOfExpression(); BSHBinaryExpression jjtn001 = new BSHBinaryExpression(JJTBINARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 2); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 2); jjtreeCloseNodeScope(jjtn001); } } } } final public void InstanceOfExpression() throws ParseException { Token t = null; RelationalExpression(); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case INSTANCEOF: t = jj_consume_token(INSTANCEOF); Type(); BSHBinaryExpression jjtn001 = new BSHBinaryExpression(JJTBINARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 2); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 2); jjtreeCloseNodeScope(jjtn001); } } break; default: ; } } final public void RelationalExpression() throws ParseException { Token t = null; ShiftExpression(); label_13: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case GT: case GTX: case LT: case LTX: case LE: case LEX: case GE: case GEX: ; break; default: break label_13; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LT: t = jj_consume_token(LT); break; case LTX: t = jj_consume_token(LTX); break; case GT: t = jj_consume_token(GT); break; case GTX: t = jj_consume_token(GTX); break; case LE: t = jj_consume_token(LE); break; case LEX: t = jj_consume_token(LEX); break; case GE: t = jj_consume_token(GE); break; case GEX: t = jj_consume_token(GEX); break; default: jj_consume_token(-1); throw new ParseException(); } ShiftExpression(); BSHBinaryExpression jjtn001 = new BSHBinaryExpression(JJTBINARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 2); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 2); jjtreeCloseNodeScope(jjtn001); } } } } final public void ShiftExpression() throws ParseException { Token t = null; AdditiveExpression(); label_14: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LSHIFT: case LSHIFTX: case RSIGNEDSHIFT: case RSIGNEDSHIFTX: case RUNSIGNEDSHIFT: case RUNSIGNEDSHIFTX: ; break; default: break label_14; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LSHIFT: t = jj_consume_token(LSHIFT); break; case LSHIFTX: t = jj_consume_token(LSHIFTX); break; case RSIGNEDSHIFT: t = jj_consume_token(RSIGNEDSHIFT); break; case RSIGNEDSHIFTX: t = jj_consume_token(RSIGNEDSHIFTX); break; case RUNSIGNEDSHIFT: t = jj_consume_token(RUNSIGNEDSHIFT); break; case RUNSIGNEDSHIFTX: t = jj_consume_token(RUNSIGNEDSHIFTX); break; default: jj_consume_token(-1); throw new ParseException(); } AdditiveExpression(); BSHBinaryExpression jjtn001 = new BSHBinaryExpression(JJTBINARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 2); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 2); jjtreeCloseNodeScope(jjtn001); } } } } final public void AdditiveExpression() throws ParseException { Token t = null; MultiplicativeExpression(); label_15: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case PLUS: case MINUS: ; break; default: break label_15; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case PLUS: t = jj_consume_token(PLUS); break; case MINUS: t = jj_consume_token(MINUS); break; default: jj_consume_token(-1); throw new ParseException(); } MultiplicativeExpression(); BSHBinaryExpression jjtn001 = new BSHBinaryExpression(JJTBINARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 2); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 2); jjtreeCloseNodeScope(jjtn001); } } } } final public void MultiplicativeExpression() throws ParseException { Token t = null; UnaryExpression(); label_16: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case STAR: case SLASH: case MOD: ; break; default: break label_16; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case STAR: t = jj_consume_token(STAR); break; case SLASH: t = jj_consume_token(SLASH); break; case MOD: t = jj_consume_token(MOD); break; default: jj_consume_token(-1); throw new ParseException(); } UnaryExpression(); BSHBinaryExpression jjtn001 = new BSHBinaryExpression(JJTBINARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 2); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 2); jjtreeCloseNodeScope(jjtn001); } } } } final public void UnaryExpression() throws ParseException { Token t = null; switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case PLUS: case MINUS: switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case PLUS: t = jj_consume_token(PLUS); break; case MINUS: t = jj_consume_token(MINUS); break; default: jj_consume_token(-1); throw new ParseException(); } UnaryExpression(); BSHUnaryExpression jjtn001 = new BSHUnaryExpression(JJTUNARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 1); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 1); jjtreeCloseNodeScope(jjtn001); } } break; case INCR: PreIncrementExpression(); break; case DECR: PreDecrementExpression(); break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case BANG: case TILDE: UnaryExpressionNotPlusMinus(); break; default: jj_consume_token(-1); throw new ParseException(); } } final public void PreIncrementExpression() throws ParseException { Token t = null; t = jj_consume_token(INCR); PrimaryExpression(); BSHUnaryExpression jjtn001 = new BSHUnaryExpression(JJTUNARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 1); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 1); jjtreeCloseNodeScope(jjtn001); } } } final public void PreDecrementExpression() throws ParseException { Token t = null; t = jj_consume_token(DECR); PrimaryExpression(); BSHUnaryExpression jjtn001 = new BSHUnaryExpression(JJTUNARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 1); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 1); jjtreeCloseNodeScope(jjtn001); } } } final public void UnaryExpressionNotPlusMinus() throws ParseException { Token t = null; switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BANG: case TILDE: switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case TILDE: t = jj_consume_token(TILDE); break; case BANG: t = jj_consume_token(BANG); break; default: jj_consume_token(-1); throw new ParseException(); } UnaryExpression(); BSHUnaryExpression jjtn001 = new BSHUnaryExpression(JJTUNARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 1); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 1); jjtreeCloseNodeScope(jjtn001); } } break; default: if (jj_2_9(2147483647)) { CastExpression(); } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: PostfixExpression(); break; default: jj_consume_token(-1); throw new ParseException(); } } } } // This production is to determine lookahead only. final public void CastLookahead() throws ParseException { if (jj_2_10(2)) { jj_consume_token(LPAREN); PrimitiveType(); } else if (jj_2_11(2147483647)) { jj_consume_token(LPAREN); AmbiguousName(); jj_consume_token(LBRACKET); jj_consume_token(RBRACKET); } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LPAREN: jj_consume_token(LPAREN); AmbiguousName(); jj_consume_token(RPAREN); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case TILDE: jj_consume_token(TILDE); break; case BANG: jj_consume_token(BANG); break; case LPAREN: jj_consume_token(LPAREN); break; case IDENTIFIER: jj_consume_token(IDENTIFIER); break; case NEW: jj_consume_token(NEW); break; case FALSE: case NULL: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: Literal(); break; default: jj_consume_token(-1); throw new ParseException(); } break; default: jj_consume_token(-1); throw new ParseException(); } } } final public void PostfixExpression() throws ParseException { Token t = null; if (jj_2_12(2147483647)) { PrimaryExpression(); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case INCR: t = jj_consume_token(INCR); break; case DECR: t = jj_consume_token(DECR); break; default: jj_consume_token(-1); throw new ParseException(); } BSHUnaryExpression jjtn001 = new BSHUnaryExpression(JJTUNARYEXPRESSION); boolean jjtc001 = true; jjtree.openNodeScope(jjtn001); jjtreeOpenNodeScope(jjtn001); try { jjtree.closeNodeScope(jjtn001, 1); jjtc001 = false; jjtreeCloseNodeScope(jjtn001); jjtn001.kind = t.kind; jjtn001.postfix = true; } finally { if (jjtc001) { jjtree.closeNodeScope(jjtn001, 1); jjtreeCloseNodeScope(jjtn001); } } } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: PrimaryExpression(); break; default: jj_consume_token(-1); throw new ParseException(); } } } final public void CastExpression() throws ParseException { /* @bgen(jjtree) CastExpression */ BSHCastExpression jjtn000 = new BSHCastExpression(JJTCASTEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { if (jj_2_13(2147483647)) { jj_consume_token(LPAREN); Type(); jj_consume_token(RPAREN); UnaryExpression(); } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LPAREN: jj_consume_token(LPAREN); Type(); jj_consume_token(RPAREN); UnaryExpressionNotPlusMinus(); break; default: jj_consume_token(-1); throw new ParseException(); } } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void PrimaryExpression() throws ParseException { /* @bgen(jjtree) PrimaryExpression */ BSHPrimaryExpression jjtn000 = new BSHPrimaryExpression(JJTPRIMARYEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { PrimaryPrefix(); label_17: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LBRACE: case LBRACKET: case DOT: ; break; default: break label_17; } PrimarySuffix(); } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void MethodInvocation() throws ParseException { /* @bgen(jjtree) MethodInvocation */ BSHMethodInvocation jjtn000 = new BSHMethodInvocation(JJTMETHODINVOCATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { AmbiguousName(); Arguments(); } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void PrimaryPrefix() throws ParseException { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case FALSE: case NULL: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: Literal(); break; case LPAREN: jj_consume_token(LPAREN); Expression(); jj_consume_token(RPAREN); break; case NEW: AllocationExpression(); break; default: if (jj_2_14(2147483647)) { MethodInvocation(); } else if (jj_2_15(2147483647)) { Type(); } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case IDENTIFIER: AmbiguousName(); break; default: jj_consume_token(-1); throw new ParseException(); } } } } final public void PrimarySuffix() throws ParseException { /* @bgen(jjtree) PrimarySuffix */ BSHPrimarySuffix jjtn000 = new BSHPrimarySuffix(JJTPRIMARYSUFFIX); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Token t = null; try { if (jj_2_16(2)) { jj_consume_token(DOT); jj_consume_token(CLASS); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.operation = BSHPrimarySuffix.CLASS; } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LBRACKET: jj_consume_token(LBRACKET); Expression(); jj_consume_token(RBRACKET); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.operation = BSHPrimarySuffix.INDEX; break; case DOT: jj_consume_token(DOT); t = jj_consume_token(IDENTIFIER); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LPAREN: Arguments(); break; default: ; } jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.operation = BSHPrimarySuffix.NAME; jjtn000.field = t.image; break; case LBRACE: jj_consume_token(LBRACE); Expression(); jj_consume_token(RBRACE); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.operation = BSHPrimarySuffix.PROPERTY; break; default: jj_consume_token(-1); throw new ParseException(); } } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void Literal() throws ParseException { /* @bgen(jjtree) Literal */ BSHLiteral jjtn000 = new BSHLiteral(JJTLITERAL); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Token x; boolean b; String literal; char ch; try { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case INTEGER_LITERAL: x = jj_consume_token(INTEGER_LITERAL); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); literal = x.image; ch = literal.charAt(literal.length() - 1); if (ch == 'l' || ch == 'L') { literal = literal.substring(0, literal.length() - 1); // This really should be Long.decode, // but there isn't one. As a result, // hex and octal literals ending in 'l' // or 'L' don't work. jjtn000.value = new Primitive(new Long(literal).longValue()); } else try { jjtn000.value = new Primitive(Integer.decode(literal).intValue()); } catch (NumberFormatException e) { { if (true) throw createParseException("Error or number too big for integer type: " + literal); } } break; case FLOATING_POINT_LITERAL: x = jj_consume_token(FLOATING_POINT_LITERAL); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); literal = x.image; ch = literal.charAt(literal.length() - 1); if (ch == 'f' || ch == 'F') { literal = literal.substring(0, literal.length() - 1); jjtn000.value = new Primitive(new Float(literal).floatValue()); } else { if (ch == 'd' || ch == 'D') literal = literal.substring(0, literal.length() - 1); jjtn000.value = new Primitive(new Double(literal).doubleValue()); } break; case CHARACTER_LITERAL: x = jj_consume_token(CHARACTER_LITERAL); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); try { jjtn000.charSetup(x.image.substring(1, x.image.length() - 1)); } catch (Exception e) { { if (true) throw createParseException("Error parsing character: " + x.image); } } break; case STRING_LITERAL: x = jj_consume_token(STRING_LITERAL); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); try { jjtn000.stringSetup(x.image.substring(1, x.image.length() - 1)); } catch (Exception e) { { if (true) throw createParseException("Error parsing string: " + x.image); } } break; case FALSE: case TRUE: b = BooleanLiteral(); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.value = new Primitive(b); break; case NULL: NullLiteral(); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.value = Primitive.NULL; break; case VOID: VoidLiteral(); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.value = Primitive.VOID; break; default: jj_consume_token(-1); throw new ParseException(); } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public boolean BooleanLiteral() throws ParseException { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case TRUE: jj_consume_token(TRUE); { if (true) return true; } break; case FALSE: jj_consume_token(FALSE); { if (true) return false; } break; default: jj_consume_token(-1); throw new ParseException(); } throw new Error("Missing return statement in function"); } final public void NullLiteral() throws ParseException { jj_consume_token(NULL); } final public void VoidLiteral() throws ParseException { jj_consume_token(VOID); } final public void Arguments() throws ParseException { /* @bgen(jjtree) Arguments */ BSHArguments jjtn000 = new BSHArguments(JJTARGUMENTS); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(LPAREN); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case BANG: case TILDE: case INCR: case DECR: case PLUS: case MINUS: ArgumentList(); break; default: ; } jj_consume_token(RPAREN); } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } // leave these on the stack for Arguments() to handle final public void ArgumentList() throws ParseException { Expression(); label_18: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case COMMA: ; break; default: break label_18; } jj_consume_token(COMMA); Expression(); } } final public void AllocationExpression() throws ParseException { /* @bgen(jjtree) AllocationExpression */ BSHAllocationExpression jjtn000 = new BSHAllocationExpression(JJTALLOCATIONEXPRESSION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { if (jj_2_18(2)) { jj_consume_token(NEW); PrimitiveType(); ArrayDimensions(); } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case NEW: jj_consume_token(NEW); AmbiguousName(); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LBRACKET: ArrayDimensions(); break; case LPAREN: Arguments(); if (jj_2_17(2)) { Block(); } else { ; } break; default: jj_consume_token(-1); throw new ParseException(); } break; default: jj_consume_token(-1); throw new ParseException(); } } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void ArrayDimensions() throws ParseException { /* @bgen(jjtree) ArrayDimensions */ BSHArrayDimensions jjtn000 = new BSHArrayDimensions(JJTARRAYDIMENSIONS); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { if (jj_2_21(2)) { label_19: while (true) { jj_consume_token(LBRACKET); Expression(); jj_consume_token(RBRACKET); jjtn000.addDefinedDimension(); if (jj_2_19(2)) { ; } else { break label_19; } } label_20: while (true) { if (jj_2_20(2)) { ; } else { break label_20; } jj_consume_token(LBRACKET); jj_consume_token(RBRACKET); jjtn000.addUndefinedDimension(); } } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LBRACKET: label_21: while (true) { jj_consume_token(LBRACKET); jj_consume_token(RBRACKET); jjtn000.addUndefinedDimension(); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LBRACKET: ; break; default: break label_21; } } ArrayInitializer(); break; default: jj_consume_token(-1); throw new ParseException(); } } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } /* * Statement syntax follows. */ final public void Statement() throws ParseException { if (jj_2_22(2)) { LabeledStatement(); } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case LBRACE: Block(); break; case SEMICOLON: EmptyStatement(); break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case BANG: case TILDE: case INCR: case DECR: case PLUS: case MINUS: StatementExpression(); jj_consume_token(SEMICOLON); break; case SWITCH: SwitchStatement(); break; case IF: IfStatement(); break; case WHILE: WhileStatement(); break; case DO: DoStatement(); break; default: if (isRegularForStatement()) { ForStatement(); } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case FOR: EnhancedForStatement(); break; case BREAK: BreakStatement(); break; case CONTINUE: ContinueStatement(); break; case RETURN: ReturnStatement(); break; case SYNCHRONIZED: SynchronizedStatement(); break; case THROW: ThrowStatement(); break; case TRY: TryStatement(); break; default: jj_consume_token(-1); throw new ParseException(); } } } } } final public void LabeledStatement() throws ParseException { jj_consume_token(IDENTIFIER); jj_consume_token(COLON); Statement(); } final public void Block() throws ParseException { /* @bgen(jjtree) Block */ BSHBlock jjtn000 = new BSHBlock(JJTBLOCK); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(LBRACE); label_22: while (true) { if (jj_2_23(1)) { ; } else { break label_22; } BlockStatement(); } jj_consume_token(RBRACE); } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void BlockStatement() throws ParseException { if (jj_2_24(2147483647)) { ClassDeclaration(); } else if (jj_2_25(2147483647)) { MethodDeclaration(); } else if (jj_2_26(2147483647)) { MethodDeclaration(); } else if (jj_2_27(2147483647)) { TypedVariableDeclaration(); jj_consume_token(SEMICOLON); } else if (jj_2_28(1)) { Statement(); } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case IMPORT: case STATIC: ImportDeclaration(); break; case PACKAGE: PackageDeclaration(); break; case FORMAL_COMMENT: FormalComment(); break; default: jj_consume_token(-1); throw new ParseException(); } } } final public void FormalComment() throws ParseException { /* @bgen(jjtree) #FormalComment( retainComments) */ BSHFormalComment jjtn000 = new BSHFormalComment(JJTFORMALCOMMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Token t; try { t = jj_consume_token(FORMAL_COMMENT); jjtree.closeNodeScope(jjtn000, retainComments); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.text = t.image; } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, retainComments); jjtreeCloseNodeScope(jjtn000); } } } final public void EmptyStatement() throws ParseException { jj_consume_token(SEMICOLON); } final public void StatementExpression() throws ParseException { Expression(); } final public void SwitchStatement() throws ParseException { /* @bgen(jjtree) SwitchStatement */ BSHSwitchStatement jjtn000 = new BSHSwitchStatement(JJTSWITCHSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(SWITCH); jj_consume_token(LPAREN); Expression(); jj_consume_token(RPAREN); jj_consume_token(LBRACE); label_23: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case CASE: case _DEFAULT: ; break; default: break label_23; } SwitchLabel(); label_24: while (true) { if (jj_2_29(1)) { ; } else { break label_24; } BlockStatement(); } } jj_consume_token(RBRACE); } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void SwitchLabel() throws ParseException { /* @bgen(jjtree) SwitchLabel */ BSHSwitchLabel jjtn000 = new BSHSwitchLabel(JJTSWITCHLABEL); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case CASE: jj_consume_token(CASE); Expression(); jj_consume_token(COLON); break; case _DEFAULT: jj_consume_token(_DEFAULT); jj_consume_token(COLON); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.isDefault = true; break; default: jj_consume_token(-1); throw new ParseException(); } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void IfStatement() throws ParseException { /* @bgen(jjtree) IfStatement */ BSHIfStatement jjtn000 = new BSHIfStatement(JJTIFSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(IF); jj_consume_token(LPAREN); Expression(); jj_consume_token(RPAREN); Statement(); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case ELSE: jj_consume_token(ELSE); Statement(); break; default: ; } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void WhileStatement() throws ParseException { /* @bgen(jjtree) WhileStatement */ BSHWhileStatement jjtn000 = new BSHWhileStatement(JJTWHILESTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(WHILE); jj_consume_token(LPAREN); Expression(); jj_consume_token(RPAREN); Statement(); } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } /* * Do statement is just a While statement with a special hook to execute at * least once. */ final public void DoStatement() throws ParseException { /* @bgen(jjtree) WhileStatement */ BSHWhileStatement jjtn000 = new BSHWhileStatement(JJTWHILESTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(DO); Statement(); jj_consume_token(WHILE); jj_consume_token(LPAREN); Expression(); jj_consume_token(RPAREN); jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.isDoStatement = true; } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void ForStatement() throws ParseException { /* @bgen(jjtree) ForStatement */ BSHForStatement jjtn000 = new BSHForStatement(JJTFORSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Token t = null; try { jj_consume_token(FOR); jj_consume_token(LPAREN); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case ABSTRACT: case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FINAL: case FLOAT: case INT: case LONG: case NATIVE: case NEW: case NULL: case PRIVATE: case PROTECTED: case PUBLIC: case SHORT: case STATIC: case STRICTFP: case SYNCHRONIZED: case TRANSIENT: case TRUE: case VOID: case VOLATILE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case BANG: case TILDE: case INCR: case DECR: case PLUS: case MINUS: ForInit(); jjtn000.hasForInit = true; break; default: ; } jj_consume_token(SEMICOLON); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case BANG: case TILDE: case INCR: case DECR: case PLUS: case MINUS: Expression(); jjtn000.hasExpression = true; break; default: ; } jj_consume_token(SEMICOLON); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case BANG: case TILDE: case INCR: case DECR: case PLUS: case MINUS: ForUpdate(); jjtn000.hasForUpdate = true; break; default: ; } jj_consume_token(RPAREN); Statement(); } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } /* * The new JDK1.5 enhanced for statement. e.g. for( int a : arrayOfInts ) { * } We also support loose typing of the iterator var for BeanShell e.g. * for( a : arrayOfInts ) { } */ final public void EnhancedForStatement() throws ParseException { /* @bgen(jjtree) EnhancedForStatement */ BSHEnhancedForStatement jjtn000 = new BSHEnhancedForStatement(JJTENHANCEDFORSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Token t = null; try { if (jj_2_30(4)) { jj_consume_token(FOR); jj_consume_token(LPAREN); t = jj_consume_token(IDENTIFIER); jj_consume_token(COLON); Expression(); jj_consume_token(RPAREN); Statement(); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.varName = t.image; } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case FOR: jj_consume_token(FOR); jj_consume_token(LPAREN); Type(); t = jj_consume_token(IDENTIFIER); jj_consume_token(COLON); Expression(); jj_consume_token(RPAREN); Statement(); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.varName = t.image; break; default: jj_consume_token(-1); throw new ParseException(); } } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void ForInit() throws ParseException { Token t = null; if (jj_2_31(2147483647)) { TypedVariableDeclaration(); } else { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case BANG: case TILDE: case INCR: case DECR: case PLUS: case MINUS: StatementExpressionList(); break; default: jj_consume_token(-1); throw new ParseException(); } } } /** * Declared a typed variable. Untyped variables are not declared per-se but * are handled by the part of the grammar that deals with assignments. * * @throws ParseException if a parse error occurs. */ final public void TypedVariableDeclaration() throws ParseException { /* @bgen(jjtree) TypedVariableDeclaration */ BSHTypedVariableDeclaration jjtn000 = new BSHTypedVariableDeclaration(JJTTYPEDVARIABLEDECLARATION); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); Token t = null; Modifiers mods; try { mods = Modifiers(Modifiers.FIELD, false); Type(); VariableDeclarator(); label_25: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case COMMA: ; break; default: break label_25; } jj_consume_token(COMMA); VariableDeclarator(); } jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.modifiers = mods; } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void StatementExpressionList() throws ParseException { /* @bgen(jjtree) StatementExpressionList */ BSHStatementExpressionList jjtn000 = new BSHStatementExpressionList(JJTSTATEMENTEXPRESSIONLIST); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { StatementExpression(); label_26: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case COMMA: ; break; default: break label_26; } jj_consume_token(COMMA); StatementExpression(); } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void ForUpdate() throws ParseException { StatementExpressionList(); } final public void BreakStatement() throws ParseException { /* @bgen(jjtree) ReturnStatement */ BSHReturnStatement jjtn000 = new BSHReturnStatement(JJTRETURNSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(BREAK); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; default: ; } jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.kind = BREAK; } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void ContinueStatement() throws ParseException { /* @bgen(jjtree) ReturnStatement */ BSHReturnStatement jjtn000 = new BSHReturnStatement(JJTRETURNSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(CONTINUE); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; default: ; } jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.kind = CONTINUE; } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void ReturnStatement() throws ParseException { /* @bgen(jjtree) ReturnStatement */ BSHReturnStatement jjtn000 = new BSHReturnStatement(JJTRETURNSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(RETURN); switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FALSE: case FLOAT: case INT: case LONG: case NEW: case NULL: case SHORT: case TRUE: case VOID: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case BANG: case TILDE: case INCR: case DECR: case PLUS: case MINUS: Expression(); break; default: ; } jj_consume_token(SEMICOLON); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.kind = RETURN; } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void SynchronizedStatement() throws ParseException { /* @bgen(jjtree) Block */ BSHBlock jjtn000 = new BSHBlock(JJTBLOCK); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(SYNCHRONIZED); jj_consume_token(LPAREN); Expression(); jj_consume_token(RPAREN); Block(); jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); jjtn000.isSynchronized = true; } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void ThrowStatement() throws ParseException { /* @bgen(jjtree) ThrowStatement */ BSHThrowStatement jjtn000 = new BSHThrowStatement(JJTTHROWSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); try { jj_consume_token(THROW); Expression(); jj_consume_token(SEMICOLON); } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final public void TryStatement() throws ParseException { /* @bgen(jjtree) TryStatement */ BSHTryStatement jjtn000 = new BSHTryStatement(JJTTRYSTATEMENT); boolean jjtc000 = true; jjtree.openNodeScope(jjtn000); jjtreeOpenNodeScope(jjtn000); boolean closed = false; try { jj_consume_token(TRY); Block(); label_27: while (true) { switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case CATCH: ; break; default: break label_27; } jj_consume_token(CATCH); jj_consume_token(LPAREN); FormalParameter(); jj_consume_token(RPAREN); Block(); closed = true; } switch ((jj_ntk == -1) ? jj_ntk() : jj_ntk) { case FINALLY: jj_consume_token(FINALLY); Block(); closed = true; break; default: ; } jjtree.closeNodeScope(jjtn000, true); jjtc000 = false; jjtreeCloseNodeScope(jjtn000); if (!closed) { if (true) throw generateParseException(); } } catch (Throwable jjte000) { if (jjtc000) { jjtree.clearNodeScope(jjtn000); jjtc000 = false; } else { jjtree.popNode(); } if (jjte000 instanceof RuntimeException) { { if (true) throw (RuntimeException) jjte000; } } if (jjte000 instanceof ParseException) { { if (true) throw (ParseException) jjte000; } } { if (true) throw (Error) jjte000; } } finally { if (jjtc000) { jjtree.closeNodeScope(jjtn000, true); jjtreeCloseNodeScope(jjtn000); } } } final private boolean jj_2_1(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_1(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_2(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_2(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_3(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_3(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_4(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_4(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_5(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_5(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_6(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_6(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_7(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_7(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_8(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_8(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_9(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_9(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_10(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_10(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_11(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_11(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_12(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_12(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_13(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_13(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_14(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_14(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_15(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_15(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_16(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_16(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_17(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_17(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_18(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_18(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_19(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_19(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_20(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_20(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_21(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_21(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_22(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_22(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_23(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_23(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_24(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_24(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_25(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_25(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_26(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_26(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_27(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_27(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_28(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_28(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_29(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_29(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_30(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_30(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_2_31(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; try { return !jj_3_31(); } catch (LookaheadSuccess ls) { return true; } } final private boolean jj_3R_46() { if (jj_3R_91()) return true; return false; } final private boolean jj_3R_28() { Token xsp; xsp = jj_scanpos; if (jj_3R_46()) { jj_scanpos = xsp; if (jj_3R_47()) { jj_scanpos = xsp; if (jj_3R_48()) { jj_scanpos = xsp; if (jj_3R_49()) { jj_scanpos = xsp; if (jj_3_28()) { jj_scanpos = xsp; if (jj_3R_50()) { jj_scanpos = xsp; if (jj_3R_51()) { jj_scanpos = xsp; if (jj_3R_52()) return true; } } } } } } } return false; } final private boolean jj_3_23() { if (jj_3R_28()) return true; return false; } final private boolean jj_3R_161() { if (jj_3R_164()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_169()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_38() { if (jj_scan_token(LBRACE)) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3_23()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RBRACE)) return true; return false; } final private boolean jj_3R_158() { if (jj_3R_161()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_167()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_40() { if (jj_scan_token(IDENTIFIER)) return true; if (jj_scan_token(COLON)) return true; if (jj_3R_45()) return true; return false; } final private boolean jj_3R_156() { if (jj_scan_token(HOOK)) return true; if (jj_3R_39()) return true; if (jj_scan_token(COLON)) return true; if (jj_3R_108()) return true; return false; } final private boolean jj_3R_165() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(108)) { jj_scanpos = xsp; if (jj_scan_token(109)) return true; } if (jj_3R_158()) return true; return false; } final private boolean jj_3R_153() { if (jj_3R_158()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_165()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_90() { if (jj_3R_124()) return true; return false; } final private boolean jj_3R_89() { if (jj_3R_123()) return true; return false; } final private boolean jj_3R_88() { if (jj_3R_122()) return true; return false; } final private boolean jj_3R_162() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(98)) { jj_scanpos = xsp; if (jj_scan_token(99)) return true; } if (jj_3R_153()) return true; return false; } final private boolean jj_3R_87() { if (jj_3R_121()) return true; return false; } final private boolean jj_3R_148() { if (jj_3R_153()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_162()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_86() { if (jj_3R_120()) return true; return false; } final private boolean jj_3R_85() { if (jj_3R_119()) return true; return false; } final private boolean jj_3R_84() { if (jj_3R_118()) return true; return false; } final private boolean jj_3R_159() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(96)) { jj_scanpos = xsp; if (jj_scan_token(97)) return true; } if (jj_3R_148()) return true; return false; } final private boolean jj_3R_83() { if (jj_3R_117()) return true; return false; } final private boolean jj_3R_135() { if (jj_3R_148()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_159()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_82() { if (jj_3R_116()) return true; return false; } final private boolean jj_3R_81() { if (jj_3R_115()) return true; return false; } final private boolean jj_3R_80() { if (jj_3R_114()) return true; return false; } final private boolean jj_3R_108() { if (jj_3R_135()) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_156()) jj_scanpos = xsp; return false; } final private boolean jj_3R_79() { if (jj_3R_113()) return true; return false; } final private boolean jj_3R_78() { if (jj_3R_112()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } final private boolean jj_3_17() { if (jj_3R_38()) return true; return false; } final private boolean jj_3R_77() { if (jj_3R_38()) return true; return false; } final private boolean jj_3R_45() { Token xsp; xsp = jj_scanpos; if (jj_3_22()) { jj_scanpos = xsp; if (jj_3R_77()) { jj_scanpos = xsp; if (jj_scan_token(78)) { jj_scanpos = xsp; if (jj_3R_78()) { jj_scanpos = xsp; if (jj_3R_79()) { jj_scanpos = xsp; if (jj_3R_80()) { jj_scanpos = xsp; if (jj_3R_81()) { jj_scanpos = xsp; if (jj_3R_82()) { jj_scanpos = xsp; lookingAhead = true; jj_semLA = isRegularForStatement(); lookingAhead = false; if (!jj_semLA || jj_3R_83()) { jj_scanpos = xsp; if (jj_3R_84()) { jj_scanpos = xsp; if (jj_3R_85()) { jj_scanpos = xsp; if (jj_3R_86()) { jj_scanpos = xsp; if (jj_3R_87()) { jj_scanpos = xsp; if (jj_3R_88()) { jj_scanpos = xsp; if (jj_3R_89()) { jj_scanpos = xsp; if (jj_3R_90()) return true; } } } } } } } } } } } } } } } return false; } final private boolean jj_3_22() { if (jj_3R_40()) return true; return false; } final private boolean jj_3R_34() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(81)) { jj_scanpos = xsp; if (jj_scan_token(120)) { jj_scanpos = xsp; if (jj_scan_token(121)) { jj_scanpos = xsp; if (jj_scan_token(127)) { jj_scanpos = xsp; if (jj_scan_token(118)) { jj_scanpos = xsp; if (jj_scan_token(119)) { jj_scanpos = xsp; if (jj_scan_token(122)) { jj_scanpos = xsp; if (jj_scan_token(126)) { jj_scanpos = xsp; if (jj_scan_token(124)) { jj_scanpos = xsp; if (jj_scan_token(128)) { jj_scanpos = xsp; if (jj_scan_token(129)) { jj_scanpos = xsp; if (jj_scan_token(130)) { jj_scanpos = xsp; if (jj_scan_token(131)) { jj_scanpos = xsp; if (jj_scan_token(132)) { jj_scanpos = xsp; if (jj_scan_token(133)) return true; } } } } } } } } } } } } } } return false; } final private boolean jj_3R_111() { if (jj_scan_token(COMMA)) return true; if (jj_3R_29()) return true; return false; } final private boolean jj_3R_160() { if (jj_scan_token(LBRACKET)) return true; if (jj_scan_token(RBRACKET)) return true; return false; } final private boolean jj_3R_152() { if (jj_3R_69()) return true; Token xsp; xsp = jj_scanpos; if (jj_3_17()) jj_scanpos = xsp; return false; } final private boolean jj_3R_157() { Token xsp; if (jj_3R_160()) return true; while (true) { xsp = jj_scanpos; if (jj_3R_160()) { jj_scanpos = xsp; break; } } if (jj_3R_97()) return true; return false; } final private boolean jj_3_8() { if (jj_3R_33()) return true; if (jj_3R_34()) return true; return false; } final private boolean jj_3_20() { if (jj_scan_token(LBRACKET)) return true; if (jj_scan_token(RBRACKET)) return true; return false; } final private boolean jj_3R_151() { if (jj_3R_150()) return true; return false; } final private boolean jj_3_19() { if (jj_scan_token(LBRACKET)) return true; if (jj_3R_39()) return true; if (jj_scan_token(RBRACKET)) return true; return false; } final private boolean jj_3R_107() { if (jj_3R_33()) return true; if (jj_3R_34()) return true; if (jj_3R_39()) return true; return false; } final private boolean jj_3_21() { Token xsp; if (jj_3_19()) return true; while (true) { xsp = jj_scanpos; if (jj_3_19()) { jj_scanpos = xsp; break; } } while (true) { xsp = jj_scanpos; if (jj_3_20()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_150() { Token xsp; xsp = jj_scanpos; if (jj_3_21()) { jj_scanpos = xsp; if (jj_3R_157()) return true; } return false; } final private boolean jj_3R_71() { if (jj_3R_108()) return true; return false; } final private boolean jj_3R_39() { Token xsp; xsp = jj_scanpos; if (jj_3R_70()) { jj_scanpos = xsp; if (jj_3R_71()) return true; } return false; } final private boolean jj_3R_70() { if (jj_3R_107()) return true; return false; } final private boolean jj_3R_145() { if (jj_scan_token(NEW)) return true; if (jj_3R_29()) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_151()) { jj_scanpos = xsp; if (jj_3R_152()) return true; } return false; } final private boolean jj_3_18() { if (jj_scan_token(NEW)) return true; if (jj_3R_36()) return true; if (jj_3R_150()) return true; return false; } final private boolean jj_3R_130() { Token xsp; xsp = jj_scanpos; if (jj_3_18()) { jj_scanpos = xsp; if (jj_3R_145()) return true; } return false; } final private boolean jj_3R_147() { if (jj_scan_token(COMMA)) return true; if (jj_3R_39()) return true; return false; } final private boolean jj_3R_76() { if (jj_3R_29()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_111()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_134() { if (jj_3R_39()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_147()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_106() { if (jj_3R_134()) return true; return false; } final private boolean jj_3_7() { if (jj_scan_token(DOT)) return true; if (jj_scan_token(IDENTIFIER)) return true; return false; } final private boolean jj_3R_69() { if (jj_scan_token(LPAREN)) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_106()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } final private boolean jj_3R_29() { if (jj_scan_token(IDENTIFIER)) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3_7()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_68() { if (jj_scan_token(DOUBLE)) return true; return false; } final private boolean jj_3R_67() { if (jj_scan_token(FLOAT)) return true; return false; } final private boolean jj_3R_155() { if (jj_scan_token(FALSE)) return true; return false; } final private boolean jj_3R_66() { if (jj_scan_token(LONG)) return true; return false; } final private boolean jj_3R_65() { if (jj_scan_token(INT)) return true; return false; } final private boolean jj_3R_154() { if (jj_scan_token(TRUE)) return true; return false; } final private boolean jj_3R_149() { Token xsp; xsp = jj_scanpos; if (jj_3R_154()) { jj_scanpos = xsp; if (jj_3R_155()) return true; } return false; } final private boolean jj_3R_64() { if (jj_scan_token(SHORT)) return true; return false; } final private boolean jj_3R_56() { if (jj_3R_29()) return true; return false; } final private boolean jj_3R_63() { if (jj_scan_token(BYTE)) return true; return false; } final private boolean jj_3R_62() { if (jj_scan_token(CHAR)) return true; return false; } final private boolean jj_3R_61() { if (jj_scan_token(BOOLEAN)) return true; return false; } final private boolean jj_3R_36() { Token xsp; xsp = jj_scanpos; if (jj_3R_61()) { jj_scanpos = xsp; if (jj_3R_62()) { jj_scanpos = xsp; if (jj_3R_63()) { jj_scanpos = xsp; if (jj_3R_64()) { jj_scanpos = xsp; if (jj_3R_65()) { jj_scanpos = xsp; if (jj_3R_66()) { jj_scanpos = xsp; if (jj_3R_67()) { jj_scanpos = xsp; if (jj_3R_68()) return true; } } } } } } } return false; } final private boolean jj_3R_144() { if (jj_scan_token(57)) return true; return false; } final private boolean jj_3R_74() { if (jj_3R_32()) return true; return false; } final private boolean jj_3R_42() { Token xsp; xsp = jj_scanpos; if (jj_3R_73()) { jj_scanpos = xsp; if (jj_3R_74()) return true; } return false; } final private boolean jj_3R_73() { if (jj_scan_token(VOID)) return true; return false; } final private boolean jj_3R_143() { if (jj_scan_token(41)) return true; return false; } final private boolean jj_3_6() { if (jj_scan_token(LBRACKET)) return true; if (jj_scan_token(RBRACKET)) return true; return false; } final private boolean jj_3R_142() { if (jj_3R_149()) return true; return false; } final private boolean jj_3R_55() { if (jj_3R_36()) return true; return false; } final private boolean jj_3R_110() { if (jj_scan_token(COMMA)) return true; if (jj_3R_109()) return true; return false; } final private boolean jj_3R_141() { if (jj_scan_token(STRING_LITERAL)) return true; return false; } final private boolean jj_3R_32() { Token xsp; xsp = jj_scanpos; if (jj_3R_55()) { jj_scanpos = xsp; if (jj_3R_56()) return true; } while (true) { xsp = jj_scanpos; if (jj_3_6()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_140() { if (jj_scan_token(CHARACTER_LITERAL)) return true; return false; } final private boolean jj_3R_190() { if (jj_scan_token(FINALLY)) return true; if (jj_3R_38()) return true; return false; } final private boolean jj_3_4() { if (jj_scan_token(COMMA)) return true; if (jj_3R_31()) return true; return false; } final private boolean jj_3R_189() { if (jj_scan_token(CATCH)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_109()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_3R_38()) return true; return false; } final private boolean jj_3R_136() { if (jj_scan_token(IDENTIFIER)) return true; return false; } final private boolean jj_3_5() { if (jj_3R_32()) return true; if (jj_scan_token(IDENTIFIER)) return true; return false; } final private boolean jj_3R_75() { if (jj_3R_109()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_110()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_109() { Token xsp; xsp = jj_scanpos; if (jj_3_5()) { jj_scanpos = xsp; if (jj_3R_136()) return true; } return false; } final private boolean jj_3R_124() { if (jj_scan_token(TRY)) return true; if (jj_3R_38()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_189()) { jj_scanpos = xsp; break; } } xsp = jj_scanpos; if (jj_3R_190()) jj_scanpos = xsp; return false; } final private boolean jj_3R_43() { if (jj_scan_token(LPAREN)) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_75()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; return false; } final private boolean jj_3R_163() { if (jj_3R_31()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3_4()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_139() { if (jj_scan_token(FLOATING_POINT_LITERAL)) return true; return false; } final private boolean jj_3R_97() { if (jj_scan_token(LBRACE)) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_163()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_scan_token(79)) jj_scanpos = xsp; if (jj_scan_token(RBRACE)) return true; return false; } final private boolean jj_3R_30() { if (jj_scan_token(DOT)) return true; if (jj_scan_token(STAR)) return true; return false; } final private boolean jj_3R_123() { if (jj_scan_token(THROW)) return true; if (jj_3R_39()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } final private boolean jj_3R_180() { if (jj_scan_token(ASSIGN)) return true; if (jj_3R_31()) return true; return false; } final private boolean jj_3R_54() { if (jj_3R_39()) return true; return false; } final private boolean jj_3R_188() { if (jj_3R_39()) return true; return false; } final private boolean jj_3R_53() { if (jj_3R_97()) return true; return false; } final private boolean jj_3R_31() { Token xsp; xsp = jj_scanpos; if (jj_3R_53()) { jj_scanpos = xsp; if (jj_3R_54()) return true; } return false; } final private boolean jj_3R_122() { if (jj_scan_token(SYNCHRONIZED)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_39()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_3R_38()) return true; return false; } final private boolean jj_3R_177() { if (jj_scan_token(COMMA)) return true; if (jj_3R_176()) return true; return false; } final private boolean jj_3R_210() { if (jj_scan_token(COMMA)) return true; if (jj_3R_112()) return true; return false; } final private boolean jj_3R_121() { if (jj_scan_token(RETURN)) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_188()) jj_scanpos = xsp; if (jj_scan_token(SEMICOLON)) return true; return false; } final private boolean jj_3R_129() { Token xsp; xsp = jj_scanpos; if (jj_3R_138()) { jj_scanpos = xsp; if (jj_3R_139()) { jj_scanpos = xsp; if (jj_3R_140()) { jj_scanpos = xsp; if (jj_3R_141()) { jj_scanpos = xsp; if (jj_3R_142()) { jj_scanpos = xsp; if (jj_3R_143()) { jj_scanpos = xsp; if (jj_3R_144()) return true; } } } } } } return false; } final private boolean jj_3R_138() { if (jj_scan_token(INTEGER_LITERAL)) return true; return false; } final private boolean jj_3R_146() { if (jj_3R_69()) return true; return false; } final private boolean jj_3R_176() { if (jj_scan_token(IDENTIFIER)) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_180()) jj_scanpos = xsp; return false; } final private boolean jj_3R_105() { if (jj_3R_129()) return true; return false; } final private boolean jj_3R_120() { if (jj_scan_token(CONTINUE)) return true; Token xsp; xsp = jj_scanpos; if (jj_scan_token(69)) jj_scanpos = xsp; if (jj_scan_token(SEMICOLON)) return true; return false; } final private boolean jj_3R_119() { if (jj_scan_token(BREAK)) return true; Token xsp; xsp = jj_scanpos; if (jj_scan_token(69)) jj_scanpos = xsp; if (jj_scan_token(SEMICOLON)) return true; return false; } final private boolean jj_3R_195() { if (jj_3R_205()) return true; return false; } final private boolean jj_3R_128() { if (jj_scan_token(IMPORT)) return true; if (jj_scan_token(STAR)) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } final private boolean jj_3R_133() { if (jj_scan_token(LBRACE)) return true; if (jj_3R_39()) return true; if (jj_scan_token(RBRACE)) return true; return false; } final private boolean jj_3R_205() { if (jj_3R_112()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_210()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_132() { if (jj_scan_token(DOT)) return true; if (jj_scan_token(IDENTIFIER)) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_146()) jj_scanpos = xsp; return false; } final private boolean jj_3_3() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(48)) jj_scanpos = xsp; if (jj_scan_token(IMPORT)) return true; if (jj_3R_29()) return true; xsp = jj_scanpos; if (jj_3R_30()) jj_scanpos = xsp; if (jj_scan_token(SEMICOLON)) return true; return false; } final private boolean jj_3R_94() { Token xsp; xsp = jj_scanpos; if (jj_3_3()) { jj_scanpos = xsp; if (jj_3R_128()) return true; } return false; } final private boolean jj_3R_93() { if (jj_3R_41()) return true; if (jj_3R_32()) return true; if (jj_3R_176()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_177()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_131() { if (jj_scan_token(LBRACKET)) return true; if (jj_3R_39()) return true; if (jj_scan_token(RBRACKET)) return true; return false; } final private boolean jj_3R_95() { if (jj_scan_token(PACKAGE)) return true; if (jj_3R_29()) return true; return false; } final private boolean jj_3_2() { if (jj_scan_token(IDENTIFIER)) return true; if (jj_scan_token(LPAREN)) return true; return false; } final private boolean jj_3R_175() { if (jj_3R_38()) return true; return false; } final private boolean jj_3_16() { if (jj_scan_token(DOT)) return true; if (jj_scan_token(CLASS)) return true; return false; } final private boolean jj_3R_104() { Token xsp; xsp = jj_scanpos; if (jj_3_16()) { jj_scanpos = xsp; if (jj_3R_131()) { jj_scanpos = xsp; if (jj_3R_132()) { jj_scanpos = xsp; if (jj_3R_133()) return true; } } } return false; } final private boolean jj_3R_174() { if (jj_scan_token(THROWS)) return true; if (jj_3R_76()) return true; return false; } final private boolean jj_3_15() { if (jj_3R_32()) return true; if (jj_scan_token(DOT)) return true; if (jj_scan_token(CLASS)) return true; return false; } final private boolean jj_3_31() { if (jj_3R_41()) return true; if (jj_3R_32()) return true; if (jj_scan_token(IDENTIFIER)) return true; return false; } final private boolean jj_3_14() { if (jj_3R_37()) return true; return false; } final private boolean jj_3R_126() { if (jj_scan_token(IDENTIFIER)) return true; return false; } final private boolean jj_3R_127() { if (jj_3R_42()) return true; if (jj_scan_token(IDENTIFIER)) return true; return false; } final private boolean jj_3R_92() { if (jj_3R_41()) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_126()) { jj_scanpos = xsp; if (jj_3R_127()) return true; } if (jj_3R_43()) return true; xsp = jj_scanpos; if (jj_3R_174()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_175()) { jj_scanpos = xsp; if (jj_scan_token(78)) return true; } return false; } final private boolean jj_3R_204() { if (jj_3R_205()) return true; return false; } final private boolean jj_3R_103() { if (jj_3R_29()) return true; return false; } final private boolean jj_3R_203() { if (jj_3R_93()) return true; return false; } final private boolean jj_3R_194() { Token xsp; xsp = jj_scanpos; if (jj_3R_203()) { jj_scanpos = xsp; if (jj_3R_204()) return true; } return false; } final private boolean jj_3R_102() { if (jj_3R_32()) return true; return false; } final private boolean jj_3R_58() { if (jj_3R_104()) return true; return false; } final private boolean jj_3R_125() { if (jj_scan_token(INTERFACE)) return true; return false; } final private boolean jj_3R_101() { if (jj_3R_37()) return true; return false; } final private boolean jj_3R_100() { if (jj_3R_130()) return true; return false; } final private boolean jj_3R_99() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_39()) return true; if (jj_scan_token(RPAREN)) return true; return false; } final private boolean jj_3R_137() { if (jj_scan_token(FOR)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_32()) return true; if (jj_scan_token(IDENTIFIER)) return true; if (jj_scan_token(COLON)) return true; if (jj_3R_39()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_3R_45()) return true; return false; } final private boolean jj_3R_184() { if (jj_scan_token(ELSE)) return true; if (jj_3R_45()) return true; return false; } final private boolean jj_3R_173() { if (jj_scan_token(IMPLEMENTS)) return true; if (jj_3R_76()) return true; return false; } final private boolean jj_3R_57() { Token xsp; xsp = jj_scanpos; if (jj_3R_98()) { jj_scanpos = xsp; if (jj_3R_99()) { jj_scanpos = xsp; if (jj_3R_100()) { jj_scanpos = xsp; if (jj_3R_101()) { jj_scanpos = xsp; if (jj_3R_102()) { jj_scanpos = xsp; if (jj_3R_103()) return true; } } } } } return false; } final private boolean jj_3R_98() { if (jj_3R_129()) return true; return false; } final private boolean jj_3R_172() { if (jj_scan_token(EXTENDS)) return true; if (jj_3R_29()) return true; return false; } final private boolean jj_3_30() { if (jj_scan_token(FOR)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_scan_token(IDENTIFIER)) return true; if (jj_scan_token(COLON)) return true; if (jj_3R_39()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_3R_45()) return true; return false; } final private boolean jj_3R_118() { Token xsp; xsp = jj_scanpos; if (jj_3_30()) { jj_scanpos = xsp; if (jj_3R_137()) return true; } return false; } final private boolean jj_3R_37() { if (jj_3R_29()) return true; if (jj_3R_69()) return true; return false; } final private boolean jj_3R_185() { if (jj_3R_194()) return true; return false; } final private boolean jj_3R_91() { if (jj_3R_41()) return true; Token xsp; xsp = jj_scanpos; if (jj_scan_token(13)) { jj_scanpos = xsp; if (jj_3R_125()) return true; } if (jj_scan_token(IDENTIFIER)) return true; xsp = jj_scanpos; if (jj_3R_172()) jj_scanpos = xsp; xsp = jj_scanpos; if (jj_3R_173()) jj_scanpos = xsp; if (jj_3R_38()) return true; return false; } final private boolean jj_3_13() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_36()) return true; return false; } final private boolean jj_3R_187() { if (jj_3R_195()) return true; return false; } final private boolean jj_3R_186() { if (jj_3R_39()) return true; return false; } final private boolean jj_3R_33() { if (jj_3R_57()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_58()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_217() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_32()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_3R_208()) return true; return false; } final private boolean jj_3R_216() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_32()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_3R_191()) return true; return false; } final private boolean jj_3R_117() { if (jj_scan_token(FOR)) return true; if (jj_scan_token(LPAREN)) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_185()) jj_scanpos = xsp; if (jj_scan_token(SEMICOLON)) return true; xsp = jj_scanpos; if (jj_3R_186()) jj_scanpos = xsp; if (jj_scan_token(SEMICOLON)) return true; xsp = jj_scanpos; if (jj_3R_187()) jj_scanpos = xsp; if (jj_scan_token(RPAREN)) return true; if (jj_3R_45()) return true; return false; } final private boolean jj_3R_214() { Token xsp; xsp = jj_scanpos; if (jj_3R_216()) { jj_scanpos = xsp; if (jj_3R_217()) return true; } return false; } final private boolean jj_3_12() { if (jj_3R_33()) return true; Token xsp; xsp = jj_scanpos; if (jj_scan_token(100)) { jj_scanpos = xsp; if (jj_scan_token(101)) return true; } return false; } final private boolean jj_3R_219() { if (jj_3R_33()) return true; return false; } final private boolean jj_3R_116() { if (jj_scan_token(DO)) return true; if (jj_3R_45()) return true; if (jj_scan_token(WHILE)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_39()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } final private boolean jj_3_11() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_29()) return true; if (jj_scan_token(LBRACKET)) return true; return false; } final private boolean jj_3R_218() { if (jj_3R_33()) return true; Token xsp; xsp = jj_scanpos; if (jj_scan_token(100)) { jj_scanpos = xsp; if (jj_scan_token(101)) return true; } return false; } final private boolean jj_3R_215() { Token xsp; xsp = jj_scanpos; if (jj_3R_218()) { jj_scanpos = xsp; if (jj_3R_219()) return true; } return false; } final private boolean jj_3R_72() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(43)) { jj_scanpos = xsp; if (jj_scan_token(44)) { jj_scanpos = xsp; if (jj_scan_token(45)) { jj_scanpos = xsp; if (jj_scan_token(51)) { jj_scanpos = xsp; if (jj_scan_token(27)) { jj_scanpos = xsp; if (jj_scan_token(39)) { jj_scanpos = xsp; if (jj_scan_token(52)) { jj_scanpos = xsp; if (jj_scan_token(58)) { jj_scanpos = xsp; if (jj_scan_token(10)) { jj_scanpos = xsp; if (jj_scan_token(48)) { jj_scanpos = xsp; if (jj_scan_token(49)) return true; } } } } } } } } } } return false; } final private boolean jj_3R_115() { if (jj_scan_token(WHILE)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_39()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_3R_45()) return true; return false; } final private boolean jj_3R_60() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_29()) return true; if (jj_scan_token(RPAREN)) return true; Token xsp; xsp = jj_scanpos; if (jj_scan_token(87)) { jj_scanpos = xsp; if (jj_scan_token(86)) { jj_scanpos = xsp; if (jj_scan_token(72)) { jj_scanpos = xsp; if (jj_scan_token(69)) { jj_scanpos = xsp; if (jj_scan_token(40)) { jj_scanpos = xsp; if (jj_3R_105()) return true; } } } } } return false; } final private boolean jj_3R_59() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_29()) return true; if (jj_scan_token(LBRACKET)) return true; if (jj_scan_token(RBRACKET)) return true; return false; } final private boolean jj_3_9() { if (jj_3R_35()) return true; return false; } final private boolean jj_3_29() { if (jj_3R_28()) return true; return false; } final private boolean jj_3R_114() { if (jj_scan_token(IF)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_39()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_3R_45()) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_184()) jj_scanpos = xsp; return false; } final private boolean jj_3R_41() { Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_72()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_35() { Token xsp; xsp = jj_scanpos; if (jj_3_10()) { jj_scanpos = xsp; if (jj_3R_59()) { jj_scanpos = xsp; if (jj_3R_60()) return true; } } return false; } final private boolean jj_3_10() { if (jj_scan_token(LPAREN)) return true; if (jj_3R_36()) return true; return false; } final private boolean jj_3R_213() { if (jj_3R_215()) return true; return false; } final private boolean jj_3R_212() { if (jj_3R_214()) return true; return false; } final private boolean jj_3R_202() { if (jj_scan_token(_DEFAULT)) return true; if (jj_scan_token(COLON)) return true; return false; } final private boolean jj_3R_211() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(87)) { jj_scanpos = xsp; if (jj_scan_token(86)) return true; } if (jj_3R_191()) return true; return false; } final private boolean jj_3R_208() { Token xsp; xsp = jj_scanpos; if (jj_3R_211()) { jj_scanpos = xsp; if (jj_3R_212()) { jj_scanpos = xsp; if (jj_3R_213()) return true; } } return false; } final private boolean jj_3R_201() { if (jj_scan_token(CASE)) return true; if (jj_3R_39()) return true; if (jj_scan_token(COLON)) return true; return false; } final private boolean jj_3R_193() { Token xsp; xsp = jj_scanpos; if (jj_3R_201()) { jj_scanpos = xsp; if (jj_3R_202()) return true; } return false; } final private boolean jj_3R_183() { if (jj_3R_193()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3_29()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_207() { if (jj_scan_token(DECR)) return true; if (jj_3R_33()) return true; return false; } final private boolean jj_3_1() { if (jj_3R_28()) return true; return false; } final private boolean jj_3R_113() { if (jj_scan_token(SWITCH)) return true; if (jj_scan_token(LPAREN)) return true; if (jj_3R_39()) return true; if (jj_scan_token(RPAREN)) return true; if (jj_scan_token(LBRACE)) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_183()) { jj_scanpos = xsp; break; } } if (jj_scan_token(RBRACE)) return true; return false; } final private boolean jj_3R_209() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(104)) { jj_scanpos = xsp; if (jj_scan_token(105)) { jj_scanpos = xsp; if (jj_scan_token(111)) return true; } } if (jj_3R_191()) return true; return false; } final private boolean jj_3R_206() { if (jj_scan_token(INCR)) return true; if (jj_3R_33()) return true; return false; } final private boolean jj_3R_199() { if (jj_3R_208()) return true; return false; } final private boolean jj_3R_198() { if (jj_3R_207()) return true; return false; } final private boolean jj_3R_197() { if (jj_3R_206()) return true; return false; } final private boolean jj_3R_196() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(102)) { jj_scanpos = xsp; if (jj_scan_token(103)) return true; } if (jj_3R_191()) return true; return false; } final private boolean jj_3R_191() { Token xsp; xsp = jj_scanpos; if (jj_3R_196()) { jj_scanpos = xsp; if (jj_3R_197()) { jj_scanpos = xsp; if (jj_3R_198()) { jj_scanpos = xsp; if (jj_3R_199()) return true; } } } return false; } final private boolean jj_3R_44() { if (jj_scan_token(THROWS)) return true; if (jj_3R_76()) return true; return false; } final private boolean jj_3R_112() { if (jj_3R_39()) return true; return false; } final private boolean jj_3R_181() { if (jj_3R_191()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_209()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_200() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(102)) { jj_scanpos = xsp; if (jj_scan_token(103)) return true; } if (jj_3R_181()) return true; return false; } final private boolean jj_3R_178() { if (jj_3R_181()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_200()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_96() { if (jj_scan_token(FORMAL_COMMENT)) return true; return false; } final private boolean jj_3R_192() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(112)) { jj_scanpos = xsp; if (jj_scan_token(113)) { jj_scanpos = xsp; if (jj_scan_token(114)) { jj_scanpos = xsp; if (jj_scan_token(115)) { jj_scanpos = xsp; if (jj_scan_token(116)) { jj_scanpos = xsp; if (jj_scan_token(117)) return true; } } } } } if (jj_3R_178()) return true; return false; } final private boolean jj_3R_171() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(90)) { jj_scanpos = xsp; if (jj_scan_token(95)) return true; } if (jj_3R_166()) return true; return false; } final private boolean jj_3R_170() { if (jj_3R_178()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_192()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_52() { if (jj_3R_96()) return true; return false; } final private boolean jj_3R_182() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(84)) { jj_scanpos = xsp; if (jj_scan_token(85)) { jj_scanpos = xsp; if (jj_scan_token(82)) { jj_scanpos = xsp; if (jj_scan_token(83)) { jj_scanpos = xsp; if (jj_scan_token(91)) { jj_scanpos = xsp; if (jj_scan_token(92)) { jj_scanpos = xsp; if (jj_scan_token(93)) { jj_scanpos = xsp; if (jj_scan_token(94)) return true; } } } } } } } if (jj_3R_170()) return true; return false; } final private boolean jj_3_27() { if (jj_3R_41()) return true; if (jj_3R_32()) return true; if (jj_scan_token(IDENTIFIER)) return true; return false; } final private boolean jj_3R_51() { if (jj_3R_95()) return true; return false; } final private boolean jj_3R_168() { if (jj_3R_170()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_182()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_50() { if (jj_3R_94()) return true; return false; } final private boolean jj_3_26() { if (jj_3R_41()) return true; if (jj_scan_token(IDENTIFIER)) return true; if (jj_3R_43()) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_44()) jj_scanpos = xsp; if (jj_scan_token(LBRACE)) return true; return false; } final private boolean jj_3R_179() { if (jj_scan_token(INSTANCEOF)) return true; if (jj_3R_32()) return true; return false; } final private boolean jj_3_28() { if (jj_3R_45()) return true; return false; } final private boolean jj_3R_166() { if (jj_3R_168()) return true; Token xsp; xsp = jj_scanpos; if (jj_3R_179()) jj_scanpos = xsp; return false; } final private boolean jj_3_25() { if (jj_3R_41()) return true; if (jj_3R_42()) return true; if (jj_scan_token(IDENTIFIER)) return true; if (jj_scan_token(LPAREN)) return true; return false; } final private boolean jj_3R_49() { if (jj_3R_93()) return true; if (jj_scan_token(SEMICOLON)) return true; return false; } final private boolean jj_3_24() { if (jj_3R_41()) return true; Token xsp; xsp = jj_scanpos; if (jj_scan_token(13)) { jj_scanpos = xsp; if (jj_scan_token(37)) return true; } return false; } final private boolean jj_3R_167() { if (jj_scan_token(XOR)) return true; if (jj_3R_161()) return true; return false; } final private boolean jj_3R_48() { if (jj_3R_92()) return true; return false; } final private boolean jj_3R_164() { if (jj_3R_166()) return true; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_171()) { jj_scanpos = xsp; break; } } return false; } final private boolean jj_3R_47() { if (jj_3R_92()) return true; return false; } final private boolean jj_3R_169() { Token xsp; xsp = jj_scanpos; if (jj_scan_token(106)) { jj_scanpos = xsp; if (jj_scan_token(107)) return true; } if (jj_3R_164()) return true; return false; } public ParserTokenManager token_source; JavaCharStream jj_input_stream; public Token token, jj_nt; private int jj_ntk; private Token jj_scanpos, jj_lastpos; private int jj_la; public boolean lookingAhead = false; private boolean jj_semLA; public Parser(java.io.InputStream stream) { jj_input_stream = new JavaCharStream(stream, 1, 1); token_source = new ParserTokenManager(jj_input_stream); token = new Token(); jj_ntk = -1; } public void ReInit(java.io.InputStream stream) { jj_input_stream.ReInit(stream, 1, 1); token_source.ReInit(jj_input_stream); token = new Token(); jj_ntk = -1; jjtree.reset(); } public Parser(java.io.Reader stream) { jj_input_stream = new JavaCharStream(stream, 1, 1); token_source = new ParserTokenManager(jj_input_stream); token = new Token(); jj_ntk = -1; } public void ReInit(java.io.Reader stream) { jj_input_stream.ReInit(stream, 1, 1); token_source.ReInit(jj_input_stream); token = new Token(); jj_ntk = -1; jjtree.reset(); } public Parser(ParserTokenManager tm) { token_source = tm; token = new Token(); jj_ntk = -1; } public void ReInit(ParserTokenManager tm) { token_source = tm; token = new Token(); jj_ntk = -1; jjtree.reset(); } final private Token jj_consume_token(int kind) throws ParseException { Token oldToken; if ((oldToken = token).next != null) token = token.next; else token = token.next = token_source.getNextToken(); jj_ntk = -1; if (token.kind == kind) { return token; } token = oldToken; throw generateParseException(); } static private final class LookaheadSuccess extends java.lang.Error {} final private LookaheadSuccess jj_ls = new LookaheadSuccess(); final private boolean jj_scan_token(int kind) { if (jj_scanpos == jj_lastpos) { jj_la--; if (jj_scanpos.next == null) { jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken(); } else { jj_lastpos = jj_scanpos = jj_scanpos.next; } } else { jj_scanpos = jj_scanpos.next; } if (jj_scanpos.kind != kind) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) throw jj_ls; return false; } final public Token getNextToken() { if (token.next != null) token = token.next; else token = token.next = token_source.getNextToken(); jj_ntk = -1; return token; } final public Token getToken(int index) { Token t = lookingAhead ? jj_scanpos : token; for (int i = 0; i < index; i++) { if (t.next != null) t = t.next; else t = t.next = token_source.getNextToken(); } return t; } final private int jj_ntk() { if ((jj_nt = token.next) == null) return (jj_ntk = (token.next = token_source.getNextToken()).kind); else return (jj_ntk = jj_nt.kind); } public ParseException generateParseException() { Token errortok = token.next; int line = errortok.beginLine, column = errortok.beginColumn; String mess = (errortok.kind == 0) ? tokenImage[0] : errortok.image; return new ParseException("Parse error at line " + line + ", column " + column + ". Encountered: " + mess); } final public void enable_tracing() {} final public void disable_tracing() {} }




© 2015 - 2024 Weber Informatics LLC | Privacy Policy