X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse/src/test/PHPParser.java b/net.sourceforge.phpeclipse/src/test/PHPParser.java index 4351df6..1573506 100644 --- a/net.sourceforge.phpeclipse/src/test/PHPParser.java +++ b/net.sourceforge.phpeclipse/src/test/PHPParser.java @@ -101,41 +101,6 @@ public final class PHPParser extends PHPParserSuperclass implements PHPParserCon } } - public static final void phpParserTester(final String strEval) throws CoreException, ParseException { - PHPParserTokenManager.SwitchTo(PHPParserTokenManager.PHPPARSING); - final StringReader stream = new StringReader(strEval); - if (jj_input_stream == null) { - jj_input_stream = new SimpleCharStream(stream, 1, 1); - } - ReInit(new StringReader(strEval)); - init(); - phpTest(); - } - - public static final void htmlParserTester(final File fileName) throws CoreException, ParseException { - try { - final Reader stream = new FileReader(fileName); - if (jj_input_stream == null) { - jj_input_stream = new SimpleCharStream(stream, 1, 1); - } - ReInit(stream); - init(); - phpFile(); - } catch (FileNotFoundException e) { - e.printStackTrace(); //To change body of catch statement use Options | File Templates. - } - } - - public static final void htmlParserTester(final String strEval) throws CoreException, ParseException { - final StringReader stream = new StringReader(strEval); - if (jj_input_stream == null) { - jj_input_stream = new SimpleCharStream(stream, 1, 1); - } - ReInit(stream); - init(); - phpFile(); - } - public final PHPOutlineInfo parseInfo(final Object parent, final String s) { currentSegment = new PHPDocument(parent); outlineInfo = new PHPOutlineInfo(parent); @@ -147,7 +112,10 @@ public final class PHPParser extends PHPParserSuperclass implements PHPParserCon init(); try { parse(); - //PHPeclipsePlugin.log(1,phpDocument.toString()); + phpDocument = new PHPDocument(null); + phpDocument.nodes = new AstNode[nodes.length]; + System.arraycopy(nodes,0,phpDocument.nodes,0,nodes.length); + PHPeclipsePlugin.log(1,phpDocument.toString()); } catch (ParseException e) { processParseException(e); } @@ -308,7 +276,7 @@ public final class PHPParser extends PHPParserSuperclass implements PHPParserCon if (currentPosition == htmlStart) { return; } - final char[] chars = SimpleCharStream.currentBuffer.substring(htmlStart,currentPosition).toCharArray(); + final char[] chars = SimpleCharStream.currentBuffer.substring(htmlStart,currentPosition+1).toCharArray(); pushOnAstNodes(new HTMLCode(chars, htmlStart,currentPosition)); } @@ -316,12 +284,6 @@ public final class PHPParser extends PHPParserSuperclass implements PHPParserCon phpFile(); } - static final public void phpTest() throws ParseException { - Php(); - jj_consume_token(0); - PHPParser.createNewHTMLCode(); - } - static final public void phpFile() throws ParseException { try { label_1: @@ -631,8 +593,8 @@ public final class PHPParser extends PHPParserSuperclass implements PHPParserCon } catch (ParseException e) { errorMessage = "unexpected token : '"+ e.currentToken.next.image + "', '{' expected"; errorLevel = ERROR; - errorStart = jj_input_stream.getPosition() - e.currentToken.next.image.length() + 1; - errorEnd = jj_input_stream.getPosition() + 1; + errorStart = SimpleCharStream.getPosition() - e.currentToken.next.image.length() + 1; + errorEnd = SimpleCharStream.getPosition() + 1; {if (true) throw e;} } label_3: @@ -653,8 +615,8 @@ public final class PHPParser extends PHPParserSuperclass implements PHPParserCon } catch (ParseException e) { errorMessage = "unexpected token : '"+ e.currentToken.next.image +"', 'var', 'function' or '}' expected"; errorLevel = ERROR; - errorStart = jj_input_stream.getPosition() - e.currentToken.next.image.length() + 1; - errorEnd = jj_input_stream.getPosition() + 1; + errorStart = SimpleCharStream.getPosition() - e.currentToken.next.image.length() + 1; + errorEnd = SimpleCharStream.getPosition() + 1; {if (true) throw e;} } } @@ -686,13 +648,14 @@ public final class PHPParser extends PHPParserSuperclass implements PHPParserCon */ static final public FieldDeclaration FieldDeclaration() throws ParseException { VariableDeclaration variableDeclaration; - final ArrayList list = new ArrayList(); + VariableDeclaration[] list; + final ArrayList arrayList = new ArrayList(); final int pos = SimpleCharStream.getPosition(); jj_consume_token(VAR); variableDeclaration = VariableDeclarator(); - list.add(variableDeclaration); - outlineInfo.addVariable(new String(variableDeclaration.name)); - currentSegment.add(variableDeclaration); + arrayList.add(variableDeclaration); + outlineInfo.addVariable(new String(variableDeclaration.name)); + currentSegment.add(variableDeclaration); label_4: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { @@ -705,7 +668,7 @@ public final class PHPParser extends PHPParserSuperclass implements PHPParserCon } jj_consume_token(COMMA); variableDeclaration = VariableDeclarator(); - list.add(variableDeclaration); + arrayList.add(variableDeclaration); outlineInfo.addVariable(new String(variableDeclaration.name)); currentSegment.add(variableDeclaration); } @@ -714,18 +677,20 @@ public final class PHPParser extends PHPParserSuperclass implements PHPParserCon } catch (ParseException e) { errorMessage = "unexpected token : '"+ e.currentToken.next.image +"'. A ';' was expected after variable declaration"; errorLevel = ERROR; - errorStart = jj_input_stream.getPosition() - e.currentToken.next.image.length() + 1; - errorEnd = jj_input_stream.getPosition() + 1; + errorStart = SimpleCharStream.getPosition() - e.currentToken.next.image.length() + 1; + errorEnd = SimpleCharStream.getPosition() + 1; {if (true) throw e;} } - {if (true) return new FieldDeclaration((VariableDeclaration[]) list.toArray(), + list = new VariableDeclaration[arrayList.size()]; + arrayList.toArray(list); + {if (true) return new FieldDeclaration(list, pos, SimpleCharStream.getPosition());} throw new Error("Missing return statement in function"); } static final public VariableDeclaration VariableDeclarator() throws ParseException { - final String varName, varValue; + final String varName; Expression initializer = null; final int pos = jj_input_stream.getPosition(); varName = VariableDeclaratorId(); @@ -962,19 +927,19 @@ public final class PHPParser extends PHPParserSuperclass implements PHPParserCon } static final public ArrayVariableDeclaration ArrayVariable() throws ParseException { -Expression expr; -Expression expr2 = null; +Expression expr,expr2; expr = Expression(); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ARRAYASSIGN: jj_consume_token(ARRAYASSIGN); expr2 = Expression(); + {if (true) return new ArrayVariableDeclaration(expr,expr2);} break; default: jj_la1[18] = jj_gen; ; } - {if (true) return new ArrayVariableDeclaration(expr,expr2);} + {if (true) return new ArrayVariableDeclaration(expr,SimpleCharStream.getPosition());} throw new Error("Missing return statement in function"); } @@ -1032,7 +997,9 @@ Expression expr2 = null; ; } jj_consume_token(RPAREN); - {if (true) return (ArrayVariableDeclaration[]) list.toArray();} + ArrayVariableDeclaration[] vars = new ArrayVariableDeclaration[list.size()]; + list.toArray(vars); + {if (true) return vars;} throw new Error("Missing return statement in function"); } @@ -1042,16 +1009,13 @@ Expression expr2 = null; */ static final public MethodDeclaration MethodDeclaration() throws ParseException { final MethodDeclaration functionDeclaration; - Token functionToken; final Block block; - functionToken = jj_consume_token(FUNCTION); + jj_consume_token(FUNCTION); try { functionDeclaration = MethodDeclarator(); outlineInfo.addVariable(new String(functionDeclaration.name)); } catch (ParseException e) { - if (errorMessage != null) { - {if (true) throw e;} - } + if (errorMessage != null) {if (true) throw e;} errorMessage = "unexpected token : '"+ e.currentToken.next.image +"', function identifier expected"; errorLevel = ERROR; errorStart = jj_input_stream.getPosition() - e.currentToken.next.image.length() + 1; @@ -1107,8 +1071,6 @@ Expression expr2 = null; * (FormalParameter()) */ static final public Hashtable FormalParameters() throws ParseException { - String expr; - final StringBuffer buff = new StringBuffer("("); VariableDeclaration var; final Hashtable parameters = new Hashtable(); try { @@ -1188,55 +1150,55 @@ Expression expr2 = null; jj_consume_token(STRING); pos = SimpleCharStream.getPosition(); {if (true) return new ConstantIdentifier(Types.STRING, - pos,pos-6);} + pos,pos-6);} break; case BOOL: jj_consume_token(BOOL); pos = SimpleCharStream.getPosition(); {if (true) return new ConstantIdentifier(Types.BOOL, - pos,pos-4);} + pos,pos-4);} break; case BOOLEAN: jj_consume_token(BOOLEAN); pos = SimpleCharStream.getPosition(); {if (true) return new ConstantIdentifier(Types.BOOLEAN, - pos,pos-7);} + pos,pos-7);} break; case REAL: jj_consume_token(REAL); pos = SimpleCharStream.getPosition(); {if (true) return new ConstantIdentifier(Types.REAL, - pos,pos-4);} + pos,pos-4);} break; case DOUBLE: jj_consume_token(DOUBLE); pos = SimpleCharStream.getPosition(); {if (true) return new ConstantIdentifier(Types.DOUBLE, - pos,pos-5);} + pos,pos-5);} break; case FLOAT: jj_consume_token(FLOAT); pos = SimpleCharStream.getPosition(); {if (true) return new ConstantIdentifier(Types.FLOAT, - pos,pos-5);} + pos,pos-5);} break; case INT: jj_consume_token(INT); pos = SimpleCharStream.getPosition(); {if (true) return new ConstantIdentifier(Types.INT, - pos,pos-3);} + pos,pos-3);} break; case INTEGER: jj_consume_token(INTEGER); pos = SimpleCharStream.getPosition(); {if (true) return new ConstantIdentifier(Types.INTEGER, - pos,pos-7);} + pos,pos-7);} break; case OBJECT: jj_consume_token(OBJECT); pos = SimpleCharStream.getPosition(); {if (true) return new ConstantIdentifier(Types.OBJECT, - pos,pos-6);} + pos,pos-6);} break; default: jj_la1[25] = jj_gen; @@ -1759,9 +1721,7 @@ Expression expr2 = null; try { expr = UnaryExpression(); } catch (ParseException e) { - if (errorMessage != null) { - {if (true) throw e;} - } + if (errorMessage != null) {if (true) throw e;} errorMessage = "unexpected token '"+e.currentToken.next.image+"'"; errorLevel = ERROR; errorStart = jj_input_stream.getPosition() - e.currentToken.next.image.length() + 1; @@ -1836,7 +1796,7 @@ Expression expr2 = null; case LPAREN: case DOLLAR_ID: expr = AtUnaryExpression(); - {if (true) return expr;} + {if (true) return expr;} break; default: jj_la1[48] = jj_gen; @@ -2085,7 +2045,6 @@ final int pos = SimpleCharStream.getPosition(); static final public Expression PrimaryExpression() throws ParseException { final Token identifier; Expression expr; - final StringBuffer buff = new StringBuffer(); final int pos = SimpleCharStream.getPosition(); if (jj_2_5(2)) { identifier = jj_consume_token(IDENTIFIER); @@ -2399,7 +2358,7 @@ final int pos = SimpleCharStream.getPosition(); case STRING_LITERAL: token = jj_consume_token(STRING_LITERAL); pos = SimpleCharStream.getPosition(); - {if (true) return new StringLiteral(token.image.toCharArray(),pos-token.image.length(),pos);} + {if (true) return new StringLiteral(token.image.toCharArray(),pos-token.image.length());} break; case TRUE: jj_consume_token(TRUE); @@ -2425,7 +2384,7 @@ final int pos = SimpleCharStream.getPosition(); } static final public FunctionCall Arguments(Expression func) throws ParseException { -ArgumentDeclaration[] args = null; +Expression[] args = null; jj_consume_token(LPAREN); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ARRAY: @@ -2468,11 +2427,16 @@ ArgumentDeclaration[] args = null; throw new Error("Missing return statement in function"); } - static final public ArgumentDeclaration[] ArgumentList() throws ParseException { -Expression expr; +/** + * An argument list is a list of arguments separated by comma : + * argumentDeclaration() (, argumentDeclaration)* + * @return an array of arguments + */ + static final public Expression[] ArgumentList() throws ParseException { +Expression arg; final ArrayList list = new ArrayList(); - expr = Expression(); - list.add(expr); + arg = Expression(); + list.add(arg); label_21: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { @@ -2485,8 +2449,8 @@ final ArrayList list = new ArrayList(); } jj_consume_token(COMMA); try { - expr = Expression(); - list.add(expr); + arg = Expression(); + list.add(arg); } catch (ParseException e) { errorMessage = "unexpected token : '"+ e.currentToken.next.image +"'. An expression expected after a comma in argument list"; errorLevel = ERROR; @@ -2495,7 +2459,9 @@ final ArrayList list = new ArrayList(); {if (true) throw e;} } } - {if (true) return (ArgumentDeclaration[]) list.toArray();} + Expression[] arguments = new Expression[list.size()]; + list.toArray(arguments); + {if (true) return arguments;} throw new Error("Missing return statement in function"); } @@ -2722,7 +2688,7 @@ final ArrayList list = new ArrayList(); errorEnd = jj_input_stream.getPosition(); {if (true) throw e;} } - nbNodes = nodePtr-startIndex; + nbNodes = nodePtr-startIndex - 1; blockNodes = new AstNode[nbNodes]; System.arraycopy(nodes,startIndex,blockNodes,0,nbNodes); {if (true) return new HTMLBlock(nodes);} @@ -2734,7 +2700,6 @@ final ArrayList list = new ArrayList(); */ static final public InclusionStatement IncludeStatement() throws ParseException { final Expression expr; - final Token token; final int keyword; final int pos = jj_input_stream.getPosition(); final InclusionStatement inclusionStatement; @@ -2860,13 +2825,20 @@ final ArrayList list = new ArrayList(); case ASSIGN: jj_consume_token(ASSIGN); expression = Expression(); - {if (true) return new ListExpression((String[]) list.toArray(),expression,pos,SimpleCharStream.getPosition());} + String[] strings = new String[list.size()]; + list.toArray(strings); + {if (true) return new ListExpression(strings, + expression, + pos, + SimpleCharStream.getPosition());} break; default: jj_la1[79] = jj_gen; ; } - {if (true) return new ListExpression((String[]) list.toArray(),null,pos,SimpleCharStream.getPosition());} + String[] strings = new String[list.size()]; + list.toArray(strings); + {if (true) return new ListExpression(strings,pos,SimpleCharStream.getPosition());} throw new Error("Missing return statement in function"); } @@ -2897,7 +2869,9 @@ final ArrayList list = new ArrayList(); } try { jj_consume_token(SEMICOLON); - {if (true) return new EchoStatement((Expression[]) expressions.toArray(),pos);} + Expression[] exprs = new Expression[expressions.size()]; + expressions.toArray(exprs); + {if (true) return new EchoStatement(exprs,pos);} } catch (ParseException e) { if (e.currentToken.next.kind != 4) { errorMessage = "';' expected after 'echo' statement"; @@ -2934,10 +2908,12 @@ final ArrayList list = new ArrayList(); } try { jj_consume_token(SEMICOLON); - global = new GlobalStatement(currentSegment, - (String[]) vars.toArray(), - pos, - SimpleCharStream.getPosition()); + String[] strings = new String[vars.size()]; + vars.toArray(strings); + global = new GlobalStatement(currentSegment, + strings, + pos, + SimpleCharStream.getPosition()); currentSegment.add(global); {if (true) return global;} } catch (ParseException e) { @@ -2973,7 +2949,9 @@ final ArrayList list = new ArrayList(); } try { jj_consume_token(SEMICOLON); - {if (true) return new StaticStatement((String[])vars.toArray(), + String[] strings = new String[vars.size()]; + vars.toArray(strings); + {if (true) return new StaticStatement(strings, pos, SimpleCharStream.getPosition());} } catch (ParseException e) { @@ -3006,6 +2984,8 @@ final ArrayList list = new ArrayList(); */ static final public Block Block() throws ParseException { final int pos = SimpleCharStream.getPosition(); + final ArrayList list = new ArrayList(); + Statement statement; try { jj_consume_token(LBRACE); } catch (ParseException e) { @@ -3108,10 +3088,12 @@ final ArrayList list = new ArrayList(); case LBRACE: case SEMICOLON: case DOLLAR_ID: - BlockStatement(); + statement = BlockStatement(); + list.add(statement); break; case PHPEND: - htmlBlock(); + statement = htmlBlock(); + list.add(statement); break; default: jj_la1[84] = jj_gen; @@ -3128,6 +3110,9 @@ final ArrayList list = new ArrayList(); errorEnd = jj_input_stream.getPosition() + 1; {if (true) throw e;} } + Statement[] statements = new Statement[list.size()]; + list.toArray(statements); + {if (true) return new Block(statements,pos,SimpleCharStream.getPosition());} throw new Error("Missing return statement in function"); } @@ -3274,7 +3259,9 @@ final ArrayList list = new ArrayList(); var = LocalVariableDeclarator(); list.add(var); } - {if (true) return (VariableDeclaration[]) list.toArray();} + VariableDeclaration[] vars = new VariableDeclaration[list.size()]; + list.toArray(vars); + {if (true) return vars;} throw new Error("Missing return statement in function"); } @@ -3314,7 +3301,8 @@ final ArrayList list = new ArrayList(); } static final public Statement StatementExpression() throws ParseException { - Expression expr; + Expression expr,expr2; + int operator; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case INCR: case DECR: @@ -3346,15 +3334,15 @@ final ArrayList list = new ArrayList(); switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case INCR: jj_consume_token(INCR); - expr = new PostfixedUnaryExpression(expr, + {if (true) return new PostfixedUnaryExpression(expr, OperatorIds.PLUS_PLUS, - SimpleCharStream.getPosition()); + SimpleCharStream.getPosition());} break; case DECR: jj_consume_token(DECR); - expr = new PostfixedUnaryExpression(expr, + {if (true) return new PostfixedUnaryExpression(expr, OperatorIds.MINUS_MINUS, - SimpleCharStream.getPosition()); + SimpleCharStream.getPosition());} break; case ASSIGN: case PLUSASSIGN: @@ -3369,8 +3357,9 @@ final ArrayList list = new ArrayList(); case TILDEEQUAL: case LSHIFTASSIGN: case RSIGNEDSHIFTASSIGN: - AssignmentOperator(); - Expression(); + operator = AssignmentOperator(); + expr2 = Expression(); + {if (true) return new BinaryExpression(expr,expr2,operator);} break; default: jj_la1[89] = jj_gen; @@ -3382,6 +3371,7 @@ final ArrayList list = new ArrayList(); jj_la1[90] = jj_gen; ; } + {if (true) return expr;} break; default: jj_la1[91] = jj_gen; @@ -3462,7 +3452,9 @@ final ArrayList list = new ArrayList(); } try { jj_consume_token(RBRACE); - {if (true) return (AbstractCase[]) cases.toArray();} + AbstractCase[] abcase = new AbstractCase[cases.size()]; + cases.toArray(abcase); + {if (true) return abcase;} } catch (ParseException e) { errorMessage = "'}' expected"; errorLevel = ERROR; @@ -3517,7 +3509,9 @@ final ArrayList list = new ArrayList(); } try { jj_consume_token(SEMICOLON); - {if (true) return (AbstractCase[]) cases.toArray();} + AbstractCase[] abcase = new AbstractCase[cases.size()]; + cases.toArray(abcase); + {if (true) return abcase;} } catch (ParseException e) { errorMessage = "';' expected after 'endswitch' keyword"; errorLevel = ERROR; @@ -3647,10 +3641,12 @@ final ArrayList list = new ArrayList(); jj_la1[97] = jj_gen; ; } - if (expr == null) {//it's a default - {if (true) return new DefaultCase((Statement[]) stmts.toArray(),pos,SimpleCharStream.getPosition());} + Statement[] stmtsArray = new Statement[stmts.size()]; + stmts.toArray(stmtsArray); + if (expr == null) {//it's a default + {if (true) return new DefaultCase(stmtsArray,pos,SimpleCharStream.getPosition());} } - {if (true) return new Case(expr,(Statement[]) stmts.toArray(),pos,SimpleCharStream.getPosition());} + {if (true) return new Case(expr,stmtsArray,pos,SimpleCharStream.getPosition());} throw new Error("Missing return statement in function"); } @@ -3661,7 +3657,6 @@ final ArrayList list = new ArrayList(); * @return the if it was a case and null if not */ static final public Expression SwitchLabel() throws ParseException { - final Token token; final Expression expr; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case CASE: @@ -3791,14 +3786,19 @@ final ArrayList list = new ArrayList(); static final public IfStatement IfStatement0(Expression condition, final int start,final int end) throws ParseException { Statement statement; + Statement stmt; + final Statement[] statementsArray; ElseIf elseifStatement; Else elseStatement = null; - ArrayList stmts = new ArrayList(); - ArrayList elseifs = new ArrayList(); + ArrayList stmts; + final ArrayList elseIfList = new ArrayList(); + ElseIf[] elseIfs; int pos = SimpleCharStream.getPosition(); + int endStatements; switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case COLON: jj_consume_token(COLON); + stmts = new ArrayList(); label_32: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { @@ -3901,6 +3901,7 @@ final ArrayList list = new ArrayList(); throw new ParseException(); } } + endStatements = SimpleCharStream.getPosition(); label_33: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { @@ -3912,7 +3913,7 @@ final ArrayList list = new ArrayList(); break label_33; } elseifStatement = ElseIfStatementColon(); - elseifs.add(elseifStatement); + elseIfList.add(elseifStatement); } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ELSE: @@ -3943,11 +3944,6 @@ final ArrayList list = new ArrayList(); } try { jj_consume_token(SEMICOLON); - {if (true) return new IfStatement(condition, - (ElseIf[]) elseifs.toArray(), - elseStatement, - pos, - SimpleCharStream.getPosition());} } catch (ParseException e) { errorMessage = "';' expected after 'endif' keyword"; errorLevel = ERROR; @@ -3955,6 +3951,25 @@ final ArrayList list = new ArrayList(); errorEnd = jj_input_stream.getPosition() + 1; {if (true) throw e;} } + elseIfs = new ElseIf[elseIfList.size()]; + elseIfList.toArray(elseIfs); + if (stmts.size() == 1) { + {if (true) return new IfStatement(condition, + (Statement) stmts.get(0), + elseIfs, + elseStatement, + pos, + SimpleCharStream.getPosition());} + } else { + statementsArray = new Statement[stmts.size()]; + stmts.toArray(statementsArray); + {if (true) return new IfStatement(condition, + new Block(statementsArray,pos,endStatements), + elseIfs, + elseStatement, + pos, + SimpleCharStream.getPosition());} + } break; case PHPEND: case IF: @@ -4036,17 +4051,16 @@ final ArrayList list = new ArrayList(); case LBRACE: case SEMICOLON: case DOLLAR_ID: - statement = Statement(); + stmt = Statement(); break; case PHPEND: - statement = htmlBlock(); + stmt = htmlBlock(); break; default: jj_la1[104] = jj_gen; jj_consume_token(-1); throw new ParseException(); } - stmts.add(statement); label_34: while (true) { switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { @@ -4058,7 +4072,7 @@ final ArrayList list = new ArrayList(); break label_34; } elseifStatement = ElseIfStatement(); - elseifs.add(elseifStatement); + elseIfList.add(elseifStatement); } switch ((jj_ntk==-1)?jj_ntk():jj_ntk) { case ELSE: @@ -4082,11 +4096,14 @@ final ArrayList list = new ArrayList(); jj_la1[106] = jj_gen; ; } - {if (true) return new IfStatement(condition, - (ElseIf[]) elseifs.toArray(), - elseStatement, - pos, - SimpleCharStream.getPosition());} + elseIfs = new ElseIf[elseIfList.size()]; + elseIfList.toArray(elseIfs); + {if (true) return new IfStatement(condition, + stmt, + elseIfs, + elseStatement, + pos, + SimpleCharStream.getPosition());} break; default: jj_la1[107] = jj_gen; @@ -4206,7 +4223,9 @@ final ArrayList list = new ArrayList(); throw new ParseException(); } } - {if (true) return new ElseIf(condition,(Statement[]) list.toArray(),pos,SimpleCharStream.getPosition());} + Statement[] stmtsArray = new Statement[list.size()]; + list.toArray(stmtsArray); + {if (true) return new ElseIf(condition,stmtsArray ,pos,SimpleCharStream.getPosition());} throw new Error("Missing return statement in function"); } @@ -4318,7 +4337,9 @@ final ArrayList list = new ArrayList(); throw new ParseException(); } } - {if (true) return new Else((Statement[]) list.toArray(),pos,SimpleCharStream.getPosition());} + Statement[] stmtsArray = new Statement[list.size()]; + list.toArray(stmtsArray); + {if (true) return new Else(stmtsArray,pos,SimpleCharStream.getPosition());} throw new Error("Missing return statement in function"); } @@ -4331,7 +4352,9 @@ final ArrayList list = new ArrayList(); condition = Condition("elseif"); statement = Statement(); list.add(statement);/*todo:do better*/ - {if (true) return new ElseIf(condition,(Statement[]) list.toArray(),pos,SimpleCharStream.getPosition());} + Statement[] stmtsArray = new Statement[list.size()]; + list.toArray(stmtsArray); + {if (true) return new ElseIf(condition,stmtsArray,pos,SimpleCharStream.getPosition());} throw new Error("Missing return statement in function"); } @@ -4425,7 +4448,9 @@ final ArrayList list = new ArrayList(); } try { jj_consume_token(SEMICOLON); - {if (true) return new Block((Statement[]) stmts.toArray(),pos,SimpleCharStream.getPosition());} + Statement[] stmtsArray = new Statement[stmts.size()]; + stmts.toArray(stmtsArray); + {if (true) return new Block(stmtsArray,pos,SimpleCharStream.getPosition());} } catch (ParseException e) { errorMessage = "';' expected after 'endwhile' keyword"; errorLevel = ERROR; @@ -4508,7 +4533,6 @@ final ArrayList list = new ArrayList(); static final public ForeachStatement ForeachStatement() throws ParseException { Statement statement; Expression expression; - final StringBuffer buff = new StringBuffer(); final int pos = SimpleCharStream.getPosition(); ArrayVariableDeclaration variable; jj_consume_token(FOREACH); @@ -4772,7 +4796,9 @@ final int startBlock, endBlock; } try { jj_consume_token(SEMICOLON); - {if (true) return new ForStatement(initializations,condition,increments,new Block((Statement[])list.toArray(),startBlock,endBlock),pos,SimpleCharStream.getPosition());} + Statement[] stmtsArray = new Statement[list.size()]; + list.toArray(stmtsArray); + {if (true) return new ForStatement(initializations,condition,increments,new Block(stmtsArray,startBlock,endBlock),pos,SimpleCharStream.getPosition());} } catch (ParseException e) { errorMessage = "';' expected after 'endfor' keyword"; errorLevel = ERROR; @@ -4834,7 +4860,9 @@ final int startBlock, endBlock; StatementExpression(); list.add(expr); } - {if (true) return (Statement[]) list.toArray();} + Statement[] stmtsArray = new Statement[list.size()]; + list.toArray(stmtsArray); + {if (true) return stmtsArray;} throw new Error("Missing return statement in function"); } @@ -4984,6 +5012,240 @@ final int startBlock, endBlock; return retval; } + static final private boolean jj_3R_82() { + if (jj_scan_token(INTEGER)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_44() { + if (jj_scan_token(ARRAY)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_184() { + if (jj_scan_token(ARRAY)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_81() { + if (jj_scan_token(INT)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_183() { + if (jj_3R_52()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_80() { + if (jj_scan_token(FLOAT)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_85() { + if (jj_scan_token(LIST)) 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; + Token xsp; + xsp = jj_scanpos; + if (jj_3R_99()) jj_scanpos = xsp; + else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + while (true) { + xsp = jj_scanpos; + if (jj_3R_100()) { 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; + xsp = jj_scanpos; + if (jj_3R_101()) jj_scanpos = xsp; + else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_167() { + 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_183()) { + jj_scanpos = xsp; + if (jj_3R_184()) 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_scan_token(RPAREN)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + if (jj_3R_139()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_79() { + if (jj_scan_token(DOUBLE)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_43() { + if (jj_3R_52()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_78() { + if (jj_scan_token(REAL)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_77() { + if (jj_scan_token(BOOLEAN)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_84() { + if (jj_scan_token(PRINT)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + if (jj_3R_45()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_76() { + if (jj_scan_token(BOOL)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3_4() { + 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_43()) { + jj_scanpos = xsp; + if (jj_3R_44()) 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_scan_token(RPAREN)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_75() { + if (jj_scan_token(STRING)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_52() { + Token xsp; + xsp = jj_scanpos; + 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; + return false; + } + + static final private boolean jj_3R_165() { + if (jj_scan_token(LPAREN)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + if (jj_3R_45()) 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; + } + + static final private boolean jj_3R_164() { + if (jj_3R_169()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_163() { + if (jj_3R_168()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_162() { + if (jj_3R_167()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_158() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_161()) { + jj_scanpos = xsp; + if (jj_3R_162()) { + jj_scanpos = xsp; + if (jj_3R_163()) { + jj_scanpos = xsp; + if (jj_3R_164()) { + jj_scanpos = xsp; + if (jj_3R_165()) 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; + return false; + } + + static final private boolean jj_3R_161() { + if (jj_scan_token(BANG)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + if (jj_3R_139()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_160() { + if (jj_scan_token(DECR)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_159() { + if (jj_scan_token(INCR)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + static final private boolean jj_3R_157() { Token xsp; xsp = jj_scanpos; @@ -5132,6 +5394,14 @@ final int startBlock, endBlock; return false; } + static final private boolean jj_3R_87() { + if (jj_scan_token(ASSIGN)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + if (jj_3R_45()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + static final private boolean jj_3R_134() { if (jj_3R_139()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5181,10 +5451,8 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_87() { - if (jj_scan_token(ASSIGN)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_45()) return true; + static final private boolean jj_3_7() { + if (jj_3R_46()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } @@ -5195,12 +5463,6 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3_7() { - if (jj_3R_46()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - static final private boolean jj_3_2() { if (jj_scan_token(COMMA)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5209,20 +5471,6 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_138() { - if (jj_scan_token(RUNSIGNEDSHIFT)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_201() { - if (jj_scan_token(ARRAYASSIGN)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_45()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - static final private boolean jj_3R_197() { if (jj_3R_41()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5235,6 +5483,22 @@ final int startBlock, endBlock; return false; } + static final private boolean jj_3R_57() { + if (jj_3R_50()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + Token xsp; + xsp = jj_scanpos; + if (jj_3R_87()) jj_scanpos = xsp; + else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_138() { + if (jj_scan_token(RUNSIGNEDSHIFT)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + static final private boolean jj_3R_137() { if (jj_scan_token(RSIGNEDSHIFT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5298,6 +5562,26 @@ final int startBlock, endBlock; return false; } + static final private boolean jj_3R_58() { + if (jj_scan_token(COMMA)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + if (jj_3R_57()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_47() { + if (jj_3R_57()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_58()) { jj_scanpos = xsp; break; } + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + } + return false; + } + static final private boolean jj_3R_133() { if (jj_scan_token(GE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5316,6 +5600,14 @@ final int startBlock, endBlock; return false; } + static final private boolean jj_3R_201() { + if (jj_scan_token(ARRAYASSIGN)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + if (jj_3R_45()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + static final private boolean jj_3R_130() { if (jj_scan_token(LT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5363,16 +5655,6 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_57() { - if (jj_3R_50()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - Token xsp; - xsp = jj_scanpos; - if (jj_3R_87()) jj_scanpos = xsp; - else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - static final private boolean jj_3R_203() { if (jj_scan_token(COMMA)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5393,23 +5675,9 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_58() { - if (jj_scan_token(COMMA)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_57()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_47() { - if (jj_3R_57()) return true; + static final private boolean jj_3R_127() { + if (jj_scan_token(TRIPLEEQUAL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_58()) { jj_scanpos = xsp; break; } - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - } return false; } @@ -5419,12 +5687,6 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_127() { - if (jj_scan_token(TRIPLEEQUAL)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - static final private boolean jj_3R_126() { if (jj_scan_token(BANGDOUBLEEQUAL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5449,24 +5711,6 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_93() { - if (jj_3R_52()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_199() { - 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_200()) 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; - } - static final private boolean jj_3R_120() { Token xsp; xsp = jj_scanpos; @@ -5489,6 +5733,12 @@ final int startBlock, endBlock; return false; } + static final private boolean jj_3R_93() { + if (jj_3R_52()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + static final private boolean jj_3R_117() { if (jj_3R_119()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5511,20 +5761,20 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_91() { - if (jj_scan_token(DOLLAR_ID)) return true; + static final private boolean jj_3R_199() { + if (jj_scan_token(LPAREN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_177() { - if (jj_scan_token(NULL)) return true; + Token xsp; + xsp = jj_scanpos; + if (jj_3R_200()) 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; } - static final private boolean jj_3R_176() { - if (jj_scan_token(FALSE)) return true; + static final private boolean jj_3R_91() { + if (jj_scan_token(DOLLAR_ID)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } @@ -5537,8 +5787,8 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_175() { - if (jj_scan_token(TRUE)) return true; + static final private boolean jj_3R_177() { + if (jj_scan_token(NULL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } @@ -5551,8 +5801,8 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_174() { - if (jj_scan_token(STRING_LITERAL)) return true; + static final private boolean jj_3R_176() { + if (jj_scan_token(FALSE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } @@ -5569,6 +5819,18 @@ final int startBlock, endBlock; return false; } + static final private boolean jj_3R_175() { + if (jj_scan_token(TRUE)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_174() { + if (jj_scan_token(STRING_LITERAL)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + static final private boolean jj_3R_173() { if (jj_scan_token(FLOATING_POINT_LITERAL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5604,6 +5866,16 @@ final int startBlock, endBlock; return false; } + static final private boolean jj_3R_89() { + if (jj_scan_token(IDENTIFIER)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + Token xsp; + xsp = jj_scanpos; + if (jj_3R_108()) jj_scanpos = xsp; + else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + static final private boolean jj_3R_116() { if (jj_scan_token(XOR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5612,6 +5884,18 @@ final int startBlock, endBlock; return false; } + static final private boolean jj_3R_113() { + if (jj_3R_115()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + Token xsp; + while (true) { + xsp = jj_scanpos; + if (jj_3R_116()) { jj_scanpos = xsp; break; } + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + } + return false; + } + static final private boolean jj_3R_92() { if (jj_3R_45()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5629,28 +5913,6 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_89() { - if (jj_scan_token(IDENTIFIER)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - Token xsp; - xsp = jj_scanpos; - if (jj_3R_108()) jj_scanpos = xsp; - else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_113() { - if (jj_3R_115()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - Token xsp; - while (true) { - xsp = jj_scanpos; - if (jj_3R_116()) { jj_scanpos = xsp; break; } - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - } - return false; - } - static final private boolean jj_3R_88() { if (jj_scan_token(LBRACE)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5678,24 +5940,20 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_98() { - if (jj_scan_token(LBRACE)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_45()) return true; + static final private boolean jj_3R_46() { + if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_scan_token(RBRACE)) return true; + if (jj_scan_token(COLON)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_49() { - if (jj_scan_token(LBRACKET)) return true; + static final private boolean jj_3R_98() { + 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_60()) jj_scanpos = xsp; - else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_scan_token(RBRACKET)) return true; + if (jj_3R_45()) return true; + 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; } @@ -5720,38 +5978,37 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_95() { - if (jj_scan_token(DOLLAR)) return true; + static final private boolean jj_3R_49() { + if (jj_scan_token(LBRACKET)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_59()) return true; + Token xsp; + xsp = jj_scanpos; + if (jj_3R_60()) jj_scanpos = xsp; + else 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; } - static final private boolean jj_3R_110() { - if (jj_scan_token(DOT)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_109()) return true; + static final private boolean jj_3_8() { + if (jj_3R_47()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_48() { - if (jj_scan_token(CLASSACCESS)) return true; + static final private boolean jj_3R_95() { + if (jj_scan_token(DOLLAR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; if (jj_3R_59()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_40() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_48()) { - jj_scanpos = xsp; - if (jj_3R_49()) return true; + static final private boolean jj_3R_110() { + if (jj_scan_token(DOT)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + if (jj_3R_109()) 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; } @@ -5767,14 +6024,6 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_46() { - if (jj_scan_token(IDENTIFIER)) 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; - return false; - } - static final private boolean jj_3R_94() { if (jj_scan_token(DOLLAR_ID)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -5796,51 +6045,70 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_196() { - if (jj_3R_40()) return true; + static final private boolean jj_3R_48() { + if (jj_scan_token(CLASSACCESS)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + if (jj_3R_59()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } + static final private boolean jj_3R_40() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_48()) { + jj_scanpos = xsp; + if (jj_3R_49()) 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; + } + static final private boolean jj_3R_112() { if (jj_scan_token(_ANDL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_195() { - if (jj_3R_199()) return true; + static final private boolean jj_3R_111() { + if (jj_scan_token(AND_AND)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_188() { + static final private boolean jj_3R_196() { + if (jj_3R_40()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_105() { Token xsp; xsp = jj_scanpos; - if (jj_3R_195()) { + if (jj_3R_111()) { jj_scanpos = xsp; - if (jj_3R_196()) return true; + if (jj_3R_112()) 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_104()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_111() { - if (jj_scan_token(AND_AND)) return true; + static final private boolean jj_3R_195() { + if (jj_3R_199()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_105() { + static final private boolean jj_3R_188() { Token xsp; xsp = jj_scanpos; - if (jj_3R_111()) { + if (jj_3R_195()) { jj_scanpos = xsp; - if (jj_3R_112()) return true; + if (jj_3R_196()) 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_104()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } @@ -5868,44 +6136,44 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_187() { - if (jj_3R_50()) return true; + static final private boolean jj_3_1() { + if (jj_3R_40()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_186() { - if (jj_scan_token(IDENTIFIER)) return true; + static final private boolean jj_3R_187() { + if (jj_3R_50()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_178() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_186()) { - jj_scanpos = xsp; - if (jj_3R_187()) return true; + static final private boolean jj_3R_107() { + if (jj_scan_token(_ORL)) 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; } - static final private boolean jj_3_1() { - if (jj_3R_40()) return true; + static final private boolean jj_3R_106() { + if (jj_scan_token(OR_OR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_107() { - if (jj_scan_token(_ORL)) return true; + static final private boolean jj_3R_186() { + if (jj_scan_token(IDENTIFIER)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_106() { - if (jj_scan_token(OR_OR)) return true; + static final private boolean jj_3R_178() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_186()) { + jj_scanpos = xsp; + if (jj_3R_187()) 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; } @@ -5956,22 +6224,14 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_191() { - if (jj_3R_50()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_190() { - if (jj_scan_token(NEW)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_178()) return true; + static final private boolean jj_3R_74() { + if (jj_scan_token(TILDEEQUAL)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_74() { - if (jj_scan_token(TILDEEQUAL)) return true; + static final private boolean jj_3R_191() { + if (jj_3R_50()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } @@ -5988,28 +6248,16 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_189() { - if (jj_scan_token(IDENTIFIER)) return true; + static final private boolean jj_3R_71() { + if (jj_scan_token(XORASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_180() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_189()) { - jj_scanpos = xsp; - if (jj_3R_190()) { - jj_scanpos = xsp; - if (jj_3R_191()) return true; + static final private boolean jj_3R_190() { + if (jj_scan_token(NEW)) 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; - } - - static final private boolean jj_3R_71() { - if (jj_scan_token(XORASSIGN)) return true; + if (jj_3R_178()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } @@ -6032,6 +6280,26 @@ final int startBlock, endBlock; return false; } + static final private boolean jj_3R_189() { + if (jj_scan_token(IDENTIFIER)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + + static final private boolean jj_3R_180() { + Token xsp; + xsp = jj_scanpos; + if (jj_3R_189()) { + jj_scanpos = xsp; + if (jj_3R_190()) { + jj_scanpos = xsp; + if (jj_3R_191()) 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; + } + static final private boolean jj_3R_67() { if (jj_scan_token(MINUSASSIGN)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -6112,12 +6380,6 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3_8() { - if (jj_3R_47()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - static final private boolean jj_3R_182() { if (jj_scan_token(ARRAY)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -6156,6 +6418,14 @@ final int startBlock, endBlock; return false; } + static final private boolean jj_3R_101() { + if (jj_scan_token(ASSIGN)) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + if (jj_3R_45()) return true; + if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + return false; + } + static final private boolean jj_3R_42() { if (jj_3R_50()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -6166,10 +6436,8 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_101() { - if (jj_scan_token(ASSIGN)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_45()) return true; + static final private boolean jj_3_3() { + if (jj_3R_42()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } @@ -6204,12 +6472,6 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3_3() { - if (jj_3R_42()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - static final private boolean jj_3R_56() { if (jj_3R_86()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -6222,35 +6484,12 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_194() { - if (jj_scan_token(DECR)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - static final private boolean jj_3R_54() { if (jj_3R_85()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_193() { - if (jj_scan_token(INCR)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_185() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_193()) { - jj_scanpos = xsp; - if (jj_3R_194()) 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; - } - static final private boolean jj_3R_45() { Token xsp; xsp = jj_scanpos; @@ -6274,16 +6513,6 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_168() { - if (jj_3R_166()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - Token xsp; - xsp = jj_scanpos; - if (jj_3R_185()) jj_scanpos = xsp; - else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - static final private boolean jj_3R_100() { if (jj_scan_token(COMMA)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; @@ -6292,248 +6521,47 @@ final int startBlock, endBlock; return false; } - static final private boolean jj_3R_99() { - if (jj_3R_50()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_83() { - if (jj_scan_token(OBJECT)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_44() { - if (jj_scan_token(ARRAY)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_184() { - if (jj_scan_token(ARRAY)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_82() { - if (jj_scan_token(INTEGER)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_183() { - if (jj_3R_52()) return true; + static final private boolean jj_3R_194() { + if (jj_scan_token(DECR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_81() { - if (jj_scan_token(INT)) return true; + static final private boolean jj_3R_193() { + if (jj_scan_token(INCR)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_167() { - if (jj_scan_token(LPAREN)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; + static final private boolean jj_3R_185() { Token xsp; xsp = jj_scanpos; - if (jj_3R_183()) { + if (jj_3R_193()) { jj_scanpos = xsp; - if (jj_3R_184()) return true; + if (jj_3R_194()) 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_scan_token(RPAREN)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_139()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_80() { - if (jj_scan_token(FLOAT)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_43() { - if (jj_3R_52()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_79() { - if (jj_scan_token(DOUBLE)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_85() { - if (jj_scan_token(LIST)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_scan_token(LPAREN)) return true; + static final private boolean jj_3R_168() { + if (jj_3R_166()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; Token xsp; xsp = jj_scanpos; - if (jj_3R_99()) jj_scanpos = xsp; - else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - while (true) { - xsp = jj_scanpos; - if (jj_3R_100()) { 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; - xsp = jj_scanpos; - if (jj_3R_101()) jj_scanpos = xsp; + if (jj_3R_185()) jj_scanpos = xsp; else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_78() { - if (jj_scan_token(REAL)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_77() { - if (jj_scan_token(BOOLEAN)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3_4() { - 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_43()) { - jj_scanpos = xsp; - if (jj_3R_44()) 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_scan_token(RPAREN)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_76() { - if (jj_scan_token(BOOL)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_84() { - if (jj_scan_token(PRINT)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_45()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_75() { - if (jj_scan_token(STRING)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_52() { - Token xsp; - xsp = jj_scanpos; - 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; - return false; - } - - static final private boolean jj_3R_165() { - if (jj_scan_token(LPAREN)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_45()) 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; - } - - static final private boolean jj_3R_164() { - if (jj_3R_169()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_163() { - if (jj_3R_168()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_162() { - if (jj_3R_167()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_158() { - Token xsp; - xsp = jj_scanpos; - if (jj_3R_161()) { - jj_scanpos = xsp; - if (jj_3R_162()) { - jj_scanpos = xsp; - if (jj_3R_163()) { - jj_scanpos = xsp; - if (jj_3R_164()) { - jj_scanpos = xsp; - if (jj_3R_165()) 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; - return false; - } - - static final private boolean jj_3R_161() { - if (jj_scan_token(BANG)) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - if (jj_3R_139()) return true; - if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; - return false; - } - - static final private boolean jj_3R_160() { - if (jj_scan_token(DECR)) return true; + static final private boolean jj_3R_99() { + if (jj_3R_50()) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; } - static final private boolean jj_3R_159() { - if (jj_scan_token(INCR)) return true; + static final private boolean jj_3R_83() { + if (jj_scan_token(OBJECT)) return true; if (jj_la == 0 && jj_scanpos == jj_lastpos) return false; return false; }