1 /* Generated By:JavaCC: Do not edit this line. PHPParser.java */
4 import org.eclipse.core.resources.IFile;
5 import org.eclipse.core.resources.IMarker;
6 import org.eclipse.core.runtime.CoreException;
7 import org.eclipse.ui.texteditor.MarkerUtilities;
8 import org.eclipse.jface.preference.IPreferenceStore;
10 import java.util.Hashtable;
11 import java.io.StringReader;
12 import java.text.MessageFormat;
14 import net.sourceforge.phpeclipse.actions.PHPStartApacheAction;
15 import net.sourceforge.phpeclipse.PHPeclipsePlugin;
16 import net.sourceforge.phpdt.internal.compiler.parser.PHPOutlineInfo;
20 * This php parser is inspired by the Java 1.2 grammar example
21 * given with JavaCC. You can get JavaCC at http://www.webgain.com
22 * You can test the parser with the PHPParserTestCase2.java
23 * @author Matthieu Casanova
25 public class PHPParser extends PHPParserSuperclass implements PHPParserConstants {
27 private static PHPParser me;
29 private static IFile fileToParse;
31 private static final String PARSE_ERROR_STRING = "Parse error"; //$NON-NLS-1$
32 private static final String PARSE_WARNING_STRING = "Warning"; //$NON-NLS-1$
33 public static final int ERROR = 2;
34 public static final int WARNING = 1;
35 public static final int INFO = 0;
36 PHPOutlineInfo outlineInfo;
37 private static int errorLevel = ERROR;
38 private static String errorMessage;
43 public static PHPParser getInstance(IFile fileToParse) {
45 me = new PHPParser(fileToParse);
47 me.setFileToParse(fileToParse);
52 public void setFileToParse(IFile fileToParse) {
53 this.fileToParse = fileToParse;
56 public static PHPParser getInstance(java.io.Reader stream) {
58 me = new PHPParser(stream);
65 public PHPParser(IFile fileToParse) {
66 this(new StringReader(""));
67 this.fileToParse = fileToParse;
70 public void phpParserTester(String strEval) throws CoreException, ParseException {
71 PHPParserTokenManager.SwitchTo(PHPParserTokenManager.PHPPARSING);
72 StringReader stream = new StringReader(strEval);
73 if (jj_input_stream == null) {
74 jj_input_stream = new SimpleCharStream(stream, 1, 1);
76 ReInit(new StringReader(strEval));
80 public void htmlParserTester(String strEval) throws CoreException, ParseException {
81 StringReader stream = new StringReader(strEval);
82 if (jj_input_stream == null) {
83 jj_input_stream = new SimpleCharStream(stream, 1, 1);
89 public PHPOutlineInfo parseInfo(Object parent, String s) {
90 outlineInfo = new PHPOutlineInfo(parent);
91 StringReader stream = new StringReader(s);
92 if (jj_input_stream == null) {
93 jj_input_stream = new SimpleCharStream(stream, 1, 1);
98 } catch (ParseException e) {
99 if (errorMessage == null) {
100 PHPeclipsePlugin.log(e);
102 setMarker(errorMessage, e.currentToken.beginLine, errorLevel);
111 * Create marker for the parse error
113 private static void setMarker(String message, int lineNumber, int errorLevel) {
115 setMarker(fileToParse, message, lineNumber, errorLevel);
116 } catch (CoreException e) {
117 PHPeclipsePlugin.log(e);
121 public static void setMarker(IFile file, String message, int lineNumber, int errorLevel) throws CoreException {
123 Hashtable attributes = new Hashtable();
124 MarkerUtilities.setMessage(attributes, message);
125 switch (errorLevel) {
127 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_ERROR));
130 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_WARNING));
133 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_INFO));
136 MarkerUtilities.setLineNumber(attributes, lineNumber);
137 MarkerUtilities.createMarker(file, attributes, IMarker.PROBLEM);
142 * Create markers according to the external parser output
144 private static void createMarkers(String output, IFile file) throws CoreException {
145 // delete all markers
146 file.deleteMarkers(IMarker.PROBLEM, false, 0);
151 while ((brIndx = output.indexOf("<br />", indx)) != -1) {
152 // newer php error output (tested with 4.2.3)
153 scanLine(output, file, indx, brIndx);
158 while ((brIndx = output.indexOf("<br>", indx)) != -1) {
159 // older php error output (tested with 4.2.3)
160 scanLine(output, file, indx, brIndx);
166 private static void scanLine(String output, IFile file, int indx, int brIndx) throws CoreException {
168 StringBuffer lineNumberBuffer = new StringBuffer(10);
170 current = output.substring(indx, brIndx);
172 if (current.indexOf(PARSE_WARNING_STRING) != -1 || current.indexOf(PARSE_ERROR_STRING) != -1) {
173 int onLine = current.indexOf("on line <b>");
175 lineNumberBuffer.delete(0, lineNumberBuffer.length());
176 for (int i = onLine; i < current.length(); i++) {
177 ch = current.charAt(i);
178 if ('0' <= ch && '9' >= ch) {
179 lineNumberBuffer.append(ch);
183 int lineNumber = Integer.parseInt(lineNumberBuffer.toString());
185 Hashtable attributes = new Hashtable();
187 current = current.replaceAll("\n", "");
188 current = current.replaceAll("<b>", "");
189 current = current.replaceAll("</b>", "");
190 MarkerUtilities.setMessage(attributes, current);
192 if (current.indexOf(PARSE_ERROR_STRING) != -1)
193 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_ERROR));
194 else if (current.indexOf(PARSE_WARNING_STRING) != -1)
195 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_WARNING));
197 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_INFO));
198 MarkerUtilities.setLineNumber(attributes, lineNumber);
199 MarkerUtilities.createMarker(file, attributes, IMarker.PROBLEM);
204 public void parse(String s) throws CoreException {
205 ReInit(new StringReader(s));
208 } catch (ParseException e) {
209 PHPeclipsePlugin.log(e);
214 * Call the php parse command ( php -l -f <filename> )
215 * and create markers according to the external parser output
217 public static void phpExternalParse(IFile file) {
218 IPreferenceStore store = PHPeclipsePlugin.getDefault().getPreferenceStore();
219 String filename = file.getLocation().toString();
221 String[] arguments = { filename };
222 MessageFormat form = new MessageFormat(store.getString(PHPeclipsePlugin.EXTERNAL_PARSER_PREF));
223 String command = form.format(arguments);
225 String parserResult = PHPStartApacheAction.getParserOutput(command, "External parser: ");
228 // parse the buffer to find the errors and warnings
229 createMarkers(parserResult, file);
230 } catch (CoreException e) {
231 PHPeclipsePlugin.log(e);
235 public void parse() throws ParseException {
239 /*****************************************
240 * THE JAVA LANGUAGE GRAMMAR STARTS HERE *
241 *****************************************/
244 * Program structuring syntax follows.
246 static final public void phpTest() throws ParseException {
251 static final public void phpFile() throws ParseException {
254 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
262 jj_consume_token(PHPSTART);
264 jj_consume_token(PHPEND);
269 static final public void Php() throws ParseException {
272 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
296 case INTEGER_LITERAL:
297 case FLOATING_POINT_LITERAL:
321 static final public void ClassDeclaration() throws ParseException {
322 jj_consume_token(CLASS);
323 jj_consume_token(IDENTIFIER);
324 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
326 jj_consume_token(EXTENDS);
327 jj_consume_token(IDENTIFIER);
336 static final public void ClassBody() throws ParseException {
337 jj_consume_token(LBRACE);
340 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
349 ClassBodyDeclaration();
351 jj_consume_token(RBRACE);
354 static final public void ClassBodyDeclaration() throws ParseException {
355 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
364 jj_consume_token(-1);
365 throw new ParseException();
369 static final public void FieldDeclaration() throws ParseException {
370 jj_consume_token(VAR);
371 VariableDeclarator();
374 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
382 jj_consume_token(COMMA);
383 VariableDeclarator();
385 jj_consume_token(SEMICOLON);
388 static final public void VariableDeclarator() throws ParseException {
389 VariableDeclaratorId();
390 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
392 jj_consume_token(ASSIGN);
393 VariableInitializer();
401 static final public void VariableDeclaratorId() throws ParseException {
414 static final public void Variable() throws ParseException {
415 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
417 jj_consume_token(DOLLAR_ID);
420 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
428 jj_consume_token(LBRACE);
430 jj_consume_token(RBRACE);
434 jj_consume_token(DOLLAR);
439 jj_consume_token(-1);
440 throw new ParseException();
444 static final public void VariableName() throws ParseException {
445 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
447 jj_consume_token(LBRACE);
449 jj_consume_token(RBRACE);
452 jj_consume_token(IDENTIFIER);
455 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
463 jj_consume_token(LBRACE);
465 jj_consume_token(RBRACE);
469 jj_consume_token(DOLLAR);
474 jj_consume_token(-1);
475 throw new ParseException();
479 static final public void VariableInitializer() throws ParseException {
483 static final public void ArrayVariable() throws ParseException {
487 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
495 jj_consume_token(ARRAYASSIGN);
500 static final public void ArrayInitializer() throws ParseException {
501 jj_consume_token(LPAREN);
502 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
509 case INTEGER_LITERAL:
510 case FLOATING_POINT_LITERAL:
530 jj_consume_token(COMMA);
538 jj_consume_token(RPAREN);
541 static final public void MethodDeclaration() throws ParseException {
542 jj_consume_token(FUNCTION);
544 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
549 jj_consume_token(SEMICOLON);
553 jj_consume_token(-1);
554 throw new ParseException();
558 static final public void MethodDeclarator() throws ParseException {
559 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
561 jj_consume_token(BIT_AND);
567 jj_consume_token(IDENTIFIER);
571 static final public void FormalParameters() throws ParseException {
572 jj_consume_token(LPAREN);
573 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
580 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
588 jj_consume_token(COMMA);
596 jj_consume_token(RPAREN);
599 static final public void FormalParameter() throws ParseException {
600 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
602 jj_consume_token(BIT_AND);
608 VariableDeclarator();
611 static final public void Type() throws ParseException {
612 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
614 jj_consume_token(STRING);
617 jj_consume_token(BOOL);
620 jj_consume_token(BOOLEAN);
623 jj_consume_token(REAL);
626 jj_consume_token(DOUBLE);
629 jj_consume_token(FLOAT);
632 jj_consume_token(INT);
635 jj_consume_token(INTEGER);
639 jj_consume_token(-1);
640 throw new ParseException();
645 * Expression syntax follows.
647 static final public void Expression() throws ParseException {
648 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
657 case INTEGER_LITERAL:
658 case FLOATING_POINT_LITERAL:
670 ConditionalExpression();
671 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
683 case RSIGNEDSHIFTASSIGN:
684 case RUNSIGNEDSHIFTASSIGN:
685 AssignmentOperator();
695 jj_consume_token(-1);
696 throw new ParseException();
700 static final public void AssignmentOperator() throws ParseException {
701 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
703 jj_consume_token(ASSIGN);
706 jj_consume_token(STARASSIGN);
709 jj_consume_token(SLASHASSIGN);
712 jj_consume_token(REMASSIGN);
715 jj_consume_token(PLUSASSIGN);
718 jj_consume_token(MINUSASSIGN);
721 jj_consume_token(LSHIFTASSIGN);
723 case RSIGNEDSHIFTASSIGN:
724 jj_consume_token(RSIGNEDSHIFTASSIGN);
726 case RUNSIGNEDSHIFTASSIGN:
727 jj_consume_token(RUNSIGNEDSHIFTASSIGN);
730 jj_consume_token(ANDASSIGN);
733 jj_consume_token(XORASSIGN);
736 jj_consume_token(ORASSIGN);
739 jj_consume_token(DOTASSIGN);
743 jj_consume_token(-1);
744 throw new ParseException();
748 static final public void ConditionalExpression() throws ParseException {
749 ConditionalOrExpression();
750 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
752 jj_consume_token(HOOK);
754 jj_consume_token(COLON);
755 ConditionalExpression();
763 static final public void ConditionalOrExpression() throws ParseException {
764 ConditionalAndExpression();
767 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
776 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
778 jj_consume_token(SC_OR);
781 jj_consume_token(_ORL);
785 jj_consume_token(-1);
786 throw new ParseException();
788 ConditionalAndExpression();
792 static final public void ConditionalAndExpression() throws ParseException {
796 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
805 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
807 jj_consume_token(SC_AND);
810 jj_consume_token(_ANDL);
814 jj_consume_token(-1);
815 throw new ParseException();
821 static final public void ConcatExpression() throws ParseException {
822 InclusiveOrExpression();
825 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
833 jj_consume_token(DOT);
834 InclusiveOrExpression();
838 static final public void InclusiveOrExpression() throws ParseException {
839 ExclusiveOrExpression();
842 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
850 jj_consume_token(BIT_OR);
851 ExclusiveOrExpression();
855 static final public void ExclusiveOrExpression() throws ParseException {
859 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
867 jj_consume_token(XOR);
872 static final public void AndExpression() throws ParseException {
873 EqualityExpression();
876 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
884 jj_consume_token(BIT_AND);
885 EqualityExpression();
889 static final public void EqualityExpression() throws ParseException {
890 RelationalExpression();
893 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
902 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
904 jj_consume_token(EQ);
907 jj_consume_token(NE);
911 jj_consume_token(-1);
912 throw new ParseException();
914 RelationalExpression();
918 static final public void RelationalExpression() throws ParseException {
922 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
933 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
935 jj_consume_token(LT);
938 jj_consume_token(GT);
941 jj_consume_token(LE);
944 jj_consume_token(GE);
948 jj_consume_token(-1);
949 throw new ParseException();
955 static final public void ShiftExpression() throws ParseException {
956 AdditiveExpression();
959 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
969 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
971 jj_consume_token(LSHIFT);
974 jj_consume_token(RSIGNEDSHIFT);
977 jj_consume_token(RUNSIGNEDSHIFT);
981 jj_consume_token(-1);
982 throw new ParseException();
984 AdditiveExpression();
988 static final public void AdditiveExpression() throws ParseException {
989 MultiplicativeExpression();
992 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1001 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1003 jj_consume_token(PLUS);
1006 jj_consume_token(MINUS);
1009 jj_la1[38] = jj_gen;
1010 jj_consume_token(-1);
1011 throw new ParseException();
1013 MultiplicativeExpression();
1017 static final public void MultiplicativeExpression() throws ParseException {
1021 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1028 jj_la1[39] = jj_gen;
1031 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1033 jj_consume_token(STAR);
1036 jj_consume_token(SLASH);
1039 jj_consume_token(REM);
1042 jj_la1[40] = jj_gen;
1043 jj_consume_token(-1);
1044 throw new ParseException();
1050 static final public void UnaryExpression() throws ParseException {
1051 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1053 jj_consume_token(AT);
1058 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1060 jj_consume_token(PLUS);
1063 jj_consume_token(MINUS);
1066 jj_la1[41] = jj_gen;
1067 jj_consume_token(-1);
1068 throw new ParseException();
1073 PreIncrementExpression();
1076 PreDecrementExpression();
1083 case INTEGER_LITERAL:
1084 case FLOATING_POINT_LITERAL:
1085 case STRING_LITERAL:
1091 UnaryExpressionNotPlusMinus();
1094 jj_la1[42] = jj_gen;
1095 jj_consume_token(-1);
1096 throw new ParseException();
1100 static final public void PreIncrementExpression() throws ParseException {
1101 jj_consume_token(INCR);
1102 PrimaryExpression();
1105 static final public void PreDecrementExpression() throws ParseException {
1106 jj_consume_token(DECR);
1107 PrimaryExpression();
1110 static final public void UnaryExpressionNotPlusMinus() throws ParseException {
1111 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1113 jj_consume_token(BANG);
1117 jj_la1[43] = jj_gen;
1118 if (jj_2_3(2147483647)) {
1121 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1127 PostfixExpression();
1132 case INTEGER_LITERAL:
1133 case FLOATING_POINT_LITERAL:
1134 case STRING_LITERAL:
1138 jj_consume_token(LPAREN);
1140 jj_consume_token(RPAREN);
1143 jj_la1[44] = jj_gen;
1144 jj_consume_token(-1);
1145 throw new ParseException();
1151 static final public void CastExpression() throws ParseException {
1152 jj_consume_token(LPAREN);
1154 jj_consume_token(RPAREN);
1158 static final public void PostfixExpression() throws ParseException {
1159 PrimaryExpression();
1160 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1163 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1165 jj_consume_token(INCR);
1168 jj_consume_token(DECR);
1171 jj_la1[45] = jj_gen;
1172 jj_consume_token(-1);
1173 throw new ParseException();
1177 jj_la1[46] = jj_gen;
1182 static final public void PrimaryExpression() throws ParseException {
1184 jj_consume_token(IDENTIFIER);
1185 jj_consume_token(STATICCLASSACCESS);
1189 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1196 jj_la1[47] = jj_gen;
1202 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1210 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1217 jj_la1[48] = jj_gen;
1224 jj_consume_token(ARRAY);
1228 jj_la1[49] = jj_gen;
1229 jj_consume_token(-1);
1230 throw new ParseException();
1235 static final public void PrimaryPrefix() throws ParseException {
1236 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1238 jj_consume_token(IDENTIFIER);
1241 jj_consume_token(NEW);
1246 VariableDeclaratorId();
1249 jj_la1[50] = jj_gen;
1250 jj_consume_token(-1);
1251 throw new ParseException();
1255 static final public void ClassIdentifier() throws ParseException {
1256 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1258 jj_consume_token(IDENTIFIER);
1262 VariableDeclaratorId();
1265 jj_la1[51] = jj_gen;
1266 jj_consume_token(-1);
1267 throw new ParseException();
1271 static final public void PrimarySuffix() throws ParseException {
1272 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1281 jj_la1[52] = jj_gen;
1282 jj_consume_token(-1);
1283 throw new ParseException();
1287 static final public void VariableSuffix() throws ParseException {
1288 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1290 jj_consume_token(CLASSACCESS);
1294 jj_consume_token(LBRACKET);
1295 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1302 case INTEGER_LITERAL:
1303 case FLOATING_POINT_LITERAL:
1304 case STRING_LITERAL:
1318 jj_la1[53] = jj_gen;
1321 jj_consume_token(RBRACKET);
1324 jj_la1[54] = jj_gen;
1325 jj_consume_token(-1);
1326 throw new ParseException();
1330 static final public void Literal() throws ParseException {
1331 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1332 case INTEGER_LITERAL:
1333 jj_consume_token(INTEGER_LITERAL);
1335 case FLOATING_POINT_LITERAL:
1336 jj_consume_token(FLOATING_POINT_LITERAL);
1338 case STRING_LITERAL:
1339 jj_consume_token(STRING_LITERAL);
1349 jj_la1[55] = jj_gen;
1350 jj_consume_token(-1);
1351 throw new ParseException();
1355 static final public void BooleanLiteral() throws ParseException {
1356 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1358 jj_consume_token(TRUE);
1361 jj_consume_token(FALSE);
1364 jj_la1[56] = jj_gen;
1365 jj_consume_token(-1);
1366 throw new ParseException();
1370 static final public void NullLiteral() throws ParseException {
1371 jj_consume_token(NULL);
1374 static final public void Arguments() throws ParseException {
1375 jj_consume_token(LPAREN);
1376 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1383 case INTEGER_LITERAL:
1384 case FLOATING_POINT_LITERAL:
1385 case STRING_LITERAL:
1399 jj_la1[57] = jj_gen;
1402 jj_consume_token(RPAREN);
1405 static final public void ArgumentList() throws ParseException {
1409 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1414 jj_la1[58] = jj_gen;
1417 jj_consume_token(COMMA);
1423 * Statement syntax follows.
1425 static final public void Statement() throws ParseException {
1428 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1430 jj_consume_token(SEMICOLON);
1433 jj_consume_token(127);
1436 jj_la1[59] = jj_gen;
1437 jj_consume_token(-1);
1438 throw new ParseException();
1440 } else if (jj_2_6(2)) {
1443 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1457 StatementExpression();
1459 jj_consume_token(SEMICOLON);
1460 } catch (ParseException e) {
1461 errorMessage = "';' expected after expression";
1463 {if (true) throw e;}
1485 ContinueStatement();
1506 jj_la1[60] = jj_gen;
1507 jj_consume_token(-1);
1508 throw new ParseException();
1513 static final public void IncludeStatement() throws ParseException {
1514 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1516 jj_consume_token(REQUIRE);
1518 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1520 jj_consume_token(SEMICOLON);
1523 jj_consume_token(127);
1526 jj_la1[61] = jj_gen;
1527 jj_consume_token(-1);
1528 throw new ParseException();
1532 jj_consume_token(REQUIRE_ONCE);
1534 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1536 jj_consume_token(SEMICOLON);
1539 jj_consume_token(127);
1542 jj_la1[62] = jj_gen;
1543 jj_consume_token(-1);
1544 throw new ParseException();
1548 jj_consume_token(INCLUDE);
1550 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1552 jj_consume_token(SEMICOLON);
1555 jj_consume_token(127);
1558 jj_la1[63] = jj_gen;
1559 jj_consume_token(-1);
1560 throw new ParseException();
1564 jj_consume_token(INCLUDE_ONCE);
1566 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1568 jj_consume_token(SEMICOLON);
1571 jj_consume_token(127);
1574 jj_la1[64] = jj_gen;
1575 jj_consume_token(-1);
1576 throw new ParseException();
1580 jj_la1[65] = jj_gen;
1581 jj_consume_token(-1);
1582 throw new ParseException();
1586 static final public void PrintExpression() throws ParseException {
1587 jj_consume_token(PRINT);
1591 static final public void EchoStatement() throws ParseException {
1592 jj_consume_token(ECHO);
1596 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1601 jj_la1[66] = jj_gen;
1604 jj_consume_token(COMMA);
1608 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1610 jj_consume_token(SEMICOLON);
1613 jj_consume_token(127);
1616 jj_la1[67] = jj_gen;
1617 jj_consume_token(-1);
1618 throw new ParseException();
1620 } catch (ParseException e) {
1621 errorMessage = "';' expected after 'echo' statement";
1623 {if (true) throw e;}
1627 static final public void GlobalStatement() throws ParseException {
1628 jj_consume_token(GLOBAL);
1629 VariableDeclaratorId();
1632 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1637 jj_la1[68] = jj_gen;
1640 jj_consume_token(COMMA);
1641 VariableDeclaratorId();
1643 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1645 jj_consume_token(SEMICOLON);
1648 jj_consume_token(127);
1651 jj_la1[69] = jj_gen;
1652 jj_consume_token(-1);
1653 throw new ParseException();
1657 static final public void StaticStatement() throws ParseException {
1658 jj_consume_token(STATIC);
1659 VariableDeclarator();
1662 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1667 jj_la1[70] = jj_gen;
1670 jj_consume_token(COMMA);
1671 VariableDeclarator();
1673 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1675 jj_consume_token(SEMICOLON);
1678 jj_consume_token(127);
1681 jj_la1[71] = jj_gen;
1682 jj_consume_token(-1);
1683 throw new ParseException();
1687 static final public void LabeledStatement() throws ParseException {
1688 jj_consume_token(IDENTIFIER);
1689 jj_consume_token(COLON);
1693 static final public void Block() throws ParseException {
1694 jj_consume_token(LBRACE);
1697 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1721 case INTEGER_LITERAL:
1722 case FLOATING_POINT_LITERAL:
1723 case STRING_LITERAL:
1739 jj_la1[72] = jj_gen;
1744 jj_consume_token(RBRACE);
1747 static final public void BlockStatement() throws ParseException {
1748 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1770 case INTEGER_LITERAL:
1771 case FLOATING_POINT_LITERAL:
1772 case STRING_LITERAL:
1791 MethodDeclaration();
1794 jj_la1[73] = jj_gen;
1795 jj_consume_token(-1);
1796 throw new ParseException();
1800 static final public void LocalVariableDeclaration() throws ParseException {
1801 VariableDeclarator();
1804 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1809 jj_la1[74] = jj_gen;
1812 jj_consume_token(COMMA);
1813 VariableDeclarator();
1817 static final public void EmptyStatement() throws ParseException {
1818 jj_consume_token(SEMICOLON);
1821 static final public void StatementExpression() throws ParseException {
1822 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1824 PreIncrementExpression();
1827 PreDecrementExpression();
1834 PrimaryExpression();
1835 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1849 case RSIGNEDSHIFTASSIGN:
1850 case RUNSIGNEDSHIFTASSIGN:
1851 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1853 jj_consume_token(INCR);
1856 jj_consume_token(DECR);
1869 case RSIGNEDSHIFTASSIGN:
1870 case RUNSIGNEDSHIFTASSIGN:
1871 AssignmentOperator();
1875 jj_la1[75] = jj_gen;
1876 jj_consume_token(-1);
1877 throw new ParseException();
1881 jj_la1[76] = jj_gen;
1886 jj_la1[77] = jj_gen;
1887 jj_consume_token(-1);
1888 throw new ParseException();
1892 static final public void SwitchStatement() throws ParseException {
1893 jj_consume_token(SWITCH);
1894 jj_consume_token(LPAREN);
1896 jj_consume_token(RPAREN);
1897 jj_consume_token(LBRACE);
1900 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1906 jj_la1[78] = jj_gen;
1912 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1936 case INTEGER_LITERAL:
1937 case FLOATING_POINT_LITERAL:
1938 case STRING_LITERAL:
1954 jj_la1[79] = jj_gen;
1960 jj_consume_token(RBRACE);
1963 static final public void SwitchLabel() throws ParseException {
1964 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1966 jj_consume_token(CASE);
1968 jj_consume_token(COLON);
1971 jj_consume_token(_DEFAULT);
1972 jj_consume_token(COLON);
1975 jj_la1[80] = jj_gen;
1976 jj_consume_token(-1);
1977 throw new ParseException();
1981 static final public void IfStatement() throws ParseException {
1982 jj_consume_token(IF);
1985 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1990 jj_la1[81] = jj_gen;
1993 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1995 jj_consume_token(ELSE);
1999 jj_la1[82] = jj_gen;
2004 static final public void Condition(String keyword) throws ParseException {
2006 jj_consume_token(LPAREN);
2007 } catch (ParseException e) {
2008 errorMessage = "'(' expected after " + keyword + " keyword";
2010 {if (true) throw e;}
2014 jj_consume_token(RPAREN);
2015 } catch (ParseException e) {
2016 errorMessage = "')' expected after " + keyword + " keyword";
2018 {if (true) throw e;}
2022 static final public void ElseIfStatement() throws ParseException {
2023 jj_consume_token(ELSEIF);
2024 Condition("elseif");
2028 static final public void WhileStatement() throws ParseException {
2029 jj_consume_token(WHILE);
2034 static final public void WhileStatement0() throws ParseException {
2035 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2037 jj_consume_token(COLON);
2040 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2062 case INTEGER_LITERAL:
2063 case FLOATING_POINT_LITERAL:
2064 case STRING_LITERAL:
2080 jj_la1[83] = jj_gen;
2085 jj_consume_token(ENDWHILE);
2086 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2088 jj_consume_token(SEMICOLON);
2091 jj_consume_token(127);
2094 jj_la1[84] = jj_gen;
2095 jj_consume_token(-1);
2096 throw new ParseException();
2120 case INTEGER_LITERAL:
2121 case FLOATING_POINT_LITERAL:
2122 case STRING_LITERAL:
2138 jj_la1[85] = jj_gen;
2139 jj_consume_token(-1);
2140 throw new ParseException();
2144 static final public void DoStatement() throws ParseException {
2145 jj_consume_token(DO);
2147 jj_consume_token(WHILE);
2149 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2151 jj_consume_token(SEMICOLON);
2154 jj_consume_token(127);
2157 jj_la1[86] = jj_gen;
2158 jj_consume_token(-1);
2159 throw new ParseException();
2163 static final public void ForStatement() throws ParseException {
2164 jj_consume_token(FOR);
2165 jj_consume_token(LPAREN);
2166 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2177 jj_la1[87] = jj_gen;
2180 jj_consume_token(SEMICOLON);
2181 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2188 case INTEGER_LITERAL:
2189 case FLOATING_POINT_LITERAL:
2190 case STRING_LITERAL:
2204 jj_la1[88] = jj_gen;
2207 jj_consume_token(SEMICOLON);
2208 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2219 jj_la1[89] = jj_gen;
2222 jj_consume_token(RPAREN);
2226 static final public void ForInit() throws ParseException {
2227 if (jj_2_7(2147483647)) {
2228 LocalVariableDeclaration();
2230 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2238 StatementExpressionList();
2241 jj_la1[90] = jj_gen;
2242 jj_consume_token(-1);
2243 throw new ParseException();
2248 static final public void StatementExpressionList() throws ParseException {
2249 StatementExpression();
2252 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2257 jj_la1[91] = jj_gen;
2260 jj_consume_token(COMMA);
2261 StatementExpression();
2265 static final public void ForUpdate() throws ParseException {
2266 StatementExpressionList();
2269 static final public void BreakStatement() throws ParseException {
2270 jj_consume_token(BREAK);
2271 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2273 jj_consume_token(IDENTIFIER);
2276 jj_la1[92] = jj_gen;
2279 jj_consume_token(SEMICOLON);
2282 static final public void ContinueStatement() throws ParseException {
2283 jj_consume_token(CONTINUE);
2284 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2286 jj_consume_token(IDENTIFIER);
2289 jj_la1[93] = jj_gen;
2292 jj_consume_token(SEMICOLON);
2295 static final public void ReturnStatement() throws ParseException {
2296 jj_consume_token(RETURN);
2297 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2304 case INTEGER_LITERAL:
2305 case FLOATING_POINT_LITERAL:
2306 case STRING_LITERAL:
2320 jj_la1[94] = jj_gen;
2323 jj_consume_token(SEMICOLON);
2326 static final private boolean jj_2_1(int xla) {
2327 jj_la = xla; jj_lastpos = jj_scanpos = token;
2328 boolean retval = !jj_3_1();
2333 static final private boolean jj_2_2(int xla) {
2334 jj_la = xla; jj_lastpos = jj_scanpos = token;
2335 boolean retval = !jj_3_2();
2340 static final private boolean jj_2_3(int xla) {
2341 jj_la = xla; jj_lastpos = jj_scanpos = token;
2342 boolean retval = !jj_3_3();
2347 static final private boolean jj_2_4(int xla) {
2348 jj_la = xla; jj_lastpos = jj_scanpos = token;
2349 boolean retval = !jj_3_4();
2354 static final private boolean jj_2_5(int xla) {
2355 jj_la = xla; jj_lastpos = jj_scanpos = token;
2356 boolean retval = !jj_3_5();
2361 static final private boolean jj_2_6(int xla) {
2362 jj_la = xla; jj_lastpos = jj_scanpos = token;
2363 boolean retval = !jj_3_6();
2368 static final private boolean jj_2_7(int xla) {
2369 jj_la = xla; jj_lastpos = jj_scanpos = token;
2370 boolean retval = !jj_3_7();
2375 static final private boolean jj_3R_77() {
2376 if (jj_scan_token(PLUSASSIGN)) return true;
2377 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2381 static final private boolean jj_3R_98() {
2382 if (jj_scan_token(BIT_OR)) return true;
2383 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2384 if (jj_3R_97()) return true;
2385 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2389 static final private boolean jj_3R_101() {
2390 if (jj_scan_token(XOR)) return true;
2391 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2392 if (jj_3R_100()) return true;
2393 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2397 static final private boolean jj_3R_104() {
2398 if (jj_3R_106()) return true;
2399 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2403 if (jj_3R_107()) { jj_scanpos = xsp; break; }
2404 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2409 static final private boolean jj_3R_91() {
2410 if (jj_scan_token(_ORL)) return true;
2411 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2415 static final private boolean jj_3R_96() {
2416 if (jj_scan_token(_ANDL)) return true;
2417 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2421 static final private boolean jj_3R_94() {
2422 if (jj_scan_token(DOT)) return true;
2423 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2424 if (jj_3R_93()) return true;
2425 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2429 static final private boolean jj_3R_102() {
2430 if (jj_3R_104()) return true;
2431 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2435 if (jj_3R_105()) { jj_scanpos = xsp; break; }
2436 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2441 static final private boolean jj_3R_90() {
2442 if (jj_scan_token(SC_OR)) return true;
2443 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2447 static final private boolean jj_3R_76() {
2448 if (jj_scan_token(REMASSIGN)) return true;
2449 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2453 static final private boolean jj_3R_100() {
2454 if (jj_3R_102()) return true;
2455 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2459 if (jj_3R_103()) { jj_scanpos = xsp; break; }
2460 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2465 static final private boolean jj_3R_72() {
2470 if (jj_3R_91()) return true;
2471 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2472 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2473 if (jj_3R_71()) return true;
2474 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2478 static final private boolean jj_3R_95() {
2479 if (jj_scan_token(SC_AND)) return true;
2480 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2484 static final private boolean jj_3R_89() {
2489 if (jj_3R_96()) return true;
2490 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2491 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2492 if (jj_3R_88()) return true;
2493 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2497 static final private boolean jj_3R_97() {
2498 if (jj_3R_100()) return true;
2499 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2503 if (jj_3R_101()) { jj_scanpos = xsp; break; }
2504 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2509 static final private boolean jj_3R_67() {
2510 if (jj_scan_token(HOOK)) return true;
2511 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2512 if (jj_3R_37()) return true;
2513 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2514 if (jj_scan_token(COLON)) return true;
2515 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2516 if (jj_3R_59()) return true;
2517 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2521 static final private boolean jj_3R_93() {
2522 if (jj_3R_97()) return true;
2523 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2527 if (jj_3R_98()) { jj_scanpos = xsp; break; }
2528 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2533 static final private boolean jj_3R_75() {
2534 if (jj_scan_token(SLASHASSIGN)) return true;
2535 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2539 static final private boolean jj_3R_88() {
2540 if (jj_3R_93()) return true;
2541 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2545 if (jj_3R_94()) { jj_scanpos = xsp; break; }
2546 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2551 static final private boolean jj_3R_71() {
2552 if (jj_3R_88()) return true;
2553 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2557 if (jj_3R_89()) { jj_scanpos = xsp; break; }
2558 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2563 static final private boolean jj_3R_66() {
2564 if (jj_3R_71()) return true;
2565 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2569 if (jj_3R_72()) { jj_scanpos = xsp; break; }
2570 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2575 static final private boolean jj_3R_74() {
2576 if (jj_scan_token(STARASSIGN)) return true;
2577 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2581 static final private boolean jj_3R_59() {
2582 if (jj_3R_66()) return true;
2583 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2586 if (jj_3R_67()) jj_scanpos = xsp;
2587 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2591 static final private boolean jj_3R_73() {
2592 if (jj_scan_token(ASSIGN)) return true;
2593 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2597 static final private boolean jj_3R_68() {
2624 if (jj_3R_85()) return true;
2625 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2626 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2627 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2628 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2629 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2630 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2631 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2632 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2633 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2634 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2635 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2636 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2637 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2641 static final private boolean jj_3R_60() {
2642 if (jj_3R_68()) return true;
2643 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2644 if (jj_3R_37()) return true;
2645 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2649 static final private boolean jj_3R_53() {
2650 if (jj_3R_59()) return true;
2651 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2654 if (jj_3R_60()) jj_scanpos = xsp;
2655 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2659 static final private boolean jj_3R_37() {
2664 if (jj_3R_53()) return true;
2665 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2666 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2670 static final private boolean jj_3R_52() {
2671 if (jj_3R_58()) return true;
2672 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2676 static final private boolean jj_3R_55() {
2677 if (jj_scan_token(COMMA)) return true;
2678 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2679 if (jj_3R_54()) return true;
2680 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2684 static final private boolean jj_3R_51() {
2685 if (jj_scan_token(INTEGER)) return true;
2686 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2690 static final private boolean jj_3R_50() {
2691 if (jj_scan_token(INT)) return true;
2692 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2696 static final private boolean jj_3R_49() {
2697 if (jj_scan_token(FLOAT)) return true;
2698 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2702 static final private boolean jj_3R_48() {
2703 if (jj_scan_token(DOUBLE)) return true;
2704 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2708 static final private boolean jj_3R_47() {
2709 if (jj_scan_token(REAL)) return true;
2710 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2714 static final private boolean jj_3R_46() {
2715 if (jj_scan_token(BOOLEAN)) return true;
2716 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2720 static final private boolean jj_3R_45() {
2721 if (jj_scan_token(BOOL)) return true;
2722 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2726 static final private boolean jj_3R_36() {
2743 if (jj_3R_51()) return true;
2744 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2745 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2746 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2747 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2748 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2749 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2750 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2751 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2755 static final private boolean jj_3R_44() {
2756 if (jj_scan_token(STRING)) return true;
2757 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2761 static final private boolean jj_3_2() {
2762 if (jj_scan_token(COMMA)) return true;
2763 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2764 if (jj_3R_35()) return true;
2765 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2769 static final private boolean jj_3R_41() {
2770 if (jj_3R_54()) return true;
2771 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2775 if (jj_3R_55()) { jj_scanpos = xsp; break; }
2776 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2781 static final private boolean jj_3R_175() {
2782 if (jj_3R_35()) return true;
2783 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2787 if (jj_3_2()) { jj_scanpos = xsp; break; }
2788 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2793 static final private boolean jj_3R_176() {
2794 if (jj_scan_token(ARRAYASSIGN)) return true;
2795 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2796 if (jj_3R_37()) return true;
2797 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2801 static final private boolean jj_3R_40() {
2802 if (jj_scan_token(IDENTIFIER)) return true;
2803 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2804 if (jj_scan_token(COLON)) return true;
2805 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2809 static final private boolean jj_3R_164() {
2810 if (jj_scan_token(LPAREN)) return true;
2811 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2814 if (jj_3R_175()) jj_scanpos = xsp;
2815 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2816 if (jj_scan_token(RPAREN)) return true;
2817 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2821 static final private boolean jj_3R_35() {
2822 if (jj_3R_37()) return true;
2823 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2827 if (jj_3R_176()) { jj_scanpos = xsp; break; }
2828 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2833 static final private boolean jj_3R_99() {
2834 if (jj_scan_token(LBRACE)) return true;
2835 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2836 if (jj_3R_37()) return true;
2837 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2838 if (jj_scan_token(RBRACE)) return true;
2839 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2843 static final private boolean jj_3R_70() {
2844 if (jj_3R_37()) return true;
2845 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2849 static final private boolean jj_3R_92() {
2850 if (jj_scan_token(LBRACE)) return true;
2851 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2852 if (jj_3R_37()) return true;
2853 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2854 if (jj_scan_token(RBRACE)) return true;
2855 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2859 static final private boolean jj_3R_62() {
2860 if (jj_scan_token(ASSIGN)) return true;
2861 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2862 if (jj_3R_70()) return true;
2863 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2867 static final private boolean jj_3R_65() {
2868 if (jj_scan_token(DOLLAR)) return true;
2869 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2870 if (jj_3R_56()) return true;
2871 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2875 static final private boolean jj_3R_64() {
2876 if (jj_scan_token(IDENTIFIER)) return true;
2877 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2881 if (jj_3R_99()) { jj_scanpos = xsp; break; }
2882 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2887 static final private boolean jj_3R_63() {
2888 if (jj_scan_token(LBRACE)) return true;
2889 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2890 if (jj_3R_37()) return true;
2891 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2892 if (jj_scan_token(RBRACE)) return true;
2893 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2897 static final private boolean jj_3R_56() {
2904 if (jj_3R_65()) return true;
2905 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2906 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2907 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2911 static final private boolean jj_3_1() {
2912 if (jj_3R_34()) return true;
2913 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2917 static final private boolean jj_3R_87() {
2918 if (jj_scan_token(DOLLAR)) return true;
2919 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2920 if (jj_3R_56()) return true;
2921 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2925 static final private boolean jj_3R_58() {
2926 if (jj_scan_token(PRINT)) return true;
2927 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2928 if (jj_3R_37()) return true;
2929 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2933 static final private boolean jj_3R_86() {
2934 if (jj_scan_token(DOLLAR_ID)) return true;
2935 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2939 if (jj_3R_92()) { jj_scanpos = xsp; break; }
2940 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2945 static final private boolean jj_3R_69() {
2950 if (jj_3R_87()) return true;
2951 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2952 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2956 static final private boolean jj_3R_61() {
2957 if (jj_3R_69()) return true;
2958 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2962 if (jj_3_1()) { jj_scanpos = xsp; break; }
2963 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2968 static final private boolean jj_3R_54() {
2969 if (jj_3R_61()) return true;
2970 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2973 if (jj_3R_62()) jj_scanpos = xsp;
2974 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2978 static final private boolean jj_3R_39() {
2979 if (jj_scan_token(127)) return true;
2980 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2984 static final private boolean jj_3R_38() {
2985 if (jj_scan_token(SEMICOLON)) return true;
2986 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2990 static final private boolean jj_3R_179() {
2991 if (jj_scan_token(COMMA)) return true;
2992 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2993 if (jj_3R_37()) return true;
2994 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2998 static final private boolean jj_3_6() {
2999 if (jj_3R_40()) return true;
3000 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3004 static final private boolean jj_3_5() {
3005 if (jj_3R_37()) return true;
3006 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3011 if (jj_3R_39()) return true;
3012 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3013 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3017 static final private boolean jj_3R_177() {
3018 if (jj_3R_178()) return true;
3019 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3023 static final private boolean jj_3R_178() {
3024 if (jj_3R_37()) return true;
3025 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3029 if (jj_3R_179()) { jj_scanpos = xsp; break; }
3030 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3035 static final private boolean jj_3R_174() {
3036 if (jj_scan_token(LPAREN)) return true;
3037 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3040 if (jj_3R_177()) jj_scanpos = xsp;
3041 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3042 if (jj_scan_token(RPAREN)) return true;
3043 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3047 static final private boolean jj_3R_162() {
3048 if (jj_scan_token(NULL)) return true;
3049 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3053 static final private boolean jj_3R_85() {
3054 if (jj_scan_token(DOTASSIGN)) return true;
3055 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3059 static final private boolean jj_3R_166() {
3060 if (jj_scan_token(FALSE)) return true;
3061 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3065 static final private boolean jj_3R_161() {
3070 if (jj_3R_166()) return true;
3071 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3072 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3076 static final private boolean jj_3R_165() {
3077 if (jj_scan_token(TRUE)) return true;
3078 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3082 static final private boolean jj_3R_171() {
3083 if (jj_3R_167()) return true;
3084 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3088 static final private boolean jj_3R_155() {
3089 if (jj_3R_162()) return true;
3090 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3094 static final private boolean jj_3R_57() {
3095 if (jj_3R_37()) return true;
3096 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3100 static final private boolean jj_3R_154() {
3101 if (jj_3R_161()) return true;
3102 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3106 static final private boolean jj_3R_84() {
3107 if (jj_scan_token(ORASSIGN)) return true;
3108 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3112 static final private boolean jj_3R_153() {
3113 if (jj_scan_token(STRING_LITERAL)) return true;
3114 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3118 static final private boolean jj_3R_152() {
3119 if (jj_scan_token(FLOATING_POINT_LITERAL)) return true;
3120 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3124 static final private boolean jj_3R_148() {
3135 if (jj_3R_155()) return true;
3136 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3137 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3138 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3139 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3140 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3144 static final private boolean jj_3R_151() {
3145 if (jj_scan_token(INTEGER_LITERAL)) return true;
3146 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3150 static final private boolean jj_3R_43() {
3151 if (jj_scan_token(LBRACKET)) return true;
3152 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3155 if (jj_3R_57()) jj_scanpos = xsp;
3156 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3157 if (jj_scan_token(RBRACKET)) return true;
3158 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3162 static final private boolean jj_3R_42() {
3163 if (jj_scan_token(CLASSACCESS)) return true;
3164 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3165 if (jj_3R_56()) return true;
3166 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3170 static final private boolean jj_3R_34() {
3175 if (jj_3R_43()) return true;
3176 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3177 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3181 static final private boolean jj_3R_83() {
3182 if (jj_scan_token(XORASSIGN)) return true;
3183 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3187 static final private boolean jj_3R_170() {
3188 if (jj_3R_34()) return true;
3189 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3193 static final private boolean jj_3R_167() {
3198 if (jj_3R_170()) return true;
3199 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3200 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3204 static final private boolean jj_3R_169() {
3205 if (jj_3R_174()) return true;
3206 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3210 static final private boolean jj_3R_160() {
3211 if (jj_scan_token(DECR)) return true;
3212 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3216 static final private boolean jj_3R_173() {
3217 if (jj_3R_61()) return true;
3218 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3222 static final private boolean jj_3R_172() {
3223 if (jj_scan_token(IDENTIFIER)) return true;
3224 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3228 static final private boolean jj_3R_82() {
3229 if (jj_scan_token(ANDASSIGN)) return true;
3230 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3234 static final private boolean jj_3R_163() {
3235 if (jj_3R_167()) return true;
3236 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3240 static final private boolean jj_3R_168() {
3245 if (jj_3R_173()) return true;
3246 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3247 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3251 static final private boolean jj_3R_150() {
3256 if (jj_3R_160()) return true;
3257 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3258 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3262 static final private boolean jj_3R_159() {
3263 if (jj_scan_token(INCR)) return true;
3264 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3268 static final private boolean jj_3R_158() {
3269 if (jj_3R_61()) return true;
3270 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3274 static final private boolean jj_3R_157() {
3275 if (jj_scan_token(NEW)) return true;
3276 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3277 if (jj_3R_168()) return true;
3278 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3282 static final private boolean jj_3R_149() {
3289 if (jj_3R_158()) return true;
3290 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3291 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3292 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3296 static final private boolean jj_3R_156() {
3297 if (jj_scan_token(IDENTIFIER)) return true;
3298 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3302 static final private boolean jj_3R_145() {
3303 if (jj_scan_token(ARRAY)) return true;
3304 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3305 if (jj_3R_164()) return true;
3306 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3310 static final private boolean jj_3R_144() {
3311 if (jj_3R_149()) return true;
3312 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3316 if (jj_3R_163()) { jj_scanpos = xsp; break; }
3317 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3322 static final private boolean jj_3_4() {
3323 if (jj_scan_token(IDENTIFIER)) return true;
3324 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3325 if (jj_scan_token(STATICCLASSACCESS)) return true;
3326 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3327 if (jj_3R_168()) return true;
3328 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3332 if (jj_3R_171()) { jj_scanpos = xsp; break; }
3333 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3338 static final private boolean jj_3R_138() {
3345 if (jj_3R_145()) return true;
3346 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3347 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3348 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3352 static final private boolean jj_3R_81() {
3353 if (jj_scan_token(RUNSIGNEDSHIFTASSIGN)) return true;
3354 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3358 static final private boolean jj_3R_147() {
3359 if (jj_3R_138()) return true;
3360 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3363 if (jj_3R_150()) jj_scanpos = xsp;
3364 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3368 static final private boolean jj_3R_146() {
3369 if (jj_scan_token(LPAREN)) return true;
3370 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3371 if (jj_3R_36()) return true;
3372 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3373 if (jj_scan_token(RPAREN)) return true;
3374 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3375 if (jj_3R_121()) return true;
3376 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3380 static final private boolean jj_3_3() {
3381 if (jj_scan_token(LPAREN)) return true;
3382 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3383 if (jj_3R_36()) return true;
3384 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3385 if (jj_scan_token(RPAREN)) return true;
3386 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3390 static final private boolean jj_3R_120() {
3391 if (jj_scan_token(RUNSIGNEDSHIFT)) return true;
3392 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3396 static final private boolean jj_3R_132() {
3397 if (jj_scan_token(REM)) return true;
3398 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3402 static final private boolean jj_3R_143() {
3403 if (jj_scan_token(LPAREN)) return true;
3404 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3405 if (jj_3R_37()) return true;
3406 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3407 if (jj_scan_token(RPAREN)) return true;
3408 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3412 static final private boolean jj_3R_142() {
3413 if (jj_3R_148()) return true;
3414 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3418 static final private boolean jj_3R_141() {
3419 if (jj_3R_147()) return true;
3420 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3424 static final private boolean jj_3R_124() {
3425 if (jj_scan_token(MINUS)) return true;
3426 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3430 static final private boolean jj_3R_140() {
3431 if (jj_3R_146()) return true;
3432 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3436 static final private boolean jj_3R_80() {
3437 if (jj_scan_token(RSIGNEDSHIFTASSIGN)) return true;
3438 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3442 static final private boolean jj_3R_137() {
3453 if (jj_3R_143()) return true;
3454 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3455 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3456 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3457 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3458 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3462 static final private boolean jj_3R_139() {
3463 if (jj_scan_token(BANG)) return true;
3464 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3465 if (jj_3R_121()) return true;
3466 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3470 static final private boolean jj_3R_131() {
3471 if (jj_scan_token(SLASH)) return true;
3472 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3476 static final private boolean jj_3R_136() {
3477 if (jj_scan_token(DECR)) return true;
3478 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3479 if (jj_3R_138()) return true;
3480 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3484 static final private boolean jj_3R_115() {
3485 if (jj_scan_token(GE)) return true;
3486 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3490 static final private boolean jj_3R_123() {
3491 if (jj_scan_token(PLUS)) return true;
3492 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3496 static final private boolean jj_3R_119() {
3497 if (jj_scan_token(RSIGNEDSHIFT)) return true;
3498 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3502 static final private boolean jj_3R_117() {
3507 if (jj_3R_124()) return true;
3508 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3509 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3510 if (jj_3R_116()) return true;
3511 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3515 static final private boolean jj_3R_130() {
3516 if (jj_scan_token(STAR)) return true;
3517 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3521 static final private boolean jj_3R_122() {
3528 if (jj_3R_132()) return true;
3529 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3530 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3531 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3532 if (jj_3R_121()) return true;
3533 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3537 static final private boolean jj_3R_135() {
3538 if (jj_scan_token(INCR)) return true;
3539 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3540 if (jj_3R_138()) return true;
3541 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3545 static final private boolean jj_3R_134() {
3546 if (jj_scan_token(MINUS)) return true;
3547 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3551 static final private boolean jj_3R_114() {
3552 if (jj_scan_token(LE)) return true;
3553 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3557 static final private boolean jj_3R_79() {
3558 if (jj_scan_token(LSHIFTASSIGN)) return true;
3559 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3563 static final private boolean jj_3R_129() {
3564 if (jj_3R_137()) return true;
3565 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3569 static final private boolean jj_3R_118() {
3570 if (jj_scan_token(LSHIFT)) return true;
3571 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3575 static final private boolean jj_3R_128() {
3576 if (jj_3R_136()) return true;
3577 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3581 static final private boolean jj_3R_111() {
3588 if (jj_3R_120()) return true;
3589 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3590 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3591 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3592 if (jj_3R_110()) return true;
3593 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3597 static final private boolean jj_3R_113() {
3598 if (jj_scan_token(GT)) return true;
3599 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3603 static final private boolean jj_3R_109() {
3604 if (jj_scan_token(NE)) return true;
3605 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3609 static final private boolean jj_3R_127() {
3610 if (jj_3R_135()) return true;
3611 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3615 static final private boolean jj_3R_133() {
3616 if (jj_scan_token(PLUS)) return true;
3617 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3621 static final private boolean jj_3R_126() {
3626 if (jj_3R_134()) return true;
3627 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3628 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3629 if (jj_3R_121()) return true;
3630 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3634 static final private boolean jj_3R_121() {
3645 if (jj_3R_129()) return true;
3646 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3647 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3648 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3649 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3650 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3654 static final private boolean jj_3R_125() {
3655 if (jj_scan_token(AT)) return true;
3656 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3657 if (jj_3R_121()) return true;
3658 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3662 static final private boolean jj_3R_112() {
3663 if (jj_scan_token(LT)) return true;
3664 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3668 static final private boolean jj_3R_108() {
3669 if (jj_scan_token(EQ)) return true;
3670 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3674 static final private boolean jj_3R_107() {
3683 if (jj_3R_115()) return true;
3684 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3685 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3686 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3687 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3688 if (jj_3R_106()) return true;
3689 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3693 static final private boolean jj_3R_105() {
3698 if (jj_3R_109()) return true;
3699 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3700 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3701 if (jj_3R_104()) return true;
3702 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3706 static final private boolean jj_3R_116() {
3707 if (jj_3R_121()) return true;
3708 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3712 if (jj_3R_122()) { jj_scanpos = xsp; break; }
3713 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3718 static final private boolean jj_3_7() {
3719 if (jj_3R_41()) return true;
3720 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3724 static final private boolean jj_3R_78() {
3725 if (jj_scan_token(MINUSASSIGN)) return true;
3726 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3730 static final private boolean jj_3R_110() {
3731 if (jj_3R_116()) return true;
3732 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3736 if (jj_3R_117()) { jj_scanpos = xsp; break; }
3737 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3742 static final private boolean jj_3R_103() {
3743 if (jj_scan_token(BIT_AND)) return true;
3744 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3745 if (jj_3R_102()) return true;
3746 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3750 static final private boolean jj_3R_106() {
3751 if (jj_3R_110()) return true;
3752 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3756 if (jj_3R_111()) { jj_scanpos = xsp; break; }
3757 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3762 static private boolean jj_initialized_once = false;
3763 static public PHPParserTokenManager token_source;
3764 static SimpleCharStream jj_input_stream;
3765 static public Token token, jj_nt;
3766 static private int jj_ntk;
3767 static private Token jj_scanpos, jj_lastpos;
3768 static private int jj_la;
3769 static public boolean lookingAhead = false;
3770 static private boolean jj_semLA;
3771 static private int jj_gen;
3772 static final private int[] jj_la1 = new int[95];
3773 static final private int[] jj_la1_0 = {0x2,0x7fcb0000,0x0,0x60000,0x60000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xc00000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x400000,0x0,0x400000,0x0,0x0,0x80000000,0x80000000,0x400000,0x0,0x0,0x80000000,0xc00000,0x80000000,0x0,0x0,0xc00000,0x0,0x0,0x7f480000,0x0,0x0,0x0,0x0,0x1e000000,0x0,0x0,0x0,0x0,0x0,0x0,0x7fcb0000,0x7fcb0000,0x0,0x0,0x0,0x400000,0x0,0x7fcb0000,0x0,0x100000,0x200000,0x7fc80000,0x0,0x7fc80000,0x0,0x400000,0xc00000,0x400000,0x400000,0x0,0x0,0x0,0xc00000,};
3774 static final private int[] jj_la1_1 = {0x0,0xd76a4,0x100,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x2,0x43200,0x0,0x0,0x0,0x0,0x0,0x3fa00000,0x0,0x43200,0x0,0x0,0x40000000,0x40000000,0x80000000,0x80000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x43200,0x0,0x43200,0x0,0x0,0x0,0x0,0x1000,0x1000,0x0,0x0,0x43200,0x0,0x42200,0x40200,0x43200,0x0,0x0,0x954a4,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xd76a4,0xd76a4,0x0,0x0,0x0,0x1000,0x48,0xd76a4,0x48,0x0,0x0,0xd76a4,0x0,0xd76a4,0x0,0x1000,0x43200,0x1000,0x1000,0x0,0x0,0x0,0x43200,};
3775 static final private int[] jj_la1_2 = {0x0,0x11914451,0x0,0x0,0x0,0x200000,0x2000000,0x10000,0x1000000,0x10000,0x1010400,0x0,0x11804451,0x110000,0x0,0x200000,0x1000000,0x0,0x0,0x2000000,0x11804451,0x2000000,0x20000000,0x0,0x0,0x0,0x0,0x400000,0x0,0x0,0x0,0x80000000,0x80000000,0xc000000,0xc000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x11804451,0x10000000,0x1004451,0x0,0x0,0x44000,0x44000,0x1000400,0x1000400,0x1000400,0x44000,0x11804451,0x40000,0x51,0x0,0x11804451,0x200000,0x100000,0x1110400,0x100000,0x100000,0x100000,0x100000,0x0,0x200000,0x100000,0x200000,0x100000,0x200000,0x100000,0x11914451,0x11914451,0x200000,0x2000000,0x2000000,0x1000400,0x0,0x11914451,0x0,0x0,0x0,0x11914451,0x100000,0x51914451,0x100000,0x1000400,0x11804451,0x1000400,0x1000400,0x200000,0x400,0x400,0x11804451,};
3776 static final private int[] jj_la1_3 = {0x0,0x400001e0,0x0,0x0,0x0,0x0,0x0,0x0,0x40000000,0x0,0x0,0x0,0x400001e0,0x0,0x800,0x0,0x40000800,0x800,0x0,0x3ffc0000,0x400001e0,0x3ffc0000,0x0,0x8,0x8,0x10,0x10,0x0,0x1000,0x2000,0x800,0x4,0x4,0x3,0x3,0x38000,0x38000,0x180,0x180,0x4600,0x4600,0x180,0x400001e0,0x0,0x40000000,0x60,0x60,0x0,0x0,0x40000000,0x40000000,0x40000000,0x0,0x400001e0,0x0,0x0,0x0,0x400001e0,0x0,0x80000000,0x40000060,0x80000000,0x80000000,0x80000000,0x80000000,0x0,0x0,0x80000000,0x0,0x80000000,0x0,0x80000000,0x400001e0,0x400001e0,0x0,0x3ffc0060,0x3ffc0060,0x40000060,0x0,0x400001e0,0x0,0x0,0x0,0x400001e0,0x80000000,0x400001e0,0x80000000,0x40000060,0x400001e0,0x40000060,0x40000060,0x0,0x0,0x0,0x400001e0,};
3777 static final private JJCalls[] jj_2_rtns = new JJCalls[7];
3778 static private boolean jj_rescan = false;
3779 static private int jj_gc = 0;
3781 public PHPParser(java.io.InputStream stream) {
3782 if (jj_initialized_once) {
3783 System.out.println("ERROR: Second call to constructor of static parser. You must");
3784 System.out.println(" either use ReInit() or set the JavaCC option STATIC to false");
3785 System.out.println(" during parser generation.");
3788 jj_initialized_once = true;
3789 jj_input_stream = new SimpleCharStream(stream, 1, 1);
3790 token_source = new PHPParserTokenManager(jj_input_stream);
3791 token = new Token();
3794 for (int i = 0; i < 95; i++) jj_la1[i] = -1;
3795 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3798 static public void ReInit(java.io.InputStream stream) {
3799 jj_input_stream.ReInit(stream, 1, 1);
3800 token_source.ReInit(jj_input_stream);
3801 token = new Token();
3804 for (int i = 0; i < 95; i++) jj_la1[i] = -1;
3805 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3808 public PHPParser(java.io.Reader stream) {
3809 if (jj_initialized_once) {
3810 System.out.println("ERROR: Second call to constructor of static parser. You must");
3811 System.out.println(" either use ReInit() or set the JavaCC option STATIC to false");
3812 System.out.println(" during parser generation.");
3815 jj_initialized_once = true;
3816 jj_input_stream = new SimpleCharStream(stream, 1, 1);
3817 token_source = new PHPParserTokenManager(jj_input_stream);
3818 token = new Token();
3821 for (int i = 0; i < 95; i++) jj_la1[i] = -1;
3822 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3825 static public void ReInit(java.io.Reader stream) {
3826 jj_input_stream.ReInit(stream, 1, 1);
3827 token_source.ReInit(jj_input_stream);
3828 token = new Token();
3831 for (int i = 0; i < 95; i++) jj_la1[i] = -1;
3832 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3835 public PHPParser(PHPParserTokenManager tm) {
3836 if (jj_initialized_once) {
3837 System.out.println("ERROR: Second call to constructor of static parser. You must");
3838 System.out.println(" either use ReInit() or set the JavaCC option STATIC to false");
3839 System.out.println(" during parser generation.");
3842 jj_initialized_once = true;
3844 token = new Token();
3847 for (int i = 0; i < 95; i++) jj_la1[i] = -1;
3848 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3851 public void ReInit(PHPParserTokenManager tm) {
3853 token = new Token();
3856 for (int i = 0; i < 95; i++) jj_la1[i] = -1;
3857 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3860 static final private Token jj_consume_token(int kind) throws ParseException {
3862 if ((oldToken = token).next != null) token = token.next;
3863 else token = token.next = token_source.getNextToken();
3865 if (token.kind == kind) {
3867 if (++jj_gc > 100) {
3869 for (int i = 0; i < jj_2_rtns.length; i++) {
3870 JJCalls c = jj_2_rtns[i];
3872 if (c.gen < jj_gen) c.first = null;
3881 throw generateParseException();
3884 static final private boolean jj_scan_token(int kind) {
3885 if (jj_scanpos == jj_lastpos) {
3887 if (jj_scanpos.next == null) {
3888 jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken();
3890 jj_lastpos = jj_scanpos = jj_scanpos.next;
3893 jj_scanpos = jj_scanpos.next;
3896 int i = 0; Token tok = token;
3897 while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; }
3898 if (tok != null) jj_add_error_token(kind, i);
3900 return (jj_scanpos.kind != kind);
3903 static final public Token getNextToken() {
3904 if (token.next != null) token = token.next;
3905 else token = token.next = token_source.getNextToken();
3911 static final public Token getToken(int index) {
3912 Token t = lookingAhead ? jj_scanpos : token;
3913 for (int i = 0; i < index; i++) {
3914 if (t.next != null) t = t.next;
3915 else t = t.next = token_source.getNextToken();
3920 static final private int jj_ntk() {
3921 if ((jj_nt=token.next) == null)
3922 return (jj_ntk = (token.next=token_source.getNextToken()).kind);
3924 return (jj_ntk = jj_nt.kind);
3927 static private java.util.Vector jj_expentries = new java.util.Vector();
3928 static private int[] jj_expentry;
3929 static private int jj_kind = -1;
3930 static private int[] jj_lasttokens = new int[100];
3931 static private int jj_endpos;
3933 static private void jj_add_error_token(int kind, int pos) {
3934 if (pos >= 100) return;
3935 if (pos == jj_endpos + 1) {
3936 jj_lasttokens[jj_endpos++] = kind;
3937 } else if (jj_endpos != 0) {
3938 jj_expentry = new int[jj_endpos];
3939 for (int i = 0; i < jj_endpos; i++) {
3940 jj_expentry[i] = jj_lasttokens[i];
3942 boolean exists = false;
3943 for (java.util.Enumeration enum = jj_expentries.elements(); enum.hasMoreElements();) {
3944 int[] oldentry = (int[])(enum.nextElement());
3945 if (oldentry.length == jj_expentry.length) {
3947 for (int i = 0; i < jj_expentry.length; i++) {
3948 if (oldentry[i] != jj_expentry[i]) {
3956 if (!exists) jj_expentries.addElement(jj_expentry);
3957 if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind;
3961 static final public ParseException generateParseException() {
3962 jj_expentries.removeAllElements();
3963 boolean[] la1tokens = new boolean[128];
3964 for (int i = 0; i < 128; i++) {
3965 la1tokens[i] = false;
3968 la1tokens[jj_kind] = true;
3971 for (int i = 0; i < 95; i++) {
3972 if (jj_la1[i] == jj_gen) {
3973 for (int j = 0; j < 32; j++) {
3974 if ((jj_la1_0[i] & (1<<j)) != 0) {
3975 la1tokens[j] = true;
3977 if ((jj_la1_1[i] & (1<<j)) != 0) {
3978 la1tokens[32+j] = true;
3980 if ((jj_la1_2[i] & (1<<j)) != 0) {
3981 la1tokens[64+j] = true;
3983 if ((jj_la1_3[i] & (1<<j)) != 0) {
3984 la1tokens[96+j] = true;
3989 for (int i = 0; i < 128; i++) {
3991 jj_expentry = new int[1];
3993 jj_expentries.addElement(jj_expentry);
3998 jj_add_error_token(0, 0);
3999 int[][] exptokseq = new int[jj_expentries.size()][];
4000 for (int i = 0; i < jj_expentries.size(); i++) {
4001 exptokseq[i] = (int[])jj_expentries.elementAt(i);
4003 return new ParseException(token, exptokseq, tokenImage);
4006 static final public void enable_tracing() {
4009 static final public void disable_tracing() {
4012 static final private void jj_rescan_token() {
4014 for (int i = 0; i < 7; i++) {
4015 JJCalls p = jj_2_rtns[i];
4017 if (p.gen > jj_gen) {
4018 jj_la = p.arg; jj_lastpos = jj_scanpos = p.first;
4020 case 0: jj_3_1(); break;
4021 case 1: jj_3_2(); break;
4022 case 2: jj_3_3(); break;
4023 case 3: jj_3_4(); break;
4024 case 4: jj_3_5(); break;
4025 case 5: jj_3_6(); break;
4026 case 6: jj_3_7(); break;
4030 } while (p != null);
4035 static final private void jj_save(int index, int xla) {
4036 JJCalls p = jj_2_rtns[index];
4037 while (p.gen > jj_gen) {
4038 if (p.next == null) { p = p.next = new JJCalls(); break; }
4041 p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla;
4044 static final class JJCalls {