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;
17 import net.sourceforge.phpdt.internal.compiler.parser.PHPSegmentWithChildren;
18 import net.sourceforge.phpdt.internal.compiler.parser.PHPFunctionDeclaration;
19 import net.sourceforge.phpdt.internal.compiler.parser.PHPClassDeclaration;
23 * This php parser is inspired by the Java 1.2 grammar example
24 * given with JavaCC. You can get JavaCC at http://www.webgain.com
25 * You can test the parser with the PHPParserTestCase2.java
26 * @author Matthieu Casanova
28 public class PHPParser extends PHPParserSuperclass implements PHPParserConstants {
30 private static IFile fileToParse;
32 /** The current segment */
33 private static PHPSegmentWithChildren currentSegment;
35 private static final String PARSE_ERROR_STRING = "Parse error"; //$NON-NLS-1$
36 private static final String PARSE_WARNING_STRING = "Warning"; //$NON-NLS-1$
37 public static final int ERROR = 2;
38 public static final int WARNING = 1;
39 public static final int INFO = 0;
40 PHPOutlineInfo outlineInfo;
41 private static int errorLevel = ERROR;
42 private static String errorMessage;
47 public void setFileToParse(IFile fileToParse) {
48 this.fileToParse = fileToParse;
51 public PHPParser(IFile fileToParse) {
52 this(new StringReader(""));
53 this.fileToParse = fileToParse;
56 public void phpParserTester(String strEval) throws CoreException, ParseException {
57 PHPParserTokenManager.SwitchTo(PHPParserTokenManager.PHPPARSING);
58 StringReader stream = new StringReader(strEval);
59 if (jj_input_stream == null) {
60 jj_input_stream = new SimpleCharStream(stream, 1, 1);
62 ReInit(new StringReader(strEval));
66 public void htmlParserTester(String strEval) throws CoreException, ParseException {
67 StringReader stream = new StringReader(strEval);
68 if (jj_input_stream == null) {
69 jj_input_stream = new SimpleCharStream(stream, 1, 1);
75 public PHPOutlineInfo parseInfo(Object parent, String s) {
76 outlineInfo = new PHPOutlineInfo(parent);
77 currentSegment = outlineInfo.getDeclarations();
78 StringReader stream = new StringReader(s);
79 if (jj_input_stream == null) {
80 jj_input_stream = new SimpleCharStream(stream, 1, 1);
85 } catch (ParseException e) {
86 if (errorMessage == null) {
87 PHPeclipsePlugin.log(e);
89 setMarker(errorMessage, e.currentToken.beginLine, errorLevel);
98 * Create marker for the parse error
100 private static void setMarker(String message, int lineNumber, int errorLevel) {
102 setMarker(fileToParse, message, lineNumber, errorLevel);
103 } catch (CoreException e) {
104 PHPeclipsePlugin.log(e);
108 public static void setMarker(IFile file, String message, int lineNumber, int errorLevel) throws CoreException {
110 Hashtable attributes = new Hashtable();
111 MarkerUtilities.setMessage(attributes, message);
112 switch (errorLevel) {
114 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_ERROR));
117 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_WARNING));
120 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_INFO));
123 MarkerUtilities.setLineNumber(attributes, lineNumber);
124 MarkerUtilities.createMarker(file, attributes, IMarker.PROBLEM);
129 * Create markers according to the external parser output
131 private static void createMarkers(String output, IFile file) throws CoreException {
132 // delete all markers
133 file.deleteMarkers(IMarker.PROBLEM, false, 0);
138 while ((brIndx = output.indexOf("<br />", indx)) != -1) {
139 // newer php error output (tested with 4.2.3)
140 scanLine(output, file, indx, brIndx);
145 while ((brIndx = output.indexOf("<br>", indx)) != -1) {
146 // older php error output (tested with 4.2.3)
147 scanLine(output, file, indx, brIndx);
153 private static void scanLine(String output, IFile file, int indx, int brIndx) throws CoreException {
155 StringBuffer lineNumberBuffer = new StringBuffer(10);
157 current = output.substring(indx, brIndx);
159 if (current.indexOf(PARSE_WARNING_STRING) != -1 || current.indexOf(PARSE_ERROR_STRING) != -1) {
160 int onLine = current.indexOf("on line <b>");
162 lineNumberBuffer.delete(0, lineNumberBuffer.length());
163 for (int i = onLine; i < current.length(); i++) {
164 ch = current.charAt(i);
165 if ('0' <= ch && '9' >= ch) {
166 lineNumberBuffer.append(ch);
170 int lineNumber = Integer.parseInt(lineNumberBuffer.toString());
172 Hashtable attributes = new Hashtable();
174 current = current.replaceAll("\n", "");
175 current = current.replaceAll("<b>", "");
176 current = current.replaceAll("</b>", "");
177 MarkerUtilities.setMessage(attributes, current);
179 if (current.indexOf(PARSE_ERROR_STRING) != -1)
180 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_ERROR));
181 else if (current.indexOf(PARSE_WARNING_STRING) != -1)
182 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_WARNING));
184 attributes.put(IMarker.SEVERITY, new Integer(IMarker.SEVERITY_INFO));
185 MarkerUtilities.setLineNumber(attributes, lineNumber);
186 MarkerUtilities.createMarker(file, attributes, IMarker.PROBLEM);
191 public void parse(String s) throws CoreException {
192 ReInit(new StringReader(s));
195 } catch (ParseException e) {
196 if (errorMessage == null) {
197 PHPeclipsePlugin.log(e);
199 setMarker(errorMessage, e.currentToken.beginLine, errorLevel);
206 * Call the php parse command ( php -l -f <filename> )
207 * and create markers according to the external parser output
209 public static void phpExternalParse(IFile file) {
210 IPreferenceStore store = PHPeclipsePlugin.getDefault().getPreferenceStore();
211 String filename = file.getLocation().toString();
213 String[] arguments = { filename };
214 MessageFormat form = new MessageFormat(store.getString(PHPeclipsePlugin.EXTERNAL_PARSER_PREF));
215 String command = form.format(arguments);
217 String parserResult = PHPStartApacheAction.getParserOutput(command, "External parser: ");
220 // parse the buffer to find the errors and warnings
221 createMarkers(parserResult, file);
222 } catch (CoreException e) {
223 PHPeclipsePlugin.log(e);
227 public void parse() throws ParseException {
231 /*****************************************
232 * THE JAVA LANGUAGE GRAMMAR STARTS HERE *
233 *****************************************/
236 * Program structuring syntax follows.
238 static final public void phpTest() throws ParseException {
243 static final public void phpFile() throws ParseException {
246 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
254 jj_consume_token(PHPSTART);
256 jj_consume_token(PHPEND);
261 static final public void Php() throws ParseException {
264 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
288 case INTEGER_LITERAL:
289 case FLOATING_POINT_LITERAL:
313 static final public void ClassDeclaration() throws ParseException {
314 PHPClassDeclaration classDeclaration;
316 int pos = jj_input_stream.bufpos;
317 jj_consume_token(CLASS);
318 className = jj_consume_token(IDENTIFIER);
319 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
321 jj_consume_token(EXTENDS);
322 jj_consume_token(IDENTIFIER);
328 classDeclaration = new PHPClassDeclaration(currentSegment,className.image,pos);
329 currentSegment.add(classDeclaration);
330 currentSegment = classDeclaration;
332 currentSegment = (PHPSegmentWithChildren) currentSegment.getParent();
335 static final public void ClassBody() throws ParseException {
336 jj_consume_token(LBRACE);
339 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
348 ClassBodyDeclaration();
350 jj_consume_token(RBRACE);
353 static final public void ClassBodyDeclaration() throws ParseException {
354 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
363 jj_consume_token(-1);
364 throw new ParseException();
368 static final public void FieldDeclaration() throws ParseException {
369 jj_consume_token(VAR);
370 VariableDeclarator();
373 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
381 jj_consume_token(COMMA);
382 VariableDeclarator();
384 jj_consume_token(SEMICOLON);
387 static final public void VariableDeclarator() throws ParseException {
388 VariableDeclaratorId();
389 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
391 jj_consume_token(ASSIGN);
392 VariableInitializer();
400 static final public void VariableDeclaratorId() throws ParseException {
413 static final public void Variable() throws ParseException {
414 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
416 jj_consume_token(DOLLAR_ID);
419 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
427 jj_consume_token(LBRACE);
429 jj_consume_token(RBRACE);
433 jj_consume_token(DOLLAR);
438 jj_consume_token(-1);
439 throw new ParseException();
443 static final public void VariableName() throws ParseException {
444 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
446 jj_consume_token(LBRACE);
448 jj_consume_token(RBRACE);
451 jj_consume_token(IDENTIFIER);
454 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
462 jj_consume_token(LBRACE);
464 jj_consume_token(RBRACE);
468 jj_consume_token(DOLLAR);
473 jj_consume_token(-1);
474 throw new ParseException();
478 static final public void VariableInitializer() throws ParseException {
482 static final public void ArrayVariable() throws ParseException {
486 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
494 jj_consume_token(ARRAYASSIGN);
499 static final public void ArrayInitializer() throws ParseException {
500 jj_consume_token(LPAREN);
501 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
508 case INTEGER_LITERAL:
509 case FLOATING_POINT_LITERAL:
529 jj_consume_token(COMMA);
537 jj_consume_token(RPAREN);
540 static final public void MethodDeclaration() throws ParseException {
541 PHPFunctionDeclaration functionDeclaration;
542 jj_consume_token(FUNCTION);
543 functionDeclaration = MethodDeclarator();
544 currentSegment.add(functionDeclaration);
545 currentSegment = functionDeclaration;
546 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
551 jj_consume_token(SEMICOLON);
555 jj_consume_token(-1);
556 throw new ParseException();
558 currentSegment = (PHPSegmentWithChildren) currentSegment.getParent();
561 static final public PHPFunctionDeclaration MethodDeclarator() throws ParseException {
562 Token bit_and = null;
564 StringBuffer methodDeclaration = new StringBuffer();
565 String formalParameters;
566 int pos = jj_input_stream.bufpos;
567 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
569 bit_and = jj_consume_token(BIT_AND);
575 identifier = jj_consume_token(IDENTIFIER);
577 if (bit_and != null) {
578 methodDeclaration.append("&");
580 methodDeclaration.append(identifier);
581 {if (true) return new PHPFunctionDeclaration(currentSegment,methodDeclaration.toString(),pos);}
582 throw new Error("Missing return statement in function");
585 static final public void FormalParameters() throws ParseException {
586 jj_consume_token(LPAREN);
587 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
594 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
602 jj_consume_token(COMMA);
610 jj_consume_token(RPAREN);
613 static final public void FormalParameter() throws ParseException {
614 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
616 jj_consume_token(BIT_AND);
622 VariableDeclarator();
625 static final public void Type() throws ParseException {
626 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
628 jj_consume_token(STRING);
631 jj_consume_token(BOOL);
634 jj_consume_token(BOOLEAN);
637 jj_consume_token(REAL);
640 jj_consume_token(DOUBLE);
643 jj_consume_token(FLOAT);
646 jj_consume_token(INT);
649 jj_consume_token(INTEGER);
653 jj_consume_token(-1);
654 throw new ParseException();
659 * Expression syntax follows.
661 static final public void Expression() throws ParseException {
662 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
671 case INTEGER_LITERAL:
672 case FLOATING_POINT_LITERAL:
684 ConditionalExpression();
685 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
697 case RSIGNEDSHIFTASSIGN:
698 case RUNSIGNEDSHIFTASSIGN:
699 AssignmentOperator();
709 jj_consume_token(-1);
710 throw new ParseException();
714 static final public void AssignmentOperator() throws ParseException {
715 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
717 jj_consume_token(ASSIGN);
720 jj_consume_token(STARASSIGN);
723 jj_consume_token(SLASHASSIGN);
726 jj_consume_token(REMASSIGN);
729 jj_consume_token(PLUSASSIGN);
732 jj_consume_token(MINUSASSIGN);
735 jj_consume_token(LSHIFTASSIGN);
737 case RSIGNEDSHIFTASSIGN:
738 jj_consume_token(RSIGNEDSHIFTASSIGN);
740 case RUNSIGNEDSHIFTASSIGN:
741 jj_consume_token(RUNSIGNEDSHIFTASSIGN);
744 jj_consume_token(ANDASSIGN);
747 jj_consume_token(XORASSIGN);
750 jj_consume_token(ORASSIGN);
753 jj_consume_token(DOTASSIGN);
757 jj_consume_token(-1);
758 throw new ParseException();
762 static final public void ConditionalExpression() throws ParseException {
763 ConditionalOrExpression();
764 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
766 jj_consume_token(HOOK);
768 jj_consume_token(COLON);
769 ConditionalExpression();
777 static final public void ConditionalOrExpression() throws ParseException {
778 ConditionalAndExpression();
781 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
790 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
792 jj_consume_token(SC_OR);
795 jj_consume_token(_ORL);
799 jj_consume_token(-1);
800 throw new ParseException();
802 ConditionalAndExpression();
806 static final public void ConditionalAndExpression() throws ParseException {
810 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
819 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
821 jj_consume_token(SC_AND);
824 jj_consume_token(_ANDL);
828 jj_consume_token(-1);
829 throw new ParseException();
835 static final public void ConcatExpression() throws ParseException {
836 InclusiveOrExpression();
839 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
847 jj_consume_token(DOT);
848 InclusiveOrExpression();
852 static final public void InclusiveOrExpression() throws ParseException {
853 ExclusiveOrExpression();
856 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
864 jj_consume_token(BIT_OR);
865 ExclusiveOrExpression();
869 static final public void ExclusiveOrExpression() throws ParseException {
873 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
881 jj_consume_token(XOR);
886 static final public void AndExpression() throws ParseException {
887 EqualityExpression();
890 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
898 jj_consume_token(BIT_AND);
899 EqualityExpression();
903 static final public void EqualityExpression() throws ParseException {
904 RelationalExpression();
907 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
916 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
918 jj_consume_token(EQ);
921 jj_consume_token(NE);
925 jj_consume_token(-1);
926 throw new ParseException();
928 RelationalExpression();
932 static final public void RelationalExpression() throws ParseException {
936 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
947 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
949 jj_consume_token(LT);
952 jj_consume_token(GT);
955 jj_consume_token(LE);
958 jj_consume_token(GE);
962 jj_consume_token(-1);
963 throw new ParseException();
969 static final public void ShiftExpression() throws ParseException {
970 AdditiveExpression();
973 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
983 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
985 jj_consume_token(LSHIFT);
988 jj_consume_token(RSIGNEDSHIFT);
991 jj_consume_token(RUNSIGNEDSHIFT);
995 jj_consume_token(-1);
996 throw new ParseException();
998 AdditiveExpression();
1002 static final public void AdditiveExpression() throws ParseException {
1003 MultiplicativeExpression();
1006 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1012 jj_la1[37] = jj_gen;
1015 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1017 jj_consume_token(PLUS);
1020 jj_consume_token(MINUS);
1023 jj_la1[38] = jj_gen;
1024 jj_consume_token(-1);
1025 throw new ParseException();
1027 MultiplicativeExpression();
1031 static final public void MultiplicativeExpression() throws ParseException {
1035 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1042 jj_la1[39] = jj_gen;
1045 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1047 jj_consume_token(STAR);
1050 jj_consume_token(SLASH);
1053 jj_consume_token(REM);
1056 jj_la1[40] = jj_gen;
1057 jj_consume_token(-1);
1058 throw new ParseException();
1064 static final public void UnaryExpression() throws ParseException {
1065 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1067 jj_consume_token(AT);
1072 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1074 jj_consume_token(PLUS);
1077 jj_consume_token(MINUS);
1080 jj_la1[41] = jj_gen;
1081 jj_consume_token(-1);
1082 throw new ParseException();
1087 PreIncrementExpression();
1090 PreDecrementExpression();
1097 case INTEGER_LITERAL:
1098 case FLOATING_POINT_LITERAL:
1099 case STRING_LITERAL:
1105 UnaryExpressionNotPlusMinus();
1108 jj_la1[42] = jj_gen;
1109 jj_consume_token(-1);
1110 throw new ParseException();
1114 static final public void PreIncrementExpression() throws ParseException {
1115 jj_consume_token(INCR);
1116 PrimaryExpression();
1119 static final public void PreDecrementExpression() throws ParseException {
1120 jj_consume_token(DECR);
1121 PrimaryExpression();
1124 static final public void UnaryExpressionNotPlusMinus() throws ParseException {
1125 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1127 jj_consume_token(BANG);
1131 jj_la1[43] = jj_gen;
1132 if (jj_2_3(2147483647)) {
1135 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1141 PostfixExpression();
1146 case INTEGER_LITERAL:
1147 case FLOATING_POINT_LITERAL:
1148 case STRING_LITERAL:
1152 jj_consume_token(LPAREN);
1154 jj_consume_token(RPAREN);
1157 jj_la1[44] = jj_gen;
1158 jj_consume_token(-1);
1159 throw new ParseException();
1165 static final public void CastExpression() throws ParseException {
1166 jj_consume_token(LPAREN);
1168 jj_consume_token(RPAREN);
1172 static final public void PostfixExpression() throws ParseException {
1173 PrimaryExpression();
1174 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1177 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1179 jj_consume_token(INCR);
1182 jj_consume_token(DECR);
1185 jj_la1[45] = jj_gen;
1186 jj_consume_token(-1);
1187 throw new ParseException();
1191 jj_la1[46] = jj_gen;
1196 static final public void PrimaryExpression() throws ParseException {
1198 jj_consume_token(IDENTIFIER);
1199 jj_consume_token(STATICCLASSACCESS);
1203 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1210 jj_la1[47] = jj_gen;
1216 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1224 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1231 jj_la1[48] = jj_gen;
1238 jj_consume_token(ARRAY);
1242 jj_la1[49] = jj_gen;
1243 jj_consume_token(-1);
1244 throw new ParseException();
1249 static final public void PrimaryPrefix() throws ParseException {
1250 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1252 jj_consume_token(IDENTIFIER);
1255 jj_consume_token(NEW);
1260 VariableDeclaratorId();
1263 jj_la1[50] = jj_gen;
1264 jj_consume_token(-1);
1265 throw new ParseException();
1269 static final public void ClassIdentifier() throws ParseException {
1270 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1272 jj_consume_token(IDENTIFIER);
1276 VariableDeclaratorId();
1279 jj_la1[51] = jj_gen;
1280 jj_consume_token(-1);
1281 throw new ParseException();
1285 static final public void PrimarySuffix() throws ParseException {
1286 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1295 jj_la1[52] = jj_gen;
1296 jj_consume_token(-1);
1297 throw new ParseException();
1301 static final public void VariableSuffix() throws ParseException {
1302 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1304 jj_consume_token(CLASSACCESS);
1308 jj_consume_token(LBRACKET);
1309 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1316 case INTEGER_LITERAL:
1317 case FLOATING_POINT_LITERAL:
1318 case STRING_LITERAL:
1332 jj_la1[53] = jj_gen;
1335 jj_consume_token(RBRACKET);
1338 jj_la1[54] = jj_gen;
1339 jj_consume_token(-1);
1340 throw new ParseException();
1344 static final public void Literal() throws ParseException {
1345 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1346 case INTEGER_LITERAL:
1347 jj_consume_token(INTEGER_LITERAL);
1349 case FLOATING_POINT_LITERAL:
1350 jj_consume_token(FLOATING_POINT_LITERAL);
1352 case STRING_LITERAL:
1353 jj_consume_token(STRING_LITERAL);
1363 jj_la1[55] = jj_gen;
1364 jj_consume_token(-1);
1365 throw new ParseException();
1369 static final public void BooleanLiteral() throws ParseException {
1370 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1372 jj_consume_token(TRUE);
1375 jj_consume_token(FALSE);
1378 jj_la1[56] = jj_gen;
1379 jj_consume_token(-1);
1380 throw new ParseException();
1384 static final public void NullLiteral() throws ParseException {
1385 jj_consume_token(NULL);
1388 static final public void Arguments() throws ParseException {
1389 jj_consume_token(LPAREN);
1390 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1397 case INTEGER_LITERAL:
1398 case FLOATING_POINT_LITERAL:
1399 case STRING_LITERAL:
1413 jj_la1[57] = jj_gen;
1417 jj_consume_token(RPAREN);
1418 } catch (ParseException e) {
1419 errorMessage = "')' expected to close the argument list";
1421 {if (true) throw e;}
1425 static final public void ArgumentList() throws ParseException {
1429 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1434 jj_la1[58] = jj_gen;
1437 jj_consume_token(COMMA);
1440 } catch (ParseException e) {
1441 errorMessage = "expression expected after a comma in argument list";
1443 {if (true) throw e;}
1449 * Statement syntax follows.
1451 static final public void Statement() throws ParseException {
1454 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1456 jj_consume_token(SEMICOLON);
1459 jj_consume_token(127);
1462 jj_la1[59] = jj_gen;
1463 jj_consume_token(-1);
1464 throw new ParseException();
1466 } else if (jj_2_6(2)) {
1469 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1483 StatementExpression();
1485 jj_consume_token(SEMICOLON);
1486 } catch (ParseException e) {
1487 errorMessage = "';' expected after expression";
1489 {if (true) throw e;}
1511 ContinueStatement();
1532 jj_la1[60] = jj_gen;
1533 jj_consume_token(-1);
1534 throw new ParseException();
1539 static final public void IncludeStatement() throws ParseException {
1540 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1542 jj_consume_token(REQUIRE);
1544 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1546 jj_consume_token(SEMICOLON);
1549 jj_consume_token(127);
1552 jj_la1[61] = jj_gen;
1553 jj_consume_token(-1);
1554 throw new ParseException();
1558 jj_consume_token(REQUIRE_ONCE);
1560 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1562 jj_consume_token(SEMICOLON);
1565 jj_consume_token(127);
1568 jj_la1[62] = jj_gen;
1569 jj_consume_token(-1);
1570 throw new ParseException();
1574 jj_consume_token(INCLUDE);
1576 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1578 jj_consume_token(SEMICOLON);
1581 jj_consume_token(127);
1584 jj_la1[63] = jj_gen;
1585 jj_consume_token(-1);
1586 throw new ParseException();
1590 jj_consume_token(INCLUDE_ONCE);
1592 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1594 jj_consume_token(SEMICOLON);
1597 jj_consume_token(127);
1600 jj_la1[64] = jj_gen;
1601 jj_consume_token(-1);
1602 throw new ParseException();
1606 jj_la1[65] = jj_gen;
1607 jj_consume_token(-1);
1608 throw new ParseException();
1612 static final public void PrintExpression() throws ParseException {
1613 jj_consume_token(PRINT);
1617 static final public void EchoStatement() throws ParseException {
1618 jj_consume_token(ECHO);
1622 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1627 jj_la1[66] = jj_gen;
1630 jj_consume_token(COMMA);
1634 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1636 jj_consume_token(SEMICOLON);
1639 jj_consume_token(127);
1642 jj_la1[67] = jj_gen;
1643 jj_consume_token(-1);
1644 throw new ParseException();
1646 } catch (ParseException e) {
1647 errorMessage = "';' expected after 'echo' statement";
1649 {if (true) throw e;}
1653 static final public void GlobalStatement() throws ParseException {
1654 jj_consume_token(GLOBAL);
1655 VariableDeclaratorId();
1658 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1663 jj_la1[68] = jj_gen;
1666 jj_consume_token(COMMA);
1667 VariableDeclaratorId();
1669 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1671 jj_consume_token(SEMICOLON);
1674 jj_consume_token(127);
1677 jj_la1[69] = jj_gen;
1678 jj_consume_token(-1);
1679 throw new ParseException();
1683 static final public void StaticStatement() throws ParseException {
1684 jj_consume_token(STATIC);
1685 VariableDeclarator();
1688 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1693 jj_la1[70] = jj_gen;
1696 jj_consume_token(COMMA);
1697 VariableDeclarator();
1699 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1701 jj_consume_token(SEMICOLON);
1704 jj_consume_token(127);
1707 jj_la1[71] = jj_gen;
1708 jj_consume_token(-1);
1709 throw new ParseException();
1713 static final public void LabeledStatement() throws ParseException {
1714 jj_consume_token(IDENTIFIER);
1715 jj_consume_token(COLON);
1719 static final public void Block() throws ParseException {
1720 jj_consume_token(LBRACE);
1723 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1747 case INTEGER_LITERAL:
1748 case FLOATING_POINT_LITERAL:
1749 case STRING_LITERAL:
1765 jj_la1[72] = jj_gen;
1770 jj_consume_token(RBRACE);
1773 static final public void BlockStatement() throws ParseException {
1774 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1796 case INTEGER_LITERAL:
1797 case FLOATING_POINT_LITERAL:
1798 case STRING_LITERAL:
1817 MethodDeclaration();
1820 jj_la1[73] = jj_gen;
1821 jj_consume_token(-1);
1822 throw new ParseException();
1826 static final public void LocalVariableDeclaration() throws ParseException {
1827 VariableDeclarator();
1830 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1835 jj_la1[74] = jj_gen;
1838 jj_consume_token(COMMA);
1839 VariableDeclarator();
1843 static final public void EmptyStatement() throws ParseException {
1844 jj_consume_token(SEMICOLON);
1847 static final public void StatementExpression() throws ParseException {
1848 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1850 PreIncrementExpression();
1853 PreDecrementExpression();
1860 PrimaryExpression();
1861 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1875 case RSIGNEDSHIFTASSIGN:
1876 case RUNSIGNEDSHIFTASSIGN:
1877 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1879 jj_consume_token(INCR);
1882 jj_consume_token(DECR);
1895 case RSIGNEDSHIFTASSIGN:
1896 case RUNSIGNEDSHIFTASSIGN:
1897 AssignmentOperator();
1901 jj_la1[75] = jj_gen;
1902 jj_consume_token(-1);
1903 throw new ParseException();
1907 jj_la1[76] = jj_gen;
1912 jj_la1[77] = jj_gen;
1913 jj_consume_token(-1);
1914 throw new ParseException();
1918 static final public void SwitchStatement() throws ParseException {
1919 jj_consume_token(SWITCH);
1920 jj_consume_token(LPAREN);
1922 jj_consume_token(RPAREN);
1923 jj_consume_token(LBRACE);
1926 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1932 jj_la1[78] = jj_gen;
1938 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1962 case INTEGER_LITERAL:
1963 case FLOATING_POINT_LITERAL:
1964 case STRING_LITERAL:
1980 jj_la1[79] = jj_gen;
1986 jj_consume_token(RBRACE);
1989 static final public void SwitchLabel() throws ParseException {
1990 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
1992 jj_consume_token(CASE);
1994 jj_consume_token(COLON);
1997 jj_consume_token(_DEFAULT);
1998 jj_consume_token(COLON);
2001 jj_la1[80] = jj_gen;
2002 jj_consume_token(-1);
2003 throw new ParseException();
2007 static final public void IfStatement() throws ParseException {
2008 jj_consume_token(IF);
2011 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2016 jj_la1[81] = jj_gen;
2019 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2021 jj_consume_token(ELSE);
2025 jj_la1[82] = jj_gen;
2030 static final public void Condition(String keyword) throws ParseException {
2032 jj_consume_token(LPAREN);
2033 } catch (ParseException e) {
2034 errorMessage = "'(' expected after " + keyword + " keyword";
2036 {if (true) throw e;}
2040 jj_consume_token(RPAREN);
2041 } catch (ParseException e) {
2042 errorMessage = "')' expected after " + keyword + " keyword";
2044 {if (true) throw e;}
2048 static final public void ElseIfStatement() throws ParseException {
2049 jj_consume_token(ELSEIF);
2050 Condition("elseif");
2054 static final public void WhileStatement() throws ParseException {
2055 jj_consume_token(WHILE);
2060 static final public void WhileStatement0() throws ParseException {
2061 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2063 jj_consume_token(COLON);
2066 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2088 case INTEGER_LITERAL:
2089 case FLOATING_POINT_LITERAL:
2090 case STRING_LITERAL:
2106 jj_la1[83] = jj_gen;
2111 jj_consume_token(ENDWHILE);
2112 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2114 jj_consume_token(SEMICOLON);
2117 jj_consume_token(127);
2120 jj_la1[84] = jj_gen;
2121 jj_consume_token(-1);
2122 throw new ParseException();
2146 case INTEGER_LITERAL:
2147 case FLOATING_POINT_LITERAL:
2148 case STRING_LITERAL:
2164 jj_la1[85] = jj_gen;
2165 jj_consume_token(-1);
2166 throw new ParseException();
2170 static final public void DoStatement() throws ParseException {
2171 jj_consume_token(DO);
2173 jj_consume_token(WHILE);
2175 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2177 jj_consume_token(SEMICOLON);
2180 jj_consume_token(127);
2183 jj_la1[86] = jj_gen;
2184 jj_consume_token(-1);
2185 throw new ParseException();
2189 static final public void ForStatement() throws ParseException {
2190 jj_consume_token(FOR);
2191 jj_consume_token(LPAREN);
2192 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2203 jj_la1[87] = jj_gen;
2206 jj_consume_token(SEMICOLON);
2207 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2214 case INTEGER_LITERAL:
2215 case FLOATING_POINT_LITERAL:
2216 case STRING_LITERAL:
2230 jj_la1[88] = jj_gen;
2233 jj_consume_token(SEMICOLON);
2234 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2245 jj_la1[89] = jj_gen;
2248 jj_consume_token(RPAREN);
2252 static final public void ForInit() throws ParseException {
2253 if (jj_2_7(2147483647)) {
2254 LocalVariableDeclaration();
2256 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2264 StatementExpressionList();
2267 jj_la1[90] = jj_gen;
2268 jj_consume_token(-1);
2269 throw new ParseException();
2274 static final public void StatementExpressionList() throws ParseException {
2275 StatementExpression();
2278 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2283 jj_la1[91] = jj_gen;
2286 jj_consume_token(COMMA);
2287 StatementExpression();
2291 static final public void ForUpdate() throws ParseException {
2292 StatementExpressionList();
2295 static final public void BreakStatement() throws ParseException {
2296 jj_consume_token(BREAK);
2297 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2299 jj_consume_token(IDENTIFIER);
2302 jj_la1[92] = jj_gen;
2305 jj_consume_token(SEMICOLON);
2308 static final public void ContinueStatement() throws ParseException {
2309 jj_consume_token(CONTINUE);
2310 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2312 jj_consume_token(IDENTIFIER);
2315 jj_la1[93] = jj_gen;
2318 jj_consume_token(SEMICOLON);
2321 static final public void ReturnStatement() throws ParseException {
2322 jj_consume_token(RETURN);
2323 switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
2330 case INTEGER_LITERAL:
2331 case FLOATING_POINT_LITERAL:
2332 case STRING_LITERAL:
2346 jj_la1[94] = jj_gen;
2349 jj_consume_token(SEMICOLON);
2352 static final private boolean jj_2_1(int xla) {
2353 jj_la = xla; jj_lastpos = jj_scanpos = token;
2354 boolean retval = !jj_3_1();
2359 static final private boolean jj_2_2(int xla) {
2360 jj_la = xla; jj_lastpos = jj_scanpos = token;
2361 boolean retval = !jj_3_2();
2366 static final private boolean jj_2_3(int xla) {
2367 jj_la = xla; jj_lastpos = jj_scanpos = token;
2368 boolean retval = !jj_3_3();
2373 static final private boolean jj_2_4(int xla) {
2374 jj_la = xla; jj_lastpos = jj_scanpos = token;
2375 boolean retval = !jj_3_4();
2380 static final private boolean jj_2_5(int xla) {
2381 jj_la = xla; jj_lastpos = jj_scanpos = token;
2382 boolean retval = !jj_3_5();
2387 static final private boolean jj_2_6(int xla) {
2388 jj_la = xla; jj_lastpos = jj_scanpos = token;
2389 boolean retval = !jj_3_6();
2394 static final private boolean jj_2_7(int xla) {
2395 jj_la = xla; jj_lastpos = jj_scanpos = token;
2396 boolean retval = !jj_3_7();
2401 static final private boolean jj_3R_93() {
2402 if (jj_3R_97()) return true;
2403 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2407 if (jj_3R_98()) { jj_scanpos = xsp; break; }
2408 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2413 static final private boolean jj_3R_75() {
2414 if (jj_scan_token(SLASHASSIGN)) return true;
2415 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2419 static final private boolean jj_3R_88() {
2420 if (jj_3R_93()) return true;
2421 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2425 if (jj_3R_94()) { jj_scanpos = xsp; break; }
2426 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2431 static final private boolean jj_3R_71() {
2432 if (jj_3R_88()) return true;
2433 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2437 if (jj_3R_89()) { jj_scanpos = xsp; break; }
2438 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2443 static final private boolean jj_3R_66() {
2444 if (jj_3R_71()) return true;
2445 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2449 if (jj_3R_72()) { jj_scanpos = xsp; break; }
2450 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2455 static final private boolean jj_3R_74() {
2456 if (jj_scan_token(STARASSIGN)) return true;
2457 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2461 static final private boolean jj_3R_59() {
2462 if (jj_3R_66()) return true;
2463 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2466 if (jj_3R_67()) jj_scanpos = xsp;
2467 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2471 static final private boolean jj_3R_73() {
2472 if (jj_scan_token(ASSIGN)) return true;
2473 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2477 static final private boolean jj_3R_68() {
2504 if (jj_3R_85()) return true;
2505 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2506 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2507 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2508 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2509 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2510 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2511 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2512 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2513 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2514 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2515 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2516 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2517 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2521 static final private boolean jj_3R_60() {
2522 if (jj_3R_68()) return true;
2523 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2524 if (jj_3R_37()) return true;
2525 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2529 static final private boolean jj_3R_53() {
2530 if (jj_3R_59()) return true;
2531 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2534 if (jj_3R_60()) jj_scanpos = xsp;
2535 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2539 static final private boolean jj_3R_37() {
2544 if (jj_3R_53()) return true;
2545 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2546 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2550 static final private boolean jj_3R_52() {
2551 if (jj_3R_58()) return true;
2552 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2556 static final private boolean jj_3R_55() {
2557 if (jj_scan_token(COMMA)) return true;
2558 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2559 if (jj_3R_54()) return true;
2560 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2564 static final private boolean jj_3R_51() {
2565 if (jj_scan_token(INTEGER)) return true;
2566 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2570 static final private boolean jj_3R_50() {
2571 if (jj_scan_token(INT)) return true;
2572 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2576 static final private boolean jj_3R_49() {
2577 if (jj_scan_token(FLOAT)) return true;
2578 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2582 static final private boolean jj_3R_41() {
2583 if (jj_3R_54()) return true;
2584 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2588 if (jj_3R_55()) { jj_scanpos = xsp; break; }
2589 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2594 static final private boolean jj_3R_48() {
2595 if (jj_scan_token(DOUBLE)) return true;
2596 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2600 static final private boolean jj_3R_47() {
2601 if (jj_scan_token(REAL)) return true;
2602 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2606 static final private boolean jj_3R_46() {
2607 if (jj_scan_token(BOOLEAN)) return true;
2608 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2612 static final private boolean jj_3R_45() {
2613 if (jj_scan_token(BOOL)) return true;
2614 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2618 static final private boolean jj_3R_36() {
2635 if (jj_3R_51()) return true;
2636 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2637 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2638 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2639 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2640 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2641 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2642 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2643 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2647 static final private boolean jj_3R_44() {
2648 if (jj_scan_token(STRING)) return true;
2649 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2653 static final private boolean jj_3R_40() {
2654 if (jj_scan_token(IDENTIFIER)) return true;
2655 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2656 if (jj_scan_token(COLON)) return true;
2657 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2661 static final private boolean jj_3_2() {
2662 if (jj_scan_token(COMMA)) return true;
2663 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2664 if (jj_3R_35()) return true;
2665 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2669 static final private boolean jj_3R_175() {
2670 if (jj_3R_35()) return true;
2671 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2675 if (jj_3_2()) { jj_scanpos = xsp; break; }
2676 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2681 static final private boolean jj_3R_58() {
2682 if (jj_scan_token(PRINT)) return true;
2683 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2684 if (jj_3R_37()) return true;
2685 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2689 static final private boolean jj_3R_176() {
2690 if (jj_scan_token(ARRAYASSIGN)) return true;
2691 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2692 if (jj_3R_37()) return true;
2693 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2697 static final private boolean jj_3R_164() {
2698 if (jj_scan_token(LPAREN)) return true;
2699 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2702 if (jj_3R_175()) jj_scanpos = xsp;
2703 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2704 if (jj_scan_token(RPAREN)) return true;
2705 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2709 static final private boolean jj_3R_35() {
2710 if (jj_3R_37()) return true;
2711 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2715 if (jj_3R_176()) { jj_scanpos = xsp; break; }
2716 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2721 static final private boolean jj_3R_99() {
2722 if (jj_scan_token(LBRACE)) return true;
2723 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2724 if (jj_3R_37()) return true;
2725 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2726 if (jj_scan_token(RBRACE)) return true;
2727 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2731 static final private boolean jj_3R_70() {
2732 if (jj_3R_37()) return true;
2733 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2737 static final private boolean jj_3R_92() {
2738 if (jj_scan_token(LBRACE)) return true;
2739 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2740 if (jj_3R_37()) return true;
2741 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2742 if (jj_scan_token(RBRACE)) return true;
2743 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2747 static final private boolean jj_3R_62() {
2748 if (jj_scan_token(ASSIGN)) return true;
2749 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2750 if (jj_3R_70()) return true;
2751 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2755 static final private boolean jj_3R_65() {
2756 if (jj_scan_token(DOLLAR)) return true;
2757 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2758 if (jj_3R_56()) return true;
2759 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2763 static final private boolean jj_3R_39() {
2764 if (jj_scan_token(127)) return true;
2765 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2769 static final private boolean jj_3R_64() {
2770 if (jj_scan_token(IDENTIFIER)) return true;
2771 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2775 if (jj_3R_99()) { jj_scanpos = xsp; break; }
2776 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2781 static final private boolean jj_3R_63() {
2782 if (jj_scan_token(LBRACE)) return true;
2783 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2784 if (jj_3R_37()) return true;
2785 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2786 if (jj_scan_token(RBRACE)) return true;
2787 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2791 static final private boolean jj_3R_56() {
2798 if (jj_3R_65()) return true;
2799 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2800 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2801 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2805 static final private boolean jj_3_1() {
2806 if (jj_3R_34()) return true;
2807 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2811 static final private boolean jj_3R_87() {
2812 if (jj_scan_token(DOLLAR)) return true;
2813 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2814 if (jj_3R_56()) return true;
2815 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2819 static final private boolean jj_3R_86() {
2820 if (jj_scan_token(DOLLAR_ID)) return true;
2821 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2825 if (jj_3R_92()) { jj_scanpos = xsp; break; }
2826 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2831 static final private boolean jj_3R_69() {
2836 if (jj_3R_87()) return true;
2837 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2838 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2842 static final private boolean jj_3R_38() {
2843 if (jj_scan_token(SEMICOLON)) return true;
2844 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2848 static final private boolean jj_3R_61() {
2849 if (jj_3R_69()) return true;
2850 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2854 if (jj_3_1()) { jj_scanpos = xsp; break; }
2855 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2860 static final private boolean jj_3R_54() {
2861 if (jj_3R_61()) return true;
2862 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2865 if (jj_3R_62()) jj_scanpos = xsp;
2866 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2870 static final private boolean jj_3_6() {
2871 if (jj_3R_40()) return true;
2872 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2876 static final private boolean jj_3_5() {
2877 if (jj_3R_37()) return true;
2878 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2883 if (jj_3R_39()) return true;
2884 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2885 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2889 static final private boolean jj_3R_179() {
2890 if (jj_scan_token(COMMA)) return true;
2891 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2892 if (jj_3R_37()) return true;
2893 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2897 static final private boolean jj_3R_178() {
2898 if (jj_3R_37()) return true;
2899 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2903 if (jj_3R_179()) { jj_scanpos = xsp; break; }
2904 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2909 static final private boolean jj_3R_177() {
2910 if (jj_3R_178()) return true;
2911 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2915 static final private boolean jj_3R_174() {
2916 if (jj_scan_token(LPAREN)) return true;
2917 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2920 if (jj_3R_177()) jj_scanpos = xsp;
2921 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2922 if (jj_scan_token(RPAREN)) return true;
2923 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2927 static final private boolean jj_3R_162() {
2928 if (jj_scan_token(NULL)) return true;
2929 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2933 static final private boolean jj_3R_85() {
2934 if (jj_scan_token(DOTASSIGN)) return true;
2935 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2939 static final private boolean jj_3R_166() {
2940 if (jj_scan_token(FALSE)) return true;
2941 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2945 static final private boolean jj_3R_161() {
2950 if (jj_3R_166()) 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_165() {
2957 if (jj_scan_token(TRUE)) return true;
2958 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2962 static final private boolean jj_3R_171() {
2963 if (jj_3R_167()) return true;
2964 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2968 static final private boolean jj_3R_155() {
2969 if (jj_3R_162()) return true;
2970 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2974 static final private boolean jj_3R_57() {
2975 if (jj_3R_37()) return true;
2976 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2980 static final private boolean jj_3R_154() {
2981 if (jj_3R_161()) return true;
2982 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2986 static final private boolean jj_3R_84() {
2987 if (jj_scan_token(ORASSIGN)) return true;
2988 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2992 static final private boolean jj_3R_153() {
2993 if (jj_scan_token(STRING_LITERAL)) return true;
2994 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
2998 static final private boolean jj_3R_152() {
2999 if (jj_scan_token(FLOATING_POINT_LITERAL)) return true;
3000 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3004 static final private boolean jj_3R_148() {
3015 if (jj_3R_155()) return true;
3016 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3017 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3018 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3019 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3020 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3024 static final private boolean jj_3R_151() {
3025 if (jj_scan_token(INTEGER_LITERAL)) return true;
3026 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3030 static final private boolean jj_3R_43() {
3031 if (jj_scan_token(LBRACKET)) return true;
3032 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3035 if (jj_3R_57()) jj_scanpos = xsp;
3036 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3037 if (jj_scan_token(RBRACKET)) return true;
3038 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3042 static final private boolean jj_3R_42() {
3043 if (jj_scan_token(CLASSACCESS)) return true;
3044 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3045 if (jj_3R_56()) return true;
3046 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3050 static final private boolean jj_3R_34() {
3055 if (jj_3R_43()) return true;
3056 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3057 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3061 static final private boolean jj_3R_83() {
3062 if (jj_scan_token(XORASSIGN)) return true;
3063 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3067 static final private boolean jj_3R_170() {
3068 if (jj_3R_34()) return true;
3069 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3073 static final private boolean jj_3R_167() {
3078 if (jj_3R_170()) return true;
3079 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3080 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3084 static final private boolean jj_3R_169() {
3085 if (jj_3R_174()) return true;
3086 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3090 static final private boolean jj_3R_160() {
3091 if (jj_scan_token(DECR)) return true;
3092 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3096 static final private boolean jj_3R_173() {
3097 if (jj_3R_61()) return true;
3098 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3102 static final private boolean jj_3R_172() {
3103 if (jj_scan_token(IDENTIFIER)) return true;
3104 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3108 static final private boolean jj_3R_82() {
3109 if (jj_scan_token(ANDASSIGN)) return true;
3110 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3114 static final private boolean jj_3R_163() {
3115 if (jj_3R_167()) return true;
3116 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3120 static final private boolean jj_3R_168() {
3125 if (jj_3R_173()) return true;
3126 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3127 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3131 static final private boolean jj_3R_150() {
3136 if (jj_3R_160()) return true;
3137 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3138 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3142 static final private boolean jj_3R_159() {
3143 if (jj_scan_token(INCR)) return true;
3144 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3148 static final private boolean jj_3R_158() {
3149 if (jj_3R_61()) return true;
3150 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3154 static final private boolean jj_3R_157() {
3155 if (jj_scan_token(NEW)) return true;
3156 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3157 if (jj_3R_168()) return true;
3158 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3162 static final private boolean jj_3R_149() {
3169 if (jj_3R_158()) return true;
3170 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3171 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3172 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3176 static final private boolean jj_3R_156() {
3177 if (jj_scan_token(IDENTIFIER)) return true;
3178 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3182 static final private boolean jj_3R_145() {
3183 if (jj_scan_token(ARRAY)) return true;
3184 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3185 if (jj_3R_164()) return true;
3186 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3190 static final private boolean jj_3R_144() {
3191 if (jj_3R_149()) return true;
3192 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3196 if (jj_3R_163()) { jj_scanpos = xsp; break; }
3197 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3202 static final private boolean jj_3_4() {
3203 if (jj_scan_token(IDENTIFIER)) return true;
3204 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3205 if (jj_scan_token(STATICCLASSACCESS)) return true;
3206 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3207 if (jj_3R_168()) return true;
3208 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3212 if (jj_3R_171()) { jj_scanpos = xsp; break; }
3213 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3218 static final private boolean jj_3R_138() {
3225 if (jj_3R_145()) return true;
3226 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3227 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3228 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3232 static final private boolean jj_3R_81() {
3233 if (jj_scan_token(RUNSIGNEDSHIFTASSIGN)) return true;
3234 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3238 static final private boolean jj_3R_147() {
3239 if (jj_3R_138()) return true;
3240 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3243 if (jj_3R_150()) jj_scanpos = xsp;
3244 else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3248 static final private boolean jj_3R_146() {
3249 if (jj_scan_token(LPAREN)) return true;
3250 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3251 if (jj_3R_36()) return true;
3252 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3253 if (jj_scan_token(RPAREN)) return true;
3254 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3255 if (jj_3R_121()) return true;
3256 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3260 static final private boolean jj_3_3() {
3261 if (jj_scan_token(LPAREN)) return true;
3262 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3263 if (jj_3R_36()) return true;
3264 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3265 if (jj_scan_token(RPAREN)) return true;
3266 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3270 static final private boolean jj_3R_120() {
3271 if (jj_scan_token(RUNSIGNEDSHIFT)) return true;
3272 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3276 static final private boolean jj_3R_132() {
3277 if (jj_scan_token(REM)) return true;
3278 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3282 static final private boolean jj_3R_143() {
3283 if (jj_scan_token(LPAREN)) return true;
3284 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3285 if (jj_3R_37()) return true;
3286 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3287 if (jj_scan_token(RPAREN)) return true;
3288 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3292 static final private boolean jj_3R_142() {
3293 if (jj_3R_148()) return true;
3294 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3298 static final private boolean jj_3R_141() {
3299 if (jj_3R_147()) return true;
3300 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3304 static final private boolean jj_3R_124() {
3305 if (jj_scan_token(MINUS)) return true;
3306 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3310 static final private boolean jj_3R_140() {
3311 if (jj_3R_146()) return true;
3312 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3316 static final private boolean jj_3R_80() {
3317 if (jj_scan_token(RSIGNEDSHIFTASSIGN)) return true;
3318 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3322 static final private boolean jj_3R_137() {
3333 if (jj_3R_143()) return true;
3334 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3335 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3336 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3337 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3338 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3342 static final private boolean jj_3R_139() {
3343 if (jj_scan_token(BANG)) return true;
3344 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3345 if (jj_3R_121()) return true;
3346 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3350 static final private boolean jj_3R_131() {
3351 if (jj_scan_token(SLASH)) return true;
3352 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3356 static final private boolean jj_3R_136() {
3357 if (jj_scan_token(DECR)) return true;
3358 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3359 if (jj_3R_138()) return true;
3360 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3364 static final private boolean jj_3R_115() {
3365 if (jj_scan_token(GE)) return true;
3366 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3370 static final private boolean jj_3R_123() {
3371 if (jj_scan_token(PLUS)) return true;
3372 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3376 static final private boolean jj_3R_119() {
3377 if (jj_scan_token(RSIGNEDSHIFT)) return true;
3378 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3382 static final private boolean jj_3R_117() {
3387 if (jj_3R_124()) return true;
3388 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3389 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3390 if (jj_3R_116()) return true;
3391 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3395 static final private boolean jj_3R_130() {
3396 if (jj_scan_token(STAR)) return true;
3397 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3401 static final private boolean jj_3R_122() {
3408 if (jj_3R_132()) return true;
3409 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3410 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3411 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3412 if (jj_3R_121()) return true;
3413 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3417 static final private boolean jj_3R_135() {
3418 if (jj_scan_token(INCR)) return true;
3419 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3420 if (jj_3R_138()) return true;
3421 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3425 static final private boolean jj_3R_134() {
3426 if (jj_scan_token(MINUS)) return true;
3427 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3431 static final private boolean jj_3R_114() {
3432 if (jj_scan_token(LE)) return true;
3433 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3437 static final private boolean jj_3_7() {
3438 if (jj_3R_41()) return true;
3439 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3443 static final private boolean jj_3R_79() {
3444 if (jj_scan_token(LSHIFTASSIGN)) return true;
3445 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3449 static final private boolean jj_3R_129() {
3450 if (jj_3R_137()) return true;
3451 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3455 static final private boolean jj_3R_118() {
3456 if (jj_scan_token(LSHIFT)) return true;
3457 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3461 static final private boolean jj_3R_128() {
3462 if (jj_3R_136()) return true;
3463 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3467 static final private boolean jj_3R_111() {
3474 if (jj_3R_120()) return true;
3475 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3476 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3477 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3478 if (jj_3R_110()) return true;
3479 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3483 static final private boolean jj_3R_113() {
3484 if (jj_scan_token(GT)) return true;
3485 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3489 static final private boolean jj_3R_109() {
3490 if (jj_scan_token(NE)) return true;
3491 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3495 static final private boolean jj_3R_127() {
3496 if (jj_3R_135()) return true;
3497 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3501 static final private boolean jj_3R_133() {
3502 if (jj_scan_token(PLUS)) return true;
3503 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3507 static final private boolean jj_3R_126() {
3512 if (jj_3R_134()) return true;
3513 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3514 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3515 if (jj_3R_121()) return true;
3516 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3520 static final private boolean jj_3R_121() {
3531 if (jj_3R_129()) return true;
3532 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3533 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3534 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3535 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3536 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3540 static final private boolean jj_3R_125() {
3541 if (jj_scan_token(AT)) return true;
3542 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3543 if (jj_3R_121()) return true;
3544 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3548 static final private boolean jj_3R_112() {
3549 if (jj_scan_token(LT)) return true;
3550 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3554 static final private boolean jj_3R_108() {
3555 if (jj_scan_token(EQ)) return true;
3556 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3560 static final private boolean jj_3R_107() {
3569 if (jj_3R_115()) return true;
3570 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3571 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3572 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3573 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3574 if (jj_3R_106()) return true;
3575 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3579 static final private boolean jj_3R_105() {
3584 if (jj_3R_109()) return true;
3585 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3586 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3587 if (jj_3R_104()) return true;
3588 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3592 static final private boolean jj_3R_116() {
3593 if (jj_3R_121()) return true;
3594 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3598 if (jj_3R_122()) { jj_scanpos = xsp; break; }
3599 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3604 static final private boolean jj_3R_78() {
3605 if (jj_scan_token(MINUSASSIGN)) return true;
3606 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3610 static final private boolean jj_3R_110() {
3611 if (jj_3R_116()) return true;
3612 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3616 if (jj_3R_117()) { jj_scanpos = xsp; break; }
3617 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3622 static final private boolean jj_3R_103() {
3623 if (jj_scan_token(BIT_AND)) return true;
3624 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3625 if (jj_3R_102()) return true;
3626 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3630 static final private boolean jj_3R_106() {
3631 if (jj_3R_110()) return true;
3632 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3636 if (jj_3R_111()) { jj_scanpos = xsp; break; }
3637 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3642 static final private boolean jj_3R_77() {
3643 if (jj_scan_token(PLUSASSIGN)) return true;
3644 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3648 static final private boolean jj_3R_98() {
3649 if (jj_scan_token(BIT_OR)) return true;
3650 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3651 if (jj_3R_97()) return true;
3652 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3656 static final private boolean jj_3R_101() {
3657 if (jj_scan_token(XOR)) return true;
3658 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3659 if (jj_3R_100()) return true;
3660 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3664 static final private boolean jj_3R_104() {
3665 if (jj_3R_106()) return true;
3666 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3670 if (jj_3R_107()) { jj_scanpos = xsp; break; }
3671 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3676 static final private boolean jj_3R_91() {
3677 if (jj_scan_token(_ORL)) return true;
3678 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3682 static final private boolean jj_3R_96() {
3683 if (jj_scan_token(_ANDL)) return true;
3684 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3688 static final private boolean jj_3R_94() {
3689 if (jj_scan_token(DOT)) return true;
3690 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3691 if (jj_3R_93()) return true;
3692 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3696 static final private boolean jj_3R_102() {
3697 if (jj_3R_104()) return true;
3698 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3702 if (jj_3R_105()) { jj_scanpos = xsp; break; }
3703 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3708 static final private boolean jj_3R_90() {
3709 if (jj_scan_token(SC_OR)) return true;
3710 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3714 static final private boolean jj_3R_76() {
3715 if (jj_scan_token(REMASSIGN)) return true;
3716 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3720 static final private boolean jj_3R_100() {
3721 if (jj_3R_102()) return true;
3722 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3726 if (jj_3R_103()) { jj_scanpos = xsp; break; }
3727 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3732 static final private boolean jj_3R_72() {
3737 if (jj_3R_91()) return true;
3738 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3739 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3740 if (jj_3R_71()) return true;
3741 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3745 static final private boolean jj_3R_95() {
3746 if (jj_scan_token(SC_AND)) return true;
3747 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3751 static final private boolean jj_3R_89() {
3756 if (jj_3R_96()) return true;
3757 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3758 } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3759 if (jj_3R_88()) return true;
3760 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3764 static final private boolean jj_3R_97() {
3765 if (jj_3R_100()) return true;
3766 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3770 if (jj_3R_101()) { jj_scanpos = xsp; break; }
3771 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3776 static final private boolean jj_3R_67() {
3777 if (jj_scan_token(HOOK)) return true;
3778 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3779 if (jj_3R_37()) return true;
3780 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3781 if (jj_scan_token(COLON)) return true;
3782 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3783 if (jj_3R_59()) return true;
3784 if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
3788 static private boolean jj_initialized_once = false;
3789 static public PHPParserTokenManager token_source;
3790 static SimpleCharStream jj_input_stream;
3791 static public Token token, jj_nt;
3792 static private int jj_ntk;
3793 static private Token jj_scanpos, jj_lastpos;
3794 static private int jj_la;
3795 static public boolean lookingAhead = false;
3796 static private boolean jj_semLA;
3797 static private int jj_gen;
3798 static final private int[] jj_la1 = new int[95];
3799 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,};
3800 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,};
3801 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,};
3802 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,};
3803 static final private JJCalls[] jj_2_rtns = new JJCalls[7];
3804 static private boolean jj_rescan = false;
3805 static private int jj_gc = 0;
3807 public PHPParser(java.io.InputStream stream) {
3808 if (jj_initialized_once) {
3809 System.out.println("ERROR: Second call to constructor of static parser. You must");
3810 System.out.println(" either use ReInit() or set the JavaCC option STATIC to false");
3811 System.out.println(" during parser generation.");
3814 jj_initialized_once = true;
3815 jj_input_stream = new SimpleCharStream(stream, 1, 1);
3816 token_source = new PHPParserTokenManager(jj_input_stream);
3817 token = new Token();
3820 for (int i = 0; i < 95; i++) jj_la1[i] = -1;
3821 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3824 static public void ReInit(java.io.InputStream stream) {
3825 jj_input_stream.ReInit(stream, 1, 1);
3826 token_source.ReInit(jj_input_stream);
3827 token = new Token();
3830 for (int i = 0; i < 95; i++) jj_la1[i] = -1;
3831 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3834 public PHPParser(java.io.Reader stream) {
3835 if (jj_initialized_once) {
3836 System.out.println("ERROR: Second call to constructor of static parser. You must");
3837 System.out.println(" either use ReInit() or set the JavaCC option STATIC to false");
3838 System.out.println(" during parser generation.");
3841 jj_initialized_once = true;
3842 jj_input_stream = new SimpleCharStream(stream, 1, 1);
3843 token_source = new PHPParserTokenManager(jj_input_stream);
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 static public void ReInit(java.io.Reader stream) {
3852 jj_input_stream.ReInit(stream, 1, 1);
3853 token_source.ReInit(jj_input_stream);
3854 token = new Token();
3857 for (int i = 0; i < 95; i++) jj_la1[i] = -1;
3858 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3861 public PHPParser(PHPParserTokenManager tm) {
3862 if (jj_initialized_once) {
3863 System.out.println("ERROR: Second call to constructor of static parser. You must");
3864 System.out.println(" either use ReInit() or set the JavaCC option STATIC to false");
3865 System.out.println(" during parser generation.");
3868 jj_initialized_once = true;
3870 token = new Token();
3873 for (int i = 0; i < 95; i++) jj_la1[i] = -1;
3874 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3877 public void ReInit(PHPParserTokenManager tm) {
3879 token = new Token();
3882 for (int i = 0; i < 95; i++) jj_la1[i] = -1;
3883 for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
3886 static final private Token jj_consume_token(int kind) throws ParseException {
3888 if ((oldToken = token).next != null) token = token.next;
3889 else token = token.next = token_source.getNextToken();
3891 if (token.kind == kind) {
3893 if (++jj_gc > 100) {
3895 for (int i = 0; i < jj_2_rtns.length; i++) {
3896 JJCalls c = jj_2_rtns[i];
3898 if (c.gen < jj_gen) c.first = null;
3907 throw generateParseException();
3910 static final private boolean jj_scan_token(int kind) {
3911 if (jj_scanpos == jj_lastpos) {
3913 if (jj_scanpos.next == null) {
3914 jj_lastpos = jj_scanpos = jj_scanpos.next = token_source.getNextToken();
3916 jj_lastpos = jj_scanpos = jj_scanpos.next;
3919 jj_scanpos = jj_scanpos.next;
3922 int i = 0; Token tok = token;
3923 while (tok != null && tok != jj_scanpos) { i++; tok = tok.next; }
3924 if (tok != null) jj_add_error_token(kind, i);
3926 return (jj_scanpos.kind != kind);
3929 static final public Token getNextToken() {
3930 if (token.next != null) token = token.next;
3931 else token = token.next = token_source.getNextToken();
3937 static final public Token getToken(int index) {
3938 Token t = lookingAhead ? jj_scanpos : token;
3939 for (int i = 0; i < index; i++) {
3940 if (t.next != null) t = t.next;
3941 else t = t.next = token_source.getNextToken();
3946 static final private int jj_ntk() {
3947 if ((jj_nt=token.next) == null)
3948 return (jj_ntk = (token.next=token_source.getNextToken()).kind);
3950 return (jj_ntk = jj_nt.kind);
3953 static private java.util.Vector jj_expentries = new java.util.Vector();
3954 static private int[] jj_expentry;
3955 static private int jj_kind = -1;
3956 static private int[] jj_lasttokens = new int[100];
3957 static private int jj_endpos;
3959 static private void jj_add_error_token(int kind, int pos) {
3960 if (pos >= 100) return;
3961 if (pos == jj_endpos + 1) {
3962 jj_lasttokens[jj_endpos++] = kind;
3963 } else if (jj_endpos != 0) {
3964 jj_expentry = new int[jj_endpos];
3965 for (int i = 0; i < jj_endpos; i++) {
3966 jj_expentry[i] = jj_lasttokens[i];
3968 boolean exists = false;
3969 for (java.util.Enumeration enum = jj_expentries.elements(); enum.hasMoreElements();) {
3970 int[] oldentry = (int[])(enum.nextElement());
3971 if (oldentry.length == jj_expentry.length) {
3973 for (int i = 0; i < jj_expentry.length; i++) {
3974 if (oldentry[i] != jj_expentry[i]) {
3982 if (!exists) jj_expentries.addElement(jj_expentry);
3983 if (pos != 0) jj_lasttokens[(jj_endpos = pos) - 1] = kind;
3987 static final public ParseException generateParseException() {
3988 jj_expentries.removeAllElements();
3989 boolean[] la1tokens = new boolean[128];
3990 for (int i = 0; i < 128; i++) {
3991 la1tokens[i] = false;
3994 la1tokens[jj_kind] = true;
3997 for (int i = 0; i < 95; i++) {
3998 if (jj_la1[i] == jj_gen) {
3999 for (int j = 0; j < 32; j++) {
4000 if ((jj_la1_0[i] & (1<<j)) != 0) {
4001 la1tokens[j] = true;
4003 if ((jj_la1_1[i] & (1<<j)) != 0) {
4004 la1tokens[32+j] = true;
4006 if ((jj_la1_2[i] & (1<<j)) != 0) {
4007 la1tokens[64+j] = true;
4009 if ((jj_la1_3[i] & (1<<j)) != 0) {
4010 la1tokens[96+j] = true;
4015 for (int i = 0; i < 128; i++) {
4017 jj_expentry = new int[1];
4019 jj_expentries.addElement(jj_expentry);
4024 jj_add_error_token(0, 0);
4025 int[][] exptokseq = new int[jj_expentries.size()][];
4026 for (int i = 0; i < jj_expentries.size(); i++) {
4027 exptokseq[i] = (int[])jj_expentries.elementAt(i);
4029 return new ParseException(token, exptokseq, tokenImage);
4032 static final public void enable_tracing() {
4035 static final public void disable_tracing() {
4038 static final private void jj_rescan_token() {
4040 for (int i = 0; i < 7; i++) {
4041 JJCalls p = jj_2_rtns[i];
4043 if (p.gen > jj_gen) {
4044 jj_la = p.arg; jj_lastpos = jj_scanpos = p.first;
4046 case 0: jj_3_1(); break;
4047 case 1: jj_3_2(); break;
4048 case 2: jj_3_3(); break;
4049 case 3: jj_3_4(); break;
4050 case 4: jj_3_5(); break;
4051 case 5: jj_3_6(); break;
4052 case 6: jj_3_7(); break;
4056 } while (p != null);
4061 static final private void jj_save(int index, int xla) {
4062 JJCalls p = jj_2_rtns[index];
4063 while (p.gen > jj_gen) {
4064 if (p.next == null) { p = p.next = new JJCalls(); break; }
4067 p.gen = jj_gen + xla - jj_la; p.first = token; p.arg = xla;
4070 static final class JJCalls {