/* * Copyright (c) 2002 Standard Performance Evaluation Corporation (SPEC) * All rights reserved. * Copyright (c) 2002 by BEA Systems, Inc. All Rights Reserved. * * History: * Date ID Description * ---------- -------- ---------------------------------------------- * 2002/07/10 russellr Conversion from SPECjAppServer2001 to * SPECjAppServer2002 (EJB2.0). * */ /* * Copyright (c) 2002 Standard Performance Evaluation Corporation (SPEC) * All rights reserved. * Copyright (c) 2002 IBM Corporation, Inc. All rights reserved. * * This source code is provided as is, without any express or implied warranty. * * US Government Users Restricted Rights, * Use, duplication or disclosure restricted * by GSA ADP Schedule Contract with IBM Corp. * * IBM MAKES NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY OF * THE SOFTWARE, EITHER EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED * TO THE IMPLIED WARRANTIES OF MERCHANTABILITY, FITNESS FOR A * PARTICULAR PURPOSE, OR NON-INFRINGEMENT. IBM SHALL NOT BE LIABLE FOR * ANY DAMAGES SUFFERED BY LICENSEE AS A RESULT OF USING, MODIFYING OR * DISTRIBUTING THIS SOFTWARE OR ITS DERIVATIVES. * * History: * Date ID Description * ---------- --- ---------------------------------------------------- * 2002/04/12 MRH Conversion from ECperf 1.1 to SPECjAppServer2001 * */ /* Generated By:JavaCC: Do not edit this line. RuleParser.java */ package org.spec.jappserver.ruleengine; import java.io.InputStream; import java.io.EOFException; import java.util.*; import org.spec.jappserver.common.*; public class RuleParser implements RuleParserConstants { private RuleProcessor ruleProc; private Debug debug; private boolean debugging; public RuleParser(Object bean, InputStream stream) { this(bean, stream, 0); } public RuleParser(Object bean, InputStream stream, int debugLevel) { this(stream); ruleProc = new RuleProcessor(bean, debugLevel); if (debugLevel > 0) { debug = new DebugPrint(debugLevel, this); debugging = true; } else { debug = new Debug(); debugging = false; } } public String evaluate() { String classification = null; try { classification = FirstRuleUnit(); while (classification == null) { ruleProc.clearSymbols(); classification = RuleUnit(); } if (debugging) debug.println(6, "Rule Parser Version 1.0.2: Rule parsed successfully."); } catch (ParseException e) { if (debugging) { debug.println(6, "Rule Parser Version 1.0.2: Encountered errors during parse."); debug.println(7, e.getMessage()); } } catch (EOFException e) { if (debugging) debug.println(7, e.getMessage()); } catch (Exception e) { if (debugging) { debug.println(7, "Error in parsed code"); debug.println(7, e.getMessage()); } debug.printStackTrace(e); } return classification; } /***************************************** * THE JAVA LANGUAGE GRAMMAR STARTS HERE * *****************************************/ /* * Program structuring syntax follows. */ final public void CompilationUnit() throws ParseException { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PACKAGE: PackageDeclaration(); break; default: jj_la1[0] = jj_gen; ; } label_1: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IMPORT: ; break; default: jj_la1[1] = jj_gen; break label_1; } ImportDeclaration(); } label_2: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ABSTRACT: case CLASS: case FINAL: case INTERFACE: case PUBLIC: case SEMICOLON: ; break; default: jj_la1[2] = jj_gen; break label_2; } TypeDeclaration(); } jj_consume_token(0); } final public void PackageDeclaration() throws ParseException { jj_consume_token(PACKAGE); Name(); jj_consume_token(SEMICOLON); {if (true) throw new ParseException("Package declarations not supported in rule!");} } final public void ImportDeclaration() throws ParseException { String nm = null; boolean pkg = false; jj_consume_token(IMPORT); nm = Name(); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case DOT: jj_consume_token(DOT); jj_consume_token(STAR); pkg = true; break; default: jj_la1[3] = jj_gen; ; } jj_consume_token(SEMICOLON); ruleProc.importClass(nm, pkg); } final public void TypeDeclaration() throws ParseException { if (jj_2_1(2147483647)) { ClassDeclaration(); {if (true) throw new ParseException("Class declarations not supported in rule!");} } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ABSTRACT: case INTERFACE: case PUBLIC: InterfaceDeclaration(); {if (true) throw new ParseException("Interface declarations not supported in rule!");} break; case SEMICOLON: jj_consume_token(SEMICOLON); break; default: jj_la1[4] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } /* * Declaration syntax follows. */ final public void ClassDeclaration() throws ParseException { label_3: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ABSTRACT: case FINAL: case PUBLIC: ; break; default: jj_la1[5] = jj_gen; break label_3; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ABSTRACT: jj_consume_token(ABSTRACT); break; case FINAL: jj_consume_token(FINAL); break; case PUBLIC: jj_consume_token(PUBLIC); break; default: jj_la1[6] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } jj_consume_token(CLASS); jj_consume_token(IDENTIFIER); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case EXTENDS: jj_consume_token(EXTENDS); Name(); break; default: jj_la1[7] = jj_gen; ; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IMPLEMENTS: jj_consume_token(IMPLEMENTS); NameList(); break; default: jj_la1[8] = jj_gen; ; } jj_consume_token(LBRACE); label_4: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ABSTRACT: case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FINAL: case FLOAT: case INT: case LONG: case NATIVE: case PRIVATE: case PROTECTED: case PUBLIC: case SHORT: case STATIC: case SYNCHRONIZED: case TRANSIENT: case VOID: case VOLATILE: case IDENTIFIER: ; break; default: jj_la1[9] = jj_gen; break label_4; } ClassBodyDeclaration(); } jj_consume_token(RBRACE); } final public void ClassBodyDeclaration() throws ParseException { if (jj_2_2(2)) { StaticInitializer(); } else if (jj_2_3(2147483647)) { ConstructorDeclaration(); } else if (jj_2_4(2147483647)) { MethodDeclaration(); } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FINAL: case FLOAT: case INT: case LONG: case PRIVATE: case PROTECTED: case PUBLIC: case SHORT: case STATIC: case TRANSIENT: case VOLATILE: case IDENTIFIER: FieldDeclaration(); break; default: jj_la1[10] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } // This production is to determine lookahead only. final public void MethodDeclarationLookahead() throws ParseException { label_5: 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 SYNCHRONIZED: ; break; default: jj_la1[11] = jj_gen; break label_5; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PUBLIC: jj_consume_token(PUBLIC); break; case PROTECTED: jj_consume_token(PROTECTED); break; case PRIVATE: jj_consume_token(PRIVATE); break; case STATIC: jj_consume_token(STATIC); break; case ABSTRACT: jj_consume_token(ABSTRACT); break; case FINAL: jj_consume_token(FINAL); break; case NATIVE: jj_consume_token(NATIVE); break; case SYNCHRONIZED: jj_consume_token(SYNCHRONIZED); break; default: jj_la1[12] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } ResultType(); jj_consume_token(IDENTIFIER); jj_consume_token(LPAREN); } final public void InterfaceDeclaration() throws ParseException { label_6: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ABSTRACT: case PUBLIC: ; break; default: jj_la1[13] = jj_gen; break label_6; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ABSTRACT: jj_consume_token(ABSTRACT); break; case PUBLIC: jj_consume_token(PUBLIC); break; default: jj_la1[14] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } jj_consume_token(INTERFACE); jj_consume_token(IDENTIFIER); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case EXTENDS: jj_consume_token(EXTENDS); NameList(); break; default: jj_la1[15] = jj_gen; ; } jj_consume_token(LBRACE); label_7: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ABSTRACT: case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FINAL: case FLOAT: case INT: case LONG: case NATIVE: case PRIVATE: case PROTECTED: case PUBLIC: case SHORT: case STATIC: case SYNCHRONIZED: case TRANSIENT: case VOID: case VOLATILE: case IDENTIFIER: ; break; default: jj_la1[16] = jj_gen; break label_7; } InterfaceMemberDeclaration(); } jj_consume_token(RBRACE); } final public void InterfaceMemberDeclaration() throws ParseException { if (jj_2_5(2147483647)) { MethodDeclaration(); } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FINAL: case FLOAT: case INT: case LONG: case PRIVATE: case PROTECTED: case PUBLIC: case SHORT: case STATIC: case TRANSIENT: case VOLATILE: case IDENTIFIER: FieldDeclaration(); break; default: jj_la1[17] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } final public void FieldDeclaration() throws ParseException { label_8: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FINAL: case PRIVATE: case PROTECTED: case PUBLIC: case STATIC: case TRANSIENT: case VOLATILE: ; break; default: jj_la1[18] = jj_gen; break label_8; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PUBLIC: jj_consume_token(PUBLIC); break; case PROTECTED: jj_consume_token(PROTECTED); break; case PRIVATE: jj_consume_token(PRIVATE); break; case STATIC: jj_consume_token(STATIC); break; case FINAL: jj_consume_token(FINAL); break; case TRANSIENT: jj_consume_token(TRANSIENT); break; case VOLATILE: jj_consume_token(VOLATILE); break; default: jj_la1[19] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } Type(false); VariableDeclarator(null); label_9: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: ; break; default: jj_la1[20] = jj_gen; break label_9; } jj_consume_token(COMMA); VariableDeclarator(null); } jj_consume_token(SEMICOLON); } final public void MethodDeclaration() throws ParseException { label_10: 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 SYNCHRONIZED: ; break; default: jj_la1[21] = jj_gen; break label_10; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PUBLIC: jj_consume_token(PUBLIC); break; case PROTECTED: jj_consume_token(PROTECTED); break; case PRIVATE: jj_consume_token(PRIVATE); break; case STATIC: jj_consume_token(STATIC); break; case ABSTRACT: jj_consume_token(ABSTRACT); break; case FINAL: jj_consume_token(FINAL); break; case NATIVE: jj_consume_token(NATIVE); break; case SYNCHRONIZED: jj_consume_token(SYNCHRONIZED); break; default: jj_la1[22] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } ResultType(); MethodDeclarator(); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case THROWS: jj_consume_token(THROWS); NameList(); break; default: jj_la1[23] = jj_gen; ; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LBRACE: Block(); break; case SEMICOLON: jj_consume_token(SEMICOLON); break; default: jj_la1[24] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } final public void MethodDeclarator() throws ParseException { jj_consume_token(IDENTIFIER); FormalParameters(); label_11: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LBRACKET: ; break; default: jj_la1[25] = jj_gen; break label_11; } jj_consume_token(LBRACKET); jj_consume_token(RBRACKET); } } final public void FormalParameters() throws ParseException { 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_12: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: ; break; default: jj_la1[26] = jj_gen; break label_12; } jj_consume_token(COMMA); FormalParameter(); } break; default: jj_la1[27] = jj_gen; ; } jj_consume_token(RPAREN); } final public void FormalParameter() throws ParseException { Type(false); VariableDeclaratorId(null); } final public void ConstructorDeclaration() throws ParseException { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PRIVATE: case PROTECTED: case PUBLIC: switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PUBLIC: jj_consume_token(PUBLIC); break; case PROTECTED: jj_consume_token(PROTECTED); break; case PRIVATE: jj_consume_token(PRIVATE); break; default: jj_la1[28] = jj_gen; jj_consume_token(-1); throw new ParseException(); } break; default: jj_la1[29] = jj_gen; ; } jj_consume_token(IDENTIFIER); FormalParameters(); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case THROWS: jj_consume_token(THROWS); NameList(); break; default: jj_la1[30] = jj_gen; ; } jj_consume_token(LBRACE); if (jj_2_6(2)) { ExplicitConstructorInvocation(); } else { ; } label_13: while (true) { 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 SUPER: case THIS: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case INCR: case DECR: ; break; default: jj_la1[31] = jj_gen; break label_13; } BlockStatement(); } jj_consume_token(RBRACE); } final public void ExplicitConstructorInvocation() throws ParseException { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case THIS: jj_consume_token(THIS); Arguments(false); jj_consume_token(SEMICOLON); break; case SUPER: jj_consume_token(SUPER); Arguments(false); jj_consume_token(SEMICOLON); break; default: jj_la1[32] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } final public void StaticInitializer() throws ParseException { jj_consume_token(STATIC); Block(); {if (true) throw new ParseException("Static block not supported in rule!");} } final public void VariableDeclaratorId(Result type) throws ParseException { String ident; int count = 0; jj_consume_token(IDENTIFIER); ident = token.image; label_14: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LBRACKET: ; break; default: jj_la1[33] = jj_gen; break label_14; } jj_consume_token(LBRACKET); jj_consume_token(RBRACKET); ++count; } ruleProc.localVar(type, ident, count); } final public void VariableDeclarator(Result type) throws ParseException { VariableDeclaratorId(type); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ASSIGN: jj_consume_token(ASSIGN); VariableInitializer(true); break; default: jj_la1[34] = jj_gen; ; } } final public void VariableInitializer(boolean eval) throws ParseException { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LBRACE: jj_consume_token(LBRACE); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: 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(false); label_15: while (true) { if (jj_2_7(2)) { ; } else { break label_15; } jj_consume_token(COMMA); VariableInitializer(false); } break; default: jj_la1[35] = jj_gen; ; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: jj_consume_token(COMMA); break; default: jj_la1[36] = jj_gen; ; } jj_consume_token(RBRACE); {if (true) throw new ParseException("Static array initializers not yet supported!");} break; case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: 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(eval); if (eval) ruleProc.assignValue(); break; default: jj_la1[37] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } /* * Type, name and expression syntax follows. */ final public void Type(boolean eval) throws ParseException { byte t = -1; String nm = null; int dims = 0; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: t = PrimitiveType(); break; case IDENTIFIER: nm = Name(); break; default: jj_la1[38] = jj_gen; jj_consume_token(-1); throw new ParseException(); } label_16: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LBRACKET: ; break; default: jj_la1[39] = jj_gen; break label_16; } jj_consume_token(LBRACKET); jj_consume_token(RBRACKET); ++dims; } if (eval) ruleProc.pushType(t, nm, dims); } final public byte PrimitiveType() throws ParseException { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case BOOLEAN: jj_consume_token(BOOLEAN); {if (true) return Result.BOOLEAN;} break; case CHAR: jj_consume_token(CHAR); {if (true) return Result.CHAR;} break; case BYTE: jj_consume_token(BYTE); {if (true) return Result.BYTE;} break; case SHORT: jj_consume_token(SHORT); {if (true) return Result.SHORT;} break; case INT: jj_consume_token(INT); {if (true) return Result.INT;} break; case LONG: jj_consume_token(LONG); {if (true) return Result.LONG;} break; case FLOAT: jj_consume_token(FLOAT); {if (true) return Result.FLOAT;} break; case DOUBLE: jj_consume_token(DOUBLE); {if (true) return Result.DOUBLE;} break; default: jj_la1[40] = jj_gen; jj_consume_token(-1); throw new ParseException(); } throw new Error("Missing return statement in function"); } final public void ResultType() throws ParseException { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case VOID: jj_consume_token(VOID); {if (true) throw new ParseException("Method declarations not supported by rule!");} break; case BOOLEAN: case BYTE: case CHAR: case DOUBLE: case FLOAT: case INT: case LONG: case SHORT: case IDENTIFIER: Type(false); break; default: jj_la1[41] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } final public String Name() throws ParseException { StringBuffer buf = new StringBuffer(); jj_consume_token(IDENTIFIER); buf.append(token.image); label_17: while (true) { if (jj_2_8(2)) { ; } else { break label_17; } jj_consume_token(DOT); jj_consume_token(IDENTIFIER); buf.append('.'); buf.append(token.image); } {if (true) return buf.toString();} throw new Error("Missing return statement in function"); } final public List NameList() throws ParseException { List namelst = new LinkedList(); String nm = null; nm = Name(); namelst.add(nm); label_18: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: ; break; default: jj_la1[42] = jj_gen; break label_18; } jj_consume_token(COMMA); nm = Name(); namelst.add(nm); } {if (true) return namelst;} throw new Error("Missing return statement in function"); } /* * Expression syntax follows. */ final public void Expression(boolean eval) throws ParseException { if (jj_2_9(2147483647)) { Assignment(eval); } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: 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(eval); break; default: jj_la1[43] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } final public void Assignment(boolean eval) throws ParseException { char op; PrimaryExpression(eval); op = AssignmentOperator(eval); Expression(eval); if (eval) ruleProc.assignOps(op); } final public char AssignmentOperator(boolean eval) throws ParseException { 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 REMASSIGN: jj_consume_token(REMASSIGN); break; case PLUSASSIGN: jj_consume_token(PLUSASSIGN); break; case MINUSASSIGN: jj_consume_token(MINUSASSIGN); break; case LSHIFTASSIGN: jj_consume_token(LSHIFTASSIGN); break; case RSIGNEDSHIFTASSIGN: jj_consume_token(RSIGNEDSHIFTASSIGN); break; case RUNSIGNEDSHIFTASSIGN: jj_consume_token(RUNSIGNEDSHIFTASSIGN); break; case ANDASSIGN: jj_consume_token(ANDASSIGN); break; case XORASSIGN: jj_consume_token(XORASSIGN); break; case ORASSIGN: jj_consume_token(ORASSIGN); char op = 0; if (eval) { op = token.image.charAt(0); if (op == '>' && token.image.charAt(2) == op) op = '@'; } {if (true) return op;} break; default: jj_la1[44] = jj_gen; jj_consume_token(-1); throw new ParseException(); } throw new Error("Missing return statement in function"); } final public void ConditionalExpression(boolean eval) throws ParseException { ConditionalOrExpression(eval); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case HOOK: jj_consume_token(HOOK); Expression(eval); jj_consume_token(COLON); ConditionalExpression(eval); if (eval) ruleProc.conditional(); break; default: jj_la1[45] = jj_gen; ; } } final public void ConditionalOrExpression(boolean eval) throws ParseException { ConditionalAndExpression(eval); label_19: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case SC_OR: ; break; default: jj_la1[46] = jj_gen; break label_19; } jj_consume_token(SC_OR); if (eval) eval = !ruleProc.isTrue(); ConditionalAndExpression(eval); if (eval) ruleProc.conditionalOr(); } } final public void ConditionalAndExpression(boolean eval) throws ParseException { InclusiveOrExpression(eval); label_20: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case SC_AND: ; break; default: jj_la1[47] = jj_gen; break label_20; } jj_consume_token(SC_AND); if (eval) eval = ruleProc.isTrue(); InclusiveOrExpression(eval); if (eval) ruleProc.conditionalAnd(); } } final public void InclusiveOrExpression(boolean eval) throws ParseException { ExclusiveOrExpression(eval); label_21: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case BIT_OR: ; break; default: jj_la1[48] = jj_gen; break label_21; } jj_consume_token(BIT_OR); ExclusiveOrExpression(eval); if (eval) ruleProc.inclusiveOr(); } } final public void ExclusiveOrExpression(boolean eval) throws ParseException { AndExpression(eval); label_22: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case XOR: ; break; default: jj_la1[49] = jj_gen; break label_22; } jj_consume_token(XOR); AndExpression(eval); if (eval) ruleProc.exclusiveOr(); } } final public void AndExpression(boolean eval) throws ParseException { EqualityExpression(eval); label_23: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case BIT_AND: ; break; default: jj_la1[50] = jj_gen; break label_23; } jj_consume_token(BIT_AND); EqualityExpression(eval); if (eval) ruleProc.and(); } } final public void EqualityExpression(boolean eval) throws ParseException { boolean equals = true; InstanceOfExpression(eval); label_24: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case EQ: case NE: ; break; default: jj_la1[51] = jj_gen; break label_24; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case EQ: jj_consume_token(EQ); equals = true; break; case NE: jj_consume_token(NE); equals = false; break; default: jj_la1[52] = jj_gen; jj_consume_token(-1); throw new ParseException(); } InstanceOfExpression(eval); if (eval) { if (equals) ruleProc.equals(); else ruleProc.notEquals(); } } } final public void InstanceOfExpression(boolean eval) throws ParseException { RelationalExpression(eval); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case INSTANCEOF: jj_consume_token(INSTANCEOF); Type(eval); if (eval) ruleProc.instanceOf(); break; default: jj_la1[53] = jj_gen; ; } } final public void RelationalExpression(boolean eval) throws ParseException { char op = 0; ShiftExpression(eval); label_25: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case GT: case LT: case LE: case GE: ; break; default: jj_la1[54] = jj_gen; break label_25; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LT: jj_consume_token(LT); op = '<'; break; case GT: jj_consume_token(GT); op = '>'; break; case LE: jj_consume_token(LE); op = '{'; break; case GE: jj_consume_token(GE); op = '}'; break; default: jj_la1[55] = jj_gen; jj_consume_token(-1); throw new ParseException(); } ShiftExpression(eval); if (eval) switch (op) { case '<' : ruleProc.lessThan(); break; case '>' : ruleProc.greaterThan(); break; case '{' : ruleProc.lessOrEqual(); break; case '}' : ruleProc.greaterOrEqual(); break; } } } final public void ShiftExpression(boolean eval) throws ParseException { char op = 0; AdditiveExpression(eval); label_26: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LSHIFT: case RSIGNEDSHIFT: case RUNSIGNEDSHIFT: ; break; default: jj_la1[56] = jj_gen; break label_26; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LSHIFT: jj_consume_token(LSHIFT); op = '<'; break; case RSIGNEDSHIFT: jj_consume_token(RSIGNEDSHIFT); op = '>'; break; case RUNSIGNEDSHIFT: jj_consume_token(RUNSIGNEDSHIFT); op = '@'; break; default: jj_la1[57] = jj_gen; jj_consume_token(-1); throw new ParseException(); } AdditiveExpression(eval); if (eval) switch (op) { case '<' : ruleProc.leftShift(); break; case '>' : ruleProc.rightShift(); break; case '@' : ruleProc.unsignedRightShift(); break; } } } final public void AdditiveExpression(boolean eval) throws ParseException { char op = 0; MultiplicativeExpression(eval); label_27: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: case MINUS: ; break; default: jj_la1[58] = jj_gen; break label_27; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: jj_consume_token(PLUS); op = '+'; break; case MINUS: jj_consume_token(MINUS); op = '-'; break; default: jj_la1[59] = jj_gen; jj_consume_token(-1); throw new ParseException(); } MultiplicativeExpression(eval); if (eval) switch (op) { case '+' : ruleProc.add(); break; case '-' : ruleProc.subtract(); break; } } } final public void MultiplicativeExpression(boolean eval) throws ParseException { char op = 0; UnaryExpression(eval); label_28: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case STAR: case SLASH: case REM: ; break; default: jj_la1[60] = jj_gen; break label_28; } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case STAR: jj_consume_token(STAR); op = '*'; break; case SLASH: jj_consume_token(SLASH); op = '/'; break; case REM: jj_consume_token(REM); op = '%'; break; default: jj_la1[61] = jj_gen; jj_consume_token(-1); throw new ParseException(); } UnaryExpression(eval); if (eval) switch (op) { case '*' : ruleProc.multiply(); break; case '/' : ruleProc.divide(); break; case '%' : ruleProc.remainder();break; } } } final public void UnaryExpression(boolean eval) throws ParseException { char op = 0; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case INCR: PreIncrementExpression(eval); break; case DECR: PreDecrementExpression(eval); break; case PLUS: case MINUS: switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case PLUS: jj_consume_token(PLUS); op = '+'; break; case MINUS: jj_consume_token(MINUS); op = '-'; break; default: jj_la1[62] = jj_gen; jj_consume_token(-1); throw new ParseException(); } UnaryExpression(eval); if (eval) switch (op) { case '+' : ruleProc.unaryPlus(); break; case '-' : ruleProc.unaryMinus(); break; } break; case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case BANG: case TILDE: UnaryExpressionNotPlusMinus(eval); break; default: jj_la1[63] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } final public void PreIncrementExpression(boolean eval) throws ParseException { jj_consume_token(INCR); PrimaryExpression(eval); if (eval) ruleProc.preIncrement(); } final public void PreDecrementExpression(boolean eval) throws ParseException { jj_consume_token(DECR); PrimaryExpression(eval); if (eval) ruleProc.preDecrement(); } final public void UnaryExpressionNotPlusMinus(boolean eval) throws ParseException { char op = 0; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case BANG: case TILDE: switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case TILDE: jj_consume_token(TILDE); op = '~'; break; case BANG: jj_consume_token(BANG); op = '!'; break; default: jj_la1[64] = jj_gen; jj_consume_token(-1); throw new ParseException(); } UnaryExpression(eval); if (eval) switch (op) { case '~' : ruleProc.bitComplement(); break; case '!' : ruleProc.logicalComplement(); break; } break; default: jj_la1[65] = jj_gen; if (jj_2_10(2147483647)) { CastExpression(eval); } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: PostfixExpression(eval); break; default: jj_la1[66] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } } // This production is to determine lookahead only. The LOOKAHEAD specifications // below are not used, but they are there just to indicate that we know about // this. final public void CastLookahead() throws ParseException { if (jj_2_11(2)) { jj_consume_token(LPAREN); PrimitiveType(); } else if (jj_2_12(2147483647)) { jj_consume_token(LPAREN); Name(); jj_consume_token(LBRACKET); jj_consume_token(RBRACKET); } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LPAREN: jj_consume_token(LPAREN); Name(); 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 THIS: jj_consume_token(THIS); break; case SUPER: jj_consume_token(SUPER); break; case NEW: jj_consume_token(NEW); break; case FALSE: case NULL: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: Literal(false); break; default: jj_la1[67] = jj_gen; jj_consume_token(-1); throw new ParseException(); } break; default: jj_la1[68] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } /** * PostfixExpression not supported. They need post-expression stack * evaluations and are harder to implement. We just decide not to * support them for now. * Throws ParseException when encountered. */ final public void PostfixExpression(boolean eval) throws ParseException { boolean p = false; PrimaryExpression(eval); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case INCR: case DECR: switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case INCR: jj_consume_token(INCR); p = true; break; case DECR: jj_consume_token(DECR); p = true; break; default: jj_la1[69] = jj_gen; jj_consume_token(-1); throw new ParseException(); } break; default: jj_la1[70] = jj_gen; ; } if (p) {if (true) throw new ParseException( "PostfixExpression not yet supported by parser");} } final public void CastExpression(boolean eval) throws ParseException { byte type; int dims = 0; String nm; if (jj_2_13(2)) { jj_consume_token(LPAREN); type = PrimitiveType(); label_29: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LBRACKET: ; break; default: jj_la1[71] = jj_gen; break label_29; } jj_consume_token(LBRACKET); jj_consume_token(RBRACKET); ++dims; } jj_consume_token(RPAREN); UnaryExpression(false); if (eval) ruleProc.primitiveCast(type, dims); } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LPAREN: jj_consume_token(LPAREN); nm = Name(); label_30: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LBRACKET: ; break; default: jj_la1[72] = jj_gen; break label_30; } jj_consume_token(LBRACKET); jj_consume_token(RBRACKET); ++dims; } jj_consume_token(RPAREN); UnaryExpressionNotPlusMinus(false); if (eval) ruleProc.refCast(nm, dims); break; default: jj_la1[73] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } final public void PrimaryExpression(boolean eval) throws ParseException { PrimaryPrefix(eval); label_31: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LPAREN: case LBRACKET: case DOT: ; break; default: jj_la1[74] = jj_gen; break label_31; } PrimarySuffix(eval); } } final public void PrimaryPrefix(boolean eval) throws ParseException { String nm; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FALSE: case NULL: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: Literal(eval); break; case IDENTIFIER: nm = Name(); if (eval) ruleProc.evalName(nm); break; case THIS: jj_consume_token(THIS); if (eval) ruleProc.pushBean(); break; case SUPER: jj_consume_token(SUPER); jj_consume_token(DOT); jj_consume_token(IDENTIFIER); {if (true) throw new ParseException("'super' is not valid in rule's context!");} break; case LPAREN: jj_consume_token(LPAREN); Expression(eval); jj_consume_token(RPAREN); break; case NEW: AllocationExpression(eval); break; default: jj_la1[75] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } final public void PrimarySuffix(boolean eval) throws ParseException { List params; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LBRACKET: jj_consume_token(LBRACKET); Expression(eval); jj_consume_token(RBRACKET); if (eval) ruleProc.arrayIndexRef(); break; case DOT: jj_consume_token(DOT); jj_consume_token(IDENTIFIER); if (eval) ruleProc.suffixIdentifier(token.image); break; case LPAREN: params = Arguments(eval); if (eval) ruleProc.method(params); break; default: jj_la1[76] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } final public void Literal(boolean eval) throws ParseException { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case INTEGER_LITERAL: jj_consume_token(INTEGER_LITERAL); if (eval) ruleProc.intLiteral(token.image); break; case FLOATING_POINT_LITERAL: jj_consume_token(FLOATING_POINT_LITERAL); if (eval) ruleProc.floatLiteral(token.image); break; case CHARACTER_LITERAL: jj_consume_token(CHARACTER_LITERAL); if (eval) ruleProc.charLiteral(token.image); break; case STRING_LITERAL: jj_consume_token(STRING_LITERAL); if (eval) ruleProc.stringLiteral(token.image); break; case FALSE: case TRUE: BooleanLiteral(eval); break; case NULL: NullLiteral(eval); break; default: jj_la1[77] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } final public void BooleanLiteral(boolean eval) throws ParseException { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case TRUE: jj_consume_token(TRUE); if (eval) ruleProc.booleanTrue(); break; case FALSE: jj_consume_token(FALSE); if (eval) ruleProc.booleanFalse(); break; default: jj_la1[78] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } final public void NullLiteral(boolean eval) throws ParseException { jj_consume_token(NULL); if (eval) ruleProc.nullLiteral(); } final public List Arguments(boolean eval) throws ParseException { List params = eval ? new ArrayList() : null; jj_consume_token(LPAREN); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: 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(eval, params); break; default: jj_la1[79] = jj_gen; ; } jj_consume_token(RPAREN); {if (true) return params;} throw new Error("Missing return statement in function"); } final public void ArgumentList(boolean eval, List params) throws ParseException { Expression(eval); if (eval) ruleProc.addParams(params); label_32: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: ; break; default: jj_la1[80] = jj_gen; break label_32; } jj_consume_token(COMMA); Expression(eval); if (eval) ruleProc.addParams(params); } } final public void AllocationExpression(boolean eval) throws ParseException { byte type; String nm; List args; if (jj_2_14(2)) { jj_consume_token(NEW); type = PrimitiveType(); args = ArrayDimensions(eval); if (eval) ruleProc.newPrimitiveArray(type, args); } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case NEW: jj_consume_token(NEW); nm = Name(); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case LPAREN: args = Arguments(eval); if (eval) ruleProc.newObject(nm, args); break; case LBRACKET: args = ArrayDimensions(eval); break; default: jj_la1[81] = jj_gen; jj_consume_token(-1); throw new ParseException(); } if (eval) ruleProc.newObjectArray(nm, args); break; default: jj_la1[82] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } /* * The second LOOKAHEAD specification below is to parse to PrimarySuffix * if there is an expression between the "[...]". */ final public List ArrayDimensions(boolean eval) throws ParseException { LinkedList dimList = new LinkedList(); label_33: while (true) { jj_consume_token(LBRACKET); Expression(eval); jj_consume_token(RBRACKET); if (eval) ruleProc.addDimension(dimList); if (jj_2_15(2)) { ; } else { break label_33; } } label_34: while (true) { if (jj_2_16(2)) { ; } else { break label_34; } jj_consume_token(LBRACKET); jj_consume_token(RBRACKET); if (eval) ruleProc.addDimension(0, dimList); } {if (true) return dimList;} throw new Error("Missing return statement in function"); } /* * Statement syntax follows. */ final public void Statement(boolean eval) throws ParseException { if (jj_2_17(2147483647)) { LocalVariableDeclaration(); jj_consume_token(SEMICOLON); } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case INCR: case DECR: StatementExpression(eval); jj_consume_token(SEMICOLON); break; default: jj_la1[83] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } final public void LabeledStatement() throws ParseException { jj_consume_token(IDENTIFIER); jj_consume_token(COLON); Statement(false); {if (true) throw new ParseException("LabeledStatement not supported by rule!");} } final public void Block() throws ParseException { jj_consume_token(LBRACE); label_35: while (true) { 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 SUPER: case THIS: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case INCR: case DECR: ; break; default: jj_la1[84] = jj_gen; break label_35; } BlockStatement(); } jj_consume_token(RBRACE); } final public void BlockStatement() throws ParseException { if (jj_2_18(2147483647)) { LocalVariableDeclaration(); jj_consume_token(SEMICOLON); } 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 SUPER: case THIS: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case INCR: case DECR: Statement(false); break; default: jj_la1[85] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } final public void LocalVariableDeclaration() throws ParseException { Result t = null; Type(true); t = ruleProc.popResult(); VariableDeclarator(t); label_36: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: ; break; default: jj_la1[86] = jj_gen; break label_36; } jj_consume_token(COMMA); VariableDeclarator(t); } } final public void EmptyStatement() throws ParseException { jj_consume_token(SEMICOLON); } final public void StatementExpression(boolean eval) throws ParseException { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case INCR: PreIncrementExpression(eval); break; case DECR: PreDecrementExpression(eval); break; default: jj_la1[87] = jj_gen; if (jj_2_19(2147483647)) { Assignment(eval); } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: PostfixExpression(eval); break; default: jj_la1[88] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } } final public void SwitchStatement() throws ParseException { jj_consume_token(SWITCH); {if (true) throw new ParseException("Switch not supported in rule!");} jj_consume_token(LPAREN); Expression(false); jj_consume_token(RPAREN); jj_consume_token(LBRACE); label_37: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case CASE: case _DEFAULT: ; break; default: jj_la1[89] = jj_gen; break label_37; } SwitchLabel(); label_38: while (true) { 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 SUPER: case THIS: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case INCR: case DECR: ; break; default: jj_la1[90] = jj_gen; break label_38; } BlockStatement(); } } jj_consume_token(RBRACE); } final public void SwitchLabel() throws ParseException { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case CASE: jj_consume_token(CASE); {if (true) throw new ParseException("Switch not supported in rule!");} Expression(false); jj_consume_token(COLON); break; case _DEFAULT: jj_consume_token(_DEFAULT); jj_consume_token(COLON); break; default: jj_la1[91] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } final public void IfStatement() throws ParseException { jj_consume_token(IF); {if (true) throw new ParseException("if statement not supported in rule!");} jj_consume_token(LPAREN); Expression(false); jj_consume_token(RPAREN); Statement(false); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ELSE: jj_consume_token(ELSE); Statement(false); break; default: jj_la1[92] = jj_gen; ; } } final public void WhileStatement() throws ParseException { jj_consume_token(WHILE); {if (true) throw new ParseException( "while statement not supported in rule!");} jj_consume_token(LPAREN); Expression(false); jj_consume_token(RPAREN); Statement(false); } final public void DoStatement() throws ParseException { jj_consume_token(DO); {if (true) throw new ParseException("do statement not supported in rule!");} Statement(false); jj_consume_token(WHILE); jj_consume_token(LPAREN); Expression(false); jj_consume_token(RPAREN); jj_consume_token(SEMICOLON); } final public void ForStatement() throws ParseException { jj_consume_token(FOR); {if (true) throw new ParseException("for statement not supported in rule!");} 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 SUPER: case THIS: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case INCR: case DECR: ForInit(); break; default: jj_la1[93] = jj_gen; ; } jj_consume_token(SEMICOLON); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: 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(false); break; default: jj_la1[94] = jj_gen; ; } jj_consume_token(SEMICOLON); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case INCR: case DECR: ForUpdate(); break; default: jj_la1[95] = jj_gen; ; } jj_consume_token(RPAREN); Statement(false); } final public void ForInit() throws ParseException { if (jj_2_20(2147483647)) { LocalVariableDeclaration(); } else { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: case INTEGER_LITERAL: case FLOATING_POINT_LITERAL: case CHARACTER_LITERAL: case STRING_LITERAL: case IDENTIFIER: case LPAREN: case INCR: case DECR: StatementExpressionList(); break; default: jj_la1[96] = jj_gen; jj_consume_token(-1); throw new ParseException(); } } } final public void StatementExpressionList() throws ParseException { StatementExpression(false); label_39: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COMMA: ; break; default: jj_la1[97] = jj_gen; break label_39; } jj_consume_token(COMMA); StatementExpression(false); } } final public void ForUpdate() throws ParseException { StatementExpressionList(); } final public void BreakStatement() throws ParseException { jj_consume_token(BREAK); {if (true) throw new ParseException("Break not supported!");} switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; default: jj_la1[98] = jj_gen; ; } jj_consume_token(SEMICOLON); } final public void ContinueStatement() throws ParseException { jj_consume_token(CONTINUE); {if (true) throw new ParseException("Continue not supported!");} switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IDENTIFIER: jj_consume_token(IDENTIFIER); break; default: jj_la1[99] = jj_gen; ; } jj_consume_token(SEMICOLON); } final public void ReturnStatement() throws ParseException { jj_consume_token(RETURN); {if (true) throw new ParseException("Return not supported!");} switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FALSE: case NEW: case NULL: case SUPER: case THIS: case TRUE: 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(false); break; default: jj_la1[100] = jj_gen; ; } jj_consume_token(SEMICOLON); } final public void ThrowStatement() throws ParseException { jj_consume_token(THROW); {if (true) throw new ParseException("Throw not supported for rule syntax!");} Expression(false); jj_consume_token(SEMICOLON); } final public void SynchronizedStatement() throws ParseException { jj_consume_token(SYNCHRONIZED); {if (true) throw new ParseException("Synchronized not supported for rule syntax!");} jj_consume_token(LPAREN); Expression(false); jj_consume_token(RPAREN); Block(); } final public void TryStatement() throws ParseException { jj_consume_token(TRY); {if (true) throw new ParseException("Try not yet supported, might add if needed");} Block(); label_40: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case CATCH: ; break; default: jj_la1[101] = jj_gen; break label_40; } jj_consume_token(CATCH); jj_consume_token(LPAREN); FormalParameter(); jj_consume_token(RPAREN); Block(); } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case FINALLY: jj_consume_token(FINALLY); Block(); break; default: jj_la1[102] = jj_gen; ; } } /* * Rule Declarations */ final public String RuleUnit() throws ParseException, EOFException { String cls = null; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IDENTIFIER: jj_consume_token(IDENTIFIER); cls = token.image; jj_consume_token(COLON); 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 SUPER: case THIS: case TRUE: 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: label_41: while (true) { if (jj_2_21(2147483647)) { ; } else { break label_41; } Statement(true); ruleProc.clearStack(); } ConditionalOrExpression(true); if(!ruleProc.isTrue()) cls = null; break; default: jj_la1[103] = jj_gen; ; } {if (true) return cls;} break; case 0: jj_consume_token(0); {if (true) throw new EOFException("End of stream reached without match");} break; default: jj_la1[104] = jj_gen; jj_consume_token(-1); throw new ParseException(); } throw new Error("Missing return statement in function"); } final public String FirstRuleUnit() throws ParseException, EOFException { String cls = null; label_42: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case IMPORT: ; break; default: jj_la1[105] = jj_gen; break label_42; } ImportDeclaration(); } cls = RuleUnit(); {if (true) return cls;} throw new Error("Missing return statement in function"); } final private boolean jj_2_1(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_1(); jj_save(0, xla); return retval; } final private boolean jj_2_2(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_2(); jj_save(1, xla); return retval; } final private boolean jj_2_3(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_3(); jj_save(2, xla); return retval; } final private boolean jj_2_4(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_4(); jj_save(3, xla); return retval; } final private boolean jj_2_5(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_5(); jj_save(4, xla); return retval; } final private boolean jj_2_6(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_6(); jj_save(5, xla); return retval; } final private boolean jj_2_7(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_7(); jj_save(6, xla); return retval; } final private boolean jj_2_8(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_8(); jj_save(7, xla); return retval; } final private boolean jj_2_9(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_9(); jj_save(8, xla); return retval; } final private boolean jj_2_10(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_10(); jj_save(9, xla); return retval; } final private boolean jj_2_11(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_11(); jj_save(10, xla); return retval; } final private boolean jj_2_12(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_12(); jj_save(11, xla); return retval; } final private boolean jj_2_13(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_13(); jj_save(12, xla); return retval; } final private boolean jj_2_14(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_14(); jj_save(13, xla); return retval; } final private boolean jj_2_15(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_15(); jj_save(14, xla); return retval; } final private boolean jj_2_16(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_16(); jj_save(15, xla); return retval; } final private boolean jj_2_17(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_17(); jj_save(16, xla); return retval; } final private boolean jj_2_18(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_18(); jj_save(17, xla); return retval; } final private boolean jj_2_19(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_19(); jj_save(18, xla); return retval; } final private boolean jj_2_20(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_20(); jj_save(19, xla); return retval; } final private boolean jj_2_21(int xla) { jj_la = xla; jj_lastpos = jj_scanpos = token; boolean retval = !jj_3_21(); jj_save(20, xla); return retval; } final private boolean jj_3_1() { Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_43()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } if (jj_scan_token(CLASS)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_153() { if (jj_scan_token(INCR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_50()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_201() { if (jj_3R_208()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_21() { if (jj_3R_56()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_216() { if (jj_scan_token(SLASH)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_206() { if (jj_scan_token(PLUS)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_200() { Token xsp; xsp = jj_scanpos; if (jj_3R_206()) { jj_scanpos = xsp; if (jj_3R_207()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_192()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_199() { if (jj_3R_154()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_205() { if (jj_scan_token(RUNSIGNEDSHIFT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_198() { if (jj_3R_153()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_192() { Token xsp; xsp = jj_scanpos; if (jj_3R_198()) { jj_scanpos = xsp; if (jj_3R_199()) { jj_scanpos = xsp; if (jj_3R_200()) { jj_scanpos = xsp; if (jj_3R_201()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_211() { if (jj_scan_token(MINUS)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_215() { if (jj_scan_token(STAR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_209() { Token xsp; xsp = jj_scanpos; if (jj_3R_215()) { jj_scanpos = xsp; if (jj_3R_216()) { jj_scanpos = xsp; if (jj_3R_217()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_192()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_190() { if (jj_3R_192()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_209()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_204() { if (jj_scan_token(RSIGNEDSHIFT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_210() { if (jj_scan_token(PLUS)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_202() { Token xsp; xsp = jj_scanpos; if (jj_3R_210()) { jj_scanpos = xsp; if (jj_3R_211()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_190()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_186() { if (jj_3R_190()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_202()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_197() { if (jj_scan_token(GE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_195() { if (jj_scan_token(GT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_203() { if (jj_scan_token(LSHIFT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_187() { if (jj_scan_token(INSTANCEOF)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_55()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_193() { Token xsp; xsp = jj_scanpos; if (jj_3R_203()) { jj_scanpos = xsp; if (jj_3R_204()) { jj_scanpos = xsp; if (jj_3R_205()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_186()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_184() { if (jj_3R_186()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_193()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_189() { if (jj_scan_token(NE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_20() { if (jj_3R_55()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_196() { if (jj_scan_token(LE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_194() { if (jj_scan_token(LT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_191() { Token xsp; xsp = jj_scanpos; if (jj_3R_194()) { jj_scanpos = xsp; if (jj_3R_195()) { jj_scanpos = xsp; if (jj_3R_196()) { jj_scanpos = xsp; if (jj_3R_197()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_184()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_182() { if (jj_3R_184()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_191()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_183() { if (jj_scan_token(BIT_AND)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_178()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_83() { if (jj_scan_token(ORASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_180() { if (jj_3R_182()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; xsp = jj_scanpos; if (jj_3R_187()) jj_scanpos = xsp; else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_82() { if (jj_scan_token(XORASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_179() { if (jj_scan_token(BIT_OR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_169()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_181() { if (jj_scan_token(XOR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_174()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_188() { if (jj_scan_token(EQ)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_81() { if (jj_scan_token(ANDASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_185() { Token xsp; xsp = jj_scanpos; if (jj_3R_188()) { jj_scanpos = xsp; if (jj_3R_189()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_180()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_178() { if (jj_3R_180()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_185()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_177() { if (jj_scan_token(SC_AND)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_162()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_80() { if (jj_scan_token(RUNSIGNEDSHIFTASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_172() { if (jj_scan_token(SC_OR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_150()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_174() { if (jj_3R_178()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_183()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_79() { if (jj_scan_token(RSIGNEDSHIFTASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_167() { if (jj_scan_token(HOOK)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_54()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(COLON)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_128()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_169() { if (jj_3R_174()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_181()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_78() { if (jj_scan_token(LSHIFTASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_162() { if (jj_3R_169()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_179()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_77() { if (jj_scan_token(MINUSASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_150() { if (jj_3R_162()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_177()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3_19() { if (jj_3R_50()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_51()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_76() { if (jj_scan_token(PLUSASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_136() { if (jj_3R_150()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_172()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_142() { if (jj_3R_155()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_75() { if (jj_scan_token(REMASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_141() { if (jj_3R_127()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_140() { if (jj_3R_154()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_128() { if (jj_3R_136()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; xsp = jj_scanpos; if (jj_3R_167()) jj_scanpos = xsp; else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_130() { Token xsp; xsp = jj_scanpos; 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()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_139() { if (jj_3R_153()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_74() { if (jj_scan_token(SLASHASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_73() { if (jj_scan_token(STARASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_138() { if (jj_scan_token(COMMA)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_137()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_72() { if (jj_scan_token(ASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_51() { Token xsp; xsp = jj_scanpos; if (jj_3R_72()) { jj_scanpos = xsp; if (jj_3R_73()) { jj_scanpos = xsp; if (jj_3R_74()) { jj_scanpos = xsp; if (jj_3R_75()) { jj_scanpos = xsp; if (jj_3R_76()) { jj_scanpos = xsp; if (jj_3R_77()) { 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; if (jj_3R_83()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_18() { if (jj_3R_55()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_129() { if (jj_3R_55()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_137()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_138()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3_9() { if (jj_3R_50()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_51()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_127() { if (jj_3R_50()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_51()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_54()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_95() { if (jj_3R_128()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_94() { if (jj_3R_127()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_54() { Token xsp; xsp = jj_scanpos; if (jj_3R_94()) { jj_scanpos = xsp; if (jj_3R_95()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_60() { if (jj_scan_token(LBRACE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_17() { if (jj_3R_55()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_100() { if (jj_3R_130()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(SEMICOLON)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_56() { Token xsp; xsp = jj_scanpos; if (jj_3R_99()) { jj_scanpos = xsp; if (jj_3R_100()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_99() { if (jj_3R_129()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(SEMICOLON)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_8() { if (jj_scan_token(DOT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_46() { if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3_8()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3_16() { if (jj_scan_token(LBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_159() { if (jj_3R_111()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_15() { if (jj_scan_token(LBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_54()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_158() { Token xsp; if (jj_3_15()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; while (true) { xsp = jj_scanpos; if (jj_3_15()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } while (true) { xsp = jj_scanpos; if (jj_3_16()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_110() { if (jj_3R_55()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_98() { if (jj_scan_token(LBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_65() { Token xsp; xsp = jj_scanpos; if (jj_3R_109()) { jj_scanpos = xsp; if (jj_3R_110()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_109() { if (jj_scan_token(VOID)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_160() { if (jj_3R_158()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_93() { if (jj_scan_token(DOUBLE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_149() { if (jj_scan_token(NEW)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_46()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; xsp = jj_scanpos; if (jj_3R_159()) { jj_scanpos = xsp; if (jj_3R_160()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_92() { if (jj_scan_token(FLOAT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_176() { if (jj_scan_token(COMMA)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_91() { if (jj_scan_token(LONG)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_97() { if (jj_3R_46()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_14() { if (jj_scan_token(NEW)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_53()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_158()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_132() { Token xsp; xsp = jj_scanpos; if (jj_3_14()) { jj_scanpos = xsp; if (jj_3R_149()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_90() { if (jj_scan_token(INT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_89() { if (jj_scan_token(SHORT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_7() { if (jj_scan_token(COMMA)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_49()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_173() { if (jj_scan_token(COMMA)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_54()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_88() { if (jj_scan_token(BYTE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_168() { if (jj_3R_54()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_173()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_87() { if (jj_scan_token(CHAR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_161() { if (jj_3R_168()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_163() { if (jj_scan_token(LBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_86() { if (jj_scan_token(BOOLEAN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_53() { Token xsp; xsp = jj_scanpos; 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()) { jj_scanpos = xsp; if (jj_3R_91()) { jj_scanpos = xsp; if (jj_3R_92()) { jj_scanpos = xsp; if (jj_3R_93()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_152() { if (jj_scan_token(ASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_49()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_111() { if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; xsp = jj_scanpos; if (jj_3R_161()) jj_scanpos = xsp; else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_96() { if (jj_3R_53()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_55() { Token xsp; xsp = jj_scanpos; if (jj_3R_96()) { jj_scanpos = xsp; if (jj_3R_97()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; while (true) { xsp = jj_scanpos; if (jj_3R_98()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_157() { if (jj_scan_token(NULL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_166() { if (jj_scan_token(FALSE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_175() { if (jj_3R_49()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3_7()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_69() { if (jj_3R_54()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_156() { Token xsp; xsp = jj_scanpos; if (jj_3R_165()) { jj_scanpos = xsp; if (jj_3R_166()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_165() { if (jj_scan_token(TRUE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_68() { if (jj_scan_token(LBRACE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; xsp = jj_scanpos; if (jj_3R_175()) jj_scanpos = xsp; else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; xsp = jj_scanpos; if (jj_3R_176()) jj_scanpos = xsp; else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RBRACE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_49() { Token xsp; xsp = jj_scanpos; if (jj_3R_68()) { jj_scanpos = xsp; if (jj_3R_69()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_148() { if (jj_3R_157()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_147() { if (jj_3R_156()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_137() { if (jj_3R_151()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; xsp = jj_scanpos; if (jj_3R_152()) jj_scanpos = xsp; else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_146() { if (jj_scan_token(STRING_LITERAL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_145() { if (jj_scan_token(CHARACTER_LITERAL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_108() { if (jj_scan_token(SYNCHRONIZED)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_151() { if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_163()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_144() { if (jj_scan_token(FLOATING_POINT_LITERAL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_126() { if (jj_3R_131()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_131() { Token xsp; xsp = jj_scanpos; if (jj_3R_143()) { jj_scanpos = xsp; if (jj_3R_144()) { jj_scanpos = xsp; if (jj_3R_145()) { jj_scanpos = xsp; if (jj_3R_146()) { jj_scanpos = xsp; if (jj_3R_147()) { jj_scanpos = xsp; if (jj_3R_148()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_143() { if (jj_scan_token(INTEGER_LITERAL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_44() { if (jj_scan_token(STATIC)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_60()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_107() { if (jj_scan_token(NATIVE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_125() { if (jj_scan_token(NEW)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_135() { if (jj_3R_111()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_134() { if (jj_scan_token(DOT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_67() { if (jj_scan_token(SUPER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_111()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_118() { Token xsp; xsp = jj_scanpos; if (jj_3R_133()) { jj_scanpos = xsp; if (jj_3R_134()) { jj_scanpos = xsp; if (jj_3R_135()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_133() { if (jj_scan_token(LBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_54()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_66() { if (jj_scan_token(THIS)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_111()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_48() { Token xsp; xsp = jj_scanpos; if (jj_3R_66()) { jj_scanpos = xsp; if (jj_3R_67()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_6() { if (jj_3R_48()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_106() { if (jj_scan_token(FINAL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_71() { if (jj_3R_118()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_124() { if (jj_scan_token(SUPER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_171() { if (jj_scan_token(DECR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_117() { if (jj_3R_132()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_222() { if (jj_scan_token(LBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_116() { if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_54()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_115() { if (jj_scan_token(SUPER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(DOT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_123() { if (jj_scan_token(THIS)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_114() { if (jj_scan_token(THIS)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_223() { if (jj_scan_token(LBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_105() { if (jj_scan_token(ABSTRACT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_113() { if (jj_3R_46()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_70() { Token xsp; xsp = jj_scanpos; if (jj_3R_112()) { jj_scanpos = xsp; if (jj_3R_113()) { jj_scanpos = xsp; if (jj_3R_114()) { jj_scanpos = xsp; if (jj_3R_115()) { jj_scanpos = xsp; if (jj_3R_116()) { jj_scanpos = xsp; if (jj_3R_117()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_112() { if (jj_3R_131()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_164() { Token xsp; xsp = jj_scanpos; if (jj_3R_170()) { jj_scanpos = xsp; if (jj_3R_171()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_170() { if (jj_scan_token(INCR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_50() { if (jj_3R_70()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_71()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } return false; } final private boolean jj_3R_104() { if (jj_scan_token(STATIC)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_122() { if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_221() { if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_46()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_223()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } if (jj_scan_token(RPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_208()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_121() { if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_220() { Token xsp; xsp = jj_scanpos; if (jj_3_13()) { jj_scanpos = xsp; if (jj_3R_221()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_13() { if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_53()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_222()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } if (jj_scan_token(RPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_192()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_103() { if (jj_scan_token(PRIVATE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_120() { if (jj_scan_token(BANG)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_5() { if (jj_3R_47()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_63() { if (jj_scan_token(PRIVATE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_119() { if (jj_scan_token(TILDE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_155() { if (jj_3R_50()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; xsp = jj_scanpos; if (jj_3R_164()) jj_scanpos = xsp; else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_102() { if (jj_scan_token(PROTECTED)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_62() { if (jj_scan_token(PROTECTED)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_12() { if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_46()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(LBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_85() { if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_46()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; xsp = jj_scanpos; if (jj_3R_119()) { jj_scanpos = xsp; if (jj_3R_120()) { jj_scanpos = xsp; if (jj_3R_121()) { jj_scanpos = xsp; if (jj_3R_122()) { jj_scanpos = xsp; if (jj_3R_123()) { jj_scanpos = xsp; if (jj_3R_124()) { jj_scanpos = xsp; if (jj_3R_125()) { jj_scanpos = xsp; if (jj_3R_126()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_64() { Token xsp; xsp = jj_scanpos; if (jj_3R_101()) { jj_scanpos = xsp; if (jj_3R_102()) { jj_scanpos = xsp; if (jj_3R_103()) { jj_scanpos = xsp; if (jj_3R_104()) { jj_scanpos = xsp; if (jj_3R_105()) { jj_scanpos = xsp; if (jj_3R_106()) { jj_scanpos = xsp; if (jj_3R_107()) { jj_scanpos = xsp; if (jj_3R_108()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_101() { if (jj_scan_token(PUBLIC)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_4() { if (jj_3R_47()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_84() { if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_46()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(LBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(RBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_61() { if (jj_scan_token(PUBLIC)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_47() { Token xsp; while (true) { xsp = jj_scanpos; if (jj_3R_64()) { jj_scanpos = xsp; break; } if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } if (jj_3R_65()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_45() { Token xsp; xsp = jj_scanpos; if (jj_3R_61()) { jj_scanpos = xsp; if (jj_3R_62()) { jj_scanpos = xsp; if (jj_3R_63()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_219() { if (jj_scan_token(BANG)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_3() { Token xsp; xsp = jj_scanpos; if (jj_3R_45()) jj_scanpos = xsp; else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_46()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_52() { Token xsp; xsp = jj_scanpos; if (jj_3_11()) { jj_scanpos = xsp; if (jj_3R_84()) { jj_scanpos = xsp; if (jj_3R_85()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_11() { if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_53()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_10() { if (jj_3R_52()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_59() { if (jj_scan_token(PUBLIC)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_214() { if (jj_3R_155()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_213() { if (jj_3R_220()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_58() { if (jj_scan_token(FINAL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3_2() { if (jj_3R_44()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_218() { if (jj_scan_token(TILDE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_212() { Token xsp; xsp = jj_scanpos; if (jj_3R_218()) { jj_scanpos = xsp; if (jj_3R_219()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_192()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_208() { Token xsp; xsp = jj_scanpos; if (jj_3R_212()) { jj_scanpos = xsp; if (jj_3R_213()) { jj_scanpos = xsp; if (jj_3R_214()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_217() { if (jj_scan_token(REM)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_57() { if (jj_scan_token(ABSTRACT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_43() { Token xsp; xsp = jj_scanpos; if (jj_3R_57()) { jj_scanpos = xsp; if (jj_3R_58()) { jj_scanpos = xsp; if (jj_3R_59()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_207() { if (jj_scan_token(MINUS)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } final private boolean jj_3R_154() { if (jj_scan_token(DECR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_50()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } public RuleParserTokenManager token_source; ASCII_UCodeESC_CharStream 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; private int jj_gen; final private int[] jj_la1 = new int[106]; final private int[] jj_la1_0 = {0x0,0x0,0x40204000,0x0,0x4000,0x40004000,0x40004000,0x10000000,0x0,0x4412c000,0x44128000,0x40004000,0x40004000,0x4000,0x4000,0x10000000,0x4412c000,0x44128000,0x40000000,0x40000000,0x0,0x40004000,0x40004000,0x0,0x0,0x0,0x0,0x4128000,0x0,0x0,0x0,0x24128000,0x0,0x0,0x0,0x20000000,0x0,0x20000000,0x4128000,0x0,0x4128000,0x4128000,0x0,0x20000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000000,0x0,0x0,0x20000000,0x20000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x20000000,0x0,0x20000000,0x20000000,0x20000000,0x0,0x0,0x0,0x20000000,0x24128000,0x24128000,0x0,0x0,0x20000000,0x1040000,0x24128000,0x1040000,0x8000000,0x24128000,0x20000000,0x20000000,0x20000000,0x0,0x0,0x0,0x20000000,0x80000,0x80000000,0x24128000,0x1,0x0,}; final private int[] jj_la1_1 = {0x2000,0x20,0x10100,0x0,0x10100,0x10000,0x10000,0x0,0x10,0x644dc681,0x440dc281,0x49c400,0x49c400,0x10000,0x10000,0x0,0x644dc681,0x440dc281,0x4409c000,0x4409c000,0x0,0x49c400,0x49c400,0x2000000,0x0,0x0,0x0,0x40281,0x1c000,0x1c000,0x2000000,0x8941a81,0x900000,0x0,0x0,0x8901800,0x0,0x8901800,0x40281,0x0,0x40281,0x20040281,0x0,0x8901800,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x40,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8901800,0x0,0x0,0x8901800,0x8901800,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x8901800,0x0,0x8001000,0x8000000,0x8901800,0x0,0x0,0x800,0x8901800,0x8941a81,0x8941a81,0x0,0x0,0x8901800,0x0,0x8941a81,0x0,0x0,0x8941a81,0x8901800,0x8901800,0x8901800,0x0,0x0,0x0,0x8901800,0x0,0x0,0x8941a81,0x0,0x20,}; final private int[] jj_la1_2 = {0x0,0x0,0x20000,0x80000,0x20000,0x0,0x0,0x0,0x0,0x100,0x100,0x0,0x0,0x0,0x0,0x0,0x100,0x100,0x0,0x0,0x40000,0x0,0x0,0x0,0x22000,0x8000,0x40000,0x100,0x0,0x0,0x0,0x9d1,0x0,0x8000,0x100000,0x18029d1,0x40000,0x18029d1,0x100,0x8000,0x0,0x100,0x40000,0x18009d1,0x100000,0x2000000,0x80000000,0x0,0x0,0x0,0x0,0x48000000,0x48000000,0x0,0x30600000,0x30600000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x18009d1,0x1800000,0x1800000,0x9d1,0x18009d1,0x800,0x0,0x0,0x8000,0x8000,0x800,0x88800,0x9d1,0x88800,0xd1,0x0,0x18009d1,0x40000,0x8800,0x0,0x9d1,0x9d1,0x9d1,0x40000,0x0,0x9d1,0x0,0x9d1,0x0,0x0,0x9d1,0x18009d1,0x9d1,0x9d1,0x40000,0x100,0x100,0x18009d1,0x0,0x0,0x18009d1,0x100,0x0,}; final private int[] jj_la1_3 = {0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x6,0x0,0x0,0x0,0x1e,0x0,0x1e,0x0,0x0,0x0,0x0,0x0,0x1e,0x1ffc000,0x0,0x0,0x1,0x100,0x200,0x80,0x0,0x0,0x0,0x0,0x0,0x3800,0x3800,0x18,0x18,0x460,0x460,0x18,0x1e,0x0,0x0,0x0,0x0,0x0,0x6,0x6,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x1e,0x0,0x0,0x0,0x6,0x6,0x6,0x0,0x6,0x0,0x0,0x6,0x0,0x0,0x6,0x1e,0x6,0x6,0x0,0x0,0x0,0x1e,0x0,0x0,0x1e,0x0,0x0,}; final private JJCalls[] jj_2_rtns = new JJCalls[21]; private boolean jj_rescan = false; private int jj_gc = 0; public RuleParser(java.io.InputStream stream) { jj_input_stream = new ASCII_UCodeESC_CharStream(stream, 1, 1); token_source = new RuleParserTokenManager(jj_input_stream); token = new Token(); jj_ntk = -1; jj_gen = 0; for (int i = 0; i < 106; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } 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; jj_gen = 0; for (int i = 0; i < 106; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } public RuleParser(java.io.Reader stream) { jj_input_stream = new ASCII_UCodeESC_CharStream(stream, 1, 1); token_source = new RuleParserTokenManager(jj_input_stream); token = new Token(); jj_ntk = -1; jj_gen = 0; for (int i = 0; i < 106; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } 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; jj_gen = 0; for (int i = 0; i < 106; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } public RuleParser(RuleParserTokenManager tm) { token_source = tm; token = new Token(); jj_ntk = -1; jj_gen = 0; for (int i = 0; i < 106; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } public void ReInit(RuleParserTokenManager tm) { token_source = tm; token = new Token(); jj_ntk = -1; jj_gen = 0; for (int i = 0; i < 106; i++) jj_la1[i] = -1; for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls(); } 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) { jj_gen++; if (++jj_gc > 100) { jj_gc = 0; for (int i = 0; i < jj_2_rtns.length; i++) { JJCalls c = jj_2_rtns[i]; while (c != null) { if (c.gen < jj_gen) c.first = null; c = c.next; } } } return token; } token = oldToken; jj_kind = kind; throw generateParseException(); } 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_rescan) { int i = 0; Token tok = token; while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; } if (tok != null) jj_add_error_token(kind, i); } return (jj_scanpos.kind != kind); } final public Token getNextToken() { if (token.next != null) token = token.next; else token = token.next = token_source.getNextToken(); jj_ntk = -1; jj_gen++; 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); } private java.util.Vector jj_expentries = new java.util.Vector(); private int[] jj_expentry; private int jj_kind = -1; private int[] jj_lasttokens = new int[100]; private int jj_endpos; private void jj_add_error_token(int kind, int pos) { if (pos >= 100) return; if (pos == jj_endpos + 1) { jj_lasttokens[jj_endpos++] = kind; } else if (jj_endpos != 0) { jj_expentry = new int[jj_endpos]; for (int i = 0; i < jj_endpos; i++) { jj_expentry[i] = jj_lasttokens[i]; } boolean exists = false; for (java.util.Enumeration enum = jj_expentries.elements(); enum.hasMoreElements();) { int[] oldentry = (int[])(enum.nextElement()); if (oldentry.length == jj_expentry.length) { exists = true; for (int i = 0; i < jj_expentry.length; i++) { if (oldentry[i] != jj_expentry[i]) { exists = false; break; } } if (exists) break; } } if (!exists) jj_expentries.addElement(jj_expentry); if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind; } } final public ParseException generateParseException() { jj_expentries.removeAllElements(); boolean[] la1tokens = new boolean[121]; for (int i = 0; i < 121; i++) { la1tokens[i] = false; } if (jj_kind >= 0) { la1tokens[jj_kind] = true; jj_kind = -1; } for (int i = 0; i < 106; i++) { if (jj_la1[i] == jj_gen) { for (int j = 0; j < 32; j++) { if ((jj_la1_0[i] & (1< jj_gen) { jj_la = p.arg; jj_lastpos = jj_scanpos = p.first; switch (i) { case 0: jj_3_1(); break; case 1: jj_3_2(); break; case 2: jj_3_3(); break; case 3: jj_3_4(); break; case 4: jj_3_5(); break; case 5: jj_3_6(); break; case 6: jj_3_7(); break; case 7: jj_3_8(); break; case 8: jj_3_9(); break; case 9: jj_3_10(); break; case 10: jj_3_11(); break; case 11: jj_3_12(); break; case 12: jj_3_13(); break; case 13: jj_3_14(); break; case 14: jj_3_15(); break; case 15: jj_3_16(); break; case 16: jj_3_17(); break; case 17: jj_3_18(); break; case 18: jj_3_19(); break; case 19: jj_3_20(); break; case 20: jj_3_21(); break; } } p = p.next; } while (p != null); } jj_rescan = false; } final private void jj_save(int index, int xla) { JJCalls p = jj_2_rtns[index]; while (p.gen > jj_gen) { if (p.next == null) { p = p.next = new JJCalls(); break; } p = p.next; } p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla; } static final class JJCalls { int gen; Token first; int arg; JJCalls next; } }