geirm 00/10/31 08:03:09
Modified: src/java/org/apache/velocity/runtime/parser Parser.java
Parser.jj ParserConstants.java
ParserTokenManager.java
Log:
The rest of the Parser gang. (Committing Parser.jjt separately for readability of
list traffic).
Revision Changes Path
1.11 +356 -331
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.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- Parser.java 2000/10/31 02:44:59 1.10
+++ Parser.java 2000/10/31 16:02:59 1.11
@@ -18,7 +18,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.10 2000/10/31 02:44:59 geirm Exp $
+ * @version $Id: Parser.java,v 1.11 2000/10/31 16:02:59 geirm Exp $
*/
public class Parser/*@bgen(jjtree)*/implements ParserTreeConstants, ParserConstants
{/*@bgen(jjtree)*/
protected JJTParserState jjtree = new JJTParserState();
@@ -57,7 +57,15 @@
{
token_source.clearStateVars();
ReInit(stream);
- return process();
+ // return process();
+
+ SimpleNode n = null;
+
+ try {
+ n = process();
+ } catch (Exception e) { System.out.println(e);}
+
+ return n;
}
public void setDirectives(Hashtable directives)
@@ -104,6 +112,7 @@
case FORMAL_COMMENT:
case MULTI_LINE_COMMENT:
case STRING_LITERAL:
+ case NEWLINE:
case INCLUDE_DIRECTIVE:
case IF_DIRECTIVE:
case SET_DIRECTIVE:
@@ -191,6 +200,7 @@
case ESCAPE_SEQUENCE:
case TEXT:
case STRING_LITERAL:
+ case NEWLINE:
case NUMBER_LITERAL:
case DOT:
Text();
@@ -375,6 +385,7 @@
case FORMAL_COMMENT:
case MULTI_LINE_COMMENT:
case STRING_LITERAL:
+ case NEWLINE:
case INCLUDE_DIRECTIVE:
case IF_DIRECTIVE:
case SET_DIRECTIVE:
@@ -699,6 +710,9 @@
case TEXT:
jj_consume_token(TEXT);
break;
+ case NEWLINE:
+ jj_consume_token(NEWLINE);
+ break;
case DOT:
jj_consume_token(DOT);
break;
@@ -763,6 +777,7 @@
case FORMAL_COMMENT:
case MULTI_LINE_COMMENT:
case STRING_LITERAL:
+ case NEWLINE:
case INCLUDE_DIRECTIVE:
case IF_DIRECTIVE:
case SET_DIRECTIVE:
@@ -870,6 +885,7 @@
case FORMAL_COMMENT:
case MULTI_LINE_COMMENT:
case STRING_LITERAL:
+ case NEWLINE:
case INCLUDE_DIRECTIVE:
case IF_DIRECTIVE:
case SET_DIRECTIVE:
@@ -952,6 +968,7 @@
case FORMAL_COMMENT:
case MULTI_LINE_COMMENT:
case STRING_LITERAL:
+ case NEWLINE:
case INCLUDE_DIRECTIVE:
case IF_DIRECTIVE:
case SET_DIRECTIVE:
@@ -1016,24 +1033,32 @@
try {
jj_consume_token(SET_DIRECTIVE);
Expression();
- } 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;}
+ switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
+ case NEWLINE:
+ jj_consume_token(NEWLINE);
+ break;
+ default:
+ jj_la1[22] = jj_gen;
+ ;
}
- {if (true) throw (Error)jjte000;}
+ } 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;}
} finally {
- if (jjtc000) {
- jjtree.closeNodeScope(jjtn000, true);
- }
+ if (jjtc000) {
+ jjtree.closeNodeScope(jjtn000, true);
+ }
}
}
@@ -1089,7 +1114,7 @@
ConditionalOrExpression();
break;
default:
- jj_la1[22] = jj_gen;
+ jj_la1[23] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1154,7 +1179,7 @@
;
break;
default:
- jj_la1[23] = jj_gen;
+ jj_la1[24] = jj_gen;
break label_11;
}
jj_consume_token(LOGICAL_OR);
@@ -1194,7 +1219,7 @@
;
break;
default:
- jj_la1[24] = jj_gen;
+ jj_la1[25] = jj_gen;
break label_12;
}
jj_consume_token(LOGICAL_AND);
@@ -1235,7 +1260,7 @@
;
break;
default:
- jj_la1[25] = jj_gen;
+ jj_la1[26] = jj_gen;
break label_13;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -1294,7 +1319,7 @@
}
break;
default:
- jj_la1[26] = jj_gen;
+ jj_la1[27] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1313,7 +1338,7 @@
;
break;
default:
- jj_la1[27] = jj_gen;
+ jj_la1[28] = jj_gen;
break label_14;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -1426,7 +1451,7 @@
}
break;
default:
- jj_la1[28] = jj_gen;
+ jj_la1[29] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1443,7 +1468,7 @@
;
break;
default:
- jj_la1[29] = jj_gen;
+ jj_la1[30] = jj_gen;
break label_15;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -1502,7 +1527,7 @@
}
break;
default:
- jj_la1[30] = jj_gen;
+ jj_la1[31] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1520,7 +1545,7 @@
;
break;
default:
- jj_la1[31] = jj_gen;
+ jj_la1[32] = jj_gen;
break label_16;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -1606,7 +1631,7 @@
}
break;
default:
- jj_la1[32] = jj_gen;
+ jj_la1[33] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1653,7 +1678,7 @@
PrimaryExpression();
break;
default:
- jj_la1[33] = jj_gen;
+ jj_la1[34] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1686,7 +1711,7 @@
jj_consume_token(RPAREN);
break;
default:
- jj_la1[34] = jj_gen;
+ jj_la1[35] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1713,579 +1738,579 @@
return retval;
}
- final private boolean jj_3R_18() {
- if (jj_3R_20()) return true;
+ final private boolean jj_3R_71() {
+ if (jj_scan_token(MINUS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(LPAREN)) return true;
+ if (jj_3R_62()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
+ final private boolean jj_3R_62() {
+ if (jj_3R_68()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_69()) { jj_scanpos = xsp; break; }
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ }
+ return false;
+ }
+
+ final private boolean jj_3R_70() {
+ if (jj_scan_token(PLUS)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_62()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
+ final private boolean jj_3R_63() {
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(RPAREN)) return true;
+ if (jj_3R_70()) {
+ jj_scanpos = xsp;
+ if (jj_3R_71()) 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_41() {
- if (jj_3R_32()) return true;
+ final private boolean jj_3R_67() {
+ if (jj_scan_token(LOGICAL_GE)) 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_44() {
- if (jj_3R_29()) return true;
+ final private boolean jj_3R_58() {
+ if (jj_3R_62()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
Token xsp;
while (true) {
xsp = jj_scanpos;
- if (jj_3R_48()) { jj_scanpos = xsp; break; }
+ if (jj_3R_63()) { 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_66() {
+ if (jj_scan_token(LOGICAL_LE)) 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_39() {
- if (jj_3R_34()) return true;
+ final private boolean jj_3R_65() {
+ if (jj_scan_token(LOGICAL_GT)) 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_38() {
- if (jj_3R_33()) return true;
+ final private boolean jj_3R_17() {
+ if (jj_3R_20()) 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_64() {
+ if (jj_scan_token(LOGICAL_LT)) 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_29() {
+ final private boolean jj_3R_59() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_37()) {
- jj_scanpos = xsp;
- if (jj_3R_38()) {
+ if (jj_3R_64()) {
jj_scanpos = xsp;
- if (jj_3R_39()) {
+ if (jj_3R_65()) {
jj_scanpos = xsp;
- if (jj_3R_40()) {
+ if (jj_3R_66()) {
jj_scanpos = xsp;
- if (jj_3R_41()) return true;
+ if (jj_3R_67()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
} else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
} 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_28() {
- if (jj_scan_token(LPAREN)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_36()) return true;
+ final private boolean jj_3R_61() {
+ if (jj_scan_token(LOGICAL_NOT_EQUALS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(RPAREN)) return true;
+ if (jj_3R_56()) return true;
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_56() {
+ 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_26() {
- if (jj_3R_34()) return true;
+ final private boolean jj_3R_60() {
+ if (jj_scan_token(LOGICAL_EQUALS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_56()) 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_57() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_60()) {
+ jj_scanpos = xsp;
+ if (jj_3R_61()) 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_24() {
- if (jj_3R_32()) return true;
+ final private boolean jj_3R_55() {
+ if (jj_scan_token(COMMA)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_29()) 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_53() {
+ if (jj_3R_56()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ 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_22() {
- if (jj_3R_30()) return true;
+ final private boolean jj_3R_54() {
+ if (jj_scan_token(LOGICAL_AND)) 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_19() {
- 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;
+ final private boolean jj_3_2() {
+ 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;
- } else 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_51() {
+ if (jj_3R_53()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
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(RBRACKET)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ 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_73() {
- if (jj_3R_19()) return true;
+ final private boolean jj_3R_20() {
+ if (jj_scan_token(IDENTIFIER)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_76() {
- if (jj_scan_token(MODULUS)) return true;
+ final private boolean jj_3R_52() {
+ if (jj_scan_token(LOGICAL_OR)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_68()) return true;
+ if (jj_3R_51()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_72() {
- if (jj_scan_token(LOGICAL_NOT)) return true;
+ final private boolean jj_3_3() {
+ if (jj_3R_19()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_68()) return true;
+ if (jj_scan_token(EQUALS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_68() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_72()) {
- jj_scanpos = xsp;
- if (jj_3R_73()) return true;
+ final private boolean jj_3R_21() {
+ 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;
+ 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;
+ }
return false;
}
- final private boolean jj_3R_75() {
- if (jj_scan_token(DIVIDE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_68()) return true;
+ final private boolean jj_3R_50() {
+ if (jj_3R_51()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ while (true) {
+ xsp = jj_scanpos;
+ if (jj_3R_52()) { jj_scanpos = xsp; break; }
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ }
return false;
}
- final private boolean jj_3R_74() {
- if (jj_scan_token(MULTIPLY)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_68()) return true;
+ final private boolean jj_3R_35() {
+ if (jj_scan_token(FALSE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_69() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_74()) {
- jj_scanpos = xsp;
- if (jj_3R_75()) {
- jj_scanpos = xsp;
- if (jj_3R_76()) return true;
+ final private boolean jj_3R_49() {
+ if (jj_3R_19()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_scan_token(EQUALS)) 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;
return false;
}
- final private boolean jj_3R_47() {
- if (jj_scan_token(RCURLY)) return true;
+ final private boolean jj_3R_34() {
+ if (jj_scan_token(TRUE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_71() {
- if (jj_scan_token(MINUS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_62()) return true;
+ final private boolean jj_3R_46() {
+ if (jj_3R_50()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_62() {
- if (jj_3R_68()) return true;
+ final private boolean jj_3R_45() {
+ if (jj_3R_49()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_69()) { jj_scanpos = xsp; break; }
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- }
return false;
}
- final private boolean jj_3R_70() {
- if (jj_scan_token(PLUS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_62()) return true;
+ final private boolean jj_3R_36() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_45()) {
+ jj_scanpos = xsp;
+ if (jj_3R_46()) 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_63() {
+ final private boolean jj_3_1() {
+ 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_70()) {
+ if (jj_3_2()) {
jj_scanpos = xsp;
- if (jj_3R_71()) return true;
+ 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_47()) jj_scanpos = xsp;
+ else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_67() {
- if (jj_scan_token(LOGICAL_GE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_58()) return true;
+ final private boolean jj_3R_43() {
+ if (jj_scan_token(RCURLY)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_58() {
- if (jj_3R_62()) return true;
+ final private boolean jj_3R_30() {
+ if (jj_scan_token(STRING_LITERAL)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_63()) { jj_scanpos = xsp; break; }
- 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_42() {
+ if (jj_scan_token(LCURLY)) 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_LE)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_58()) return true;
+ final private boolean jj_3R_31() {
+ if (jj_scan_token(NUMBER_LITERAL)) 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_GT)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_58()) return true;
+ final private boolean jj_3R_32() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_42()) 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_43()) 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_64() {
- if (jj_scan_token(LOGICAL_LT)) return true;
+ final private boolean jj_3R_48() {
+ if (jj_scan_token(COMMA)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_58()) return true;
+ if (jj_3R_29()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_59() {
+ final private boolean jj_3R_18() {
+ if (jj_3R_20()) 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_64()) {
- jj_scanpos = xsp;
- if (jj_3R_65()) {
- jj_scanpos = xsp;
- if (jj_3R_66()) {
- jj_scanpos = xsp;
- if (jj_3R_67()) return true;
+ if (jj_3R_21()) jj_scanpos = xsp;
+ else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_scan_token(RPAREN)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- } 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_61() {
- if (jj_scan_token(LOGICAL_NOT_EQUALS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_56()) return true;
+ final private boolean jj_3R_41() {
+ if (jj_3R_32()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_56() {
- if (jj_3R_58()) return true;
+ final private boolean jj_3R_44() {
+ if (jj_3R_29()) 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_3R_48()) { jj_scanpos = xsp; break; }
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
}
return false;
}
- final private boolean jj_3R_60() {
- if (jj_scan_token(LOGICAL_EQUALS)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_56()) 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_57() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_60()) {
- jj_scanpos = xsp;
- if (jj_3R_61()) return true;
+ final private boolean jj_3R_39() {
+ if (jj_3R_34()) 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_55() {
- if (jj_scan_token(COMMA)) return true;
+ 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_29()) return true;
+ if (jj_3R_36()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_scan_token(RPAREN)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_53() {
- if (jj_3R_56()) return true;
+ final private boolean jj_3R_38() {
+ if (jj_3R_33()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- Token xsp;
- while (true) {
- xsp = jj_scanpos;
- if (jj_3R_57()) { 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_27() {
+ if (jj_3R_35()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_54() {
- if (jj_scan_token(LOGICAL_AND)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_53()) return true;
+ final private boolean jj_3R_37() {
+ if (jj_3R_30()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_51() {
- if (jj_3R_53()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ final private boolean jj_3R_29() {
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;
- }
+ 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()) {
+ jj_scanpos = xsp;
+ if (jj_3R_41()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ } else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_20() {
- if (jj_scan_token(IDENTIFIER)) return true;
+ final private boolean jj_3R_26() {
+ if (jj_3R_34()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_52() {
- if (jj_scan_token(LOGICAL_OR)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_51()) 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_21() {
- if (jj_3R_29()) return true;
+ final private boolean jj_3R_24() {
+ if (jj_3R_32()) 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;
- }
return false;
}
- final private boolean jj_3_3() {
- if (jj_3R_19()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(EQUALS)) return true;
+ 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_50() {
- if (jj_3R_51()) 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_52()) { jj_scanpos = xsp; break; }
- 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_19() {
+ 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_49() {
+ final private boolean jj_3R_73() {
if (jj_3R_19()) 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_36()) return true;
- 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_76() {
+ if (jj_scan_token(MODULUS)) 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;
+ if (jj_3R_68()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_45() {
- if (jj_3R_49()) return true;
+ final private boolean jj_3R_72() {
+ if (jj_scan_token(LOGICAL_NOT)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_68()) 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_68() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_45()) {
+ if (jj_3R_72()) {
jj_scanpos = xsp;
- if (jj_3R_46()) return true;
+ if (jj_3R_73()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
} else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3_1() {
- if (jj_scan_token(DOT)) return true;
+ final private boolean jj_3R_33() {
+ if (jj_scan_token(LBRACKET)) 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_47()) jj_scanpos = xsp;
+ if (jj_3R_44()) jj_scanpos = xsp;
else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_43() {
- if (jj_scan_token(RCURLY)) return true;
+ if (jj_scan_token(RBRACKET)) return true;
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_75() {
+ if (jj_scan_token(DIVIDE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_42() {
- if (jj_scan_token(LCURLY)) return true;
+ if (jj_3R_68()) return true;
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_74() {
+ if (jj_scan_token(MULTIPLY)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_68()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_32() {
+ final private boolean jj_3R_69() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_42()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_scan_token(IDENTIFIER)) return true;
+ if (jj_3R_74()) {
+ jj_scanpos = xsp;
+ if (jj_3R_75()) {
+ jj_scanpos = xsp;
+ if (jj_3R_76()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- xsp = jj_scanpos;
- if (jj_3R_43()) 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;
- }
+ } 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_48() {
- 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_3R_47() {
+ if (jj_scan_token(RCURLY)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
@@ -2299,9 +2324,9 @@
public boolean lookingAhead = false;
private boolean jj_semLA;
private int jj_gen;
- final private int[] jj_la1 = new int[35];
- final private int[] jj_la1_0 =
{0x11c0f0,0x11c0f0,0x1c000,0x100002,0x100002,0x11c0f0,0x8,0x700002,0x700002,0x8,0x700002,0x0,0x0,0x0,0x0,0x1000f0,0x11c0f0,0x0,0x0,0x0,0x11c0f0,0x11c0f0,0x700012,0x40000000,0x20000000,0x0,0x0,0x80000000,0x80000000,0x3000000,0x3000000,0x1c000000,0x1c000000,0x700012,0x700012,};
- final private int[] jj_la1_1 =
{0xe2b300,0xe2b300,0x0,0xa28000,0xa28000,0xe2b300,0x0,0xa00000,0xa00000,0x0,0xa00000,0x800000,0x1000000,0x200000,0x1000000,0x408000,0xe2b300,0x400,0x400,0x800,0xe2b300,0xe2b300,0xa08020,0x0,0x0,0x18,0x18,0x7,0x7,0x0,0x0,0x0,0x0,0xa08020,0xa08000,};
+ final private int[] jj_la1 = new int[36];
+ final private int[] jj_la1_0 =
{0x91f030,0x91f030,0x1c000,0x100002,0x100002,0x91f030,0x8,0x700002,0x700002,0x8,0x700002,0x0,0x0,0x0,0x0,0x903030,0x91f030,0x0,0x0,0x0,0x91f030,0x91f030,0x800000,0x700012,0x40000000,0x20000000,0x0,0x0,0x80000000,0x80000000,0x3000000,0x3000000,0x1c000000,0x1c000000,0x700012,0x700012,};
+ final private int[] jj_la1_1 =
{0xe2b300,0xe2b300,0x0,0xa28000,0xa28000,0xe2b300,0x0,0xa00000,0xa00000,0x0,0xa00000,0x800000,0x1000000,0x200000,0x1000000,0x408000,0xe2b300,0x400,0x400,0x800,0xe2b300,0xe2b300,0x0,0xa08020,0x0,0x0,0x18,0x18,0x7,0x7,0x0,0x0,0x0,0x0,0xa08020,0xa08000,};
final private JJCalls[] jj_2_rtns = new JJCalls[3];
private boolean jj_rescan = false;
private int jj_gc = 0;
@@ -2312,7 +2337,7 @@
token = new Token();
jj_ntk = -1;
jj_gen = 0;
- for (int i = 0; i < 35; i++) jj_la1[i] = -1;
+ for (int i = 0; i < 36; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
@@ -2323,7 +2348,7 @@
jj_ntk = -1;
jjtree.reset();
jj_gen = 0;
- for (int i = 0; i < 35; i++) jj_la1[i] = -1;
+ for (int i = 0; i < 36; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
@@ -2333,7 +2358,7 @@
token = new Token();
jj_ntk = -1;
jj_gen = 0;
- for (int i = 0; i < 35; i++) jj_la1[i] = -1;
+ for (int i = 0; i < 36; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
@@ -2344,7 +2369,7 @@
jj_ntk = -1;
jjtree.reset();
jj_gen = 0;
- for (int i = 0; i < 35; i++) jj_la1[i] = -1;
+ for (int i = 0; i < 36; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
@@ -2353,7 +2378,7 @@
token = new Token();
jj_ntk = -1;
jj_gen = 0;
- for (int i = 0; i < 35; i++) jj_la1[i] = -1;
+ for (int i = 0; i < 36; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
@@ -2363,7 +2388,7 @@
jj_ntk = -1;
jjtree.reset();
jj_gen = 0;
- for (int i = 0; i < 35; i++) jj_la1[i] = -1;
+ for (int i = 0; i < 36; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
@@ -2478,7 +2503,7 @@
la1tokens[jj_kind] = true;
jj_kind = -1;
}
- for (int i = 0; i < 35; i++) {
+ for (int i = 0; i < 36; i++) {
if (jj_la1[i] == jj_gen) {
for (int j = 0; j < 32; j++) {
if ((jj_la1_0[i] & (1<<j)) != 0) {
1.11 +125 -91
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.10
retrieving revision 1.11
diff -u -r1.10 -r1.11
--- Parser.jj 2000/10/31 02:45:00 1.10
+++ Parser.jj 2000/10/31 16:03:00 1.11
@@ -98,7 +98,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.10 2000/10/31 02:45:00 geirm Exp $
+ * @version $Id: Parser.jj,v 1.11 2000/10/31 16:03:00 geirm Exp $
*/
public class Parser/*@bgen(jjtree)*/implements ParserTreeConstants/*@egen*/
{/*@bgen(jjtree)*/
@@ -141,7 +141,15 @@
{
token_source.clearStateVars();
ReInit(stream);
- return process();
+ // return process();
+
+ SimpleNode n = null;
+
+ try {
+ n = process();
+ } catch (Exception e) { System.out.println(e);}
+
+ return n;
}
public void setDirectives(Hashtable directives)
@@ -342,58 +350,19 @@
return;
}
-}
-/* ------------------------------------------------------------------------
- *
- * Tokens
- *
- * Note : we now have another state, REFMODIFIER. This is sort of a
- * type of REFERENCE state, simply use to use the DIRECTIVE token
- * set when we are processing a $foo.bar() construct
- *
- * ------------------------------------------------------------------------- */
-
-<DIRECTIVE,REFMODIFIER,REFMOD2>
-TOKEN:
-{
- <LBRACKET: "[">
-| <RBRACKET: "]">
-}
-<DIRECTIVE,REFMOD2>
-TOKEN:
-{
- <COMMA:",">
-}
-
-
-<DIRECTIVE,REFMODIFIER,REFMOD2>
-TOKEN:
-{
- <LPAREN: "(">
- {
- if (!inComment)
- lparen++;
-
- /*
- * if we have seen the dot, then move to REFMOD2 -> Modifier()
- */
-
- if (curLexState == REFMODIFIER )
- SwitchTo( REFMOD2 );
-
- }
-
-| <RPAREN: ")">
+ /**
+ * handles the dropdown logic when encountering a RPAREN
+ */
+ private void RPARENHandler()
{
/*
* Ultimately, we want to drop down to the state below the one that has an
open (
* if we hit bottom (DEFAULT), that's fine. It's just text schmoo.
*
*/
-
-
+
boolean bClosed = false;
if (inComment)
@@ -434,16 +403,55 @@
break;
}
}
- }
+ }
+}
+
+/* ------------------------------------------------------------------------
+ *
+ * Tokens
+ *
+ * Note : we now have another state, REFMODIFIER. This is sort of a
+ * type of REFERENCE state, simply use to use the DIRECTIVE token
+ * set when we are processing a $foo.bar() construct
+ *
+ * ------------------------------------------------------------------------- */
+
+<DIRECTIVE,REFMODIFIER,REFMOD2>
+TOKEN:
+{
+ <LBRACKET: "[">
+| <RBRACKET: "]">
}
+<DIRECTIVE,REFMOD2>
+TOKEN:
+{
+ <COMMA:",">
+}
-TOKEN :
+<DIRECTIVE,REFMODIFIER,REFMOD2>
+TOKEN:
{
- <ESCAPE_SEQUENCE: "\\" ~[] >
-| <TEXT: (~["$", "#", "\\"])+ >
-}
+ <LPAREN: "(">
+ {
+ if (!inComment)
+ lparen++;
+ /*
+ * if we have seen the dot, then move to REFMOD2 -> Modifier()
+ */
+
+ if (curLexState == REFMODIFIER )
+ SwitchTo( REFMOD2 );
+
+ }
+
+| <RPAREN: ")" (" ")* ("\n")?>
+ {
+ RPARENHandler();
+ }
+}
+
<*>
MORE :
{
@@ -518,6 +526,13 @@
}
}
+TOKEN :
+{
+ <ESCAPE_SEQUENCE: "\\" ~[] >
+| <TEXT: (~["$", "#", "\\"])+ >
+}
+
+
// -----------------------------------------------------------------------
//
// COMMENT Lexical States
@@ -592,8 +607,22 @@
}
incMode = false;
- if (lparen == 0)
- SwitchTo(DEFAULT);
+ // from jason :
+ // if (lparen == 0)
+ // SwitchTo(DEFAULT);
+
+ /*
+ * - if we are in REFERENCE || REFMODIFIER then " is an ender
+ * - if we are in DIRECTIVE and haven't seen ( yet, then also drop out.
+ * don't forget to account for the beloved yet wierd #set
+ * - finally, if we are in REFMOD2 (remember : $foo.bar( ) then " is ok!
+ */
+
+ if (curLexState == REFERENCE || curLexState == REFMODIFIER)
+ stateStackPop();
+ else if( curLexState == DIRECTIVE && !inSet && lparen == 0)
+ stateStackPop();
+
}
| <TRUE: "true">
@@ -601,19 +630,21 @@
}
<DIRECTIVE>
-SPECIAL_TOKEN :
+TOKEN :
{
<NEWLINE: "\n" | "\r" | "\r\n" >
{
+ if ( bDebugPrint_ )
+ System.out.println(" NEWLINE :");
+
+ stateStackPop();
+
if (inSet)
- {
- if ( bDebugPrint_ )
- System.out.print(" NEWLINE :");
- stateStackPop();
- inSet = false;
- inDirective = false;
- }
- }
+ inSet = false;
+
+ if (inDirective)
+ inDirective = false;
+ }
}
<DIRECTIVE>
@@ -639,11 +670,10 @@
<DIRECTIVE>
TOKEN :
{
- <END: "end">
+ <END: "end" ("\n")?>
{
inDirective = false;
stateStackPop();
- // was :DEFAULT
}
| <INCLUDE_DIRECTIVE: "include">
@@ -654,7 +684,10 @@
| <ELSEIF_DIRECTIVE: "elseif">
| <ELSE_DIRECTIVE: "else">
- : DEFAULT
+ {
+ inDirective = false;
+ stateStackPop();
+ }
| <SET_DIRECTIVE: "set" >
{ inSet = true; }
@@ -670,8 +703,8 @@
{
//!!! fixed <bcolor="#333333"/>
// needs to be more thorough.
- if (lparen == 0)
- SwitchTo(DEFAULT);
+ // if (lparen == 0)
+ // SwitchTo(DEFAULT);
}
//!!! fixed #FFFFFF
@@ -729,7 +762,7 @@
* These can terminate a reference, but are needed in subsequent states
*/
- if (image.toString().equals("="))
+ if (image.toString().equals("=") || image.toString().equals("\n"))
{
input_stream.backup(1);
}
@@ -749,7 +782,6 @@
|| image.toString().equals(",")
|| image.toString().equals("[")
|| image.toString().equals("]")
- || image.toString().equals("\n")
) )
{
input_stream.backup(1);
@@ -1195,6 +1227,7 @@
try {
/*@egen*/
<TEXT>
+| <NEWLINE>
| <DOT>
| <RPAREN>
| <LPAREN>
@@ -1214,7 +1247,8 @@
jjtree.closeNodeScope(jjtn000, true);
}
}
-/*@egen*/
+/*@egen*/
+
}
// -----------------------------------------------------------------------
@@ -1410,28 +1444,28 @@
jjtree.openNodeScope(jjtn000);
/*@egen*/}
{/*@bgen(jjtree) SetDirective */
- try {
+ try {
/*@egen*/
- <SET_DIRECTIVE> Expression()/*@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);
- }
- }
+ ( <SET_DIRECTIVE> Expression() [<NEWLINE>] )/*@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*/
}
1.7 +15 -15
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.6
retrieving revision 1.7
diff -u -r1.6 -r1.7
--- ParserConstants.java 2000/10/31 02:45:01 1.6
+++ ParserConstants.java 2000/10/31 16:03:00 1.7
@@ -9,11 +9,11 @@
int COMMA = 3;
int LPAREN = 4;
int RPAREN = 5;
- int ESCAPE_SEQUENCE = 6;
- int TEXT = 7;
- int DOLLAR = 8;
- int DOLLARBANG = 9;
- int HASH = 13;
+ int DOLLAR = 6;
+ int DOLLARBANG = 7;
+ int HASH = 11;
+ int ESCAPE_SEQUENCE = 12;
+ int TEXT = 13;
int SINGLE_LINE_COMMENT = 14;
int FORMAL_COMMENT = 15;
int MULTI_LINE_COMMENT = 16;
@@ -59,11 +59,11 @@
int DIRECTIVE = 0;
int REFMODIFIER = 1;
int REFMOD2 = 2;
- int DEFAULT = 3;
- int REFERENCE = 4;
- int IN_MULTI_LINE_COMMENT = 5;
- int IN_FORMAL_COMMENT = 6;
- int IN_SINGLE_LINE_COMMENT = 7;
+ int REFERENCE = 3;
+ int IN_MULTI_LINE_COMMENT = 4;
+ int IN_FORMAL_COMMENT = 5;
+ int IN_SINGLE_LINE_COMMENT = 6;
+ int DEFAULT = 7;
String[] tokenImage = {
"<EOF>",
@@ -71,15 +71,15 @@
"\"]\"",
"\",\"",
"\"(\"",
- "\")\"",
- "<ESCAPE_SEQUENCE>",
- "<TEXT>",
+ "<RPAREN>",
"\"$\"",
"\"$!\"",
"\"##\"",
- "<token of kind 11>",
+ "<token of kind 9>",
"\"#*\"",
"\"#\"",
+ "<ESCAPE_SEQUENCE>",
+ "<TEXT>",
"<SINGLE_LINE_COMMENT>",
"\"*#\"",
"\"*#\"",
@@ -105,7 +105,7 @@
"\"!=\"",
"\"!\"",
"\"=\"",
- "\"end\"",
+ "<END>",
"\"include\"",
"\"if\"",
"\"elseif\"",
1.10 +619 -507
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.9
retrieving revision 1.10
diff -u -r1.9 -r1.10
--- ParserTokenManager.java 2000/10/31 02:45:01 1.9
+++ ParserTokenManager.java 2000/10/31 16:03:01 1.10
@@ -166,40 +166,99 @@
return;
}
+
+
+ /**
+ * handles the dropdown logic when encountering a RPAREN
+ */
+ private void RPARENHandler()
+ {
+ /*
+ * Ultimately, we want to drop down to the state below the one that has an
open (
+ * if we hit bottom (DEFAULT), that's fine. It's just text schmoo.
+ *
+ */
+
+ boolean bClosed = false;
+
+ if (inComment)
+ bClosed = true;
+
+ while( !bClosed)
+ {
+ /*
+ * look at current state. If we haven't seen a lparen in this state
+ * then we drop a state, because this lparen clearly closes our state
+ */
+
+ if( lparen > 0)
+ {
+ /*
+ * if rparen + 1 == lparen, then this state is closed. Otherwise,
increment
+ * and keep parsing
+ */
+
+ if( lparen == rparen + 1)
+ {
+ stateStackPop();
+ }
+ else
+ {
+ rparen++;
+ }
+
+ bClosed = true;
+ }
+ else
+ {
+ /*
+ * now, drop a state
+ */
+
+ if(!stateStackPop())
+ break;
+ }
+ }
+ }
private final int jjStopStringLiteralDfa_0(int pos, long active0)
{
switch (pos)
{
case 0:
- if ((active0 & 0x3f8000600000L) != 0L)
+ if ((active0 & 0xd00L) != 0L)
+ return 5;
+ if ((active0 & 0xc0000000000L) != 0L)
{
jjmatchedKind = 49;
- return 11;
+ return 15;
}
- if ((active0 & 0x3400L) != 0L)
- return 2;
+ if ((active0 & 0x330000600000L) != 0L)
+ {
+ jjmatchedKind = 49;
+ return 18;
+ }
return -1;
case 1:
- if ((active0 & 0x1000L) != 0L)
- return 0;
+ if ((active0 & 0x400L) != 0L)
+ return 3;
if ((active0 & 0x20000000000L) != 0L)
- return 11;
- if ((active0 & 0x3d8000600000L) != 0L)
+ return 18;
+ if ((active0 & 0x3d0000600000L) != 0L)
{
jjmatchedKind = 49;
jjmatchedPos = 1;
- return 11;
+ return 18;
}
return -1;
case 2:
- if ((active0 & 0x108000000000L) != 0L)
- return 11;
if ((active0 & 0x2d0000600000L) != 0L)
{
jjmatchedKind = 49;
jjmatchedPos = 2;
- return 11;
+ return 18;
}
+ if ((active0 & 0x100000000000L) != 0L)
+ return 18;
return -1;
case 3:
if ((active0 & 0x10000400000L) != 0L)
@@ -209,30 +268,30 @@
jjmatchedKind = 49;
jjmatchedPos = 3;
}
- return 11;
+ return 18;
}
if ((active0 & 0x2c0000200000L) != 0L)
- return 11;
+ return 18;
return -1;
case 4:
- if ((active0 & 0x400000L) != 0L)
- return 11;
if ((active0 & 0x50000000000L) != 0L)
{
jjmatchedKind = 49;
jjmatchedPos = 4;
- return 11;
+ return 18;
}
+ if ((active0 & 0x400000L) != 0L)
+ return 18;
return -1;
case 5:
- if ((active0 & 0x40000000000L) != 0L)
- return 11;
if ((active0 & 0x10000000000L) != 0L)
{
jjmatchedKind = 49;
jjmatchedPos = 5;
- return 11;
+ return 18;
}
+ if ((active0 & 0x40000000000L) != 0L)
+ return 18;
return -1;
default :
return -1;
@@ -264,19 +323,17 @@
jjmatchedKind = 37;
return jjMoveStringLiteralDfa1_0(0x1000000000L);
case 35:
- jjmatchedKind = 13;
- return jjMoveStringLiteralDfa1_0(0x1400L);
+ jjmatchedKind = 11;
+ return jjMoveStringLiteralDfa1_0(0x500L);
case 36:
- jjmatchedKind = 8;
- return jjMoveStringLiteralDfa1_0(0x200L);
+ jjmatchedKind = 6;
+ return jjMoveStringLiteralDfa1_0(0x80L);
case 37:
return jjStopAtPos(0, 28);
case 38:
return jjMoveStringLiteralDfa1_0(0x20000000L);
case 40:
return jjStopAtPos(0, 4);
- case 41:
- return jjStopAtPos(0, 5);
case 42:
return jjStopAtPos(0, 26);
case 43:
@@ -301,7 +358,7 @@
case 93:
return jjStopAtPos(0, 2);
case 101:
- return jjMoveStringLiteralDfa1_0(0xc8000000000L);
+ return jjMoveStringLiteralDfa1_0(0xc0000000000L);
case 102:
return jjMoveStringLiteralDfa1_0(0x400000L);
case 105:
@@ -313,7 +370,7 @@
case 124:
return jjMoveStringLiteralDfa1_0(0x40000000L);
default :
- return jjMoveNfa_0(3, 0);
+ return jjMoveNfa_0(0, 0);
}
}
private final int jjMoveStringLiteralDfa1_0(long active0)
@@ -326,20 +383,20 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x200L) != 0L)
- return jjStopAtPos(1, 9);
+ if ((active0 & 0x80L) != 0L)
+ return jjStopAtPos(1, 7);
break;
case 35:
- if ((active0 & 0x400L) != 0L)
- return jjStopAtPos(1, 10);
+ if ((active0 & 0x100L) != 0L)
+ return jjStopAtPos(1, 8);
break;
case 38:
if ((active0 & 0x20000000L) != 0L)
return jjStopAtPos(1, 29);
break;
case 42:
- if ((active0 & 0x1000L) != 0L)
- return jjStartNfaWithStates_0(1, 12, 0);
+ if ((active0 & 0x400L) != 0L)
+ return jjStartNfaWithStates_0(1, 10, 3);
break;
case 61:
if ((active0 & 0x100000000L) != 0L)
@@ -357,12 +414,12 @@
return jjMoveStringLiteralDfa2_0(active0, 0x100000000000L);
case 102:
if ((active0 & 0x20000000000L) != 0L)
- return jjStartNfaWithStates_0(1, 41, 11);
+ return jjStartNfaWithStates_0(1, 41, 18);
break;
case 108:
return jjMoveStringLiteralDfa2_0(active0, 0xc0000000000L);
case 110:
- return jjMoveStringLiteralDfa2_0(active0, 0x18000000000L);
+ return jjMoveStringLiteralDfa2_0(active0, 0x10000000000L);
case 114:
return jjMoveStringLiteralDfa2_0(active0, 0x200000L);
case 116:
@@ -389,10 +446,6 @@
{
case 99:
return jjMoveStringLiteralDfa3_0(active0, 0x10000000000L);
- case 100:
- if ((active0 & 0x8000000000L) != 0L)
- return jjStartNfaWithStates_0(2, 39, 11);
- break;
case 108:
return jjMoveStringLiteralDfa3_0(active0, 0x400000L);
case 111:
@@ -401,7 +454,7 @@
return jjMoveStringLiteralDfa3_0(active0, 0xc0000000000L);
case 116:
if ((active0 & 0x100000000000L) != 0L)
- return jjStartNfaWithStates_0(2, 44, 11);
+ return jjStartNfaWithStates_0(2, 44, 18);
break;
case 117:
return jjMoveStringLiteralDfa3_0(active0, 0x200000L);
@@ -423,7 +476,7 @@
{
case 101:
if ((active0 & 0x200000L) != 0L)
- return jjStartNfaWithStates_0(3, 21, 11);
+ return jjStartNfaWithStates_0(3, 21, 18);
else if ((active0 & 0x80000000000L) != 0L)
{
jjmatchedKind = 43;
@@ -434,7 +487,7 @@
return jjMoveStringLiteralDfa4_0(active0, 0x10000000000L);
case 112:
if ((active0 & 0x200000000000L) != 0L)
- return jjStartNfaWithStates_0(3, 45, 11);
+ return jjStartNfaWithStates_0(3, 45, 18);
break;
case 115:
return jjMoveStringLiteralDfa4_0(active0, 0x400000L);
@@ -456,7 +509,7 @@
{
case 101:
if ((active0 & 0x400000L) != 0L)
- return jjStartNfaWithStates_0(4, 22, 11);
+ return jjStartNfaWithStates_0(4, 22, 18);
break;
case 105:
return jjMoveStringLiteralDfa5_0(active0, 0x40000000000L);
@@ -482,7 +535,7 @@
return jjMoveStringLiteralDfa6_0(active0, 0x10000000000L);
case 102:
if ((active0 & 0x40000000000L) != 0L)
- return jjStartNfaWithStates_0(5, 42, 11);
+ return jjStartNfaWithStates_0(5, 42, 18);
break;
default :
break;
@@ -502,7 +555,7 @@
{
case 101:
if ((active0 & 0x10000000000L) != 0L)
- return jjStartNfaWithStates_0(6, 40, 11);
+ return jjStartNfaWithStates_0(6, 40, 18);
break;
default :
break;
@@ -546,7 +599,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 12;
+ jjnewStateCnt = 19;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -561,12 +614,12 @@
{
switch(jjstateSet[--i])
{
- case 3:
+ case 0:
if ((0x3ff000000000000L & l) != 0L)
{
if (kind > 47)
kind = 47;
- jjCheckNAdd(10);
+ jjCheckNAdd(17);
}
else if ((0x2400L & l) != 0L)
{
@@ -574,54 +627,79 @@
kind = 23;
}
else if (curChar == 34)
- jjCheckNAddTwoStates(5, 6);
+ jjCheckNAddTwoStates(8, 9);
else if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 2;
+ jjstateSet[jjnewStateCnt++] = 5;
+ else if (curChar == 41)
+ {
+ if (kind > 5)
+ kind = 5;
+ jjCheckNAddTwoStates(1, 2);
+ }
if (curChar == 13)
- jjstateSet[jjnewStateCnt++] = 8;
- break;
- case 0:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 1;
+ jjstateSet[jjnewStateCnt++] = 11;
break;
case 1:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 11)
- kind = 11;
+ if (curChar != 32)
+ break;
+ if (kind > 5)
+ kind = 5;
+ jjCheckNAddTwoStates(1, 2);
break;
case 2:
+ if (curChar == 10 && kind > 5)
+ kind = 5;
+ break;
+ case 3:
if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 0;
+ jjstateSet[jjnewStateCnt++] = 4;
break;
case 4:
- if (curChar == 34)
- jjCheckNAddTwoStates(5, 6);
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 9)
+ kind = 9;
break;
case 5:
- if ((0xfffffffbffffdbffL & l) != 0L)
- jjCheckNAddTwoStates(5, 6);
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 3;
break;
case 6:
+ if (curChar == 35)
+ jjstateSet[jjnewStateCnt++] = 5;
+ break;
+ case 7:
+ if (curChar == 34)
+ jjCheckNAddTwoStates(8, 9);
+ break;
+ case 8:
+ if ((0xfffffffbffffdbffL & l) != 0L)
+ jjCheckNAddTwoStates(8, 9);
+ break;
+ case 9:
if (curChar == 34 && kind > 20)
kind = 20;
break;
- case 7:
+ case 10:
if ((0x2400L & l) != 0L && kind > 23)
kind = 23;
break;
- case 8:
+ case 11:
if (curChar == 10 && kind > 23)
kind = 23;
break;
- case 9:
+ case 12:
if (curChar == 13)
- jjstateSet[jjnewStateCnt++] = 8;
+ jjstateSet[jjnewStateCnt++] = 11;
break;
- case 10:
+ case 14:
+ if (curChar == 10 && kind > 39)
+ kind = 39;
+ break;
+ case 17:
if ((0x3ff000000000000L & l) == 0L)
break;
if (kind > 47)
kind = 47;
- jjCheckNAdd(10);
+ jjCheckNAdd(17);
break;
default : break;
}
@@ -634,20 +712,50 @@
{
switch(jjstateSet[--i])
{
- case 3:
- case 11:
+ case 15:
+ if ((0x7fffffe07fffffeL & l) != 0L)
+ {
+ if (kind > 49)
+ kind = 49;
+ jjCheckNAdd(18);
+ }
+ if (curChar == 110)
+ jjstateSet[jjnewStateCnt++] = 13;
+ break;
+ case 0:
+ if ((0x7fffffe07fffffeL & l) != 0L)
+ {
+ if (kind > 49)
+ kind = 49;
+ jjCheckNAdd(18);
+ }
+ if (curChar == 101)
+ jjstateSet[jjnewStateCnt++] = 15;
+ break;
+ case 4:
+ if (kind > 9)
+ kind = 9;
+ break;
+ case 8:
+ jjAddStates(0, 1);
+ break;
+ case 13:
+ if (curChar != 100)
+ break;
+ if (kind > 39)
+ kind = 39;
+ jjstateSet[jjnewStateCnt++] = 14;
+ break;
+ case 16:
+ if (curChar == 101)
+ jjstateSet[jjnewStateCnt++] = 15;
+ break;
+ case 18:
if ((0x7fffffe07fffffeL & l) == 0L)
break;
if (kind > 49)
kind = 49;
- jjCheckNAdd(11);
- break;
- case 1:
- if (kind > 11)
- kind = 11;
- break;
- case 5:
- jjAddStates(0, 1);
+ jjCheckNAdd(18);
break;
default : break;
}
@@ -661,11 +769,11 @@
{
switch(jjstateSet[--i])
{
- case 1:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 11)
- kind = 11;
+ case 4:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 9)
+ kind = 9;
break;
- case 5:
+ case 8:
if ((jjbitVec0[i2] & l2) != 0L)
jjAddStates(0, 1);
break;
@@ -680,81 +788,81 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 12 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 19 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
}
}
-private final int jjStopStringLiteralDfa_5(int pos, long active0)
+private final int jjStopStringLiteralDfa_4(int pos, long active0)
{
switch (pos)
{
case 0:
- if ((active0 & 0x3400L) != 0L)
+ if ((active0 & 0xd00L) != 0L)
return 2;
return -1;
default :
return -1;
}
}
-private final int jjStartNfa_5(int pos, long active0)
+private final int jjStartNfa_4(int pos, long active0)
{
- return jjMoveNfa_5(jjStopStringLiteralDfa_5(pos, active0), pos + 1);
+ return jjMoveNfa_4(jjStopStringLiteralDfa_4(pos, active0), pos + 1);
}
-private final int jjStartNfaWithStates_5(int pos, int kind, int state)
+private final int jjStartNfaWithStates_4(int pos, int kind, int state)
{
jjmatchedKind = kind;
jjmatchedPos = pos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return pos + 1; }
- return jjMoveNfa_5(state, pos + 1);
+ return jjMoveNfa_4(state, pos + 1);
}
-private final int jjMoveStringLiteralDfa0_5()
+private final int jjMoveStringLiteralDfa0_4()
{
switch(curChar)
{
case 35:
- jjmatchedKind = 13;
- return jjMoveStringLiteralDfa1_5(0x1400L);
+ jjmatchedKind = 11;
+ return jjMoveStringLiteralDfa1_4(0x500L);
case 36:
- jjmatchedKind = 8;
- return jjMoveStringLiteralDfa1_5(0x200L);
+ jjmatchedKind = 6;
+ return jjMoveStringLiteralDfa1_4(0x80L);
case 42:
- return jjMoveStringLiteralDfa1_5(0x10000L);
+ return jjMoveStringLiteralDfa1_4(0x10000L);
default :
- return jjMoveNfa_5(3, 0);
+ return jjMoveNfa_4(3, 0);
}
}
-private final int jjMoveStringLiteralDfa1_5(long active0)
+private final int jjMoveStringLiteralDfa1_4(long active0)
{
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
- jjStopStringLiteralDfa_5(0, active0);
+ jjStopStringLiteralDfa_4(0, active0);
return 1;
}
switch(curChar)
{
case 33:
- if ((active0 & 0x200L) != 0L)
- return jjStopAtPos(1, 9);
+ if ((active0 & 0x80L) != 0L)
+ return jjStopAtPos(1, 7);
break;
case 35:
- if ((active0 & 0x400L) != 0L)
- return jjStopAtPos(1, 10);
+ if ((active0 & 0x100L) != 0L)
+ return jjStopAtPos(1, 8);
else if ((active0 & 0x10000L) != 0L)
return jjStopAtPos(1, 16);
break;
case 42:
- if ((active0 & 0x1000L) != 0L)
- return jjStartNfaWithStates_5(1, 12, 0);
+ if ((active0 & 0x400L) != 0L)
+ return jjStartNfaWithStates_4(1, 10, 0);
break;
default :
break;
}
- return jjStartNfa_5(0, active0);
+ return jjStartNfa_4(0, active0);
}
-private final int jjMoveNfa_5(int startState, int curPos)
+private final int jjMoveNfa_4(int startState, int curPos)
{
int[] nextStates;
int startsAt = 0;
@@ -778,8 +886,8 @@
jjstateSet[jjnewStateCnt++] = 1;
break;
case 1:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 11)
- kind = 11;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 9)
+ kind = 9;
break;
case 2:
if (curChar == 42)
@@ -801,7 +909,7 @@
switch(jjstateSet[--i])
{
case 1:
- kind = 11;
+ kind = 9;
break;
default : break;
}
@@ -816,8 +924,8 @@
switch(jjstateSet[--i])
{
case 1:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 11)
- kind = 11;
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 9)
+ kind = 9;
break;
default : break;
}
@@ -836,12 +944,12 @@
catch(java.io.IOException e) { return curPos; }
}
}
-private final int jjStopStringLiteralDfa_4(int pos, long active0)
+private final int jjStopStringLiteralDfa_3(int pos, long active0)
{
switch (pos)
{
case 0:
- if ((active0 & 0x3400L) != 0L)
+ if ((active0 & 0xd00L) != 0L)
return 2;
if ((active0 & 0x600000L) != 0L)
{
@@ -856,7 +964,7 @@
jjmatchedPos = 1;
return 8;
}
- if ((active0 & 0x1000L) != 0L)
+ if ((active0 & 0x400L) != 0L)
return 0;
return -1;
case 2:
@@ -881,133 +989,133 @@
return -1;
}
}
-private final int jjStartNfa_4(int pos, long active0)
+private final int jjStartNfa_3(int pos, long active0)
{
- return jjMoveNfa_4(jjStopStringLiteralDfa_4(pos, active0), pos + 1);
+ return jjMoveNfa_3(jjStopStringLiteralDfa_3(pos, active0), pos + 1);
}
-private final int jjStartNfaWithStates_4(int pos, int kind, int state)
+private final int jjStartNfaWithStates_3(int pos, int kind, int state)
{
jjmatchedKind = kind;
jjmatchedPos = pos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return pos + 1; }
- return jjMoveNfa_4(state, pos + 1);
+ return jjMoveNfa_3(state, pos + 1);
}
-private final int jjMoveStringLiteralDfa0_4()
+private final int jjMoveStringLiteralDfa0_3()
{
switch(curChar)
{
case 35:
- jjmatchedKind = 13;
- return jjMoveStringLiteralDfa1_4(0x1400L);
+ jjmatchedKind = 11;
+ return jjMoveStringLiteralDfa1_3(0x500L);
case 36:
- jjmatchedKind = 8;
- return jjMoveStringLiteralDfa1_4(0x200L);
+ jjmatchedKind = 6;
+ return jjMoveStringLiteralDfa1_3(0x80L);
case 102:
- return jjMoveStringLiteralDfa1_4(0x400000L);
+ return jjMoveStringLiteralDfa1_3(0x400000L);
case 116:
- return jjMoveStringLiteralDfa1_4(0x200000L);
+ return jjMoveStringLiteralDfa1_3(0x200000L);
case 123:
return jjStopAtPos(0, 55);
case 125:
return jjStopAtPos(0, 56);
default :
- return jjMoveNfa_4(3, 0);
+ return jjMoveNfa_3(3, 0);
}
}
-private final int jjMoveStringLiteralDfa1_4(long active0)
+private final int jjMoveStringLiteralDfa1_3(long active0)
{
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
- jjStopStringLiteralDfa_4(0, active0);
+ jjStopStringLiteralDfa_3(0, active0);
return 1;
}
switch(curChar)
{
case 33:
- if ((active0 & 0x200L) != 0L)
- return jjStopAtPos(1, 9);
+ if ((active0 & 0x80L) != 0L)
+ return jjStopAtPos(1, 7);
break;
case 35:
- if ((active0 & 0x400L) != 0L)
- return jjStopAtPos(1, 10);
+ if ((active0 & 0x100L) != 0L)
+ return jjStopAtPos(1, 8);
break;
case 42:
- if ((active0 & 0x1000L) != 0L)
- return jjStartNfaWithStates_4(1, 12, 0);
+ if ((active0 & 0x400L) != 0L)
+ return jjStartNfaWithStates_3(1, 10, 0);
break;
case 97:
- return jjMoveStringLiteralDfa2_4(active0, 0x400000L);
+ return jjMoveStringLiteralDfa2_3(active0, 0x400000L);
case 114:
- return jjMoveStringLiteralDfa2_4(active0, 0x200000L);
+ return jjMoveStringLiteralDfa2_3(active0, 0x200000L);
default :
break;
}
- return jjStartNfa_4(0, active0);
+ return jjStartNfa_3(0, active0);
}
-private final int jjMoveStringLiteralDfa2_4(long old0, long active0)
+private final int jjMoveStringLiteralDfa2_3(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_4(0, old0);
+ return jjStartNfa_3(0, old0);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
- jjStopStringLiteralDfa_4(1, active0);
+ jjStopStringLiteralDfa_3(1, active0);
return 2;
}
switch(curChar)
{
case 108:
- return jjMoveStringLiteralDfa3_4(active0, 0x400000L);
+ return jjMoveStringLiteralDfa3_3(active0, 0x400000L);
case 117:
- return jjMoveStringLiteralDfa3_4(active0, 0x200000L);
+ return jjMoveStringLiteralDfa3_3(active0, 0x200000L);
default :
break;
}
- return jjStartNfa_4(1, active0);
+ return jjStartNfa_3(1, active0);
}
-private final int jjMoveStringLiteralDfa3_4(long old0, long active0)
+private final int jjMoveStringLiteralDfa3_3(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_4(1, old0);
+ return jjStartNfa_3(1, old0);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
- jjStopStringLiteralDfa_4(2, active0);
+ jjStopStringLiteralDfa_3(2, active0);
return 3;
}
switch(curChar)
{
case 101:
if ((active0 & 0x200000L) != 0L)
- return jjStartNfaWithStates_4(3, 21, 8);
+ return jjStartNfaWithStates_3(3, 21, 8);
break;
case 115:
- return jjMoveStringLiteralDfa4_4(active0, 0x400000L);
+ return jjMoveStringLiteralDfa4_3(active0, 0x400000L);
default :
break;
}
- return jjStartNfa_4(2, active0);
+ return jjStartNfa_3(2, active0);
}
-private final int jjMoveStringLiteralDfa4_4(long old0, long active0)
+private final int jjMoveStringLiteralDfa4_3(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_4(2, old0);
+ return jjStartNfa_3(2, old0);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
- jjStopStringLiteralDfa_4(3, active0);
+ jjStopStringLiteralDfa_3(3, active0);
return 4;
}
switch(curChar)
{
case 101:
if ((active0 & 0x400000L) != 0L)
- return jjStartNfaWithStates_4(4, 22, 8);
+ return jjStartNfaWithStates_3(4, 22, 8);
break;
default :
break;
}
- return jjStartNfa_4(3, active0);
+ return jjStartNfa_3(3, active0);
}
-private final int jjMoveNfa_4(int startState, int curPos)
+private final int jjMoveNfa_3(int startState, int curPos)
{
int[] nextStates;
int startsAt = 0;
@@ -1039,8 +1147,8 @@
jjstateSet[jjnewStateCnt++] = 1;
break;
case 1:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 11)
- kind = 11;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 9)
+ kind = 9;
break;
case 2:
if (curChar == 42)
@@ -1088,11 +1196,11 @@
jjCheckNAdd(8);
break;
case 1:
- if (kind > 11)
- kind = 11;
+ if (kind > 9)
+ kind = 9;
break;
case 5:
- jjAddStates(0, 1);
+ jjAddStates(2, 3);
break;
case 8:
if ((0x7fffffe87fffffeL & l) == 0L)
@@ -1118,12 +1226,12 @@
switch(jjstateSet[--i])
{
case 1:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 11)
- kind = 11;
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 9)
+ kind = 9;
break;
case 5:
if ((jjbitVec0[i2] & l2) != 0L)
- jjAddStates(0, 1);
+ jjAddStates(2, 3);
break;
default : break;
}
@@ -1147,41 +1255,41 @@
switch (pos)
{
case 0:
- if ((active0 & 0x3400L) != 0L)
- return 2;
+ if ((active0 & 0xd00L) != 0L)
+ return 5;
if ((active0 & 0x600000L) != 0L)
{
jjmatchedKind = 53;
- return 8;
+ return 11;
}
return -1;
case 1:
+ if ((active0 & 0x400L) != 0L)
+ return 3;
if ((active0 & 0x600000L) != 0L)
{
jjmatchedKind = 53;
jjmatchedPos = 1;
- return 8;
+ return 11;
}
- if ((active0 & 0x1000L) != 0L)
- return 0;
return -1;
case 2:
if ((active0 & 0x600000L) != 0L)
{
jjmatchedKind = 53;
jjmatchedPos = 2;
- return 8;
+ return 11;
}
return -1;
case 3:
+ if ((active0 & 0x200000L) != 0L)
+ return 11;
if ((active0 & 0x400000L) != 0L)
{
jjmatchedKind = 53;
jjmatchedPos = 3;
- return 8;
+ return 11;
}
- if ((active0 & 0x200000L) != 0L)
- return 8;
return -1;
default :
return -1;
@@ -1204,15 +1312,13 @@
switch(curChar)
{
case 35:
- jjmatchedKind = 13;
- return jjMoveStringLiteralDfa1_1(0x1400L);
+ jjmatchedKind = 11;
+ return jjMoveStringLiteralDfa1_1(0x500L);
case 36:
- jjmatchedKind = 8;
- return jjMoveStringLiteralDfa1_1(0x200L);
+ jjmatchedKind = 6;
+ return jjMoveStringLiteralDfa1_1(0x80L);
case 40:
return jjStopAtPos(0, 4);
- case 41:
- return jjStopAtPos(0, 5);
case 91:
return jjStopAtPos(0, 1);
case 93:
@@ -1226,7 +1332,7 @@
case 125:
return jjStopAtPos(0, 56);
default :
- return jjMoveNfa_1(3, 0);
+ return jjMoveNfa_1(0, 0);
}
}
private final int jjMoveStringLiteralDfa1_1(long active0)
@@ -1239,16 +1345,16 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x200L) != 0L)
- return jjStopAtPos(1, 9);
+ if ((active0 & 0x80L) != 0L)
+ return jjStopAtPos(1, 7);
break;
case 35:
- if ((active0 & 0x400L) != 0L)
- return jjStopAtPos(1, 10);
+ if ((active0 & 0x100L) != 0L)
+ return jjStopAtPos(1, 8);
break;
case 42:
- if ((active0 & 0x1000L) != 0L)
- return jjStartNfaWithStates_1(1, 12, 0);
+ if ((active0 & 0x400L) != 0L)
+ return jjStartNfaWithStates_1(1, 10, 3);
break;
case 97:
return jjMoveStringLiteralDfa2_1(active0, 0x400000L);
@@ -1292,7 +1398,7 @@
{
case 101:
if ((active0 & 0x200000L) != 0L)
- return jjStartNfaWithStates_1(3, 21, 8);
+ return jjStartNfaWithStates_1(3, 21, 11);
break;
case 115:
return jjMoveStringLiteralDfa4_1(active0, 0x400000L);
@@ -1314,7 +1420,7 @@
{
case 101:
if ((active0 & 0x400000L) != 0L)
- return jjStartNfaWithStates_1(4, 22, 8);
+ return jjStartNfaWithStates_1(4, 22, 11);
break;
default :
break;
@@ -1325,7 +1431,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 11;
+ jjnewStateCnt = 14;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -1340,48 +1446,69 @@
{
switch(jjstateSet[--i])
{
- case 3:
+ case 0:
if (curChar == 46)
- jjstateSet[jjnewStateCnt++] = 10;
+ jjstateSet[jjnewStateCnt++] = 13;
else if (curChar == 34)
- jjCheckNAddTwoStates(5, 6);
+ jjCheckNAddTwoStates(8, 9);
else if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 2;
- break;
- case 0:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 1;
+ jjstateSet[jjnewStateCnt++] = 5;
+ else if (curChar == 41)
+ {
+ if (kind > 5)
+ kind = 5;
+ jjCheckNAddTwoStates(1, 2);
+ }
break;
case 1:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 11)
- kind = 11;
+ if (curChar != 32)
+ break;
+ if (kind > 5)
+ kind = 5;
+ jjCheckNAddTwoStates(1, 2);
break;
case 2:
+ if (curChar == 10 && kind > 5)
+ kind = 5;
+ break;
+ case 3:
if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 0;
+ jjstateSet[jjnewStateCnt++] = 4;
break;
case 4:
- if (curChar == 34)
- jjCheckNAddTwoStates(5, 6);
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 9)
+ kind = 9;
break;
case 5:
- if ((0xfffffffbffffdbffL & l) != 0L)
- jjCheckNAddTwoStates(5, 6);
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 3;
break;
case 6:
+ if (curChar == 35)
+ jjstateSet[jjnewStateCnt++] = 5;
+ break;
+ case 7:
+ if (curChar == 34)
+ jjCheckNAddTwoStates(8, 9);
+ break;
+ case 8:
+ if ((0xfffffffbffffdbffL & l) != 0L)
+ jjCheckNAddTwoStates(8, 9);
+ break;
+ case 9:
if (curChar == 34 && kind > 20)
kind = 20;
break;
- case 8:
+ case 11:
if ((0x3ff200000000000L & l) == 0L)
break;
if (kind > 53)
kind = 53;
- jjstateSet[jjnewStateCnt++] = 8;
+ jjstateSet[jjnewStateCnt++] = 11;
break;
- case 9:
+ case 12:
if (curChar == 46)
- jjstateSet[jjnewStateCnt++] = 10;
+ jjstateSet[jjnewStateCnt++] = 13;
break;
default : break;
}
@@ -1394,28 +1521,28 @@
{
switch(jjstateSet[--i])
{
- case 3:
+ case 0:
if ((0x7fffffe07fffffeL & l) == 0L)
break;
if (kind > 53)
kind = 53;
- jjCheckNAdd(8);
+ jjCheckNAdd(11);
break;
- case 1:
- if (kind > 11)
- kind = 11;
+ case 4:
+ if (kind > 9)
+ kind = 9;
break;
- case 5:
+ case 8:
jjAddStates(0, 1);
break;
- case 8:
+ case 11:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
if (kind > 53)
kind = 53;
- jjCheckNAdd(8);
+ jjCheckNAdd(11);
break;
- case 10:
+ case 13:
if ((0x7fffffe07fffffeL & l) != 0L && kind > 54)
kind = 54;
break;
@@ -1431,11 +1558,11 @@
{
switch(jjstateSet[--i])
{
- case 1:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 11)
- kind = 11;
+ case 4:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 9)
+ kind = 9;
break;
- case 5:
+ case 8:
if ((jjbitVec0[i2] & l2) != 0L)
jjAddStates(0, 1);
break;
@@ -1450,81 +1577,81 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 11 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 14 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
}
}
-private final int jjStopStringLiteralDfa_6(int pos, long active0)
+private final int jjStopStringLiteralDfa_5(int pos, long active0)
{
switch (pos)
{
case 0:
- if ((active0 & 0x3400L) != 0L)
+ if ((active0 & 0xd00L) != 0L)
return 2;
return -1;
default :
return -1;
}
}
-private final int jjStartNfa_6(int pos, long active0)
+private final int jjStartNfa_5(int pos, long active0)
{
- return jjMoveNfa_6(jjStopStringLiteralDfa_6(pos, active0), pos + 1);
+ return jjMoveNfa_5(jjStopStringLiteralDfa_5(pos, active0), pos + 1);
}
-private final int jjStartNfaWithStates_6(int pos, int kind, int state)
+private final int jjStartNfaWithStates_5(int pos, int kind, int state)
{
jjmatchedKind = kind;
jjmatchedPos = pos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return pos + 1; }
- return jjMoveNfa_6(state, pos + 1);
+ return jjMoveNfa_5(state, pos + 1);
}
-private final int jjMoveStringLiteralDfa0_6()
+private final int jjMoveStringLiteralDfa0_5()
{
switch(curChar)
{
case 35:
- jjmatchedKind = 13;
- return jjMoveStringLiteralDfa1_6(0x1400L);
+ jjmatchedKind = 11;
+ return jjMoveStringLiteralDfa1_5(0x500L);
case 36:
- jjmatchedKind = 8;
- return jjMoveStringLiteralDfa1_6(0x200L);
+ jjmatchedKind = 6;
+ return jjMoveStringLiteralDfa1_5(0x80L);
case 42:
- return jjMoveStringLiteralDfa1_6(0x8000L);
+ return jjMoveStringLiteralDfa1_5(0x8000L);
default :
- return jjMoveNfa_6(3, 0);
+ return jjMoveNfa_5(3, 0);
}
}
-private final int jjMoveStringLiteralDfa1_6(long active0)
+private final int jjMoveStringLiteralDfa1_5(long active0)
{
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
- jjStopStringLiteralDfa_6(0, active0);
+ jjStopStringLiteralDfa_5(0, active0);
return 1;
}
switch(curChar)
{
case 33:
- if ((active0 & 0x200L) != 0L)
- return jjStopAtPos(1, 9);
+ if ((active0 & 0x80L) != 0L)
+ return jjStopAtPos(1, 7);
break;
case 35:
- if ((active0 & 0x400L) != 0L)
- return jjStopAtPos(1, 10);
+ if ((active0 & 0x100L) != 0L)
+ return jjStopAtPos(1, 8);
else if ((active0 & 0x8000L) != 0L)
return jjStopAtPos(1, 15);
break;
case 42:
- if ((active0 & 0x1000L) != 0L)
- return jjStartNfaWithStates_6(1, 12, 0);
+ if ((active0 & 0x400L) != 0L)
+ return jjStartNfaWithStates_5(1, 10, 0);
break;
default :
break;
}
- return jjStartNfa_6(0, active0);
+ return jjStartNfa_5(0, active0);
}
-private final int jjMoveNfa_6(int startState, int curPos)
+private final int jjMoveNfa_5(int startState, int curPos)
{
int[] nextStates;
int startsAt = 0;
@@ -1548,8 +1675,8 @@
jjstateSet[jjnewStateCnt++] = 1;
break;
case 1:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 11)
- kind = 11;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 9)
+ kind = 9;
break;
case 2:
if (curChar == 42)
@@ -1571,7 +1698,7 @@
switch(jjstateSet[--i])
{
case 1:
- kind = 11;
+ kind = 9;
break;
default : break;
}
@@ -1586,8 +1713,8 @@
switch(jjstateSet[--i])
{
case 1:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 11)
- kind = 11;
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 9)
+ kind = 9;
break;
default : break;
}
@@ -1611,41 +1738,41 @@
switch (pos)
{
case 0:
- if ((active0 & 0x3400L) != 0L)
- return 2;
+ if ((active0 & 0xd00L) != 0L)
+ return 5;
if ((active0 & 0x600000L) != 0L)
{
jjmatchedKind = 53;
- return 8;
+ return 11;
}
return -1;
case 1:
+ if ((active0 & 0x400L) != 0L)
+ return 3;
if ((active0 & 0x600000L) != 0L)
{
jjmatchedKind = 53;
jjmatchedPos = 1;
- return 8;
+ return 11;
}
- if ((active0 & 0x1000L) != 0L)
- return 0;
return -1;
case 2:
if ((active0 & 0x600000L) != 0L)
{
jjmatchedKind = 53;
jjmatchedPos = 2;
- return 8;
+ return 11;
}
return -1;
case 3:
+ if ((active0 & 0x200000L) != 0L)
+ return 11;
if ((active0 & 0x400000L) != 0L)
{
jjmatchedKind = 53;
jjmatchedPos = 3;
- return 8;
+ return 11;
}
- if ((active0 & 0x200000L) != 0L)
- return 8;
return -1;
default :
return -1;
@@ -1668,15 +1795,13 @@
switch(curChar)
{
case 35:
- jjmatchedKind = 13;
- return jjMoveStringLiteralDfa1_2(0x1400L);
+ jjmatchedKind = 11;
+ return jjMoveStringLiteralDfa1_2(0x500L);
case 36:
- jjmatchedKind = 8;
- return jjMoveStringLiteralDfa1_2(0x200L);
+ jjmatchedKind = 6;
+ return jjMoveStringLiteralDfa1_2(0x80L);
case 40:
return jjStopAtPos(0, 4);
- case 41:
- return jjStopAtPos(0, 5);
case 44:
return jjStopAtPos(0, 3);
case 91:
@@ -1692,7 +1817,7 @@
case 125:
return jjStopAtPos(0, 56);
default :
- return jjMoveNfa_2(3, 0);
+ return jjMoveNfa_2(0, 0);
}
}
private final int jjMoveStringLiteralDfa1_2(long active0)
@@ -1705,16 +1830,16 @@
switch(curChar)
{
case 33:
- if ((active0 & 0x200L) != 0L)
- return jjStopAtPos(1, 9);
+ if ((active0 & 0x80L) != 0L)
+ return jjStopAtPos(1, 7);
break;
case 35:
- if ((active0 & 0x400L) != 0L)
- return jjStopAtPos(1, 10);
+ if ((active0 & 0x100L) != 0L)
+ return jjStopAtPos(1, 8);
break;
case 42:
- if ((active0 & 0x1000L) != 0L)
- return jjStartNfaWithStates_2(1, 12, 0);
+ if ((active0 & 0x400L) != 0L)
+ return jjStartNfaWithStates_2(1, 10, 3);
break;
case 97:
return jjMoveStringLiteralDfa2_2(active0, 0x400000L);
@@ -1758,7 +1883,7 @@
{
case 101:
if ((active0 & 0x200000L) != 0L)
- return jjStartNfaWithStates_2(3, 21, 8);
+ return jjStartNfaWithStates_2(3, 21, 11);
break;
case 115:
return jjMoveStringLiteralDfa4_2(active0, 0x400000L);
@@ -1780,7 +1905,7 @@
{
case 101:
if ((active0 & 0x400000L) != 0L)
- return jjStartNfaWithStates_2(4, 22, 8);
+ return jjStartNfaWithStates_2(4, 22, 11);
break;
default :
break;
@@ -1791,7 +1916,7 @@
{
int[] nextStates;
int startsAt = 0;
- jjnewStateCnt = 11;
+ jjnewStateCnt = 14;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
@@ -1806,48 +1931,69 @@
{
switch(jjstateSet[--i])
{
- case 3:
+ case 0:
if (curChar == 46)
- jjstateSet[jjnewStateCnt++] = 10;
+ jjstateSet[jjnewStateCnt++] = 13;
else if (curChar == 34)
- jjCheckNAddTwoStates(5, 6);
+ jjCheckNAddTwoStates(8, 9);
else if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 2;
- break;
- case 0:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 1;
+ jjstateSet[jjnewStateCnt++] = 5;
+ else if (curChar == 41)
+ {
+ if (kind > 5)
+ kind = 5;
+ jjCheckNAddTwoStates(1, 2);
+ }
break;
case 1:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 11)
- kind = 11;
+ if (curChar != 32)
+ break;
+ if (kind > 5)
+ kind = 5;
+ jjCheckNAddTwoStates(1, 2);
break;
case 2:
+ if (curChar == 10 && kind > 5)
+ kind = 5;
+ break;
+ case 3:
if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 0;
+ jjstateSet[jjnewStateCnt++] = 4;
break;
case 4:
- if (curChar == 34)
- jjCheckNAddTwoStates(5, 6);
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 9)
+ kind = 9;
break;
case 5:
- if ((0xfffffffbffffdbffL & l) != 0L)
- jjCheckNAddTwoStates(5, 6);
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 3;
break;
case 6:
+ if (curChar == 35)
+ jjstateSet[jjnewStateCnt++] = 5;
+ break;
+ case 7:
+ if (curChar == 34)
+ jjCheckNAddTwoStates(8, 9);
+ break;
+ case 8:
+ if ((0xfffffffbffffdbffL & l) != 0L)
+ jjCheckNAddTwoStates(8, 9);
+ break;
+ case 9:
if (curChar == 34 && kind > 20)
kind = 20;
break;
- case 8:
+ case 11:
if ((0x3ff200000000000L & l) == 0L)
break;
if (kind > 53)
kind = 53;
- jjstateSet[jjnewStateCnt++] = 8;
+ jjstateSet[jjnewStateCnt++] = 11;
break;
- case 9:
+ case 12:
if (curChar == 46)
- jjstateSet[jjnewStateCnt++] = 10;
+ jjstateSet[jjnewStateCnt++] = 13;
break;
default : break;
}
@@ -1860,28 +2006,28 @@
{
switch(jjstateSet[--i])
{
- case 3:
+ case 0:
if ((0x7fffffe07fffffeL & l) == 0L)
break;
if (kind > 53)
kind = 53;
- jjCheckNAdd(8);
+ jjCheckNAdd(11);
break;
- case 1:
- if (kind > 11)
- kind = 11;
+ case 4:
+ if (kind > 9)
+ kind = 9;
break;
- case 5:
+ case 8:
jjAddStates(0, 1);
break;
- case 8:
+ case 11:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
if (kind > 53)
kind = 53;
- jjCheckNAdd(8);
+ jjCheckNAdd(11);
break;
- case 10:
+ case 13:
if ((0x7fffffe07fffffeL & l) != 0L && kind > 54)
kind = 54;
break;
@@ -1897,11 +2043,11 @@
{
switch(jjstateSet[--i])
{
- case 1:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 11)
- kind = 11;
+ case 4:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 9)
+ kind = 9;
break;
- case 5:
+ case 8:
if ((jjbitVec0[i2] & l2) != 0L)
jjAddStates(0, 1);
break;
@@ -1916,77 +2062,77 @@
kind = 0x7fffffff;
}
++curPos;
- if ((i = jjnewStateCnt) == (startsAt = 11 - (jjnewStateCnt = startsAt)))
+ if ((i = jjnewStateCnt) == (startsAt = 14 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
}
}
-private final int jjStopStringLiteralDfa_7(int pos, long active0)
+private final int jjStopStringLiteralDfa_6(int pos, long active0)
{
switch (pos)
{
case 0:
- if ((active0 & 0x3400L) != 0L)
+ if ((active0 & 0xd00L) != 0L)
return 2;
return -1;
default :
return -1;
}
}
-private final int jjStartNfa_7(int pos, long active0)
+private final int jjStartNfa_6(int pos, long active0)
{
- return jjMoveNfa_7(jjStopStringLiteralDfa_7(pos, active0), pos + 1);
+ return jjMoveNfa_6(jjStopStringLiteralDfa_6(pos, active0), pos + 1);
}
-private final int jjStartNfaWithStates_7(int pos, int kind, int state)
+private final int jjStartNfaWithStates_6(int pos, int kind, int state)
{
jjmatchedKind = kind;
jjmatchedPos = pos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return pos + 1; }
- return jjMoveNfa_7(state, pos + 1);
+ return jjMoveNfa_6(state, pos + 1);
}
-private final int jjMoveStringLiteralDfa0_7()
+private final int jjMoveStringLiteralDfa0_6()
{
switch(curChar)
{
case 35:
- jjmatchedKind = 13;
- return jjMoveStringLiteralDfa1_7(0x1400L);
+ jjmatchedKind = 11;
+ return jjMoveStringLiteralDfa1_6(0x500L);
case 36:
- jjmatchedKind = 8;
- return jjMoveStringLiteralDfa1_7(0x200L);
+ jjmatchedKind = 6;
+ return jjMoveStringLiteralDfa1_6(0x80L);
default :
- return jjMoveNfa_7(3, 0);
+ return jjMoveNfa_6(3, 0);
}
}
-private final int jjMoveStringLiteralDfa1_7(long active0)
+private final int jjMoveStringLiteralDfa1_6(long active0)
{
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
- jjStopStringLiteralDfa_7(0, active0);
+ jjStopStringLiteralDfa_6(0, active0);
return 1;
}
switch(curChar)
{
case 33:
- if ((active0 & 0x200L) != 0L)
- return jjStopAtPos(1, 9);
+ if ((active0 & 0x80L) != 0L)
+ return jjStopAtPos(1, 7);
break;
case 35:
- if ((active0 & 0x400L) != 0L)
- return jjStopAtPos(1, 10);
+ if ((active0 & 0x100L) != 0L)
+ return jjStopAtPos(1, 8);
break;
case 42:
- if ((active0 & 0x1000L) != 0L)
- return jjStartNfaWithStates_7(1, 12, 0);
+ if ((active0 & 0x400L) != 0L)
+ return jjStartNfaWithStates_6(1, 10, 0);
break;
default :
break;
}
- return jjStartNfa_7(0, active0);
+ return jjStartNfa_6(0, active0);
}
-private final int jjMoveNfa_7(int startState, int curPos)
+private final int jjMoveNfa_6(int startState, int curPos)
{
int[] nextStates;
int startsAt = 0;
@@ -2021,8 +2167,8 @@
jjstateSet[jjnewStateCnt++] = 1;
break;
case 1:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 11)
- kind = 11;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 9)
+ kind = 9;
break;
case 2:
if (curChar == 42)
@@ -2052,7 +2198,7 @@
switch(jjstateSet[--i])
{
case 1:
- kind = 11;
+ kind = 9;
break;
default : break;
}
@@ -2067,8 +2213,8 @@
switch(jjstateSet[--i])
{
case 1:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 11)
- kind = 11;
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 9)
+ kind = 9;
break;
default : break;
}
@@ -2087,71 +2233,71 @@
catch(java.io.IOException e) { return curPos; }
}
}
-private final int jjStopStringLiteralDfa_3(int pos, long active0)
+private final int jjStopStringLiteralDfa_7(int pos, long active0)
{
switch (pos)
{
case 0:
- if ((active0 & 0x3400L) != 0L)
- return 5;
+ if ((active0 & 0xd00L) != 0L)
+ return 2;
return -1;
default :
return -1;
}
}
-private final int jjStartNfa_3(int pos, long active0)
+private final int jjStartNfa_7(int pos, long active0)
{
- return jjMoveNfa_3(jjStopStringLiteralDfa_3(pos, active0), pos + 1);
+ return jjMoveNfa_7(jjStopStringLiteralDfa_7(pos, active0), pos + 1);
}
-private final int jjStartNfaWithStates_3(int pos, int kind, int state)
+private final int jjStartNfaWithStates_7(int pos, int kind, int state)
{
jjmatchedKind = kind;
jjmatchedPos = pos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return pos + 1; }
- return jjMoveNfa_3(state, pos + 1);
+ return jjMoveNfa_7(state, pos + 1);
}
-private final int jjMoveStringLiteralDfa0_3()
+private final int jjMoveStringLiteralDfa0_7()
{
switch(curChar)
{
case 35:
- jjmatchedKind = 13;
- return jjMoveStringLiteralDfa1_3(0x1400L);
+ jjmatchedKind = 11;
+ return jjMoveStringLiteralDfa1_7(0x500L);
case 36:
- jjmatchedKind = 8;
- return jjMoveStringLiteralDfa1_3(0x200L);
+ jjmatchedKind = 6;
+ return jjMoveStringLiteralDfa1_7(0x80L);
default :
- return jjMoveNfa_3(0, 0);
+ return jjMoveNfa_7(3, 0);
}
}
-private final int jjMoveStringLiteralDfa1_3(long active0)
+private final int jjMoveStringLiteralDfa1_7(long active0)
{
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
- jjStopStringLiteralDfa_3(0, active0);
+ jjStopStringLiteralDfa_7(0, active0);
return 1;
}
switch(curChar)
{
case 33:
- if ((active0 & 0x200L) != 0L)
- return jjStopAtPos(1, 9);
+ if ((active0 & 0x80L) != 0L)
+ return jjStopAtPos(1, 7);
break;
case 35:
- if ((active0 & 0x400L) != 0L)
- return jjStopAtPos(1, 10);
+ if ((active0 & 0x100L) != 0L)
+ return jjStopAtPos(1, 8);
break;
case 42:
- if ((active0 & 0x1000L) != 0L)
- return jjStartNfaWithStates_3(1, 12, 3);
+ if ((active0 & 0x400L) != 0L)
+ return jjStartNfaWithStates_7(1, 10, 0);
break;
default :
break;
}
- return jjStartNfa_3(0, active0);
+ return jjStartNfa_7(0, active0);
}
-private final int jjMoveNfa_3(int startState, int curPos)
+private final int jjMoveNfa_7(int startState, int curPos)
{
int[] nextStates;
int startsAt = 0;
@@ -2170,42 +2316,38 @@
{
switch(jjstateSet[--i])
{
- case 0:
+ case 3:
if ((0xffffffe7ffffffffL & l) != 0L)
{
- if (kind > 7)
- kind = 7;
- jjCheckNAdd(2);
+ if (kind > 13)
+ kind = 13;
+ jjCheckNAdd(6);
}
else if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 5;
+ jjstateSet[jjnewStateCnt++] = 2;
+ break;
+ case 0:
+ if (curChar == 42)
+ jjstateSet[jjnewStateCnt++] = 1;
break;
case 1:
- if (kind > 6)
- kind = 6;
+ if ((0xfffffff7ffffffffL & l) != 0L && kind > 9)
+ kind = 9;
break;
case 2:
- if ((0xffffffe7ffffffffL & l) == 0L)
- break;
- if (kind > 7)
- kind = 7;
- jjCheckNAdd(2);
- break;
- case 3:
if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 4;
- break;
- case 4:
- if ((0xfffffff7ffffffffL & l) != 0L && kind > 11)
- kind = 11;
+ jjstateSet[jjnewStateCnt++] = 0;
break;
case 5:
- if (curChar == 42)
- jjstateSet[jjnewStateCnt++] = 3;
+ if (kind > 12)
+ kind = 12;
break;
case 6:
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 5;
+ if ((0xffffffe7ffffffffL & l) == 0L)
+ break;
+ if (kind > 13)
+ kind = 13;
+ jjCheckNAdd(6);
break;
default : break;
}
@@ -2218,30 +2360,34 @@
{
switch(jjstateSet[--i])
{
- case 0:
+ case 3:
if ((0xffffffffefffffffL & l) != 0L)
{
- if (kind > 7)
- kind = 7;
- jjCheckNAdd(2);
+ if (kind > 13)
+ kind = 13;
+ jjCheckNAdd(6);
}
else if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 1;
+ jjstateSet[jjnewStateCnt++] = 5;
break;
case 1:
- if (kind > 6)
- kind = 6;
+ if (kind > 9)
+ kind = 9;
break;
- case 2:
+ case 4:
+ if (curChar == 92)
+ jjstateSet[jjnewStateCnt++] = 5;
+ break;
+ case 5:
+ if (kind > 12)
+ kind = 12;
+ break;
+ case 6:
if ((0xffffffffefffffffL & l) == 0L)
break;
- if (kind > 7)
- kind = 7;
- jjCheckNAdd(2);
- break;
- case 4:
- if (kind > 11)
- kind = 11;
+ if (kind > 13)
+ kind = 13;
+ jjCheckNAdd(6);
break;
default : break;
}
@@ -2255,21 +2401,21 @@
{
switch(jjstateSet[--i])
{
- case 0:
- case 2:
+ case 3:
+ case 6:
if ((jjbitVec0[i2] & l2) == 0L)
break;
- if (kind > 7)
- kind = 7;
- jjCheckNAdd(2);
+ if (kind > 13)
+ kind = 13;
+ jjCheckNAdd(6);
break;
case 1:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 6)
- kind = 6;
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 9)
+ kind = 9;
break;
- case 4:
- if ((jjbitVec0[i2] & l2) != 0L && kind > 11)
- kind = 11;
+ case 5:
+ if ((jjbitVec0[i2] & l2) != 0L && kind > 12)
+ kind = 12;
break;
default : break;
}
@@ -2289,7 +2435,7 @@
}
}
static final int[] jjnextStates = {
- 5, 6,
+ 8, 9, 5, 6,
};
public static final String[] jjstrLiteralImages = {
null, null, null, null, null, null, null, null, null, null, null, null, null,
@@ -2301,32 +2447,32 @@
"DIRECTIVE",
"REFMODIFIER",
"REFMOD2",
- "DEFAULT",
"REFERENCE",
"IN_MULTI_LINE_COMMENT",
"IN_FORMAL_COMMENT",
"IN_SINGLE_LINE_COMMENT",
+ "DEFAULT",
};
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, 3, -1,
-1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1,
};
static final long[] jjtoToken = {
- 0x1e2bfffff71c0ffL,
+ 0x1e2bffffff1f03fL,
};
static final long[] jjtoSkip = {
- 0x2000000008c0000L,
+ 0x2000000000c0000L,
};
static final long[] jjtoSpecial = {
- 0x200000000800000L,
+ 0x200000000000000L,
};
static final long[] jjtoMore = {
- 0x23f00L,
+ 0x20fc0L,
};
private ASCII_CharStream input_stream;
-private final int[] jjrounds = new int[12];
-private final int[] jjstateSet = new int[24];
+private final int[] jjrounds = new int[19];
+private final int[] jjstateSet = new int[38];
StringBuffer image;
int jjimageLen;
int lengthOfMatch;
@@ -2353,7 +2499,7 @@
{
int i;
jjround = 0x80000001;
- for (i = 12; i-- > 0;)
+ for (i = 19; i-- > 0;)
jjrounds[i] = 0x80000000;
}
public void ReInit(ASCII_CharStream stream, int lexState)
@@ -2382,8 +2528,8 @@
return t;
}
-int curLexState = 3;
-int defaultLexState = 3;
+int curLexState = 7;
+int defaultLexState = 7;
int jjnewStateCnt;
int jjround;
int jjmatchedPos;
@@ -2455,14 +2601,18 @@
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_3();
+ if (jjmatchedPos == 0 && jjmatchedKind > 57)
+ {
+ jjmatchedKind = 57;
+ }
break;
case 4:
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_4();
- if (jjmatchedPos == 0 && jjmatchedKind > 57)
+ if (jjmatchedPos == 0 && jjmatchedKind > 17)
{
- jjmatchedKind = 57;
+ jjmatchedKind = 17;
}
break;
case 5:
@@ -2487,10 +2637,6 @@
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_7();
- if (jjmatchedPos == 0 && jjmatchedKind > 17)
- {
- jjmatchedKind = 17;
- }
break;
}
if (jjmatchedKind != 0x7fffffff)
@@ -2566,20 +2712,6 @@
{
switch(jjmatchedKind)
{
- case 23 :
- 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 (inSet)
- {
- if ( bDebugPrint_ )
- System.out.print(" NEWLINE :");
- stateStackPop();
- inSet = false;
- inDirective = false;
- }
- break;
case 57 :
if (image == null)
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
@@ -2589,7 +2721,7 @@
* These can terminate a reference, but are needed in subsequent states
*/
- if (image.toString().equals("="))
+ if (image.toString().equals("=") || image.toString().equals("\n"))
{
input_stream.backup(1);
}
@@ -2609,7 +2741,6 @@
|| image.toString().equals(",")
|| image.toString().equals("[")
|| image.toString().equals("]")
- || image.toString().equals("\n")
) )
{
input_stream.backup(1);
@@ -2624,7 +2755,7 @@
jjimageLen += (lengthOfMatch = jjmatchedPos + 1);
switch(jjmatchedKind)
{
- case 8 :
+ case 6 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -2641,7 +2772,7 @@
SwitchTo(REFERENCE);
}
break;
- case 9 :
+ case 7 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -2658,7 +2789,7 @@
SwitchTo(REFERENCE);
}
break;
- case 10 :
+ case 8 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -2668,7 +2799,7 @@
stateStackPush();
SwitchTo(IN_SINGLE_LINE_COMMENT);
break;
- case 11 :
+ case 9 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -2679,7 +2810,7 @@
stateStackPush();
SwitchTo( IN_FORMAL_COMMENT);
break;
- case 12 :
+ case 10 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -2689,7 +2820,7 @@
stateStackPush();
SwitchTo( IN_MULTI_LINE_COMMENT );
break;
- case 13 :
+ case 11 :
if (image == null)
image = new StringBuffer(new
String(input_stream.GetSuffix(jjimageLen)));
else
@@ -2734,53 +2865,7 @@
image = new StringBuffer(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
else
image.append(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
- /*
- * Ultimately, we want to drop down to the state below the one that has an
open (
- * if we hit bottom (DEFAULT), that's fine. It's just text schmoo.
- *
- */
-
-
- boolean bClosed = false;
-
- if (inComment)
- bClosed = true;
-
- while( !bClosed)
- {
- /*
- * look at current state. If we haven't seen a lparen in this state
- * then we drop a state, because this lparen clearly closes our state
- */
-
- if( lparen > 0)
- {
- /*
- * if rparen + 1 == lparen, then this state is closed. Otherwise,
increment
- * and keep parsing
- */
-
- if( lparen == rparen + 1)
- {
- stateStackPop();
- }
- else
- {
- rparen++;
- }
-
- bClosed = true;
- }
- else
- {
- /*
- * now, drop a state
- */
-
- if(!stateStackPop())
- break;
- }
- }
+ RPARENHandler();
break;
case 14 :
if (image == null)
@@ -2817,9 +2902,38 @@
pushFile(matchedToken.image);
}
incMode = false;
+
+ // from jason :
+ // if (lparen == 0)
+ // SwitchTo(DEFAULT);
+
+ /*
+ * - if we are in REFERENCE || REFMODIFIER then " is an ender
+ * - if we are in DIRECTIVE and haven't seen ( yet, then also drop out.
+ * don't forget to account for the beloved yet wierd #set
+ * - finally, if we are in REFMOD2 (remember : $foo.bar( ) then " is ok!
+ */
+
+ if (curLexState == REFERENCE || curLexState == REFMODIFIER)
+ stateStackPop();
+ else if( curLexState == DIRECTIVE && !inSet && lparen == 0)
+ stateStackPop();
+ break;
+ case 23 :
+ 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 ( bDebugPrint_ )
+ System.out.println(" NEWLINE :");
+
+ stateStackPop();
- if (lparen == 0)
- SwitchTo(DEFAULT);
+ if (inSet)
+ inSet = false;
+
+ if (inDirective)
+ inDirective = false;
break;
case 39 :
if (image == null)
@@ -2836,30 +2950,28 @@
image.append(new String(input_stream.GetSuffix(jjimageLen +
(lengthOfMatch = jjmatchedPos + 1))));
incMode = true;
break;
- case 44 :
+ case 43 :
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))));
- inSet = true;
+ inDirective = false;
+ stateStackPop();
break;
- case 45 :
+ 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))));
- matchedToken.kind = EOF;
- fileDepth = 0;
+ inSet = true;
break;
- case 47 :
+ 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))));
- //!!! fixed <bcolor="#333333"/>
- // needs to be more thorough.
- if (lparen == 0)
- SwitchTo(DEFAULT);
+ matchedToken.kind = EOF;
+ fileDepth = 0;
break;
case 54 :
if (image == null)