geirm 00/11/11 14:47:58
Modified: src/java/org/apache/velocity/runtime/parser Parser.java
Parser.jj ParserConstants.java
ParserTokenManager.java ParserTreeConstants.java
Log:
Camp followers... (escape refactoring in Parser.jjt)
Revision Changes Path
1.30 +552 -483
jakarta-velocity/src/java/org/apache/velocity/runtime/parser/Parser.java
Index: Parser.java
===================================================================
RCS file:
/home/cvs/jakarta-velocity/src/java/org/apache/velocity/runtime/parser/Parser.java,v
retrieving revision 1.29
retrieving revision 1.30
diff -u -r1.29 -r1.30
--- Parser.java 2000/11/08 02:52:17 1.29
+++ Parser.java 2000/11/11 22:47:57 1.30
@@ -20,7 +20,7 @@
*
* @author <a href="mailto:[EMAIL PROTECTED]">Jason van Zyl</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Geir Magnusson Jr.</a>
- * @version $Id: Parser.java,v 1.29 2000/11/08 02:52:17 jon Exp $
+ * @version $Id: Parser.java,v 1.30 2000/11/11 22:47:57 geirm Exp $
*/
public class Parser/*@bgen(jjtree)*/implements ParserTreeConstants, ParserConstants
{/*@bgen(jjtree)*/
protected JJTParserState jjtree = new JJTParserState();/**
@@ -68,7 +68,7 @@
catch (ParseException pe)
{
Runtime.error ("Parser Exception: " + StringUtils.stackTrace(pe));
- throw new ParseException (pe.currentToken,
+ throw new ParseException (pe.currentToken,
pe.expectedTokenSequences, pe.tokenImage);
}
catch (Exception e)
@@ -105,6 +105,52 @@
return false;
}
+ /**
+ * Produces a processed output for an escaped control or pluggable directive
+ */
+ private String escapedDirective( String strImage )
+ {
+ int iLast = strImage.lastIndexOf("\\");
+
+ String strDirective = strImage.substring(iLast + 1);
+
+ boolean bRecognizedDirective = false;
+
+ /*
+ * is this a PD or a control directive?
+ */
+
+ if ( isDirective( strDirective.substring(1)))
+ {
+ bRecognizedDirective = true;
+ }
+ else
+ {
+ /* order for speed? */
+
+ if ( strDirective.substring(1).equals("if")
+ || strDirective.substring(1).equals("end")
+ || strDirective.substring(1).equals("set")
+ || strDirective.substring(1).equals("else")
+ || strDirective.substring(1).equals("elseif")
+ || strDirective.substring(1).equals("stop")
+ )
+ {
+ bRecognizedDirective = true;
+ }
+ }
+
+ /*
+ * if so, make the proper prefix string (let the escapes do their thing..)
+ * otherwise, just return what it is..
+ */
+
+ if (bRecognizedDirective)
+ return ( strImage.substring(0,iLast/2) + strDirective);
+ else
+ return ( strImage );
+ }
+
/**
* This method is what starts the whole parsing
* process. After the parsing is complete and
@@ -125,20 +171,15 @@
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LPAREN:
case RPAREN:
- case ESCAPE_SET_DIRECTIVE:
- case ESCAPE_IF_DIRECTIVE:
- case ESCAPE_END_DIRECTIVE:
- case ESCAPE_ELSEIF_DIRECTIVE:
- case ESCAPE_ELSE_DIRECTIVE:
- case ESCAPE_STOP_DIRECTIVE:
+ case ESCAPE_DIRECTIVE:
case SET_DIRECTIVE:
+ case DOUBLE_ESCAPE:
case ESCAPE:
case TEXT:
case SINGLE_LINE_COMMENT:
case FORMAL_COMMENT:
case MULTI_LINE_COMMENT:
case STRING_LITERAL:
- case NEWLINE:
case IF_DIRECTIVE:
case STOP_DIRECTIVE:
case NUMBER_LITERAL:
@@ -204,21 +245,20 @@
case SET_DIRECTIVE:
SetDirective();
break;
+ case ESCAPE_DIRECTIVE:
+ EscapedDirective();
+ break;
+ case DOUBLE_ESCAPE:
+ Escape();
+ break;
case WORD:
Directive();
break;
case LPAREN:
case RPAREN:
- case ESCAPE_SET_DIRECTIVE:
- case ESCAPE_IF_DIRECTIVE:
- case ESCAPE_END_DIRECTIVE:
- case ESCAPE_ELSEIF_DIRECTIVE:
- case ESCAPE_ELSE_DIRECTIVE:
- case ESCAPE_STOP_DIRECTIVE:
case ESCAPE:
case TEXT:
case STRING_LITERAL:
- case NEWLINE:
case NUMBER_LITERAL:
case DOT:
Text();
@@ -230,6 +270,93 @@
}
}
+/**
+ * used to separate the notion of a valid directive that has been
+ * escaped, versus something that looks like a directive and
+ * is just schmoo. This is important to do as a separate production
+ * that creates a node, because we want this, in either case, to stop
+ * the further parsing of the Directive() tree.
+ */
+ final public void EscapedDirective() throws ParseException {
+ /*@bgen(jjtree) EscapedDirective */
+ ASTEscapedDirective jjtn000 = new ASTEscapedDirective(this, JJTESCAPEDDIRECTIVE);
+ boolean jjtc000 = true;
+ jjtree.openNodeScope(jjtn000);
+ try {
+ Token t = null;
+ t = jj_consume_token(ESCAPE_DIRECTIVE);
+ jjtree.closeNodeScope(jjtn000, true);
+ jjtc000 = false;
+ /*
+ * churn and burn..
+ */
+ t.image = escapedDirective( t.image );
+ } finally {
+ if (jjtc000) {
+ jjtree.closeNodeScope(jjtn000, true);
+ }
+ }
+ }
+
+/**
+ * Used to catch and process escape sequences in grammatical constructs
+ * as escapes outside of VTL are just characters. Right now we hav both
+ * this and the EscapeDirective() construction because in the EscapeDirective()
+ * case, we want to suck in the #<directive> and here we don't. We just want
+ * the escapes to render correctly
+ */
+ final public void Escape() throws ParseException {
+ /*@bgen(jjtree) Escape */
+ ASTEscape jjtn000 = new ASTEscape(this, JJTESCAPE);
+ boolean jjtc000 = true;
+ jjtree.openNodeScope(jjtn000);
+ try {
+ Token t = null;
+ int iCount = 0;
+ boolean bControl = false;
+ label_2:
+ while (true) {
+ t = jj_consume_token(DOUBLE_ESCAPE);
+ iCount++;
+ if (jj_2_1(2)) {
+ ;
+ } else {
+ break label_2;
+ }
+ }
+ jjtree.closeNodeScope(jjtn000, true);
+ jjtc000 = false;
+ /*
+ * first, check to see if we have a control directive
+ */
+ switch(t.next.kind ) {
+ case IF_DIRECTIVE :
+ case ELSE_DIRECTIVE :
+ case ELSEIF_DIRECTIVE :
+ case END :
+ case STOP_DIRECTIVE :
+ bControl = true;
+ break;
+ }
+
+ /*
+ * if that failed, lets lookahead to see if we matched a PD
+ */
+
+ if ( isDirective( t.next.image.substring(1)))
+ bControl = true;
+
+ t.image = "";
+
+ for( int i = 0; i < iCount; i++)
+ t.image += (bControl ? "\\" : "\\\\");
+ } finally {
+ if (jjtc000) {
+ jjtree.closeNodeScope(jjtn000, true);
+ }
+ }
+ }
+
final public void Comment() throws ParseException {
/*@bgen(jjtree) Comment */
ASTComment jjtn000 = new ASTComment(this, JJTCOMMENT);
@@ -362,49 +489,36 @@
/*@bgen(jjtree) Directive */
ASTDirective jjtn000 = new ASTDirective(this, JJTDIRECTIVE);
boolean jjtc000 = true;
- jjtree.openNodeScope(jjtn000);Token t;
+ jjtree.openNodeScope(jjtn000);Token t = null;
Directive d;
try {
/*
- * There are two things we do here :
- * 1) If the first char is a \, then this has been escaped, so don't
- * continue. We will take care of the rest in ASTDirective.java
- * 2) Get the directive identifier and check to see if this is a
directive.
- * Note that because '#' is a <MORE> token, the identifier is
preceeded by the '#'
+ * note that if we were escaped, that is now handled by
EscapedDirective()
*/
t = jj_consume_token(WORD);
+ d = (Directive) directives.get(t.image.substring(1));
+
/*
- * We need to count the preceeding \'s. If t starts with an odd number of
\'s...
+ * set the directive name from here. No reason for the thing to know
about parser tokens
*/
-
- int i = 0;
- int iLen = t.image.length();
- while( i < iLen && t.image.charAt(i) == '\\' )
- i++;
+ jjtn000.setDirectiveName( t.image.substring(1) );
- if( t.image.startsWith("\\") && (i % 2) != 0 )
+ if (d == null)
{
token_source.stateStackPop();
token_source.inDirective = false;
{if (true) return jjtn000;}
}
- else
- {
- d = (Directive) directives.get(t.image.substring(i+1));
- if (d == null)
- {
- token_source.stateStackPop();
- token_source.inDirective = false;
- {if (true) return jjtn000;}
- }
- }
+ /*
+ * now, switch us out of PRE_DIRECTIVE
+ */
- token_source.SwitchTo( DIRECTIVE );
+ token_source.SwitchTo(DIRECTIVE);
jj_consume_token(LPAREN);
- label_2:
+ label_3:
while (true) {
DirectiveArg();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -418,7 +532,7 @@
break;
default:
jj_la1[4] = jj_gen;
- break label_2;
+ break label_3;
}
}
jj_consume_token(RPAREN);
@@ -428,26 +542,21 @@
boolean jjtc001 = true;
jjtree.openNodeScope(jjtn001);
try {
- label_3:
+ label_4:
while (true) {
Statement();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LPAREN:
case RPAREN:
- case ESCAPE_SET_DIRECTIVE:
- case ESCAPE_IF_DIRECTIVE:
- case ESCAPE_END_DIRECTIVE:
- case ESCAPE_ELSEIF_DIRECTIVE:
- case ESCAPE_ELSE_DIRECTIVE:
- case ESCAPE_STOP_DIRECTIVE:
+ case ESCAPE_DIRECTIVE:
case SET_DIRECTIVE:
+ case DOUBLE_ESCAPE:
case ESCAPE:
case TEXT:
case SINGLE_LINE_COMMENT:
case FORMAL_COMMENT:
case MULTI_LINE_COMMENT:
case STRING_LITERAL:
- case NEWLINE:
case IF_DIRECTIVE:
case STOP_DIRECTIVE:
case NUMBER_LITERAL:
@@ -459,7 +568,7 @@
break;
default:
jj_la1[5] = jj_gen;
- break label_3;
+ break label_4;
}
}
} catch (Throwable jjte001) {
@@ -481,7 +590,7 @@
jjtree.closeNodeScope(jjtn001, true);
}
}
- EndStatement();
+ jj_consume_token(END);
jjtree.closeNodeScope(jjtn000, true);
jjtc000 = false;
{if (true) return jjtn000;}
@@ -523,7 +632,7 @@
case IDENTIFIER:
case LCURLY:
Parameter();
- label_4:
+ label_5:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
@@ -531,7 +640,7 @@
break;
default:
jj_la1[6] = jj_gen;
- break label_4;
+ break label_5;
}
jj_consume_token(COMMA);
Parameter();
@@ -618,7 +727,7 @@
case IDENTIFIER:
case LCURLY:
Parameter();
- label_5:
+ label_6:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case COMMA:
@@ -626,7 +735,7 @@
break;
default:
jj_la1[9] = jj_gen;
- break label_5;
+ break label_6;
}
jj_consume_token(COMMA);
Parameter();
@@ -638,23 +747,23 @@
}
jj_consume_token(REFMOD2_RPAREN);
} catch (Throwable jjte000) {
- if (jjtc000) {
- jjtree.clearNodeScope(jjtn000);
- jjtc000 = false;
- } else {
- jjtree.popNode();
- }
- if (jjte000 instanceof ParseException) {
- {if (true) throw (ParseException)jjte000;}
- }
- if (jjte000 instanceof RuntimeException) {
- {if (true) throw (RuntimeException)jjte000;}
- }
- {if (true) throw (Error)jjte000;}
+ if (jjtc000) {
+ jjtree.clearNodeScope(jjtn000);
+ jjtc000 = false;
+ } else {
+ jjtree.popNode();
+ }
+ if (jjte000 instanceof ParseException) {
+ {if (true) throw (ParseException)jjte000;}
+ }
+ if (jjte000 instanceof RuntimeException) {
+ {if (true) throw (RuntimeException)jjte000;}
+ }
+ {if (true) throw (Error)jjte000;}
} finally {
- if (jjtc000) {
- jjtree.closeNodeScope(jjtn000, true);
- }
+ if (jjtc000) {
+ jjtree.closeNodeScope(jjtn000, true);
+ }
}
}
@@ -681,15 +790,15 @@
jj_la1[12] = jj_gen;
;
}
- label_6:
+ label_7:
while (true) {
- if (jj_2_1(2)) {
+ if (jj_2_2(2)) {
;
} else {
- break label_6;
+ break label_7;
}
jj_consume_token(DOT);
- if (jj_2_2(3)) {
+ if (jj_2_3(3)) {
Method();
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -766,18 +875,15 @@
* unscathed.
*/
final public void Text() throws ParseException {
- /*@bgen(jjtree) Text */
- ASTText jjtn000 = new ASTText(this, JJTTEXT);
- boolean jjtc000 = true;
- jjtree.openNodeScope(jjtn000);Token t;
+ /*@bgen(jjtree) Text */
+ ASTText jjtn000 = new ASTText(this, JJTTEXT);
+ boolean jjtc000 = true;
+ jjtree.openNodeScope(jjtn000);
try {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case TEXT:
jj_consume_token(TEXT);
break;
- case NEWLINE:
- jj_consume_token(NEWLINE);
- break;
case DOT:
jj_consume_token(DOT);
break;
@@ -796,24 +902,6 @@
case ESCAPE:
jj_consume_token(ESCAPE);
break;
- case ESCAPE_SET_DIRECTIVE:
- jj_consume_token(ESCAPE_SET_DIRECTIVE);
- break;
- case ESCAPE_IF_DIRECTIVE:
- jj_consume_token(ESCAPE_IF_DIRECTIVE);
- break;
- case ESCAPE_END_DIRECTIVE:
- jj_consume_token(ESCAPE_END_DIRECTIVE);
- break;
- case ESCAPE_ELSEIF_DIRECTIVE:
- jj_consume_token(ESCAPE_ELSEIF_DIRECTIVE);
- break;
- case ESCAPE_ELSE_DIRECTIVE:
- jj_consume_token(ESCAPE_ELSE_DIRECTIVE);
- break;
- case ESCAPE_STOP_DIRECTIVE:
- jj_consume_token(ESCAPE_STOP_DIRECTIVE);
- break;
default:
jj_la1[15] = jj_gen;
jj_consume_token(-1);
@@ -845,26 +933,21 @@
boolean jjtc001 = true;
jjtree.openNodeScope(jjtn001);
try {
- label_7:
+ label_8:
while (true) {
Statement();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LPAREN:
case RPAREN:
- case ESCAPE_SET_DIRECTIVE:
- case ESCAPE_IF_DIRECTIVE:
- case ESCAPE_END_DIRECTIVE:
- case ESCAPE_ELSEIF_DIRECTIVE:
- case ESCAPE_ELSE_DIRECTIVE:
- case ESCAPE_STOP_DIRECTIVE:
+ case ESCAPE_DIRECTIVE:
case SET_DIRECTIVE:
+ case DOUBLE_ESCAPE:
case ESCAPE:
case TEXT:
case SINGLE_LINE_COMMENT:
case FORMAL_COMMENT:
case MULTI_LINE_COMMENT:
case STRING_LITERAL:
- case NEWLINE:
case IF_DIRECTIVE:
case STOP_DIRECTIVE:
case NUMBER_LITERAL:
@@ -876,7 +959,7 @@
break;
default:
jj_la1[16] = jj_gen;
- break label_7;
+ break label_8;
}
}
} catch (Throwable jjte001) {
@@ -900,7 +983,7 @@
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case ELSEIF_DIRECTIVE:
- label_8:
+ label_9:
while (true) {
ElseIfStatement();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -909,7 +992,7 @@
break;
default:
jj_la1[17] = jj_gen;
- break label_8;
+ break label_9;
}
}
break;
@@ -925,7 +1008,7 @@
jj_la1[19] = jj_gen;
;
}
- EndStatement();
+ jj_consume_token(END);
} catch (Throwable jjte000) {
if (jjtc000) {
jjtree.clearNodeScope(jjtn000);
@@ -947,20 +1030,6 @@
}
}
- final public void EndStatement() throws ParseException {
- /*@bgen(jjtree) EndStatement */
- ASTEndStatement jjtn000 = new ASTEndStatement(this, JJTENDSTATEMENT);
- boolean jjtc000 = true;
- jjtree.openNodeScope(jjtn000);
- try {
- jj_consume_token(END);
- } finally {
- if (jjtc000) {
- jjtree.closeNodeScope(jjtn000, true);
- }
- }
- }
-
final public void ElseStatement() throws ParseException {
/*@bgen(jjtree) ElseStatement */
ASTElseStatement jjtn000 = new ASTElseStatement(this, JJTELSESTATEMENT);
@@ -972,26 +1041,21 @@
boolean jjtc001 = true;
jjtree.openNodeScope(jjtn001);
try {
- label_9:
+ label_10:
while (true) {
Statement();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LPAREN:
case RPAREN:
- case ESCAPE_SET_DIRECTIVE:
- case ESCAPE_IF_DIRECTIVE:
- case ESCAPE_END_DIRECTIVE:
- case ESCAPE_ELSEIF_DIRECTIVE:
- case ESCAPE_ELSE_DIRECTIVE:
- case ESCAPE_STOP_DIRECTIVE:
+ case ESCAPE_DIRECTIVE:
case SET_DIRECTIVE:
+ case DOUBLE_ESCAPE:
case ESCAPE:
case TEXT:
case SINGLE_LINE_COMMENT:
case FORMAL_COMMENT:
case MULTI_LINE_COMMENT:
case STRING_LITERAL:
- case NEWLINE:
case IF_DIRECTIVE:
case STOP_DIRECTIVE:
case NUMBER_LITERAL:
@@ -1003,7 +1067,7 @@
break;
default:
jj_la1[20] = jj_gen;
- break label_9;
+ break label_10;
}
}
} catch (Throwable jjte001) {
@@ -1026,23 +1090,23 @@
}
}
} catch (Throwable jjte000) {
- if (jjtc000) {
- jjtree.clearNodeScope(jjtn000);
- jjtc000 = false;
- } else {
- jjtree.popNode();
- }
- if (jjte000 instanceof ParseException) {
- {if (true) throw (ParseException)jjte000;}
- }
- if (jjte000 instanceof RuntimeException) {
- {if (true) throw (RuntimeException)jjte000;}
- }
- {if (true) throw (Error)jjte000;}
+ if (jjtc000) {
+ jjtree.clearNodeScope(jjtn000);
+ jjtc000 = false;
+ } else {
+ jjtree.popNode();
+ }
+ if (jjte000 instanceof ParseException) {
+ {if (true) throw (ParseException)jjte000;}
+ }
+ if (jjte000 instanceof RuntimeException) {
+ {if (true) throw (RuntimeException)jjte000;}
+ }
+ {if (true) throw (Error)jjte000;}
} finally {
- if (jjtc000) {
- jjtree.closeNodeScope(jjtn000, true);
- }
+ if (jjtc000) {
+ jjtree.closeNodeScope(jjtn000, true);
+ }
}
}
@@ -1060,26 +1124,21 @@
boolean jjtc001 = true;
jjtree.openNodeScope(jjtn001);
try {
- label_10:
+ label_11:
while (true) {
Statement();
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LPAREN:
case RPAREN:
- case ESCAPE_SET_DIRECTIVE:
- case ESCAPE_IF_DIRECTIVE:
- case ESCAPE_END_DIRECTIVE:
- case ESCAPE_ELSEIF_DIRECTIVE:
- case ESCAPE_ELSE_DIRECTIVE:
- case ESCAPE_STOP_DIRECTIVE:
+ case ESCAPE_DIRECTIVE:
case SET_DIRECTIVE:
+ case DOUBLE_ESCAPE:
case ESCAPE:
case TEXT:
case SINGLE_LINE_COMMENT:
case FORMAL_COMMENT:
case MULTI_LINE_COMMENT:
case STRING_LITERAL:
- case NEWLINE:
case IF_DIRECTIVE:
case STOP_DIRECTIVE:
case NUMBER_LITERAL:
@@ -1091,7 +1150,7 @@
break;
default:
jj_la1[21] = jj_gen;
- break label_10;
+ break label_11;
}
}
} catch (Throwable jjte001) {
@@ -1193,7 +1252,7 @@
boolean jjtc000 = true;
jjtree.openNodeScope(jjtn000);
try {
- if (jj_2_3(2147483647)) {
+ if (jj_2_4(2147483647)) {
Assignment();
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -1267,7 +1326,7 @@
final public void ConditionalOrExpression() throws ParseException {
ConditionalAndExpression();
- label_11:
+ label_12:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LOGICAL_OR:
@@ -1275,7 +1334,7 @@
break;
default:
jj_la1[24] = jj_gen;
- break label_11;
+ break label_12;
}
jj_consume_token(LOGICAL_OR);
ASTOrNode jjtn001 = new ASTOrNode(this, JJTORNODE);
@@ -1307,7 +1366,7 @@
final public void ConditionalAndExpression() throws ParseException {
EqualityExpression();
- label_12:
+ label_13:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LOGICAL_AND:
@@ -1315,7 +1374,7 @@
break;
default:
jj_la1[25] = jj_gen;
- break label_12;
+ break label_13;
}
jj_consume_token(LOGICAL_AND);
ASTAndNode jjtn001 = new ASTAndNode(this, JJTANDNODE);
@@ -1347,7 +1406,7 @@
final public void EqualityExpression() throws ParseException {
RelationalExpression();
- label_13:
+ label_14:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LOGICAL_EQUALS:
@@ -1356,7 +1415,7 @@
break;
default:
jj_la1[26] = jj_gen;
- break label_13;
+ break label_14;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LOGICAL_EQUALS:
@@ -1423,7 +1482,7 @@
final public void RelationalExpression() throws ParseException {
AdditiveExpression();
- label_14:
+ label_15:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LOGICAL_LT:
@@ -1434,7 +1493,7 @@
break;
default:
jj_la1[28] = jj_gen;
- break label_14;
+ break label_15;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LOGICAL_LT:
@@ -1555,7 +1614,7 @@
final public void AdditiveExpression() throws ParseException {
MultiplicativeExpression();
- label_15:
+ label_16:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case MINUS:
@@ -1564,7 +1623,7 @@
break;
default:
jj_la1[30] = jj_gen;
- break label_15;
+ break label_16;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case PLUS:
@@ -1631,7 +1690,7 @@
final public void MultiplicativeExpression() throws ParseException {
UnaryExpression();
- label_16:
+ label_17:
while (true) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case MULTIPLY:
@@ -1641,7 +1700,7 @@
break;
default:
jj_la1[32] = jj_gen;
- break label_16;
+ break label_17;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case MULTIPLY:
@@ -1833,589 +1892,602 @@
return retval;
}
- final private boolean jj_3R_56() {
- if (jj_scan_token(COMMA)) return true;
+ final private boolean jj_2_4(int xla) {
+ jj_la = xla; jj_lastpos = jj_scanpos = token;
+ boolean retval = !jj_3_4();
+ jj_save(3, xla);
+ return retval;
+ }
+
+ final private boolean jj_3R_23() {
+ if (jj_3R_31()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
+ final private boolean jj_3R_20() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_23()) {
+ jj_scanpos = xsp;
+ if (jj_3R_24()) {
+ jj_scanpos = xsp;
+ if (jj_3R_25()) {
+ jj_scanpos = xsp;
+ if (jj_3R_26()) {
+ jj_scanpos = xsp;
+ if (jj_3R_27()) {
+ jj_scanpos = xsp;
+ if (jj_3R_28()) {
+ jj_scanpos = xsp;
if (jj_3R_29()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_54() {
- if (jj_3R_57()) return true;
+ final private boolean jj_3R_75() {
+ if (jj_3R_20()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_58()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
return false;
}
- final private boolean jj_3_2() {
- if (jj_3R_18()) return true;
+ final private boolean jj_3R_78() {
+ if (jj_scan_token(MODULUS)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_70()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_55() {
- if (jj_scan_token(LOGICAL_AND)) return true;
+ final private boolean jj_3R_74() {
+ if (jj_scan_token(LOGICAL_NOT)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_54()) return true;
+ if (jj_3R_70()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_21() {
- if (jj_3R_29()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ final private boolean jj_3R_70() {
Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_56()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
+ xsp = jj_scanpos;
+ if (jj_3R_74()) {
+ jj_scanpos = xsp;
+ if (jj_3R_75()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_52() {
- if (jj_3R_54()) return true;
+ final private boolean jj_3R_77() {
+ if (jj_scan_token(DIVIDE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_55()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
+ if (jj_3R_70()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_35() {
- if (jj_scan_token(FALSE)) return true;
+ final private boolean jj_3R_18() {
+ if (jj_3R_21()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_53() {
- if (jj_scan_token(LOGICAL_OR)) return true;
+ final private boolean jj_3R_76() {
+ if (jj_scan_token(MULTIPLY)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_52()) return true;
+ if (jj_3R_70()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3_3() {
- if (jj_3R_19()) return true;
+ final private boolean jj_3R_71() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_76()) {
+ jj_scanpos = xsp;
+ if (jj_3R_77()) {
+ jj_scanpos = xsp;
+ if (jj_3R_78()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(EQUALS)) return true;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
+ final private boolean jj_3R_73() {
+ if (jj_scan_token(MINUS)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_64()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_51() {
- if (jj_3R_52()) return true;
+ final private boolean jj_3R_64() {
+ if (jj_3R_70()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
Token xsp;
while (true) {
xsp = jj_scanpos;
- if (jj_3R_53()) { jj_scanpos = xsp; break; }
+ if (jj_3R_71()) { jj_scanpos = xsp; break; }
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
}
return false;
}
- final private boolean jj_3R_34() {
- if (jj_scan_token(TRUE)) return true;
+ final private boolean jj_3R_72() {
+ if (jj_scan_token(PLUS)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_64()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_50() {
- if (jj_3R_19()) return true;
+ final private boolean jj_3R_65() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_72()) {
+ jj_scanpos = xsp;
+ if (jj_3R_73()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(EQUALS)) return true;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
+ final private boolean jj_3R_69() {
+ if (jj_scan_token(LOGICAL_GE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_36()) return true;
+ if (jj_3R_60()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3_1() {
- if (jj_scan_token(DOT)) return true;
+ final private boolean jj_3R_60() {
+ if (jj_3R_64()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
Token xsp;
- xsp = jj_scanpos;
- if (jj_3_2()) {
- jj_scanpos = xsp;
- if (jj_3R_17()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- xsp = jj_scanpos;
- if (jj_3R_48()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_65()) { jj_scanpos = xsp; break; }
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ }
return false;
}
- final private boolean jj_3R_44() {
- if (jj_scan_token(RCURLY)) return true;
+ final private boolean jj_3R_57() {
+ if (jj_scan_token(COMMA)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_30()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_47() {
- if (jj_3R_51()) return true;
+ final private boolean jj_3R_68() {
+ if (jj_scan_token(LOGICAL_LE)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_60()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_43() {
- if (jj_scan_token(LCURLY)) return true;
+ final private boolean jj_3R_67() {
+ if (jj_scan_token(LOGICAL_GT)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_60()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_46() {
- if (jj_3R_50()) return true;
+ final private boolean jj_3R_66() {
+ if (jj_scan_token(LOGICAL_LT)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_60()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_36() {
+ final private boolean jj_3R_61() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_46()) {
+ if (jj_3R_66()) {
+ jj_scanpos = xsp;
+ if (jj_3R_67()) {
jj_scanpos = xsp;
- if (jj_3R_47()) return true;
+ if (jj_3R_68()) {
+ jj_scanpos = xsp;
+ if (jj_3R_69()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
} else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_32() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_43()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(IDENTIFIER)) return true;
+ final private boolean jj_3_1() {
+ if (jj_scan_token(DOUBLE_ESCAPE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- xsp = jj_scanpos;
- if (jj_3R_44()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3_1()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
return false;
}
- final private boolean jj_3R_49() {
- if (jj_scan_token(COMMA)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_29()) return true;
+ final private boolean jj_3_3() {
+ if (jj_3R_19()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_18() {
- if (jj_3R_20()) return true;
+ final private boolean jj_3R_63() {
+ if (jj_scan_token(LOGICAL_NOT_EQUALS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(LPAREN)) return true;
+ if (jj_3R_58()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_21()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(REFMOD2_RPAREN)) return true;
+ return false;
+ }
+
+ final private boolean jj_3R_58() {
+ if (jj_3R_60()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_61()) { jj_scanpos = xsp; break; }
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ }
return false;
}
- final private boolean jj_3R_42() {
- if (jj_3R_31()) return true;
+ final private boolean jj_3R_62() {
+ if (jj_scan_token(LOGICAL_EQUALS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_58()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_41() {
- if (jj_3R_32()) return true;
+ final private boolean jj_3R_59() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_62()) {
+ jj_scanpos = xsp;
+ if (jj_3R_63()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_45() {
- if (jj_3R_29()) return true;
+ final private boolean jj_3R_22() {
+ if (jj_3R_30()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
Token xsp;
while (true) {
xsp = jj_scanpos;
- if (jj_3R_49()) { jj_scanpos = xsp; break; }
+ if (jj_3R_57()) { jj_scanpos = xsp; break; }
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
}
return false;
}
- final private boolean jj_3R_40() {
- if (jj_3R_35()) return true;
+ final private boolean jj_3R_36() {
+ if (jj_scan_token(FALSE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_39() {
- if (jj_3R_34()) return true;
+ final private boolean jj_3R_55() {
+ if (jj_3R_58()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_59()) { jj_scanpos = xsp; break; }
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ }
return false;
}
- final private boolean jj_3R_38() {
- if (jj_3R_33()) return true;
+ final private boolean jj_3R_35() {
+ if (jj_scan_token(TRUE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_37() {
- if (jj_3R_30()) return true;
+ final private boolean jj_3R_56() {
+ if (jj_scan_token(LOGICAL_AND)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_55()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_29() {
+ final private boolean jj_3_2() {
+ if (jj_scan_token(DOT)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_37()) {
- jj_scanpos = xsp;
- if (jj_3R_38()) {
- jj_scanpos = xsp;
- if (jj_3R_39()) {
- jj_scanpos = xsp;
- if (jj_3R_40()) {
+ if (jj_3_3()) {
jj_scanpos = xsp;
- if (jj_3R_41()) {
- jj_scanpos = xsp;
- if (jj_3R_42()) return true;
+ if (jj_3R_18()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
} else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ xsp = jj_scanpos;
+ if (jj_3R_49()) jj_scanpos = xsp;
+ else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_28() {
- if (jj_scan_token(LPAREN)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_36()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(RPAREN)) return true;
+ final private boolean jj_3R_45() {
+ if (jj_scan_token(RCURLY)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_20() {
- if (jj_scan_token(IDENTIFIER)) return true;
+ final private boolean jj_3R_53() {
+ if (jj_3R_55()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_56()) { jj_scanpos = xsp; break; }
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ }
return false;
}
- final private boolean jj_3R_27() {
- if (jj_3R_35()) return true;
+ final private boolean jj_3R_44() {
+ if (jj_scan_token(LCURLY)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_26() {
- if (jj_3R_34()) return true;
+ final private boolean jj_3R_54() {
+ if (jj_scan_token(LOGICAL_OR)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_53()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_25() {
- if (jj_3R_33()) return true;
+ final private boolean jj_3R_33() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_44()) jj_scanpos = xsp;
+ else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_scan_token(IDENTIFIER)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ xsp = jj_scanpos;
+ if (jj_3R_45()) jj_scanpos = xsp;
+ else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3_2()) { jj_scanpos = xsp; break; }
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ }
return false;
}
- final private boolean jj_3R_24() {
- if (jj_3R_32()) return true;
+ final private boolean jj_3_4() {
+ if (jj_3R_20()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_scan_token(EQUALS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_23() {
- if (jj_3R_31()) return true;
+ final private boolean jj_3R_52() {
+ if (jj_3R_53()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_54()) { jj_scanpos = xsp; break; }
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ }
return false;
}
- final private boolean jj_3R_33() {
- if (jj_scan_token(LBRACKET)) return true;
+ final private boolean jj_3R_50() {
+ if (jj_scan_token(COMMA)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_45()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(RBRACKET)) return true;
+ if (jj_3R_30()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_22() {
- if (jj_3R_30()) return true;
+ final private boolean jj_3R_51() {
+ if (jj_3R_20()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_scan_token(EQUALS)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_37()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
final private boolean jj_3R_19() {
+ if (jj_3R_21()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_scan_token(LPAREN)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_22()) {
- jj_scanpos = xsp;
- if (jj_3R_23()) {
- jj_scanpos = xsp;
- if (jj_3R_24()) {
- jj_scanpos = xsp;
- if (jj_3R_25()) {
- jj_scanpos = xsp;
- if (jj_3R_26()) {
- jj_scanpos = xsp;
- if (jj_3R_27()) {
- jj_scanpos = xsp;
- if (jj_3R_28()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_74() {
- if (jj_3R_19()) return true;
+ if (jj_3R_22()) jj_scanpos = xsp;
+ else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_scan_token(REFMOD2_RPAREN)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
final private boolean jj_3R_48() {
- if (jj_scan_token(RCURLY)) return true;
+ if (jj_3R_52()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_77() {
- if (jj_scan_token(MODULUS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_69()) return true;
+ final private boolean jj_3R_21() {
+ if (jj_scan_token(IDENTIFIER)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_73() {
- if (jj_scan_token(LOGICAL_NOT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_69()) return true;
+ final private boolean jj_3R_47() {
+ if (jj_3R_51()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_69() {
+ final private boolean jj_3R_37() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_73()) {
+ if (jj_3R_47()) {
jj_scanpos = xsp;
- if (jj_3R_74()) return true;
+ if (jj_3R_48()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
} else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_76() {
- if (jj_scan_token(DIVIDE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_69()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_75() {
- if (jj_scan_token(MULTIPLY)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_69()) return true;
+ final private boolean jj_3R_43() {
+ if (jj_3R_32()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_70() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_75()) {
- jj_scanpos = xsp;
- if (jj_3R_76()) {
- jj_scanpos = xsp;
- if (jj_3R_77()) return true;
+ final private boolean jj_3R_42() {
+ if (jj_3R_33()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_30() {
- if (jj_scan_token(STRING_LITERAL)) return true;
+ final private boolean jj_3R_46() {
+ if (jj_3R_30()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_50()) { jj_scanpos = xsp; break; }
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ }
return false;
}
- final private boolean jj_3R_31() {
- if (jj_scan_token(NUMBER_LITERAL)) return true;
+ final private boolean jj_3R_41() {
+ if (jj_3R_36()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_72() {
- if (jj_scan_token(MINUS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_63()) return true;
+ final private boolean jj_3R_40() {
+ if (jj_3R_35()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_63() {
- if (jj_3R_69()) return true;
+ final private boolean jj_3R_39() {
+ if (jj_3R_34()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_70()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
return false;
}
- final private boolean jj_3R_71() {
- if (jj_scan_token(PLUS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_63()) return true;
+ final private boolean jj_3R_38() {
+ if (jj_3R_31()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_64() {
+ final private boolean jj_3R_30() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_71()) {
+ if (jj_3R_38()) {
+ jj_scanpos = xsp;
+ if (jj_3R_39()) {
+ jj_scanpos = xsp;
+ if (jj_3R_40()) {
+ jj_scanpos = xsp;
+ if (jj_3R_41()) {
+ jj_scanpos = xsp;
+ if (jj_3R_42()) {
jj_scanpos = xsp;
- if (jj_3R_72()) return true;
+ if (jj_3R_43()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
} else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_17() {
- if (jj_3R_20()) return true;
+ final private boolean jj_3R_31() {
+ if (jj_scan_token(STRING_LITERAL)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_68() {
- if (jj_scan_token(LOGICAL_GE)) return true;
+ final private boolean jj_3R_34() {
+ if (jj_scan_token(LBRACKET)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_59()) return true;
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_46()) jj_scanpos = xsp;
+ else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_scan_token(RBRACKET)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_59() {
- if (jj_3R_63()) return true;
+ final private boolean jj_3R_32() {
+ if (jj_scan_token(NUMBER_LITERAL)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_64()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
return false;
}
- final private boolean jj_3R_67() {
- if (jj_scan_token(LOGICAL_LE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_59()) return true;
+ final private boolean jj_3R_49() {
+ if (jj_scan_token(RCURLY)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_66() {
- if (jj_scan_token(LOGICAL_GT)) return true;
+ final private boolean jj_3R_29() {
+ if (jj_scan_token(LPAREN)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_59()) return true;
+ if (jj_3R_37()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_65() {
- if (jj_scan_token(LOGICAL_LT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_59()) return true;
+ if (jj_scan_token(RPAREN)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_60() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_65()) {
- jj_scanpos = xsp;
- if (jj_3R_66()) {
- jj_scanpos = xsp;
- if (jj_3R_67()) {
- jj_scanpos = xsp;
- if (jj_3R_68()) return true;
+ final private boolean jj_3R_28() {
+ if (jj_3R_36()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_62() {
- if (jj_scan_token(LOGICAL_NOT_EQUALS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_57()) return true;
+ final private boolean jj_3R_27() {
+ if (jj_3R_35()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_57() {
- if (jj_3R_59()) return true;
+ final private boolean jj_3R_26() {
+ if (jj_3R_34()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_60()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
return false;
}
- final private boolean jj_3R_61() {
- if (jj_scan_token(LOGICAL_EQUALS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_57()) return true;
+ final private boolean jj_3R_25() {
+ if (jj_3R_33()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_58() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_61()) {
- jj_scanpos = xsp;
- if (jj_3R_62()) return true;
+ final private boolean jj_3R_24() {
+ if (jj_3R_32()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
@@ -2429,10 +2501,9 @@
private boolean jj_semLA;
private int jj_gen;
final private int[] jj_la1 = new int[36];
- final private int[] jj_la1_0 =
{0x91f03fb0,0x91f03fb0,0x1c00000,0x10000002,0x10000002,0x91f03fb0,0x8,0x70000002,0x70000002,0x8,0x70000002,0x0,0x0,0x0,0x0,0x90301fb0,0x91f03fb0,0x0,0x0,0x0,0x91f03fb0,0x91f03fb0,0x80000000,0x70000012,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x70000012,0x70000012,};
- final private int[] jj_la1_1 =
{0x38a90000,0x38a90000,0x0,0x28a00000,0x28a00000,0x38a90000,0x0,0x28200000,0x28200000,0x0,0x28200000,0x20000000,0x40000000,0x8000000,0x40000000,0x10200000,0x38a90000,0x20000,0x20000,0x40000,0x38a90000,0x38a90000,0x0,0x28202000,0x40,0x20,0x1800,0x1800,0x780,0x780,0x3,0x3,0x1c,0x1c,0x28202000,0x28200000,};
- final private int[] jj_la1_2 =
{0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,};
- final private JJCalls[] jj_2_rtns = new JJCalls[3];
+ final private int[] jj_la1_0 =
{0x11f81b0,0x11f81b0,0x1c0000,0x1000002,0x1000002,0x11f81b0,0x8,0x7000002,0x7000002,0x8,0x7000002,0x0,0x0,0x0,0x0,0x1030030,0x11f81b0,0x0,0x0,0x0,0x11f81b0,0x11f81b0,0x8000000,0x7000012,0x0,0x0,0x0,0x0,0x0,0x0,0x30000000,0x30000000,0xc0000000,0xc0000000,0x7000012,0x7000012,};
+ final private int[] jj_la1_1 =
{0x38a9000,0x38a9000,0x0,0x28a0000,0x28a0000,0x38a9000,0x0,0x2820000,0x2820000,0x0,0x2820000,0x2000000,0x4000000,0x800000,0x4000000,0x1020000,0x38a9000,0x2000,0x2000,0x4000,0x38a9000,0x38a9000,0x0,0x2820200,0x4,0x2,0x180,0x180,0x78,0x78,0x0,0x0,0x1,0x1,0x2820200,0x2820000,};
+ final private JJCalls[] jj_2_rtns = new JJCalls[4];
private boolean jj_rescan = false;
private int jj_gc = 0;
@@ -2600,8 +2671,8 @@
final public ParseException generateParseException() {
jj_expentries.removeAllElements();
- boolean[] la1tokens = new boolean[65];
- for (int i = 0; i < 65; i++) {
+ boolean[] la1tokens = new boolean[61];
+ for (int i = 0; i < 61; i++) {
la1tokens[i] = false;
}
if (jj_kind >= 0) {
@@ -2617,13 +2688,10 @@
if ((jj_la1_1[i] & (1<<j)) != 0) {
la1tokens[32+j] = true;
}
- if ((jj_la1_2[i] & (1<<j)) != 0) {
- la1tokens[64+j] = true;
- }
}
}
}
- for (int i = 0; i < 65; i++) {
+ for (int i = 0; i < 61; i++) {
if (la1tokens[i]) {
jj_expentry = new int[1];
jj_expentry[0] = i;
@@ -2648,7 +2716,7 @@
final private void jj_rescan_token() {
jj_rescan = true;
- for (int i = 0; i < 3; i++) {
+ for (int i = 0; i < 4; i++) {
JJCalls p = jj_2_rtns[i];
do {
if (p.gen > jj_gen) {
@@ -2657,6 +2725,7 @@
case 0: jj_3_1(); break;
case 1: jj_3_2(); break;
case 2: jj_3_3(); break;
+ case 3: jj_3_4(); break;
}
}
p = p.next;
1.28 +241 -156
jakarta-velocity/src/java/org/apache/velocity/runtime/parser/Parser.jj
Index: Parser.jj
===================================================================
RCS file:
/home/cvs/jakarta-velocity/src/java/org/apache/velocity/runtime/parser/Parser.jj,v
retrieving revision 1.27
retrieving revision 1.28
diff -u -r1.27 -r1.28
--- Parser.jj 2000/11/08 02:32:18 1.27
+++ Parser.jj 2000/11/11 22:47:57 1.28
@@ -105,7 +105,7 @@
*
* @author <a href="mailto:[EMAIL PROTECTED]">Jason van Zyl</a>
* @author <a href="mailto:[EMAIL PROTECTED]">Geir Magnusson Jr.</a>
- * @version $Id: Parser.jj,v 1.27 2000/11/08 02:32:18 geirm Exp $
+ * @version $Id: Parser.jj,v 1.28 2000/11/11 22:47:57 geirm Exp $
*/
public class Parser/*@bgen(jjtree)*/implements ParserTreeConstants/*@egen*/
{/*@bgen(jjtree)*/
@@ -152,10 +152,16 @@
{
token_source.clearStateVars();
ReInit(stream);
- n = process();
+ sn = process();
}
- catch (Exception e )
+ catch (ParseException pe)
{
+ Runtime.error ("Parser Exception: " + StringUtils.stackTrace(pe));
+ throw new ParseException (pe.currentToken,
+ pe.expectedTokenSequences, pe.tokenImage);
+ }
+ catch (Exception e)
+ {
Runtime.error ("Parser Error: " + StringUtils.stackTrace(e));
}
return sn;
@@ -187,6 +193,52 @@
else
return false;
}
+
+ /**
+ * Produces a processed output for an escaped control or pluggable directive
+ */
+ private String escapedDirective( String strImage )
+ {
+ int iLast = strImage.lastIndexOf("\\");
+
+ String strDirective = strImage.substring(iLast + 1);
+
+ boolean bRecognizedDirective = false;
+
+ /*
+ * is this a PD or a control directive?
+ */
+
+ if ( isDirective( strDirective.substring(1)))
+ {
+ bRecognizedDirective = true;
+ }
+ else
+ {
+ /* order for speed? */
+
+ if ( strDirective.substring(1).equals("if")
+ || strDirective.substring(1).equals("end")
+ || strDirective.substring(1).equals("set")
+ || strDirective.substring(1).equals("else")
+ || strDirective.substring(1).equals("elseif")
+ || strDirective.substring(1).equals("stop")
+ )
+ {
+ bRecognizedDirective = true;
+ }
+ }
+
+ /*
+ * if so, make the proper prefix string (let the escapes do their thing..)
+ * otherwise, just return what it is..
+ */
+
+ if (bRecognizedDirective)
+ return ( strImage.substring(0,iLast/2) + strDirective);
+ else
+ return ( strImage );
+ }
}
PARSER_END(Parser)
@@ -337,15 +389,7 @@
return;
}
- /**
- * Produces a processed output for an escaped control directive
- */
- private String escapedDirective( String strImage, String strDirective )
- {
- int iLast = strImage.lastIndexOf("\\");
- return ( strImage.substring(0,iLast/2) + strDirective);
- }
-
+
/**
* handles the dropdown logic when encountering a RPAREN
*/
@@ -398,6 +442,7 @@
}
}
}
+
}
/* ------------------------------------------------------------------------
@@ -491,37 +536,8 @@
* grammatical context, but I am neither smart nor rested, a receipe
* for disaster, another long night with Mr. Parser, or both.
*/
-
- <ESCAPE_SET_DIRECTIVE : ("\\\\")* "\\#set">
- {
- matchedToken.image = escapedDirective( matchedToken.image, "#set");
- }
-
-| <ESCAPE_IF_DIRECTIVE : ("\\\\")* "\\#if">
- {
- matchedToken.image = escapedDirective( matchedToken.image, "#if");
- }
-
-| <ESCAPE_END_DIRECTIVE : ("\\\\")* "\\#end">
- {
- matchedToken.image = escapedDirective( matchedToken.image, "#end");
- }
-
-| <ESCAPE_ELSEIF_DIRECTIVE: ("\\\\")* "\\#elseif">
- {
- matchedToken.image = escapedDirective( matchedToken.image, "#elseif");
- }
-
-| <ESCAPE_ELSE_DIRECTIVE: ("\\\\")* "\\#else">
- {
- matchedToken.image = escapedDirective( matchedToken.image, "#else");
- }
-
-| <ESCAPE_STOP_DIRECTIVE: ("\\\\")* "\\#stop">
- {
- matchedToken.image = escapedDirective( matchedToken.image, "#stop");
- }
-
+
+ <ESCAPE_DIRECTIVE : (<DOUBLE_ESCAPE>)* "\\#" <WORD> >
}
@@ -532,7 +548,7 @@
*/
TOKEN:
{
- <SET_DIRECTIVE: (" "|"\t")* ("\\\\")* "#set" >
+ <SET_DIRECTIVE: (" "|"\t")* "#set" >
{
if (! inComment)
{
@@ -605,7 +621,7 @@
SwitchTo( IN_MULTI_LINE_COMMENT );
}
-| <HASH : ("\\")* "#" >
+| <HASH : "#" >
{
if (! inComment)
{
@@ -622,7 +638,8 @@
TOKEN :
{
- <ESCAPE: "\\">
+ <DOUBLE_ESCAPE : "\\\\">
+| <ESCAPE: "\\" >
| <TEXT: (~["$", "#", "\\"])+ >
}
@@ -945,10 +962,117 @@
| Reference()
| Comment()
| SetDirective()
+| EscapedDirective()
+| Escape()
| Directive()
| Text()
}
+/**
+ * used to separate the notion of a valid directive that has been
+ * escaped, versus something that looks like a directive and
+ * is just schmoo. This is important to do as a separate production
+ * that creates a node, because we want this, in either case, to stop
+ * the further parsing of the Directive() tree.
+ */
+void EscapedDirective() : {/*@bgen(jjtree) EscapedDirective */
+ ASTEscapedDirective jjtn000 = new ASTEscapedDirective(this, JJTESCAPEDDIRECTIVE);
+ boolean jjtc000 = true;
+ jjtree.openNodeScope(jjtn000);
+/*@egen*/}
+{/*@bgen(jjtree) EscapedDirective */
+ try {
+/*@egen*/
+ {
+ Token t = null;
+ }
+
+ t = <ESCAPE_DIRECTIVE>/*@bgen(jjtree)*/
+ {
+ jjtree.closeNodeScope(jjtn000, true);
+ jjtc000 = false;
+ }
+/*@egen*/
+ {
+ /*
+ * churn and burn..
+ */
+ t.image = escapedDirective( t.image );
+ }/*@bgen(jjtree)*/
+ } finally {
+ if (jjtc000) {
+ jjtree.closeNodeScope(jjtn000, true);
+ }
+ }
+/*@egen*/
+}
+
+/**
+ * Used to catch and process escape sequences in grammatical constructs
+ * as escapes outside of VTL are just characters. Right now we hav both
+ * this and the EscapeDirective() construction because in the EscapeDirective()
+ * case, we want to suck in the #<directive> and here we don't. We just want
+ * the escapes to render correctly
+ */
+void Escape() : {/*@bgen(jjtree) Escape */
+ ASTEscape jjtn000 = new ASTEscape(this, JJTESCAPE);
+ boolean jjtc000 = true;
+ jjtree.openNodeScope(jjtn000);
+/*@egen*/}
+{/*@bgen(jjtree) Escape */
+ try {
+/*@egen*/
+ {
+ Token t = null;
+ int iCount = 0;
+ boolean bControl = false;
+ }
+
+ ( LOOKAHEAD(2) t = <DOUBLE_ESCAPE>
+ {
+ iCount++;
+ }
+ )+/*@bgen(jjtree)*/
+ {
+ jjtree.closeNodeScope(jjtn000, true);
+ jjtc000 = false;
+ }
+/*@egen*/
+ {
+ /*
+ * first, check to see if we have a control directive
+ */
+ switch(t.next.kind ) {
+ case IF_DIRECTIVE :
+ case ELSE_DIRECTIVE :
+ case ELSEIF_DIRECTIVE :
+ case END :
+ case STOP_DIRECTIVE :
+ bControl = true;
+ break;
+ }
+
+ /*
+ * if that failed, lets lookahead to see if we matched a PD
+ */
+
+ if ( isDirective( t.next.image.substring(1)))
+ bControl = true;
+
+ t.image = "";
+
+ for( int i = 0; i < iCount; i++)
+ t.image += (bControl ? "\\" : "\\\\");
+ }/*@bgen(jjtree)*/
+ } finally {
+ if (jjtc000) {
+ jjtree.closeNodeScope(jjtn000, true);
+ }
+ }
+/*@egen*/
+
+}
+
void Comment() : {/*@bgen(jjtree) Comment */
ASTComment jjtn000 = new ASTComment(this, JJTCOMMENT);
boolean jjtc000 = true;
@@ -1070,58 +1194,45 @@
boolean jjtc000 = true;
jjtree.openNodeScope(jjtn000);
/*@egen*/
- Token t;
+ Token t = null;
Directive d;
}
{/*@bgen(jjtree) Directive */
try {
/*@egen*/
/*
- * There are two things we do here :
- * 1) If the first char is a \, then this has been escaped, so don't
- * continue. We will take care of the rest in ASTDirective.java
- * 2) Get the directive identifier and check to see if this is a directive.
- * Note that because '#' is a <MORE> token, the identifier is preceeded by
the '#'
+ * note that if we were escaped, that is now handled by EscapedDirective()
*/
-
- t = <WORD>
+
+ t = <WORD>
{
+ d = (Directive) directives.get(t.image.substring(1));
+
/*
- * We need to count the preceeding \'s. If t starts with an odd number of
\'s...
+ * set the directive name from here. No reason for the thing to know
about parser tokens
*/
- int i = 0;
- int iLen = t.image.length();
+ jjtn000.setDirectiveName( t.image.substring(1) );
- while( i < iLen && t.image.charAt(i) == '\\' )
- i++;
-
- if( t.image.startsWith("\\") && (i % 2) != 0 )
+ if (d == null)
{
token_source.stateStackPop();
token_source.inDirective = false;
- return jjtn000;
- }
- else
- {
- d = (Directive) directives.get(t.image.substring(i+1));
-
- if (d == null)
- {
- token_source.stateStackPop();
- token_source.inDirective = false;
- return jjtn000;
- }
- }
+ return jjtn000;
+ }
+
+ /*
+ * now, switch us out of PRE_DIRECTIVE
+ */
- token_source.SwitchTo( DIRECTIVE );
+ token_source.SwitchTo(DIRECTIVE);
}
/*
* if this is indeed a token, match the #foo ( arg ) pattern
*/
- <LPAREN> (DirectiveArg())+ <RPAREN>
+ <LPAREN> ( DirectiveArg() )+ <RPAREN>
{
if (d.getType() == Directive.LINE)
return jjtn000;
@@ -1137,7 +1248,7 @@
/*
* and the following block if the PD needs it
*/
-
+
( Statement() )+/*@bgen(jjtree)*/
} catch (Throwable jjte001) {
if (jjtc001) {
@@ -1159,12 +1270,12 @@
}
}
/*@egen*/
- EndStatement()/*@bgen(jjtree)*/
+ <END>/*@bgen(jjtree)*/
{
jjtree.closeNodeScope(jjtn000, true);
jjtc000 = false;
}
-/*@egen*/
+/*@egen*/
{
return jjtn000;
}/*@bgen(jjtree)*/
@@ -1247,28 +1358,28 @@
jjtree.openNodeScope(jjtn000);
/*@egen*/}
{/*@bgen(jjtree) Method */
- try {
+ try {
/*@egen*/
- Identifier() <LPAREN> [ Parameter() ( <COMMA> Parameter() )* ]
<REFMOD2_RPAREN>/*@bgen(jjtree)*/
- } catch (Throwable jjte000) {
- if (jjtc000) {
- jjtree.clearNodeScope(jjtn000);
- jjtc000 = false;
- } else {
- jjtree.popNode();
- }
- if (jjte000 instanceof ParseException) {
- throw (ParseException)jjte000;
- }
- if (jjte000 instanceof RuntimeException) {
- throw (RuntimeException)jjte000;
- }
- throw (Error)jjte000;
- } finally {
- if (jjtc000) {
- jjtree.closeNodeScope(jjtn000, true);
- }
- }
+ Identifier() <LPAREN> [ Parameter() ( <COMMA> Parameter() )* ]
<REFMOD2_RPAREN>/*@bgen(jjtree)*/
+ } catch (Throwable jjte000) {
+ if (jjtc000) {
+ jjtree.clearNodeScope(jjtn000);
+ jjtc000 = false;
+ } else {
+ jjtree.popNode();
+ }
+ if (jjte000 instanceof ParseException) {
+ throw (ParseException)jjte000;
+ }
+ if (jjte000 instanceof RuntimeException) {
+ throw (RuntimeException)jjte000;
+ }
+ throw (Error)jjte000;
+ } finally {
+ if (jjtc000) {
+ jjtree.closeNodeScope(jjtn000, true);
+ }
+ }
/*@egen*/
}
@@ -1347,31 +1458,21 @@
* all non-grammar text to pass through
* unscathed.
*/
-void Text() :
-{/*@bgen(jjtree) Text */
- ASTText jjtn000 = new ASTText(this, JJTTEXT);
- boolean jjtc000 = true;
- jjtree.openNodeScope(jjtn000);
-/*@egen*/
- Token t;
-}
+void Text() : {/*@bgen(jjtree) Text */
+ ASTText jjtn000 = new ASTText(this, JJTTEXT);
+ boolean jjtc000 = true;
+ jjtree.openNodeScope(jjtn000);
+/*@egen*/}
{/*@bgen(jjtree) Text */
try {
/*@egen*/
<TEXT>
-| <NEWLINE>
| <DOT>
| <RPAREN>
| <LPAREN>
| <NUMBER_LITERAL>
| <STRING_LITERAL>
-| <ESCAPE>
-| <ESCAPE_SET_DIRECTIVE>
-| <ESCAPE_IF_DIRECTIVE>
-| <ESCAPE_END_DIRECTIVE>
-| <ESCAPE_ELSEIF_DIRECTIVE>
-| <ESCAPE_ELSE_DIRECTIVE>
-| <ESCAPE_STOP_DIRECTIVE>/*@bgen(jjtree)*/
+| <ESCAPE>/*@bgen(jjtree)*/
} finally {
if (jjtc000) {
jjtree.closeNodeScope(jjtn000, true);
@@ -1422,10 +1523,10 @@
jjtree.closeNodeScope(jjtn001, true);
}
}
-/*@egen*/
+/*@egen*/
[ LOOKAHEAD(1) ( ElseIfStatement() )+ ]
[ LOOKAHEAD(1) ElseStatement() ]
- EndStatement()/*@bgen(jjtree)*/
+ <END>/*@bgen(jjtree)*/
} catch (Throwable jjte000) {
if (jjtc000) {
jjtree.clearNodeScope(jjtn000);
@@ -1446,23 +1547,7 @@
}
}
/*@egen*/
-}
-void EndStatement() : {/*@bgen(jjtree) EndStatement */
- ASTEndStatement jjtn000 = new ASTEndStatement(this, JJTENDSTATEMENT);
- boolean jjtc000 = true;
- jjtree.openNodeScope(jjtn000);
-/*@egen*/}
-{/*@bgen(jjtree) EndStatement */
- try {
-/*@egen*/
- <END>/*@bgen(jjtree)*/
- } finally {
- if (jjtc000) {
- jjtree.closeNodeScope(jjtn000, true);
- }
- }
-/*@egen*/
}
void ElseStatement() : {/*@bgen(jjtree) ElseStatement */
@@ -1471,9 +1556,9 @@
jjtree.openNodeScope(jjtn000);
/*@egen*/}
{/*@bgen(jjtree) ElseStatement */
- try {
+ try {
/*@egen*/
- <ELSE_DIRECTIVE>/*@bgen(jjtree) Block */
+ <ELSE_DIRECTIVE>/*@bgen(jjtree) Block */
{
ASTBlock jjtn001 = new ASTBlock(this, JJTBLOCK);
boolean jjtc001 = true;
@@ -1502,25 +1587,25 @@
}
}
/*@egen*//*@bgen(jjtree)*/
- } catch (Throwable jjte000) {
- if (jjtc000) {
- jjtree.clearNodeScope(jjtn000);
- jjtc000 = false;
- } else {
- jjtree.popNode();
- }
- if (jjte000 instanceof ParseException) {
- throw (ParseException)jjte000;
- }
- if (jjte000 instanceof RuntimeException) {
- throw (RuntimeException)jjte000;
- }
- throw (Error)jjte000;
- } finally {
- if (jjtc000) {
- jjtree.closeNodeScope(jjtn000, true);
- }
- }
+ } catch (Throwable jjte000) {
+ if (jjtc000) {
+ jjtree.clearNodeScope(jjtn000);
+ jjtc000 = false;
+ } else {
+ jjtree.popNode();
+ }
+ if (jjte000 instanceof ParseException) {
+ throw (ParseException)jjte000;
+ }
+ if (jjte000 instanceof RuntimeException) {
+ throw (RuntimeException)jjte000;
+ }
+ throw (Error)jjte000;
+ } finally {
+ if (jjtc000) {
+ jjtree.closeNodeScope(jjtn000, true);
+ }
+ }
/*@egen*/
}
@@ -1592,7 +1677,7 @@
{/*@bgen(jjtree) SetDirective */
try {
/*@egen*/
- (<SET_DIRECTIVE> Expression() [<NEWLINE>] )/*@bgen(jjtree)*/
+ ( <SET_DIRECTIVE> Expression() [<NEWLINE>] )/*@bgen(jjtree)*/
} catch (Throwable jjte000) {
if (jjtc000) {
jjtree.clearNodeScope(jjtn000);
1.14 +53 -61
jakarta-velocity/src/java/org/apache/velocity/runtime/parser/ParserConstants.java
Index: ParserConstants.java
===================================================================
RCS file:
/home/cvs/jakarta-velocity/src/java/org/apache/velocity/runtime/parser/ParserConstants.java,v
retrieving revision 1.13
retrieving revision 1.14
diff -u -r1.13 -r1.14
--- ParserConstants.java 2000/11/07 21:33:56 1.13
+++ ParserConstants.java 2000/11/11 22:47:57 1.14
@@ -10,58 +10,54 @@
int LPAREN = 4;
int RPAREN = 5;
int REFMOD2_RPAREN = 6;
- int ESCAPE_SET_DIRECTIVE = 7;
- int ESCAPE_IF_DIRECTIVE = 8;
- int ESCAPE_END_DIRECTIVE = 9;
- int ESCAPE_ELSEIF_DIRECTIVE = 10;
- int ESCAPE_ELSE_DIRECTIVE = 11;
- int ESCAPE_STOP_DIRECTIVE = 12;
- int SET_DIRECTIVE = 13;
- int DOLLAR = 14;
- int DOLLARBANG = 15;
- int HASH = 19;
- int ESCAPE = 20;
- int TEXT = 21;
- int SINGLE_LINE_COMMENT = 22;
- int FORMAL_COMMENT = 23;
- int MULTI_LINE_COMMENT = 24;
- int STRING_LITERAL = 28;
- int TRUE = 29;
- int FALSE = 30;
- int NEWLINE = 31;
- int MINUS = 32;
- int PLUS = 33;
- int MULTIPLY = 34;
- int DIVIDE = 35;
- int MODULUS = 36;
- int LOGICAL_AND = 37;
- int LOGICAL_OR = 38;
- int LOGICAL_LT = 39;
- int LOGICAL_LE = 40;
- int LOGICAL_GT = 41;
- int LOGICAL_GE = 42;
- int LOGICAL_EQUALS = 43;
- int LOGICAL_NOT_EQUALS = 44;
- int LOGICAL_NOT = 45;
- int EQUALS = 46;
- int END = 47;
- int IF_DIRECTIVE = 48;
- int ELSEIF_DIRECTIVE = 49;
- int ELSE_DIRECTIVE = 50;
- int STOP_DIRECTIVE = 51;
- int DIGIT = 52;
- int NUMBER_LITERAL = 53;
- int LETTER = 54;
- int WORD = 55;
- int ALPHA_CHAR = 56;
- int ALPHANUM_CHAR = 57;
- int IDENTIFIER_CHAR = 58;
- int IDENTIFIER = 59;
- int DOT = 60;
- int LCURLY = 61;
- int RCURLY = 62;
- int REFERENCE_TERMINATOR = 63;
- int DIRECTIVE_TERMINATOR = 64;
+ int ESCAPE_DIRECTIVE = 7;
+ int SET_DIRECTIVE = 8;
+ int DOLLAR = 9;
+ int DOLLARBANG = 10;
+ int HASH = 14;
+ int DOUBLE_ESCAPE = 15;
+ int ESCAPE = 16;
+ int TEXT = 17;
+ int SINGLE_LINE_COMMENT = 18;
+ int FORMAL_COMMENT = 19;
+ int MULTI_LINE_COMMENT = 20;
+ int STRING_LITERAL = 24;
+ int TRUE = 25;
+ int FALSE = 26;
+ int NEWLINE = 27;
+ int MINUS = 28;
+ int PLUS = 29;
+ int MULTIPLY = 30;
+ int DIVIDE = 31;
+ int MODULUS = 32;
+ int LOGICAL_AND = 33;
+ int LOGICAL_OR = 34;
+ int LOGICAL_LT = 35;
+ int LOGICAL_LE = 36;
+ int LOGICAL_GT = 37;
+ int LOGICAL_GE = 38;
+ int LOGICAL_EQUALS = 39;
+ int LOGICAL_NOT_EQUALS = 40;
+ int LOGICAL_NOT = 41;
+ int EQUALS = 42;
+ int END = 43;
+ int IF_DIRECTIVE = 44;
+ int ELSEIF_DIRECTIVE = 45;
+ int ELSE_DIRECTIVE = 46;
+ int STOP_DIRECTIVE = 47;
+ int DIGIT = 48;
+ int NUMBER_LITERAL = 49;
+ int LETTER = 50;
+ int WORD = 51;
+ int ALPHA_CHAR = 52;
+ int ALPHANUM_CHAR = 53;
+ int IDENTIFIER_CHAR = 54;
+ int IDENTIFIER = 55;
+ int DOT = 56;
+ int LCURLY = 57;
+ int RCURLY = 58;
+ int REFERENCE_TERMINATOR = 59;
+ int DIRECTIVE_TERMINATOR = 60;
int DIRECTIVE = 0;
int REFMODIFIER = 1;
@@ -81,25 +77,21 @@
"\"(\"",
"<RPAREN>",
"\")\"",
- "<ESCAPE_SET_DIRECTIVE>",
- "<ESCAPE_IF_DIRECTIVE>",
- "<ESCAPE_END_DIRECTIVE>",
- "<ESCAPE_ELSEIF_DIRECTIVE>",
- "<ESCAPE_ELSE_DIRECTIVE>",
- "<ESCAPE_STOP_DIRECTIVE>",
+ "<ESCAPE_DIRECTIVE>",
"<SET_DIRECTIVE>",
"<DOLLAR>",
"\"$!\"",
"\"##\"",
- "<token of kind 17>",
+ "<token of kind 12>",
"\"#*\"",
- "<HASH>",
+ "\"#\"",
+ "\"\\\\\\\\\"",
"\"\\\\\"",
"<TEXT>",
"<SINGLE_LINE_COMMENT>",
"\"*#\"",
"\"*#\"",
- "<token of kind 25>",
+ "<token of kind 21>",
"\" \"",
"\"\\t\"",
"<STRING_LITERAL>",
1.26 +754 -1149
jakarta-velocity/src/java/org/apache/velocity/runtime/parser/ParserTokenManager.java
Index: ParserTokenManager.java
===================================================================
RCS file:
/home/cvs/jakarta-velocity/src/java/org/apache/velocity/runtime/parser/ParserTokenManager.java,v
retrieving revision 1.25
retrieving revision 1.26
diff -u -r1.25 -r1.26
--- ParserTokenManager.java 2000/11/08 02:32:22 1.25
+++ ParserTokenManager.java 2000/11/11 22:47:57 1.26
@@ -137,14 +137,6 @@
return;
}
- /**
- * Produces a processed output for an escaped control directive
- */
- private String escapedDirective( String strImage, String strDirective )
- {
- int iLast = strImage.lastIndexOf("\\");
- return ( strImage.substring(0,iLast/2) + strDirective);
- }
/**
* handles the dropdown logic when encountering a RPAREN
@@ -203,57 +195,54 @@
switch (pos)
{
case 0:
- if ((active0 & 0x60000000L) != 0L)
- {
- jjmatchedKind = 55;
- return 18;
- }
- if ((active0 & 0x50000L) != 0L)
+ if ((active0 & 0x6800L) != 0L)
+ return 9;
+ if ((active0 & 0x400L) != 0L)
{
- jjmatchedKind = 19;
- return 8;
- }
- if ((active0 & 0x8000L) != 0L)
- {
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
return -1;
}
- return -1;
- case 1:
- if ((active0 & 0x60000000L) != 0L)
+ if ((active0 & 0x6000000L) != 0L)
{
- jjmatchedKind = 55;
- jjmatchedPos = 1;
+ jjmatchedKind = 51;
return 18;
}
- if ((active0 & 0x40000L) != 0L)
- return 6;
- if ((active0 & 0x8000L) != 0L)
+ return -1;
+ case 1:
+ if ((active0 & 0x400L) != 0L)
{
if (jjmatchedPos == 0)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
jjmatchedPos = 0;
}
return -1;
}
+ if ((active0 & 0x2000L) != 0L)
+ return 7;
+ if ((active0 & 0x6000000L) != 0L)
+ {
+ jjmatchedKind = 51;
+ jjmatchedPos = 1;
+ return 18;
+ }
return -1;
case 2:
- if ((active0 & 0x60000000L) != 0L)
+ if ((active0 & 0x6000000L) != 0L)
{
- jjmatchedKind = 55;
+ jjmatchedKind = 51;
jjmatchedPos = 2;
return 18;
}
return -1;
case 3:
- if ((active0 & 0x40000000L) != 0L)
+ if ((active0 & 0x4000000L) != 0L)
{
- jjmatchedKind = 55;
+ jjmatchedKind = 51;
jjmatchedPos = 3;
return 18;
}
- if ((active0 & 0x20000000L) != 0L)
+ if ((active0 & 0x2000000L) != 0L)
return 18;
return -1;
default :
@@ -283,47 +272,48 @@
switch(curChar)
{
case 33:
- jjmatchedKind = 45;
- return jjMoveStringLiteralDfa1_0(0x100000000000L);
+ jjmatchedKind = 41;
+ return jjMoveStringLiteralDfa1_0(0x10000000000L);
case 35:
- return jjMoveStringLiteralDfa1_0(0x50000L);
+ jjmatchedKind = 14;
+ return jjMoveStringLiteralDfa1_0(0x2800L);
case 36:
- return jjMoveStringLiteralDfa1_0(0x8000L);
+ return jjMoveStringLiteralDfa1_0(0x400L);
case 37:
- return jjStopAtPos(0, 36);
+ return jjStopAtPos(0, 32);
case 38:
- return jjMoveStringLiteralDfa1_0(0x2000000000L);
+ return jjMoveStringLiteralDfa1_0(0x200000000L);
case 40:
return jjStopAtPos(0, 4);
case 42:
- return jjStopAtPos(0, 34);
+ return jjStopAtPos(0, 30);
case 43:
- return jjStopAtPos(0, 33);
+ return jjStopAtPos(0, 29);
case 44:
return jjStopAtPos(0, 3);
case 45:
- return jjStopAtPos(0, 32);
+ return jjStopAtPos(0, 28);
case 47:
- return jjStopAtPos(0, 35);
+ return jjStopAtPos(0, 31);
case 60:
- jjmatchedKind = 39;
- return jjMoveStringLiteralDfa1_0(0x10000000000L);
+ jjmatchedKind = 35;
+ return jjMoveStringLiteralDfa1_0(0x1000000000L);
case 61:
- jjmatchedKind = 46;
- return jjMoveStringLiteralDfa1_0(0x80000000000L);
+ jjmatchedKind = 42;
+ return jjMoveStringLiteralDfa1_0(0x8000000000L);
case 62:
- jjmatchedKind = 41;
- return jjMoveStringLiteralDfa1_0(0x40000000000L);
+ jjmatchedKind = 37;
+ return jjMoveStringLiteralDfa1_0(0x4000000000L);
case 91:
return jjStopAtPos(0, 1);
case 93:
return jjStopAtPos(0, 2);
case 102:
- return jjMoveStringLiteralDfa1_0(0x40000000L);
+ return jjMoveStringLiteralDfa1_0(0x4000000L);
case 116:
- return jjMoveStringLiteralDfa1_0(0x20000000L);
+ return jjMoveStringLiteralDfa1_0(0x2000000L);
case 124:
- return jjMoveStringLiteralDfa1_0(0x4000000000L);
+ return jjMoveStringLiteralDfa1_0(0x400000000L);
default :
return jjMoveNfa_0(0, 0);
}
@@ -338,38 +328,38 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x8000L) != 0L)
- return jjStopAtPos(1, 15);
+ if ((active0 & 0x400L) != 0L)
+ return jjStopAtPos(1, 10);
break;
case 35:
- if ((active0 & 0x10000L) != 0L)
- return jjStopAtPos(1, 16);
+ if ((active0 & 0x800L) != 0L)
+ return jjStopAtPos(1, 11);
break;
case 38:
- if ((active0 & 0x2000000000L) != 0L)
- return jjStopAtPos(1, 37);
+ if ((active0 & 0x200000000L) != 0L)
+ return jjStopAtPos(1, 33);
break;
case 42:
- if ((active0 & 0x40000L) != 0L)
- return jjStartNfaWithStates_0(1, 18, 6);
+ if ((active0 & 0x2000L) != 0L)
+ return jjStartNfaWithStates_0(1, 13, 7);
break;
case 61:
- if ((active0 & 0x10000000000L) != 0L)
+ if ((active0 & 0x1000000000L) != 0L)
+ return jjStopAtPos(1, 36);
+ else if ((active0 & 0x4000000000L) != 0L)
+ return jjStopAtPos(1, 38);
+ else if ((active0 & 0x8000000000L) != 0L)
+ return jjStopAtPos(1, 39);
+ else if ((active0 & 0x10000000000L) != 0L)
return jjStopAtPos(1, 40);
- else if ((active0 & 0x40000000000L) != 0L)
- return jjStopAtPos(1, 42);
- else if ((active0 & 0x80000000000L) != 0L)
- return jjStopAtPos(1, 43);
- else if ((active0 & 0x100000000000L) != 0L)
- return jjStopAtPos(1, 44);
break;
case 97:
- return jjMoveStringLiteralDfa2_0(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa2_0(active0, 0x4000000L);
case 114:
- return jjMoveStringLiteralDfa2_0(active0, 0x20000000L);
+ return jjMoveStringLiteralDfa2_0(active0, 0x2000000L);
case 124:
- if ((active0 & 0x4000000000L) != 0L)
- return jjStopAtPos(1, 38);
+ if ((active0 & 0x400000000L) != 0L)
+ return jjStopAtPos(1, 34);
break;
default :
break;
@@ -388,9 +378,9 @@
switch(curChar)
{
case 108:
- return jjMoveStringLiteralDfa3_0(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa3_0(active0, 0x4000000L);
case 117:
- return jjMoveStringLiteralDfa3_0(active0, 0x20000000L);
+ return jjMoveStringLiteralDfa3_0(active0, 0x2000000L);
default :
break;
}
@@ -408,11 +398,11 @@
switch(curChar)
{
case 101:
- if ((active0 & 0x20000000L) != 0L)
- return jjStartNfaWithStates_0(3, 29, 18);
+ if ((active0 & 0x2000000L) != 0L)
+ return jjStartNfaWithStates_0(3, 25, 18);
break;
case 115:
- return jjMoveStringLiteralDfa4_0(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa4_0(active0, 0x4000000L);
default :
break;
}
@@ -430,8 +420,8 @@
switch(curChar)
{
case 101:
- if ((active0 & 0x40000000L) != 0L)
- return jjStartNfaWithStates_0(4, 30, 18);
+ if ((active0 & 0x4000000L) != 0L)
+ return jjStartNfaWithStates_0(4, 26, 18);
break;
default :
break;
@@ -475,7 +465,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 22;
+ jjnewStateCnt = 19;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -493,26 +483,23 @@
case 0:
if ((0x3ff000000000000L & l) != 0L)
{
- if (kind > 53)
- kind = 53;
+ if (kind > 49)
+ kind = 49;
jjCheckNAdd(17);
}
else if ((0x2400L & l) != 0L)
{
- if (kind > 31)
- kind = 31;
+ if (kind > 27)
+ kind = 27;
}
else if (curChar == 34)
jjCheckNAddTwoStates(12, 13);
else if (curChar == 35)
- {
- if (kind > 19)
- kind = 19;
- }
+ jjstateSet[jjnewStateCnt++] = 9;
else if (curChar == 36)
{
- if (kind > 14)
- kind = 14;
+ if (kind > 9)
+ kind = 9;
}
else if (curChar == 41)
{
@@ -522,8 +509,6 @@
}
if (curChar == 13)
jjstateSet[jjnewStateCnt++] = 15;
- else if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 8;
break;
case 1:
if ((0x100000200L & l) != 0L)
@@ -541,29 +526,25 @@
if (curChar == 13)
jjstateSet[jjnewStateCnt++] = 3;
break;
- case 5:
- if (curChar == 36 && kind > 14)
- kind = 14;
- break;
case 6:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 7;
+ if (curChar == 36 && kind > 9)
+ kind = 9;
break;
case 7:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 17)
- kind = 17;
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 8;
break;
case 8:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 6;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
case 9:
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 8;
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 7;
break;
case 10:
- if (curChar == 35 && kind > 19)
- kind = 19;
+ if (curChar == 35)
+ jjstateSet[jjnewStateCnt++] = 9;
break;
case 11:
if (curChar == 34)
@@ -574,16 +555,16 @@
jjCheckNAddTwoStates(12, 13);
break;
case 13:
- if (curChar == 34 && kind > 28)
- kind = 28;
+ if (curChar == 34 && kind > 24)
+ kind = 24;
break;
case 14:
- if ((0x2400L & l) != 0L && kind > 31)
- kind = 31;
+ if ((0x2400L & l) != 0L && kind > 27)
+ kind = 27;
break;
case 15:
- if (curChar == 10 && kind > 31)
- kind = 31;
+ if (curChar == 10 && kind > 27)
+ kind = 27;
break;
case 16:
if (curChar == 13)
@@ -592,8 +573,8 @@
case 17:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 49)
+ kind = 49;
jjCheckNAdd(17);
break;
default : break;
@@ -610,39 +591,31 @@
case 0:
if ((0x7fffffe07fffffeL & l) != 0L)
{
- if (kind > 55)
- kind = 55;
+ if (kind > 51)
+ kind = 51;
jjCheckNAdd(18);
}
else if (curChar == 92)
- jjCheckNAddStates(3, 6);
+ jjCheckNAddTwoStates(5, 6);
break;
- case 7:
- if (kind > 17)
- kind = 17;
+ case 5:
+ if (curChar == 92)
+ jjCheckNAddTwoStates(5, 6);
break;
+ case 8:
+ if (kind > 12)
+ kind = 12;
+ break;
case 12:
- jjAddStates(7, 8);
+ jjAddStates(3, 4);
break;
case 18:
if ((0x7fffffe07fffffeL & l) == 0L)
break;
- if (kind > 55)
- kind = 55;
+ if (kind > 51)
+ kind = 51;
jjCheckNAdd(18);
break;
- case 19:
- if (curChar == 92)
- jjCheckNAddStates(3, 6);
- break;
- case 20:
- if (curChar == 92)
- jjCheckNAddTwoStates(20, 5);
- break;
- case 21:
- if (curChar == 92)
- jjCheckNAddTwoStates(21, 10);
- break;
default : break;
}
} while(i != startsAt);
@@ -655,13 +628,13 @@
{
switch(jjstateSet[--i])
{
- case 7:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 17)
- kind = 17;
+ case 8:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
+ kind = 12;
break;
case 12:
if ((jjbitVec0[i2] & l2) != 0L)
- jjAddStates(7, 8);
+ jjAddStates(3, 4);
break;
default : break;
}
@@ -674,7 +647,7 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 22 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 19 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
@@ -685,14 +658,11 @@
switch (pos)
{
case 0:
- if ((active0 & 0x50000L) != 0L)
- {
- jjmatchedKind = 19;
- return 3;
- }
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x6800L) != 0L)
+ return 4;
+ if ((active0 & 0x400L) != 0L)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
return -1;
}
return -1;
@@ -717,13 +687,14 @@
switch(curChar)
{
case 35:
- return jjMoveStringLiteralDfa1_6(0x50000L);
+ jjmatchedKind = 14;
+ return jjMoveStringLiteralDfa1_6(0x2800L);
case 36:
- return jjMoveStringLiteralDfa1_6(0x8000L);
+ return jjMoveStringLiteralDfa1_6(0x400L);
case 42:
- return jjMoveStringLiteralDfa1_6(0x1000000L);
+ return jjMoveStringLiteralDfa1_6(0x100000L);
default :
- return jjMoveNfa_6(4, 0);
+ return jjMoveNfa_6(5, 0);
}
}
private final int jjMoveStringLiteralDfa1_6(long active0)
@@ -736,18 +707,18 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x8000L) != 0L)
- return jjStopAtPos(1, 15);
+ if ((active0 & 0x400L) != 0L)
+ return jjStopAtPos(1, 10);
break;
case 35:
- if ((active0 & 0x10000L) != 0L)
- return jjStopAtPos(1, 16);
- else if ((active0 & 0x1000000L) != 0L)
- return jjStopAtPos(1, 24);
+ if ((active0 & 0x800L) != 0L)
+ return jjStopAtPos(1, 11);
+ else if ((active0 & 0x100000L) != 0L)
+ return jjStopAtPos(1, 20);
break;
case 42:
- if ((active0 & 0x40000L) != 0L)
- return jjStartNfaWithStates_6(1, 18, 1);
+ if ((active0 & 0x2000L) != 0L)
+ return jjStartNfaWithStates_6(1, 13, 2);
break;
default :
break;
@@ -758,7 +729,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 9;
+ jjnewStateCnt = 6;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -773,39 +744,30 @@
{
switch(jjstateSet[--i])
{
- case 4:
+ case 5:
if (curChar == 35)
- {
- if (kind > 19)
- kind = 19;
- }
+ jjstateSet[jjnewStateCnt++] = 4;
else if (curChar == 36)
{
- if (kind > 14)
- kind = 14;
+ if (kind > 9)
+ kind = 9;
}
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 3;
- break;
- case 0:
- if (curChar == 36 && kind > 14)
- kind = 14;
break;
case 1:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 2;
+ if (curChar == 36 && kind > 9)
+ kind = 9;
break;
case 2:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 17)
- kind = 17;
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 3;
break;
case 3:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 1;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
- case 5:
- if (curChar == 35 && kind > 19)
- kind = 19;
+ case 4:
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 2;
break;
default : break;
}
@@ -818,21 +780,14 @@
{
switch(jjstateSet[--i])
{
- case 4:
- if (curChar == 92)
- jjCheckNAddStates(9, 12);
- break;
- case 2:
- if (kind > 17)
- kind = 17;
- break;
- case 7:
+ case 5:
+ case 0:
if (curChar == 92)
- jjCheckNAddTwoStates(7, 0);
+ jjCheckNAddTwoStates(0, 1);
break;
- case 8:
- if (curChar == 92)
- jjCheckNAddTwoStates(8, 5);
+ case 3:
+ if (kind > 12)
+ kind = 12;
break;
default : break;
}
@@ -846,9 +801,9 @@
{
switch(jjstateSet[--i])
{
- case 2:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 17)
- kind = 17;
+ case 3:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
+ kind = 12;
break;
default : break;
}
@@ -861,7 +816,7 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 9 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 6 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
@@ -872,58 +827,55 @@
switch (pos)
{
case 0:
- if ((active0 & 0x50000L) != 0L)
- {
- jjmatchedKind = 19;
- return 3;
- }
- if ((active0 & 0x60000000L) != 0L)
+ if ((active0 & 0x6800L) != 0L)
+ return 4;
+ if ((active0 & 0x6000000L) != 0L)
{
- jjmatchedKind = 59;
+ jjmatchedKind = 55;
return 10;
}
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x400L) != 0L)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
return -1;
}
return -1;
case 1:
- if ((active0 & 0x40000L) != 0L)
- return 1;
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x6000000L) != 0L)
+ {
+ jjmatchedKind = 55;
+ jjmatchedPos = 1;
+ return 10;
+ }
+ if ((active0 & 0x400L) != 0L)
{
if (jjmatchedPos == 0)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
jjmatchedPos = 0;
}
return -1;
}
- if ((active0 & 0x60000000L) != 0L)
- {
- jjmatchedKind = 59;
- jjmatchedPos = 1;
- return 10;
- }
+ if ((active0 & 0x2000L) != 0L)
+ return 2;
return -1;
case 2:
- if ((active0 & 0x60000000L) != 0L)
+ if ((active0 & 0x6000000L) != 0L)
{
- jjmatchedKind = 59;
+ jjmatchedKind = 55;
jjmatchedPos = 2;
return 10;
}
return -1;
case 3:
- if ((active0 & 0x20000000L) != 0L)
- return 10;
- if ((active0 & 0x40000000L) != 0L)
+ if ((active0 & 0x4000000L) != 0L)
{
- jjmatchedKind = 59;
+ jjmatchedKind = 55;
jjmatchedPos = 3;
return 10;
}
+ if ((active0 & 0x2000000L) != 0L)
+ return 10;
return -1;
default :
return -1;
@@ -946,19 +898,20 @@
switch(curChar)
{
case 35:
- return jjMoveStringLiteralDfa1_5(0x50000L);
+ jjmatchedKind = 14;
+ return jjMoveStringLiteralDfa1_5(0x2800L);
case 36:
- return jjMoveStringLiteralDfa1_5(0x8000L);
+ return jjMoveStringLiteralDfa1_5(0x400L);
case 102:
- return jjMoveStringLiteralDfa1_5(0x40000000L);
+ return jjMoveStringLiteralDfa1_5(0x4000000L);
case 116:
- return jjMoveStringLiteralDfa1_5(0x20000000L);
+ return jjMoveStringLiteralDfa1_5(0x2000000L);
case 123:
- return jjStopAtPos(0, 61);
+ return jjStopAtPos(0, 57);
case 125:
- return jjStopAtPos(0, 62);
+ return jjStopAtPos(0, 58);
default :
- return jjMoveNfa_5(4, 0);
+ return jjMoveNfa_5(5, 0);
}
}
private final int jjMoveStringLiteralDfa1_5(long active0)
@@ -971,21 +924,21 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x8000L) != 0L)
- return jjStopAtPos(1, 15);
+ if ((active0 & 0x400L) != 0L)
+ return jjStopAtPos(1, 10);
break;
case 35:
- if ((active0 & 0x10000L) != 0L)
- return jjStopAtPos(1, 16);
+ if ((active0 & 0x800L) != 0L)
+ return jjStopAtPos(1, 11);
break;
case 42:
- if ((active0 & 0x40000L) != 0L)
- return jjStartNfaWithStates_5(1, 18, 1);
+ if ((active0 & 0x2000L) != 0L)
+ return jjStartNfaWithStates_5(1, 13, 2);
break;
case 97:
- return jjMoveStringLiteralDfa2_5(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa2_5(active0, 0x4000000L);
case 114:
- return jjMoveStringLiteralDfa2_5(active0, 0x20000000L);
+ return jjMoveStringLiteralDfa2_5(active0, 0x2000000L);
default :
break;
}
@@ -1003,9 +956,9 @@
switch(curChar)
{
case 108:
- return jjMoveStringLiteralDfa3_5(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa3_5(active0, 0x4000000L);
case 117:
- return jjMoveStringLiteralDfa3_5(active0, 0x20000000L);
+ return jjMoveStringLiteralDfa3_5(active0, 0x2000000L);
default :
break;
}
@@ -1023,11 +976,11 @@
switch(curChar)
{
case 101:
- if ((active0 & 0x20000000L) != 0L)
- return jjStartNfaWithStates_5(3, 29, 10);
+ if ((active0 & 0x2000000L) != 0L)
+ return jjStartNfaWithStates_5(3, 25, 10);
break;
case 115:
- return jjMoveStringLiteralDfa4_5(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa4_5(active0, 0x4000000L);
default :
break;
}
@@ -1045,8 +998,8 @@
switch(curChar)
{
case 101:
- if ((active0 & 0x40000000L) != 0L)
- return jjStartNfaWithStates_5(4, 30, 10);
+ if ((active0 & 0x4000000L) != 0L)
+ return jjStartNfaWithStates_5(4, 26, 10);
break;
default :
break;
@@ -1057,7 +1010,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 16;
+ jjnewStateCnt = 13;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -1072,43 +1025,34 @@
{
switch(jjstateSet[--i])
{
- case 4:
+ case 5:
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 12;
else if (curChar == 34)
jjCheckNAddTwoStates(7, 8);
else if (curChar == 35)
- {
- if (kind > 19)
- kind = 19;
- }
+ jjstateSet[jjnewStateCnt++] = 4;
else if (curChar == 36)
{
- if (kind > 14)
- kind = 14;
+ if (kind > 9)
+ kind = 9;
}
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 3;
break;
- case 0:
- if (curChar == 36 && kind > 14)
- kind = 14;
- break;
case 1:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 2;
+ if (curChar == 36 && kind > 9)
+ kind = 9;
break;
case 2:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 17)
- kind = 17;
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 3;
break;
case 3:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 1;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
- case 5:
- if (curChar == 35 && kind > 19)
- kind = 19;
+ case 4:
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 2;
break;
case 6:
if (curChar == 34)
@@ -1119,14 +1063,14 @@
jjCheckNAddTwoStates(7, 8);
break;
case 8:
- if (curChar == 34 && kind > 28)
- kind = 28;
+ if (curChar == 34 && kind > 24)
+ kind = 24;
break;
case 10:
if ((0x3ff200000000000L & l) == 0L)
break;
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjstateSet[jjnewStateCnt++] = 10;
break;
case 11:
@@ -1144,53 +1088,45 @@
{
switch(jjstateSet[--i])
{
- case 4:
+ case 5:
if ((0x7fffffe07fffffeL & l) != 0L)
{
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjCheckNAdd(10);
}
else if (curChar == 92)
- jjCheckNAddStates(13, 16);
+ jjCheckNAddTwoStates(0, 1);
break;
- case 2:
- if (kind > 17)
- kind = 17;
+ case 0:
+ if (curChar == 92)
+ jjCheckNAddTwoStates(0, 1);
+ break;
+ case 3:
+ if (kind > 12)
+ kind = 12;
break;
case 7:
- jjAddStates(17, 18);
+ jjAddStates(5, 6);
break;
case 9:
if ((0x7fffffe07fffffeL & l) == 0L)
break;
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjCheckNAdd(10);
break;
case 10:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjCheckNAdd(10);
break;
case 12:
- if ((0x7fffffe07fffffeL & l) != 0L && kind > 60)
- kind = 60;
- break;
- case 13:
- if (curChar == 92)
- jjCheckNAddStates(13, 16);
+ if ((0x7fffffe07fffffeL & l) != 0L && kind > 56)
+ kind = 56;
break;
- case 14:
- if (curChar == 92)
- jjCheckNAddTwoStates(14, 0);
- break;
- case 15:
- if (curChar == 92)
- jjCheckNAddTwoStates(15, 5);
- break;
default : break;
}
} while(i != startsAt);
@@ -1203,13 +1139,13 @@
{
switch(jjstateSet[--i])
{
- case 2:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 17)
- kind = 17;
+ case 3:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
+ kind = 12;
break;
case 7:
if ((jjbitVec0[i2] & l2) != 0L)
- jjAddStates(17, 18);
+ jjAddStates(5, 6);
break;
default : break;
}
@@ -1222,7 +1158,7 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 16 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 13 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
@@ -1233,58 +1169,55 @@
switch (pos)
{
case 0:
- if ((active0 & 0x50000L) != 0L)
- {
- jjmatchedKind = 19;
- return 3;
- }
- if ((active0 & 0x60000000L) != 0L)
+ if ((active0 & 0x6800L) != 0L)
+ return 4;
+ if ((active0 & 0x6000000L) != 0L)
{
- jjmatchedKind = 59;
+ jjmatchedKind = 55;
return 10;
}
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x400L) != 0L)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
return -1;
}
return -1;
case 1:
- if ((active0 & 0x40000L) != 0L)
- return 1;
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x6000000L) != 0L)
+ {
+ jjmatchedKind = 55;
+ jjmatchedPos = 1;
+ return 10;
+ }
+ if ((active0 & 0x400L) != 0L)
{
if (jjmatchedPos == 0)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
jjmatchedPos = 0;
}
return -1;
- }
- if ((active0 & 0x60000000L) != 0L)
- {
- jjmatchedKind = 59;
- jjmatchedPos = 1;
- return 10;
}
+ if ((active0 & 0x2000L) != 0L)
+ return 2;
return -1;
case 2:
- if ((active0 & 0x60000000L) != 0L)
+ if ((active0 & 0x6000000L) != 0L)
{
- jjmatchedKind = 59;
+ jjmatchedKind = 55;
jjmatchedPos = 2;
return 10;
}
return -1;
case 3:
- if ((active0 & 0x20000000L) != 0L)
- return 10;
- if ((active0 & 0x40000000L) != 0L)
+ if ((active0 & 0x4000000L) != 0L)
{
- jjmatchedKind = 59;
+ jjmatchedKind = 55;
jjmatchedPos = 3;
return 10;
}
+ if ((active0 & 0x2000000L) != 0L)
+ return 10;
return -1;
default :
return -1;
@@ -1307,9 +1240,10 @@
switch(curChar)
{
case 35:
- return jjMoveStringLiteralDfa1_1(0x50000L);
+ jjmatchedKind = 14;
+ return jjMoveStringLiteralDfa1_1(0x2800L);
case 36:
- return jjMoveStringLiteralDfa1_1(0x8000L);
+ return jjMoveStringLiteralDfa1_1(0x400L);
case 40:
return jjStopAtPos(0, 4);
case 91:
@@ -1317,15 +1251,15 @@
case 93:
return jjStopAtPos(0, 2);
case 102:
- return jjMoveStringLiteralDfa1_1(0x40000000L);
+ return jjMoveStringLiteralDfa1_1(0x4000000L);
case 116:
- return jjMoveStringLiteralDfa1_1(0x20000000L);
+ return jjMoveStringLiteralDfa1_1(0x2000000L);
case 123:
- return jjStopAtPos(0, 61);
+ return jjStopAtPos(0, 57);
case 125:
- return jjStopAtPos(0, 62);
+ return jjStopAtPos(0, 58);
default :
- return jjMoveNfa_1(4, 0);
+ return jjMoveNfa_1(5, 0);
}
}
private final int jjMoveStringLiteralDfa1_1(long active0)
@@ -1338,21 +1272,21 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x8000L) != 0L)
- return jjStopAtPos(1, 15);
+ if ((active0 & 0x400L) != 0L)
+ return jjStopAtPos(1, 10);
break;
case 35:
- if ((active0 & 0x10000L) != 0L)
- return jjStopAtPos(1, 16);
+ if ((active0 & 0x800L) != 0L)
+ return jjStopAtPos(1, 11);
break;
case 42:
- if ((active0 & 0x40000L) != 0L)
- return jjStartNfaWithStates_1(1, 18, 1);
+ if ((active0 & 0x2000L) != 0L)
+ return jjStartNfaWithStates_1(1, 13, 2);
break;
case 97:
- return jjMoveStringLiteralDfa2_1(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa2_1(active0, 0x4000000L);
case 114:
- return jjMoveStringLiteralDfa2_1(active0, 0x20000000L);
+ return jjMoveStringLiteralDfa2_1(active0, 0x2000000L);
default :
break;
}
@@ -1370,9 +1304,9 @@
switch(curChar)
{
case 108:
- return jjMoveStringLiteralDfa3_1(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa3_1(active0, 0x4000000L);
case 117:
- return jjMoveStringLiteralDfa3_1(active0, 0x20000000L);
+ return jjMoveStringLiteralDfa3_1(active0, 0x2000000L);
default :
break;
}
@@ -1390,11 +1324,11 @@
switch(curChar)
{
case 101:
- if ((active0 & 0x20000000L) != 0L)
- return jjStartNfaWithStates_1(3, 29, 10);
+ if ((active0 & 0x2000000L) != 0L)
+ return jjStartNfaWithStates_1(3, 25, 10);
break;
case 115:
- return jjMoveStringLiteralDfa4_1(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa4_1(active0, 0x4000000L);
default :
break;
}
@@ -1412,8 +1346,8 @@
switch(curChar)
{
case 101:
- if ((active0 & 0x40000000L) != 0L)
- return jjStartNfaWithStates_1(4, 30, 10);
+ if ((active0 & 0x4000000L) != 0L)
+ return jjStartNfaWithStates_1(4, 26, 10);
break;
default :
break;
@@ -1424,7 +1358,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 16;
+ jjnewStateCnt = 13;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -1439,43 +1373,34 @@
{
switch(jjstateSet[--i])
{
- case 4:
+ case 5:
if (curChar == 46)
jjstateSet[jjnewStateCnt++] = 12;
else if (curChar == 34)
jjCheckNAddTwoStates(7, 8);
else if (curChar == 35)
- {
- if (kind > 19)
- kind = 19;
- }
+ jjstateSet[jjnewStateCnt++] = 4;
else if (curChar == 36)
{
- if (kind > 14)
- kind = 14;
+ if (kind > 9)
+ kind = 9;
}
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 3;
- break;
- case 0:
- if (curChar == 36 && kind > 14)
- kind = 14;
break;
case 1:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 2;
+ if (curChar == 36 && kind > 9)
+ kind = 9;
break;
case 2:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 17)
- kind = 17;
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 3;
break;
case 3:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 1;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
- case 5:
- if (curChar == 35 && kind > 19)
- kind = 19;
+ case 4:
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 2;
break;
case 6:
if (curChar == 34)
@@ -1486,14 +1411,14 @@
jjCheckNAddTwoStates(7, 8);
break;
case 8:
- if (curChar == 34 && kind > 28)
- kind = 28;
+ if (curChar == 34 && kind > 24)
+ kind = 24;
break;
case 10:
if ((0x3ff200000000000L & l) == 0L)
break;
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjstateSet[jjnewStateCnt++] = 10;
break;
case 11:
@@ -1511,52 +1436,44 @@
{
switch(jjstateSet[--i])
{
- case 4:
+ case 5:
if ((0x7fffffe07fffffeL & l) != 0L)
{
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjCheckNAdd(10);
}
else if (curChar == 92)
- jjCheckNAddStates(13, 16);
+ jjCheckNAddTwoStates(0, 1);
break;
- case 2:
- if (kind > 17)
- kind = 17;
+ case 0:
+ if (curChar == 92)
+ jjCheckNAddTwoStates(0, 1);
break;
+ case 3:
+ if (kind > 12)
+ kind = 12;
+ break;
case 7:
- jjAddStates(17, 18);
+ jjAddStates(5, 6);
break;
case 9:
if ((0x7fffffe07fffffeL & l) == 0L)
break;
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjCheckNAdd(10);
break;
case 10:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjCheckNAdd(10);
break;
case 12:
- if ((0x7fffffe07fffffeL & l) != 0L && kind > 60)
- kind = 60;
- break;
- case 13:
- if (curChar == 92)
- jjCheckNAddStates(13, 16);
- break;
- case 14:
- if (curChar == 92)
- jjCheckNAddTwoStates(14, 0);
- break;
- case 15:
- if (curChar == 92)
- jjCheckNAddTwoStates(15, 5);
+ if ((0x7fffffe07fffffeL & l) != 0L && kind > 56)
+ kind = 56;
break;
default : break;
}
@@ -1570,13 +1487,13 @@
{
switch(jjstateSet[--i])
{
- case 2:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 17)
- kind = 17;
+ case 3:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
+ kind = 12;
break;
case 7:
if ((jjbitVec0[i2] & l2) != 0L)
- jjAddStates(17, 18);
+ jjAddStates(5, 6);
break;
default : break;
}
@@ -1589,7 +1506,7 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 16 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 13 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
@@ -1600,14 +1517,11 @@
switch (pos)
{
case 0:
- if ((active0 & 0x50000L) != 0L)
- {
- jjmatchedKind = 19;
- return 3;
- }
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x6800L) != 0L)
+ return 4;
+ if ((active0 & 0x400L) != 0L)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
return -1;
}
return -1;
@@ -1632,13 +1546,14 @@
switch(curChar)
{
case 35:
- return jjMoveStringLiteralDfa1_7(0x50000L);
+ jjmatchedKind = 14;
+ return jjMoveStringLiteralDfa1_7(0x2800L);
case 36:
- return jjMoveStringLiteralDfa1_7(0x8000L);
+ return jjMoveStringLiteralDfa1_7(0x400L);
case 42:
- return jjMoveStringLiteralDfa1_7(0x800000L);
+ return jjMoveStringLiteralDfa1_7(0x80000L);
default :
- return jjMoveNfa_7(4, 0);
+ return jjMoveNfa_7(5, 0);
}
}
private final int jjMoveStringLiteralDfa1_7(long active0)
@@ -1651,18 +1566,18 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x8000L) != 0L)
- return jjStopAtPos(1, 15);
+ if ((active0 & 0x400L) != 0L)
+ return jjStopAtPos(1, 10);
break;
case 35:
- if ((active0 & 0x10000L) != 0L)
- return jjStopAtPos(1, 16);
- else if ((active0 & 0x800000L) != 0L)
- return jjStopAtPos(1, 23);
+ if ((active0 & 0x800L) != 0L)
+ return jjStopAtPos(1, 11);
+ else if ((active0 & 0x80000L) != 0L)
+ return jjStopAtPos(1, 19);
break;
case 42:
- if ((active0 & 0x40000L) != 0L)
- return jjStartNfaWithStates_7(1, 18, 1);
+ if ((active0 & 0x2000L) != 0L)
+ return jjStartNfaWithStates_7(1, 13, 2);
break;
default :
break;
@@ -1673,7 +1588,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 9;
+ jjnewStateCnt = 6;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -1688,39 +1603,30 @@
{
switch(jjstateSet[--i])
{
- case 4:
+ case 5:
if (curChar == 35)
- {
- if (kind > 19)
- kind = 19;
- }
+ jjstateSet[jjnewStateCnt++] = 4;
else if (curChar == 36)
{
- if (kind > 14)
- kind = 14;
+ if (kind > 9)
+ kind = 9;
}
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 3;
- break;
- case 0:
- if (curChar == 36 && kind > 14)
- kind = 14;
break;
case 1:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 2;
+ if (curChar == 36 && kind > 9)
+ kind = 9;
break;
case 2:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 17)
- kind = 17;
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 3;
break;
case 3:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 1;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
- case 5:
- if (curChar == 35 && kind > 19)
- kind = 19;
+ case 4:
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 2;
break;
default : break;
}
@@ -1733,21 +1639,14 @@
{
switch(jjstateSet[--i])
{
- case 4:
- if (curChar == 92)
- jjCheckNAddStates(9, 12);
- break;
- case 2:
- if (kind > 17)
- kind = 17;
- break;
- case 7:
+ case 5:
+ case 0:
if (curChar == 92)
- jjCheckNAddTwoStates(7, 0);
+ jjCheckNAddTwoStates(0, 1);
break;
- case 8:
- if (curChar == 92)
- jjCheckNAddTwoStates(8, 5);
+ case 3:
+ if (kind > 12)
+ kind = 12;
break;
default : break;
}
@@ -1761,9 +1660,9 @@
{
switch(jjstateSet[--i])
{
- case 2:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 17)
- kind = 17;
+ case 3:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
+ kind = 12;
break;
default : break;
}
@@ -1776,7 +1675,7 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 9 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 6 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
@@ -1787,58 +1686,55 @@
switch (pos)
{
case 0:
- if ((active0 & 0x50000L) != 0L)
+ if ((active0 & 0x6800L) != 0L)
+ return 4;
+ if ((active0 & 0x6000000L) != 0L)
{
- jjmatchedKind = 19;
- return 3;
+ jjmatchedKind = 55;
+ return 11;
}
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x400L) != 0L)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
return -1;
}
- if ((active0 & 0x60000000L) != 0L)
- {
- jjmatchedKind = 59;
- return 11;
- }
return -1;
case 1:
- if ((active0 & 0x60000000L) != 0L)
- {
- jjmatchedKind = 59;
- jjmatchedPos = 1;
- return 11;
- }
- if ((active0 & 0x40000L) != 0L)
- return 1;
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x400L) != 0L)
{
if (jjmatchedPos == 0)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
jjmatchedPos = 0;
}
return -1;
}
+ if ((active0 & 0x2000L) != 0L)
+ return 2;
+ if ((active0 & 0x6000000L) != 0L)
+ {
+ jjmatchedKind = 55;
+ jjmatchedPos = 1;
+ return 11;
+ }
return -1;
case 2:
- if ((active0 & 0x60000000L) != 0L)
+ if ((active0 & 0x6000000L) != 0L)
{
- jjmatchedKind = 59;
+ jjmatchedKind = 55;
jjmatchedPos = 2;
return 11;
}
return -1;
case 3:
- if ((active0 & 0x20000000L) != 0L)
- return 11;
- if ((active0 & 0x40000000L) != 0L)
+ if ((active0 & 0x4000000L) != 0L)
{
- jjmatchedKind = 59;
+ jjmatchedKind = 55;
jjmatchedPos = 3;
return 11;
}
+ if ((active0 & 0x2000000L) != 0L)
+ return 11;
return -1;
default :
return -1;
@@ -1861,9 +1757,10 @@
switch(curChar)
{
case 35:
- return jjMoveStringLiteralDfa1_2(0x50000L);
+ jjmatchedKind = 14;
+ return jjMoveStringLiteralDfa1_2(0x2800L);
case 36:
- return jjMoveStringLiteralDfa1_2(0x8000L);
+ return jjMoveStringLiteralDfa1_2(0x400L);
case 41:
return jjStopAtPos(0, 6);
case 44:
@@ -1873,15 +1770,15 @@
case 93:
return jjStopAtPos(0, 2);
case 102:
- return jjMoveStringLiteralDfa1_2(0x40000000L);
+ return jjMoveStringLiteralDfa1_2(0x4000000L);
case 116:
- return jjMoveStringLiteralDfa1_2(0x20000000L);
+ return jjMoveStringLiteralDfa1_2(0x2000000L);
case 123:
- return jjStopAtPos(0, 61);
+ return jjStopAtPos(0, 57);
case 125:
- return jjStopAtPos(0, 62);
+ return jjStopAtPos(0, 58);
default :
- return jjMoveNfa_2(4, 0);
+ return jjMoveNfa_2(5, 0);
}
}
private final int jjMoveStringLiteralDfa1_2(long active0)
@@ -1894,21 +1791,21 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x8000L) != 0L)
- return jjStopAtPos(1, 15);
+ if ((active0 & 0x400L) != 0L)
+ return jjStopAtPos(1, 10);
break;
case 35:
- if ((active0 & 0x10000L) != 0L)
- return jjStopAtPos(1, 16);
+ if ((active0 & 0x800L) != 0L)
+ return jjStopAtPos(1, 11);
break;
case 42:
- if ((active0 & 0x40000L) != 0L)
- return jjStartNfaWithStates_2(1, 18, 1);
+ if ((active0 & 0x2000L) != 0L)
+ return jjStartNfaWithStates_2(1, 13, 2);
break;
case 97:
- return jjMoveStringLiteralDfa2_2(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa2_2(active0, 0x4000000L);
case 114:
- return jjMoveStringLiteralDfa2_2(active0, 0x20000000L);
+ return jjMoveStringLiteralDfa2_2(active0, 0x2000000L);
default :
break;
}
@@ -1926,9 +1823,9 @@
switch(curChar)
{
case 108:
- return jjMoveStringLiteralDfa3_2(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa3_2(active0, 0x4000000L);
case 117:
- return jjMoveStringLiteralDfa3_2(active0, 0x20000000L);
+ return jjMoveStringLiteralDfa3_2(active0, 0x2000000L);
default :
break;
}
@@ -1946,11 +1843,11 @@
switch(curChar)
{
case 101:
- if ((active0 & 0x20000000L) != 0L)
- return jjStartNfaWithStates_2(3, 29, 11);
+ if ((active0 & 0x2000000L) != 0L)
+ return jjStartNfaWithStates_2(3, 25, 11);
break;
case 115:
- return jjMoveStringLiteralDfa4_2(active0, 0x40000000L);
+ return jjMoveStringLiteralDfa4_2(active0, 0x4000000L);
default :
break;
}
@@ -1968,8 +1865,8 @@
switch(curChar)
{
case 101:
- if ((active0 & 0x40000000L) != 0L)
- return jjStartNfaWithStates_2(4, 30, 11);
+ if ((active0 & 0x4000000L) != 0L)
+ return jjStartNfaWithStates_2(4, 26, 11);
break;
default :
break;
@@ -1980,7 +1877,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 17;
+ jjnewStateCnt = 14;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -1995,11 +1892,11 @@
{
switch(jjstateSet[--i])
{
- case 4:
+ case 5:
if ((0x3ff000000000000L & l) != 0L)
{
- if (kind > 53)
- kind = 53;
+ if (kind > 49)
+ kind = 49;
jjCheckNAdd(9);
}
else if (curChar == 46)
@@ -2007,37 +1904,28 @@
else if (curChar == 34)
jjCheckNAddTwoStates(7, 8);
else if (curChar == 35)
- {
- if (kind > 19)
- kind = 19;
- }
+ jjstateSet[jjnewStateCnt++] = 4;
else if (curChar == 36)
{
- if (kind > 14)
- kind = 14;
+ if (kind > 9)
+ kind = 9;
}
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 3;
- break;
- case 0:
- if (curChar == 36 && kind > 14)
- kind = 14;
break;
case 1:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 2;
+ if (curChar == 36 && kind > 9)
+ kind = 9;
break;
case 2:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 17)
- kind = 17;
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 3;
break;
case 3:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 1;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
- case 5:
- if (curChar == 35 && kind > 19)
- kind = 19;
+ case 4:
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 2;
break;
case 6:
if (curChar == 34)
@@ -2048,21 +1936,21 @@
jjCheckNAddTwoStates(7, 8);
break;
case 8:
- if (curChar == 34 && kind > 28)
- kind = 28;
+ if (curChar == 34 && kind > 24)
+ kind = 24;
break;
case 9:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 49)
+ kind = 49;
jjCheckNAdd(9);
break;
case 11:
if ((0x3ff200000000000L & l) == 0L)
break;
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjstateSet[jjnewStateCnt++] = 11;
break;
case 12:
@@ -2080,52 +1968,44 @@
{
switch(jjstateSet[--i])
{
- case 4:
+ case 5:
if ((0x7fffffe07fffffeL & l) != 0L)
{
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjCheckNAdd(11);
}
else if (curChar == 92)
- jjCheckNAddStates(19, 22);
+ jjCheckNAddTwoStates(0, 1);
break;
- case 2:
- if (kind > 17)
- kind = 17;
+ case 0:
+ if (curChar == 92)
+ jjCheckNAddTwoStates(0, 1);
+ break;
+ case 3:
+ if (kind > 12)
+ kind = 12;
break;
case 7:
- jjAddStates(17, 18);
+ jjAddStates(5, 6);
break;
case 10:
if ((0x7fffffe07fffffeL & l) == 0L)
break;
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjCheckNAdd(11);
break;
case 11:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
- if (kind > 59)
- kind = 59;
+ if (kind > 55)
+ kind = 55;
jjCheckNAdd(11);
break;
case 13:
- if ((0x7fffffe07fffffeL & l) != 0L && kind > 60)
- kind = 60;
- break;
- case 14:
- if (curChar == 92)
- jjCheckNAddStates(19, 22);
- break;
- case 15:
- if (curChar == 92)
- jjCheckNAddTwoStates(15, 0);
- break;
- case 16:
- if (curChar == 92)
- jjCheckNAddTwoStates(16, 5);
+ if ((0x7fffffe07fffffeL & l) != 0L && kind > 56)
+ kind = 56;
break;
default : break;
}
@@ -2139,13 +2019,13 @@
{
switch(jjstateSet[--i])
{
- case 2:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 17)
- kind = 17;
+ case 3:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
+ kind = 12;
break;
case 7:
if ((jjbitVec0[i2] & l2) != 0L)
- jjAddStates(17, 18);
+ jjAddStates(5, 6);
break;
default : break;
}
@@ -2158,7 +2038,7 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 17 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 14 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
@@ -2169,14 +2049,11 @@
switch (pos)
{
case 0:
- if ((active0 & 0x50000L) != 0L)
- {
- jjmatchedKind = 19;
- return 3;
- }
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x6800L) != 0L)
+ return 4;
+ if ((active0 & 0x400L) != 0L)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
return -1;
}
return -1;
@@ -2201,11 +2078,12 @@
switch(curChar)
{
case 35:
- return jjMoveStringLiteralDfa1_8(0x50000L);
+ jjmatchedKind = 14;
+ return jjMoveStringLiteralDfa1_8(0x2800L);
case 36:
- return jjMoveStringLiteralDfa1_8(0x8000L);
+ return jjMoveStringLiteralDfa1_8(0x400L);
default :
- return jjMoveNfa_8(4, 0);
+ return jjMoveNfa_8(5, 0);
}
}
private final int jjMoveStringLiteralDfa1_8(long active0)
@@ -2218,16 +2096,16 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x8000L) != 0L)
- return jjStopAtPos(1, 15);
+ if ((active0 & 0x400L) != 0L)
+ return jjStopAtPos(1, 10);
break;
case 35:
- if ((active0 & 0x10000L) != 0L)
- return jjStopAtPos(1, 16);
+ if ((active0 & 0x800L) != 0L)
+ return jjStopAtPos(1, 11);
break;
case 42:
- if ((active0 & 0x40000L) != 0L)
- return jjStartNfaWithStates_8(1, 18, 1);
+ if ((active0 & 0x2000L) != 0L)
+ return jjStartNfaWithStates_8(1, 13, 2);
break;
default :
break;
@@ -2238,7 +2116,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 12;
+ jjnewStateCnt = 9;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -2253,54 +2131,45 @@
{
switch(jjstateSet[--i])
{
- case 4:
+ case 5:
if ((0x2400L & l) != 0L)
{
- if (kind > 22)
- kind = 22;
+ if (kind > 18)
+ kind = 18;
}
else if (curChar == 35)
- {
- if (kind > 19)
- kind = 19;
- }
+ jjstateSet[jjnewStateCnt++] = 4;
else if (curChar == 36)
{
- if (kind > 14)
- kind = 14;
+ if (kind > 9)
+ kind = 9;
}
if (curChar == 13)
jjstateSet[jjnewStateCnt++] = 7;
- else if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 3;
- break;
- case 0:
- if (curChar == 36 && kind > 14)
- kind = 14;
break;
case 1:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 2;
+ if (curChar == 36 && kind > 9)
+ kind = 9;
break;
case 2:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 17)
- kind = 17;
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 3;
break;
case 3:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 1;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
- case 5:
- if (curChar == 35 && kind > 19)
- kind = 19;
+ case 4:
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 2;
break;
case 6:
- if ((0x2400L & l) != 0L && kind > 22)
- kind = 22;
+ if ((0x2400L & l) != 0L && kind > 18)
+ kind = 18;
break;
case 7:
- if (curChar == 10 && kind > 22)
- kind = 22;
+ if (curChar == 10 && kind > 18)
+ kind = 18;
break;
case 8:
if (curChar == 13)
@@ -2317,21 +2186,14 @@
{
switch(jjstateSet[--i])
{
- case 4:
- if (curChar == 92)
- jjCheckNAddStates(23, 26);
- break;
- case 2:
- if (kind > 17)
- kind = 17;
- break;
- case 10:
+ case 5:
+ case 0:
if (curChar == 92)
- jjCheckNAddTwoStates(10, 0);
+ jjCheckNAddTwoStates(0, 1);
break;
- case 11:
- if (curChar == 92)
- jjCheckNAddTwoStates(11, 5);
+ case 3:
+ if (kind > 12)
+ kind = 12;
break;
default : break;
}
@@ -2345,9 +2207,9 @@
{
switch(jjstateSet[--i])
{
- case 2:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 17)
- kind = 17;
+ case 3:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
+ kind = 12;
break;
default : break;
}
@@ -2360,7 +2222,7 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 12 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 9 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
@@ -2371,64 +2233,61 @@
switch (pos)
{
case 0:
- if ((active0 & 0x6000000000000L) != 0L)
+ if ((active0 & 0x6800L) != 0L)
+ return 4;
+ if ((active0 & 0x600000000000L) != 0L)
{
- jjmatchedKind = 55;
+ jjmatchedKind = 51;
return 11;
- }
- if ((active0 & 0x9000000000000L) != 0L)
- {
- jjmatchedKind = 55;
- return 14;
}
- if ((active0 & 0x50000L) != 0L)
+ if ((active0 & 0x400L) != 0L)
{
- jjmatchedKind = 19;
- return 3;
+ jjmatchedKind = 9;
+ return -1;
}
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x900000000000L) != 0L)
{
- jjmatchedKind = 14;
- return -1;
+ jjmatchedKind = 51;
+ return 14;
}
return -1;
case 1:
- if ((active0 & 0x1000000000000L) != 0L)
+ if ((active0 & 0x100000000000L) != 0L)
return 14;
- if ((active0 & 0x40000L) != 0L)
- return 1;
- if ((active0 & 0xe000000000000L) != 0L)
+ if ((active0 & 0xe00000000000L) != 0L)
{
- jjmatchedKind = 55;
+ jjmatchedKind = 51;
jjmatchedPos = 1;
return 14;
}
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x400L) != 0L)
{
if (jjmatchedPos == 0)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
jjmatchedPos = 0;
}
return -1;
}
+ if ((active0 & 0x2000L) != 0L)
+ return 2;
return -1;
case 2:
- if ((active0 & 0xe000000000000L) != 0L)
+ if ((active0 & 0xe00000000000L) != 0L)
{
- jjmatchedKind = 55;
+ jjmatchedKind = 51;
jjmatchedPos = 2;
return 14;
}
return -1;
case 3:
- if ((active0 & 0xe000000000000L) != 0L)
+ if ((active0 & 0xe00000000000L) != 0L)
return 14;
return -1;
case 4:
- if ((active0 & 0x2000000000000L) != 0L)
+ if ((active0 & 0x200000000000L) != 0L)
{
- jjmatchedKind = 55;
+ jjmatchedKind = 51;
jjmatchedPos = 4;
return 14;
}
@@ -2454,17 +2313,18 @@
switch(curChar)
{
case 35:
- return jjMoveStringLiteralDfa1_4(0x50000L);
+ jjmatchedKind = 14;
+ return jjMoveStringLiteralDfa1_4(0x2800L);
case 36:
- return jjMoveStringLiteralDfa1_4(0x8000L);
+ return jjMoveStringLiteralDfa1_4(0x400L);
case 101:
- return jjMoveStringLiteralDfa1_4(0x6000000000000L);
+ return jjMoveStringLiteralDfa1_4(0x600000000000L);
case 105:
- return jjMoveStringLiteralDfa1_4(0x1000000000000L);
+ return jjMoveStringLiteralDfa1_4(0x100000000000L);
case 115:
- return jjMoveStringLiteralDfa1_4(0x8000000000000L);
+ return jjMoveStringLiteralDfa1_4(0x800000000000L);
default :
- return jjMoveNfa_4(4, 0);
+ return jjMoveNfa_4(5, 0);
}
}
private final int jjMoveStringLiteralDfa1_4(long active0)
@@ -2477,25 +2337,25 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x8000L) != 0L)
- return jjStopAtPos(1, 15);
+ if ((active0 & 0x400L) != 0L)
+ return jjStopAtPos(1, 10);
break;
case 35:
- if ((active0 & 0x10000L) != 0L)
- return jjStopAtPos(1, 16);
+ if ((active0 & 0x800L) != 0L)
+ return jjStopAtPos(1, 11);
break;
case 42:
- if ((active0 & 0x40000L) != 0L)
- return jjStartNfaWithStates_4(1, 18, 1);
+ if ((active0 & 0x2000L) != 0L)
+ return jjStartNfaWithStates_4(1, 13, 2);
break;
case 102:
- if ((active0 & 0x1000000000000L) != 0L)
- return jjStartNfaWithStates_4(1, 48, 14);
+ if ((active0 & 0x100000000000L) != 0L)
+ return jjStartNfaWithStates_4(1, 44, 14);
break;
case 108:
- return jjMoveStringLiteralDfa2_4(active0, 0x6000000000000L);
+ return jjMoveStringLiteralDfa2_4(active0, 0x600000000000L);
case 116:
- return jjMoveStringLiteralDfa2_4(active0, 0x8000000000000L);
+ return jjMoveStringLiteralDfa2_4(active0, 0x800000000000L);
default :
break;
}
@@ -2513,9 +2373,9 @@
switch(curChar)
{
case 111:
- return jjMoveStringLiteralDfa3_4(active0, 0x8000000000000L);
+ return jjMoveStringLiteralDfa3_4(active0, 0x800000000000L);
case 115:
- return jjMoveStringLiteralDfa3_4(active0, 0x6000000000000L);
+ return jjMoveStringLiteralDfa3_4(active0, 0x600000000000L);
default :
break;
}
@@ -2533,15 +2393,15 @@
switch(curChar)
{
case 101:
- if ((active0 & 0x4000000000000L) != 0L)
+ if ((active0 & 0x400000000000L) != 0L)
{
- jjmatchedKind = 50;
+ jjmatchedKind = 46;
jjmatchedPos = 3;
}
- return jjMoveStringLiteralDfa4_4(active0, 0x2000000000000L);
+ return jjMoveStringLiteralDfa4_4(active0, 0x200000000000L);
case 112:
- if ((active0 & 0x8000000000000L) != 0L)
- return jjStartNfaWithStates_4(3, 51, 14);
+ if ((active0 & 0x800000000000L) != 0L)
+ return jjStartNfaWithStates_4(3, 47, 14);
break;
default :
break;
@@ -2560,7 +2420,7 @@
switch(curChar)
{
case 105:
- return jjMoveStringLiteralDfa5_4(active0, 0x2000000000000L);
+ return jjMoveStringLiteralDfa5_4(active0, 0x200000000000L);
default :
break;
}
@@ -2578,8 +2438,8 @@
switch(curChar)
{
case 102:
- if ((active0 & 0x2000000000000L) != 0L)
- return jjStartNfaWithStates_4(5, 49, 14);
+ if ((active0 & 0x200000000000L) != 0L)
+ return jjStartNfaWithStates_4(5, 45, 14);
break;
default :
break;
@@ -2590,7 +2450,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 18;
+ jjnewStateCnt = 15;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -2605,57 +2465,48 @@
{
switch(jjstateSet[--i])
{
- case 4:
+ case 5:
if ((0x3ff000000000000L & l) != 0L)
{
- if (kind > 53)
- kind = 53;
+ if (kind > 49)
+ kind = 49;
jjCheckNAdd(13);
}
else if (curChar == 35)
- {
- if (kind > 19)
- kind = 19;
- }
+ jjstateSet[jjnewStateCnt++] = 4;
else if (curChar == 36)
{
- if (kind > 14)
- kind = 14;
+ if (kind > 9)
+ kind = 9;
}
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 3;
break;
- case 0:
- if (curChar == 36 && kind > 14)
- kind = 14;
- break;
case 1:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 2;
+ if (curChar == 36 && kind > 9)
+ kind = 9;
break;
case 2:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 17)
- kind = 17;
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 3;
break;
case 3:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 1;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
- case 5:
- if (curChar == 35 && kind > 19)
- kind = 19;
+ case 4:
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 2;
break;
case 7:
if ((0x100000200L & l) != 0L)
- jjAddStates(27, 29);
+ jjAddStates(7, 9);
break;
case 8:
- if ((0x2400L & l) != 0L && kind > 47)
- kind = 47;
+ if ((0x2400L & l) != 0L && kind > 43)
+ kind = 43;
break;
case 9:
- if (curChar == 10 && kind > 47)
- kind = 47;
+ if (curChar == 10 && kind > 43)
+ kind = 43;
break;
case 10:
if (curChar == 13)
@@ -2664,8 +2515,8 @@
case 13:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 49)
+ kind = 49;
jjCheckNAdd(13);
break;
default : break;
@@ -2679,38 +2530,42 @@
{
switch(jjstateSet[--i])
{
- case 11:
+ case 5:
if ((0x7fffffe07fffffeL & l) != 0L)
{
- if (kind > 55)
- kind = 55;
+ if (kind > 51)
+ kind = 51;
jjCheckNAdd(14);
}
- if (curChar == 110)
- jjstateSet[jjnewStateCnt++] = 6;
+ else if (curChar == 92)
+ jjCheckNAddTwoStates(0, 1);
+ if (curChar == 101)
+ jjstateSet[jjnewStateCnt++] = 11;
break;
- case 4:
+ case 11:
if ((0x7fffffe07fffffeL & l) != 0L)
{
- if (kind > 55)
- kind = 55;
+ if (kind > 51)
+ kind = 51;
jjCheckNAdd(14);
}
- else if (curChar == 92)
- jjCheckNAddStates(30, 33);
- if (curChar == 101)
- jjstateSet[jjnewStateCnt++] = 11;
+ if (curChar == 110)
+ jjstateSet[jjnewStateCnt++] = 6;
break;
- case 2:
- if (kind > 17)
- kind = 17;
+ case 0:
+ if (curChar == 92)
+ jjCheckNAddTwoStates(0, 1);
break;
- case 6:
- if (curChar != 100)
+ case 3:
+ if (kind > 12)
+ kind = 12;
+ break;
+ case 6:
+ if (curChar != 100)
break;
- if (kind > 47)
- kind = 47;
- jjAddStates(27, 29);
+ if (kind > 43)
+ kind = 43;
+ jjAddStates(7, 9);
break;
case 12:
if (curChar == 101)
@@ -2719,22 +2574,10 @@
case 14:
if ((0x7fffffe07fffffeL & l) == 0L)
break;
- if (kind > 55)
- kind = 55;
+ if (kind > 51)
+ kind = 51;
jjCheckNAdd(14);
break;
- case 15:
- if (curChar == 92)
- jjCheckNAddStates(30, 33);
- break;
- case 16:
- if (curChar == 92)
- jjCheckNAddTwoStates(16, 0);
- break;
- case 17:
- if (curChar == 92)
- jjCheckNAddTwoStates(17, 5);
- break;
default : break;
}
} while(i != startsAt);
@@ -2747,9 +2590,9 @@
{
switch(jjstateSet[--i])
{
- case 2:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 17)
- kind = 17;
+ case 3:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
+ kind = 12;
break;
default : break;
}
@@ -2762,7 +2605,7 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 18 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 15 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
@@ -2773,18 +2616,15 @@
switch (pos)
{
case 0:
- if ((active0 & 0x100000L) != 0L)
- return 58;
- if ((active0 & 0x8000L) != 0L)
+ if ((active0 & 0x18000L) != 0L)
+ return 9;
+ if ((active0 & 0x6800L) != 0L)
+ return 15;
+ if ((active0 & 0x400L) != 0L)
{
- jjmatchedKind = 14;
+ jjmatchedKind = 9;
return -1;
}
- if ((active0 & 0x50000L) != 0L)
- {
- jjmatchedKind = 19;
- return 54;
- }
return -1;
default :
return -1;
@@ -2807,13 +2647,15 @@
switch(curChar)
{
case 35:
- return jjMoveStringLiteralDfa1_3(0x50000L);
+ jjmatchedKind = 14;
+ return jjMoveStringLiteralDfa1_3(0x2800L);
case 36:
- return jjMoveStringLiteralDfa1_3(0x8000L);
+ return jjMoveStringLiteralDfa1_3(0x400L);
case 92:
- return jjStartNfaWithStates_3(0, 20, 58);
+ jjmatchedKind = 16;
+ return jjMoveStringLiteralDfa1_3(0x8000L);
default :
- return jjMoveNfa_3(10, 0);
+ return jjMoveNfa_3(12, 0);
}
}
private final int jjMoveStringLiteralDfa1_3(long active0)
@@ -2826,17 +2668,21 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x8000L) != 0L)
- return jjStopAtPos(1, 15);
+ if ((active0 & 0x400L) != 0L)
+ return jjStopAtPos(1, 10);
break;
case 35:
- if ((active0 & 0x10000L) != 0L)
- return jjStopAtPos(1, 16);
+ if ((active0 & 0x800L) != 0L)
+ return jjStopAtPos(1, 11);
break;
case 42:
- if ((active0 & 0x40000L) != 0L)
- return jjStartNfaWithStates_3(1, 18, 52);
+ if ((active0 & 0x2000L) != 0L)
+ return jjStartNfaWithStates_3(1, 13, 13);
break;
+ case 92:
+ if ((active0 & 0x8000L) != 0L)
+ return jjStartNfaWithStates_3(1, 15, 16);
+ break;
default :
break;
}
@@ -2846,7 +2692,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 58;
+ jjnewStateCnt = 16;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -2861,114 +2707,67 @@
{
switch(jjstateSet[--i])
{
- case 54:
+ case 15:
if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 52;
+ jjstateSet[jjnewStateCnt++] = 13;
break;
- case 10:
- if ((0xffffffe7ffffffffL & l) != 0L)
- {
- if (kind > 21)
- kind = 21;
- jjCheckNAdd(9);
- }
- else if (curChar == 35)
- jjCheckNAddTwoStates(5, 54);
- else if (curChar == 36)
+ case 16:
+ case 6:
+ if (curChar == 36 && kind > 9)
+ kind = 9;
+ break;
+ case 9:
+ if (curChar == 36)
{
- if (kind > 14)
- kind = 14;
+ if (kind > 9)
+ kind = 9;
}
- if ((0x100000200L & l) != 0L)
- jjCheckNAddStates(34, 36);
else if (curChar == 35)
- {
- if (kind > 19)
- kind = 19;
- }
+ jjstateSet[jjnewStateCnt++] = 11;
break;
- case 58:
- if (curChar == 35)
+ case 12:
+ if ((0xffffffe7ffffffffL & l) != 0L)
{
- if (kind > 19)
- kind = 19;
+ if (kind > 17)
+ kind = 17;
+ jjCheckNAdd(7);
}
+ else if (curChar == 35)
+ jjCheckNAddTwoStates(3, 15);
else if (curChar == 36)
{
- if (kind > 14)
- kind = 14;
+ if (kind > 9)
+ kind = 9;
}
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 49;
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 42;
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 35;
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 26;
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 20;
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 15;
+ if ((0x100000200L & l) != 0L)
+ jjCheckNAddTwoStates(0, 4);
break;
case 0:
if ((0x100000200L & l) != 0L)
- jjCheckNAddStates(34, 36);
+ jjCheckNAddTwoStates(0, 4);
break;
- case 6:
+ case 4:
if (curChar == 35)
- jjCheckNAdd(5);
+ jjCheckNAdd(3);
break;
case 7:
- if (curChar == 36 && kind > 14)
- kind = 14;
- break;
- case 8:
- if (curChar == 35 && kind > 19)
- kind = 19;
- break;
- case 9:
if ((0xffffffe7ffffffffL & l) == 0L)
break;
- if (kind > 21)
- kind = 21;
- jjCheckNAdd(9);
- break;
- case 16:
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 15;
- break;
- case 21:
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 20;
- break;
- case 27:
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 26;
- break;
- case 36:
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 35;
- break;
- case 43:
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 42;
- break;
- case 50:
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 49;
+ if (kind > 17)
+ kind = 17;
+ jjCheckNAdd(7);
break;
- case 51:
+ case 10:
if (curChar == 35)
- jjCheckNAddTwoStates(5, 54);
+ jjstateSet[jjnewStateCnt++] = 11;
break;
- case 52:
+ case 13:
if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 53;
+ jjstateSet[jjnewStateCnt++] = 14;
break;
- case 53:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 17)
- kind = 17;
+ case 14:
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
default : break;
}
@@ -2981,217 +2780,68 @@
{
switch(jjstateSet[--i])
{
- case 54:
- case 5:
+ case 15:
+ case 3:
if (curChar == 115)
- jjstateSet[jjnewStateCnt++] = 4;
- break;
- case 10:
- if ((0xffffffffefffffffL & l) != 0L)
- {
- if (kind > 21)
- kind = 21;
- jjCheckNAdd(9);
- }
- else if (curChar == 92)
- jjCheckNAddStates(37, 40);
- if (curChar == 92)
- jjCheckNAddStates(41, 53);
- break;
- case 58:
- if (curChar == 92)
- jjCheckNAddTwoStates(57, 8);
- if (curChar == 92)
- jjCheckNAddTwoStates(56, 7);
- if (curChar == 92)
- jjAddStates(54, 55);
- if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 45;
- if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 38;
- if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 29;
- if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 23;
- if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 18;
- if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 12;
+ jjstateSet[jjnewStateCnt++] = 2;
break;
- case 1:
+ case 16:
if (curChar == 92)
- jjAddStates(54, 55);
- break;
- case 2:
+ jjAddStates(10, 11);
if (curChar == 92)
- jjCheckNAdd(1);
- break;
- case 3:
- if (curChar == 116 && kind > 13)
- kind = 13;
- break;
- case 4:
- if (curChar == 101)
- jjstateSet[jjnewStateCnt++] = 3;
+ jjCheckNAddTwoStates(5, 6);
break;
case 9:
- if ((0xffffffffefffffffL & l) == 0L)
- break;
- if (kind > 21)
- kind = 21;
- jjCheckNAdd(9);
- break;
- case 11:
if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 12;
- break;
- case 12:
- if (curChar == 92)
- jjCheckNAddTwoStates(11, 16);
- break;
- case 13:
- if (curChar == 116 && kind > 7)
- kind = 7;
- break;
- case 14:
- if (curChar == 101)
- jjstateSet[jjnewStateCnt++] = 13;
- break;
- case 15:
- if (curChar == 115)
- jjstateSet[jjnewStateCnt++] = 14;
- break;
- case 17:
+ jjCheckNAddTwoStates(5, 6);
if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 18;
+ jjstateSet[jjnewStateCnt++] = 8;
break;
- case 18:
+ case 12:
+ if ((0xffffffffefffffffL & l) != 0L)
+ {
+ if (kind > 17)
+ kind = 17;
+ jjCheckNAdd(7);
+ }
+ else if (curChar == 92)
+ jjAddStates(10, 11);
if (curChar == 92)
- jjCheckNAddTwoStates(17, 21);
+ jjCheckNAddTwoStates(5, 6);
break;
- case 19:
- if (curChar == 102 && kind > 8)
+ case 1:
+ if (curChar == 116 && kind > 8)
kind = 8;
- break;
- case 20:
- if (curChar == 105)
- jjstateSet[jjnewStateCnt++] = 19;
- break;
- case 22:
- if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 23;
- break;
- case 23:
- if (curChar == 92)
- jjCheckNAddTwoStates(22, 27);
- break;
- case 24:
- if (curChar == 100 && kind > 9)
- kind = 9;
- break;
- case 25:
- if (curChar == 110)
- jjstateSet[jjnewStateCnt++] = 24;
- break;
- case 26:
- if (curChar == 101)
- jjstateSet[jjnewStateCnt++] = 25;
- break;
- case 28:
- if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 29;
- break;
- case 29:
- if (curChar == 92)
- jjCheckNAddTwoStates(28, 36);
- break;
- case 30:
- if (curChar == 102 && kind > 10)
- kind = 10;
- break;
- case 31:
- if (curChar == 105)
- jjstateSet[jjnewStateCnt++] = 30;
- break;
- case 32:
- if (curChar == 101)
- jjstateSet[jjnewStateCnt++] = 31;
- break;
- case 33:
- if (curChar == 115)
- jjstateSet[jjnewStateCnt++] = 32;
- break;
- case 34:
- if (curChar == 108)
- jjstateSet[jjnewStateCnt++] = 33;
- break;
- case 35:
- if (curChar == 101)
- jjstateSet[jjnewStateCnt++] = 34;
- break;
- case 37:
- if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 38;
- break;
- case 38:
- if (curChar == 92)
- jjCheckNAddTwoStates(37, 43);
- break;
- case 39:
- if (curChar == 101 && kind > 11)
- kind = 11;
break;
- case 40:
- if (curChar == 115)
- jjstateSet[jjnewStateCnt++] = 39;
- break;
- case 41:
- if (curChar == 108)
- jjstateSet[jjnewStateCnt++] = 40;
- break;
- case 42:
+ case 2:
if (curChar == 101)
- jjstateSet[jjnewStateCnt++] = 41;
- break;
- case 44:
- if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 45;
+ jjstateSet[jjnewStateCnt++] = 1;
break;
- case 45:
+ case 5:
if (curChar == 92)
- jjCheckNAddTwoStates(44, 50);
+ jjCheckNAddTwoStates(5, 6);
break;
- case 46:
- if (curChar == 112 && kind > 12)
- kind = 12;
- break;
- case 47:
- if (curChar == 111)
- jjstateSet[jjnewStateCnt++] = 46;
- break;
- case 48:
- if (curChar == 116)
- jjstateSet[jjnewStateCnt++] = 47;
- break;
- case 49:
- if (curChar == 115)
- jjstateSet[jjnewStateCnt++] = 48;
- break;
- case 53:
+ case 7:
+ if ((0xffffffffefffffffL & l) == 0L)
+ break;
if (kind > 17)
kind = 17;
+ jjCheckNAdd(7);
break;
- case 55:
+ case 8:
if (curChar == 92)
- jjCheckNAddStates(37, 40);
+ jjAddStates(10, 11);
break;
- case 56:
- if (curChar == 92)
- jjCheckNAddTwoStates(56, 7);
+ case 11:
+ if ((0x7fffffe07fffffeL & l) == 0L)
+ break;
+ if (kind > 7)
+ kind = 7;
+ jjstateSet[jjnewStateCnt++] = 11;
break;
- case 57:
- if (curChar == 92)
- jjCheckNAddTwoStates(57, 8);
+ case 14:
+ if (kind > 12)
+ kind = 12;
break;
default : break;
}
@@ -3205,17 +2855,17 @@
{
switch(jjstateSet[--i])
{
- case 10:
- case 9:
+ case 12:
+ case 7:
if ((jjbitVec0[i2] & l2) == 0L)
break;
- if (kind > 21)
- kind = 21;
- jjCheckNAdd(9);
- break;
- case 53:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 17)
+ if (kind > 17)
kind = 17;
+ jjCheckNAdd(7);
+ break;
+ case 14:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
+ kind = 12;
break;
default : break;
}
@@ -3228,24 +2878,21 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 58 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 16 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
}
}
static final int[] jjnextStates = {
- 1, 2, 4, 20, 5, 21, 10, 12, 13, 7, 0, 8, 5, 14, 0, 15,
- 5, 7, 8, 15, 0, 16, 5, 10, 0, 11, 5, 7, 8, 10, 16, 0,
- 17, 5, 0, 2, 6, 56, 7, 57, 8, 11, 16, 17, 21, 22, 27, 28,
- 36, 37, 43, 44, 50, 1, 2, 6,
+ 1, 2, 4, 12, 13, 7, 8, 7, 8, 10, 9, 10,
};
public static final String[] jjstrLiteralImages = {
null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null,
-null, null, null, null, null, null, null, null, null, null, };
+null, null, null, null, null, null, };
public static final String[] lexStateNames = {
"DIRECTIVE",
"REFMODIFIER",
@@ -3260,23 +2907,23 @@
public static final int[] jjnewLexState = {
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
};
static final long[] jjtoToken = {
- 0x78affffff1f03fffL, 0x0L,
+ 0x78affffff1f81ffL,
};
static final long[] jjtoSkip = {
- 0x800000000c000000L, 0x1L,
+ 0x1800000000c00000L,
};
static final long[] jjtoSpecial = {
- 0x8000000000000000L, 0x1L,
+ 0x1800000000000000L,
};
static final long[] jjtoMore = {
- 0x20fc000L, 0x0L,
+ 0x207e00L,
};
private ASCII_CharStream input_stream;
-private final int[] jjrounds = new int[58];
-private final int[] jjstateSet = new int[116];
+private final int[] jjrounds = new int[19];
+private final int[] jjstateSet = new int[38];
StringBuffer image;
int jjimageLen;
int lengthOfMatch;
@@ -3303,7 +2950,7 @@
{
int i;
jjround = 0x80000001;
- for (i = 58; i-- > 0;)
+ for (i = 19; i-- > 0;)
jjrounds[i] = 0x80000000;
}
public void ReInit(ASCII_CharStream stream, int lexState)
@@ -3382,9 +3029,9 @@
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_1();
- if (jjmatchedPos == 0 && jjmatchedKind > 63)
+ if (jjmatchedPos == 0 && jjmatchedKind > 59)
{
- jjmatchedKind = 63;
+ jjmatchedKind = 59;
}
break;
case 2:
@@ -3396,9 +3043,9 @@
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_2();
- if (jjmatchedPos == 0 && jjmatchedKind > 63)
+ if (jjmatchedPos == 0 && jjmatchedKind > 59)
{
- jjmatchedKind = 63;
+ jjmatchedKind = 59;
}
break;
case 3:
@@ -3410,45 +3057,45 @@
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_4();
- if (jjmatchedPos == 0 && jjmatchedKind > 64)
+ if (jjmatchedPos == 0 && jjmatchedKind > 60)
{
- jjmatchedKind = 64;
+ jjmatchedKind = 60;
}
break;
case 5:
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_5();
- if (jjmatchedPos == 0 && jjmatchedKind > 63)
+ if (jjmatchedPos == 0 && jjmatchedKind > 59)
{
- jjmatchedKind = 63;
+ jjmatchedKind = 59;
}
break;
case 6:
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_6();
- if (jjmatchedPos == 0 && jjmatchedKind > 25)
+ if (jjmatchedPos == 0 && jjmatchedKind > 21)
{
- jjmatchedKind = 25;
+ jjmatchedKind = 21;
}
break;
case 7:
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_7();
- if (jjmatchedPos == 0 && jjmatchedKind > 25)
+ if (jjmatchedPos == 0 && jjmatchedKind > 21)
{
- jjmatchedKind = 25;
+ jjmatchedKind = 21;
}
break;
case 8:
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_8();
- if (jjmatchedPos == 0 && jjmatchedKind > 25)
+ if (jjmatchedPos == 0 && jjmatchedKind > 21)
{
- jjmatchedKind = 25;
+ jjmatchedKind = 21;
}
break;
}
@@ -3525,7 +3172,7 @@
{
switch(jjmatchedKind)
{
- case 63 :
+ case 59 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3543,7 +3190,7 @@
stateStackPop();
break;
- case 64 :
+ case 60 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3564,7 +3211,7 @@
jjimageLen += (lengthOfMatch = jjmatchedPos + 1);
switch(jjmatchedKind)
{
- case 14 :
+ case 9 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -3581,7 +3228,7 @@
SwitchTo(REFERENCE);
}
break;
- case 15 :
+ case 10 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -3598,7 +3245,7 @@
SwitchTo(REFERENCE);
}
break;
- case 16 :
+ case 11 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -3608,7 +3255,7 @@
stateStackPush();
SwitchTo(IN_SINGLE_LINE_COMMENT);
break;
- case 17 :
+ case 12 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -3619,7 +3266,7 @@
stateStackPush();
SwitchTo( IN_FORMAL_COMMENT);
break;
- case 18 :
+ case 13 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -3629,7 +3276,7 @@
stateStackPush();
SwitchTo( IN_MULTI_LINE_COMMENT );
break;
- case 19 :
+ case 14 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -3688,53 +3335,11 @@
SwitchTo( REFERENCE );
break;
- case 7 :
- if (image == null)
- image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- else
- image.append(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- matchedToken.image = escapedDirective( matchedToken.image, "#set");
- break;
case 8 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
image.append(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- matchedToken.image = escapedDirective( matchedToken.image, "#if");
- break;
- case 9 :
- if (image == null)
- image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- else
- image.append(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- matchedToken.image = escapedDirective( matchedToken.image, "#end");
- break;
- case 10 :
- if (image == null)
- image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- else
- image.append(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- matchedToken.image = escapedDirective( matchedToken.image, "#elseif");
- break;
- case 11 :
- if (image == null)
- image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- else
- image.append(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- matchedToken.image = escapedDirective( matchedToken.image, "#else");
- break;
- case 12 :
- if (image == null)
- image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- else
- image.append(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- matchedToken.image = escapedDirective( matchedToken.image, "#stop");
- break;
- case 13 :
- if (image == null)
- image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- else
- image.append(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
if (! inComment)
{
inDirective = true;
@@ -3747,7 +3352,7 @@
SwitchTo(DIRECTIVE);
}
break;
- case 22 :
+ case 18 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3755,7 +3360,7 @@
inComment = false;
stateStackPop();
break;
- case 23 :
+ case 19 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3763,7 +3368,7 @@
inComment = false;
stateStackPop();
break;
- case 24 :
+ case 20 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3771,7 +3376,7 @@
inComment = false;
stateStackPop();
break;
- case 28 :
+ case 24 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3788,7 +3393,7 @@
else if( curLexState == DIRECTIVE && !inSet && lparen == 0)
stateStackPop();
break;
- case 31 :
+ case 27 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3804,7 +3409,7 @@
if (inDirective)
inDirective = false;
break;
- case 47 :
+ case 43 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3812,21 +3417,21 @@
inDirective = false;
stateStackPop();
break;
- case 48 :
+ case 44 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
image.append(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
SwitchTo(DIRECTIVE);
break;
- case 49 :
+ case 45 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
image.append(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
SwitchTo(DIRECTIVE);
break;
- case 50 :
+ case 46 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3834,7 +3439,7 @@
inDirective = false;
stateStackPop();
break;
- case 51 :
+ case 47 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3842,7 +3447,7 @@
matchedToken.kind = EOF;
fileDepth = 0;
break;
- case 53 :
+ case 49 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3856,7 +3461,7 @@
if ( lparen == 0 && !inSet && curLexState != REFMOD2)
stateStackPop();
break;
- case 60 :
+ case 56 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
@@ -3877,7 +3482,7 @@
System.out.print("DOT : switching to " + REFMODIFIER);
SwitchTo(REFMODIFIER);
break;
- case 62 :
+ case 58 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
1.4 +37 -35
jakarta-velocity/src/java/org/apache/velocity/runtime/parser/ParserTreeConstants.java
Index: ParserTreeConstants.java
===================================================================
RCS file:
/home/cvs/jakarta-velocity/src/java/org/apache/velocity/runtime/parser/ParserTreeConstants.java,v
retrieving revision 1.3
retrieving revision 1.4
diff -u -r1.3 -r1.4
--- ParserTreeConstants.java 2000/11/07 21:34:01 1.3
+++ ParserTreeConstants.java 2000/11/11 22:47:57 1.4
@@ -6,45 +6,48 @@
{
public int JJTPROCESS = 0;
public int JJTVOID = 1;
- public int JJTCOMMENT = 2;
- public int JJTNUMBERLITERAL = 3;
- public int JJTSTRINGLITERAL = 4;
- public int JJTIDENTIFIER = 5;
- public int JJTWORD = 6;
- public int JJTDIRECTIVE = 7;
- public int JJTBLOCK = 8;
- public int JJTOBJECTARRAY = 9;
- public int JJTMETHOD = 10;
- public int JJTREFERENCE = 11;
- public int JJTTRUE = 12;
- public int JJTFALSE = 13;
- public int JJTTEXT = 14;
- public int JJTIFSTATEMENT = 15;
- public int JJTENDSTATEMENT = 16;
- public int JJTELSESTATEMENT = 17;
- public int JJTELSEIFSTATEMENT = 18;
- public int JJTSETDIRECTIVE = 19;
- public int JJTEXPRESSION = 20;
- public int JJTASSIGNMENT = 21;
- public int JJTORNODE = 22;
- public int JJTANDNODE = 23;
- public int JJTEQNODE = 24;
- public int JJTNENODE = 25;
- public int JJTLTNODE = 26;
- public int JJTGTNODE = 27;
- public int JJTLENODE = 28;
- public int JJTGENODE = 29;
- public int JJTADDNODE = 30;
- public int JJTSUBTRACTNODE = 31;
- public int JJTMULNODE = 32;
- public int JJTDIVNODE = 33;
- public int JJTMODNODE = 34;
- public int JJTNOTNODE = 35;
+ public int JJTESCAPEDDIRECTIVE = 2;
+ public int JJTESCAPE = 3;
+ public int JJTCOMMENT = 4;
+ public int JJTNUMBERLITERAL = 5;
+ public int JJTSTRINGLITERAL = 6;
+ public int JJTIDENTIFIER = 7;
+ public int JJTWORD = 8;
+ public int JJTDIRECTIVE = 9;
+ public int JJTBLOCK = 10;
+ public int JJTOBJECTARRAY = 11;
+ public int JJTMETHOD = 12;
+ public int JJTREFERENCE = 13;
+ public int JJTTRUE = 14;
+ public int JJTFALSE = 15;
+ public int JJTTEXT = 16;
+ public int JJTIFSTATEMENT = 17;
+ public int JJTELSESTATEMENT = 18;
+ public int JJTELSEIFSTATEMENT = 19;
+ public int JJTSETDIRECTIVE = 20;
+ public int JJTEXPRESSION = 21;
+ public int JJTASSIGNMENT = 22;
+ public int JJTORNODE = 23;
+ public int JJTANDNODE = 24;
+ public int JJTEQNODE = 25;
+ public int JJTNENODE = 26;
+ public int JJTLTNODE = 27;
+ public int JJTGTNODE = 28;
+ public int JJTLENODE = 29;
+ public int JJTGENODE = 30;
+ public int JJTADDNODE = 31;
+ public int JJTSUBTRACTNODE = 32;
+ public int JJTMULNODE = 33;
+ public int JJTDIVNODE = 34;
+ public int JJTMODNODE = 35;
+ public int JJTNOTNODE = 36;
public String[] jjtNodeName = {
"process",
"void",
+ "EscapedDirective",
+ "Escape",
"Comment",
"NumberLiteral",
"StringLiteral",
@@ -59,7 +62,6 @@
"False",
"Text",
"IfStatement",
- "EndStatement",
"ElseStatement",
"ElseIfStatement",
"SetDirective",