geirm 01/06/29 16:32:51
Modified: src/java/org/apache/velocity/runtime/parser Parser.java
Parser.jj ParserTokenManager.java
Log:
Parser.jjt followers
Revision Changes Path
1.62 +235 -210
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.61
retrieving revision 1.62
diff -u -r1.61 -r1.62
--- Parser.java 2001/06/12 03:18:22 1.61
+++ Parser.java 2001/06/29 23:32:48 1.62
@@ -21,7 +21,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.61 2001/06/12 03:18:22 geirm Exp $
+ * @version $Id: Parser.java,v 1.62 2001/06/29 23:32:48 geirm Exp $
*/
public class Parser/*@bgen(jjtree)*/implements ParserTreeConstants, ParserConstants
{/*@bgen(jjtree)*/
protected JJTParserState jjtree = new JJTParserState();/**
@@ -517,7 +517,7 @@
break;
default:
jj_la1[3] = jj_gen;
- if (jj_2_2(4)) {
+ if (jj_2_2(5)) {
IntegerRange();
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -898,33 +898,41 @@
case STRING_LITERAL:
StringLiteral();
break;
- case LBRACKET:
- ObjectArray();
- break;
- case TRUE:
- True();
- break;
- case FALSE:
- False();
- break;
- case IDENTIFIER:
- case LCURLY:
- Reference();
- break;
- case NUMBER_LITERAL:
- NumberLiteral();
- break;
default:
jj_la1[17] = jj_gen;
- jj_consume_token(-1);
- throw new ParseException();
+ if (jj_2_3(5)) {
+ IntegerRange();
+ } else {
+ switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
+ case LBRACKET:
+ ObjectArray();
+ break;
+ case TRUE:
+ True();
+ break;
+ case FALSE:
+ False();
+ break;
+ case IDENTIFIER:
+ case LCURLY:
+ Reference();
+ break;
+ case NUMBER_LITERAL:
+ NumberLiteral();
+ break;
+ default:
+ jj_la1[18] = jj_gen;
+ jj_consume_token(-1);
+ throw new ParseException();
+ }
+ }
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case WHITESPACE:
jj_consume_token(WHITESPACE);
break;
default:
- jj_la1[18] = jj_gen;
+ jj_la1[19] = jj_gen;
;
}
}
@@ -959,7 +967,7 @@
;
break;
default:
- jj_la1[19] = jj_gen;
+ jj_la1[20] = jj_gen;
break label_6;
}
jj_consume_token(COMMA);
@@ -967,7 +975,7 @@
}
break;
default:
- jj_la1[20] = jj_gen;
+ jj_la1[21] = jj_gen;
;
}
jj_consume_token(REFMOD2_RPAREN);
@@ -1003,7 +1011,7 @@
jj_consume_token(LCURLY);
break;
default:
- jj_la1[21] = jj_gen;
+ jj_la1[22] = jj_gen;
;
}
jj_consume_token(IDENTIFIER);
@@ -1012,18 +1020,18 @@
jj_consume_token(RCURLY);
break;
default:
- jj_la1[22] = jj_gen;
+ jj_la1[23] = jj_gen;
;
}
label_7:
while (true) {
- if (jj_2_3(2)) {
+ if (jj_2_4(2)) {
;
} else {
break label_7;
}
jj_consume_token(DOT);
- if (jj_2_4(3)) {
+ if (jj_2_5(3)) {
Method();
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -1031,7 +1039,7 @@
Identifier();
break;
default:
- jj_la1[23] = jj_gen;
+ jj_la1[24] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1041,7 +1049,7 @@
jj_consume_token(RCURLY);
break;
default:
- jj_la1[24] = jj_gen;
+ jj_la1[25] = jj_gen;
;
}
}
@@ -1128,7 +1136,7 @@
jj_consume_token(ESCAPE);
break;
default:
- jj_la1[25] = jj_gen;
+ jj_la1[26] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1156,7 +1164,7 @@
jj_consume_token(WHITESPACE);
break;
default:
- jj_la1[26] = jj_gen;
+ jj_la1[27] = jj_gen;
;
}
jj_consume_token(LPAREN);
@@ -1191,7 +1199,7 @@
;
break;
default:
- jj_la1[27] = jj_gen;
+ jj_la1[28] = jj_gen;
break label_8;
}
}
@@ -1224,13 +1232,13 @@
;
break;
default:
- jj_la1[28] = jj_gen;
+ jj_la1[29] = jj_gen;
break label_9;
}
}
break;
default:
- jj_la1[29] = jj_gen;
+ jj_la1[30] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -1238,7 +1246,7 @@
ElseStatement();
break;
default:
- jj_la1[30] = jj_gen;
+ jj_la1[31] = jj_gen;
;
}
jj_consume_token(END);
@@ -1299,7 +1307,7 @@
;
break;
default:
- jj_la1[31] = jj_gen;
+ jj_la1[32] = jj_gen;
break label_10;
}
}
@@ -1355,7 +1363,7 @@
jj_consume_token(WHITESPACE);
break;
default:
- jj_la1[32] = jj_gen;
+ jj_la1[33] = jj_gen;
;
}
jj_consume_token(LPAREN);
@@ -1390,7 +1398,7 @@
;
break;
default:
- jj_la1[33] = jj_gen;
+ jj_la1[34] = jj_gen;
break label_11;
}
}
@@ -1446,7 +1454,7 @@
jjtree.openNodeScope(jjtn000);
try {
jj_consume_token(SET_DIRECTIVE);
- if (jj_2_5(2)) {
+ if (jj_2_6(2)) {
jj_consume_token(WHITESPACE);
} else {
;
@@ -1464,7 +1472,7 @@
jj_consume_token(NEWLINE);
break;
default:
- jj_la1[34] = jj_gen;
+ jj_la1[35] = jj_gen;
;
}
} catch (Throwable jjte000) {
@@ -1510,7 +1518,7 @@
boolean jjtc000 = true;
jjtree.openNodeScope(jjtn000);
try {
- if (jj_2_6(2147483647)) {
+ if (jj_2_7(2147483647)) {
Assignment();
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -1527,7 +1535,7 @@
ConditionalOrExpression();
break;
default:
- jj_la1[35] = jj_gen;
+ jj_la1[36] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1592,7 +1600,7 @@
;
break;
default:
- jj_la1[36] = jj_gen;
+ jj_la1[37] = jj_gen;
break label_12;
}
jj_consume_token(LOGICAL_OR);
@@ -1632,7 +1640,7 @@
;
break;
default:
- jj_la1[37] = jj_gen;
+ jj_la1[38] = jj_gen;
break label_13;
}
jj_consume_token(LOGICAL_AND);
@@ -1673,7 +1681,7 @@
;
break;
default:
- jj_la1[38] = jj_gen;
+ jj_la1[39] = jj_gen;
break label_14;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -1732,7 +1740,7 @@
}
break;
default:
- jj_la1[39] = jj_gen;
+ jj_la1[40] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1751,7 +1759,7 @@
;
break;
default:
- jj_la1[40] = jj_gen;
+ jj_la1[41] = jj_gen;
break label_15;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -1864,7 +1872,7 @@
}
break;
default:
- jj_la1[41] = jj_gen;
+ jj_la1[42] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1881,7 +1889,7 @@
;
break;
default:
- jj_la1[42] = jj_gen;
+ jj_la1[43] = jj_gen;
break label_16;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -1940,7 +1948,7 @@
}
break;
default:
- jj_la1[43] = jj_gen;
+ jj_la1[44] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -1958,7 +1966,7 @@
;
break;
default:
- jj_la1[44] = jj_gen;
+ jj_la1[45] = jj_gen;
break label_17;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -2044,7 +2052,7 @@
}
break;
default:
- jj_la1[45] = jj_gen;
+ jj_la1[46] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -2052,13 +2060,13 @@
}
final public void UnaryExpression() throws ParseException {
- if (jj_2_7(2)) {
+ if (jj_2_8(2)) {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case WHITESPACE:
jj_consume_token(WHITESPACE);
break;
default:
- jj_la1[46] = jj_gen;
+ jj_la1[47] = jj_gen;
;
}
jj_consume_token(LOGICAL_NOT);
@@ -2100,7 +2108,7 @@
PrimaryExpression();
break;
default:
- jj_la1[47] = jj_gen;
+ jj_la1[48] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -2113,7 +2121,7 @@
jj_consume_token(WHITESPACE);
break;
default:
- jj_la1[48] = jj_gen;
+ jj_la1[49] = jj_gen;
;
}
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
@@ -2128,13 +2136,13 @@
Reference();
break;
default:
- jj_la1[49] = jj_gen;
- if (jj_2_8(3)) {
- ObjectArray();
+ jj_la1[50] = jj_gen;
+ if (jj_2_9(5)) {
+ IntegerRange();
} else {
switch ((jj_ntk==-1)?jj_ntk():jj_ntk) {
case LBRACKET:
- IntegerRange();
+ ObjectArray();
break;
case TRUE:
True();
@@ -2148,7 +2156,7 @@
jj_consume_token(RPAREN);
break;
default:
- jj_la1[50] = jj_gen;
+ jj_la1[51] = jj_gen;
jj_consume_token(-1);
throw new ParseException();
}
@@ -2159,7 +2167,7 @@
jj_consume_token(WHITESPACE);
break;
default:
- jj_la1[51] = jj_gen;
+ jj_la1[52] = jj_gen;
;
}
}
@@ -2220,28 +2228,35 @@
return retval;
}
- final private boolean jj_3_2() {
- if (jj_3R_18()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
+ final private boolean jj_2_9(int xla) {
+ jj_la = xla; jj_lastpos = jj_scanpos = token;
+ boolean retval = !jj_3_9();
+ jj_save(8, xla);
+ return retval;
}
final private boolean jj_3R_73() {
if (jj_scan_token(COMMA)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- if (jj_3R_47()) return true;
+ if (jj_3R_46()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3_4() {
+ final private boolean jj_3_2() {
+ if (jj_3R_18()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
+ final private boolean jj_3_5() {
if (jj_3R_20()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
final private boolean jj_3R_33() {
- if (jj_3R_47()) return true;
+ if (jj_3R_46()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
Token xsp;
while (true) {
@@ -2270,53 +2285,53 @@
return false;
}
- final private boolean jj_3_3() {
+ final private boolean jj_3_4() {
if (jj_scan_token(DOT)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
Token xsp;
xsp = jj_scanpos;
- if (jj_3_4()) {
+ if (jj_3_5()) {
jj_scanpos = xsp;
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;
xsp = jj_scanpos;
- if (jj_3R_66()) jj_scanpos = xsp;
+ if (jj_3R_64()) jj_scanpos = xsp;
else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_54() {
+ final private boolean jj_3R_53() {
if (jj_scan_token(RCURLY)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_53() {
+ final private boolean jj_3R_52() {
if (jj_scan_token(LCURLY)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_45() {
+ final private boolean jj_3R_44() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_53()) jj_scanpos = xsp;
+ if (jj_3R_52()) 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_54()) jj_scanpos = xsp;
+ if (jj_3R_53()) jj_scanpos = xsp;
else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
while (true) {
xsp = jj_scanpos;
- if (jj_3_3()) { jj_scanpos = xsp; break; }
+ if (jj_3_4()) { jj_scanpos = xsp; break; }
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
}
return false;
}
- final private boolean jj_3R_48() {
+ final private boolean jj_3R_47() {
if (jj_scan_token(STRING_LITERAL)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
@@ -2336,19 +2351,19 @@
return false;
}
- final private boolean jj_3R_46() {
- if (jj_scan_token(NUMBER_LITERAL)) return true;
+ final private boolean jj_3R_22() {
+ if (jj_scan_token(WHITESPACE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_29() {
- if (jj_scan_token(WHITESPACE)) return true;
+ final private boolean jj_3R_45() {
+ 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_22() {
+ final private boolean jj_3R_28() {
if (jj_scan_token(WHITESPACE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
@@ -2382,68 +2397,56 @@
return false;
}
- final private boolean jj_3R_61() {
- if (jj_3R_46()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
- final private boolean jj_3R_38() {
- if (jj_3R_18()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
final private boolean jj_3R_60() {
if (jj_3R_45()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_65() {
+ final private boolean jj_3R_68() {
if (jj_scan_token(WHITESPACE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3_8() {
- if (jj_3R_24()) return true;
+ final private boolean jj_3R_38() {
+ if (jj_3R_48()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
final private boolean jj_3R_59() {
- if (jj_3R_50()) return true;
+ if (jj_3R_44()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_37() {
- if (jj_3R_45()) return true;
+ final private boolean jj_3_9() {
+ if (jj_3R_18()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
final private boolean jj_3R_58() {
- if (jj_3R_49()) return true;
+ if (jj_3R_50()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_36() {
- if (jj_3R_46()) return true;
+ final private boolean jj_3R_37() {
+ if (jj_3R_44()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
final private boolean jj_3R_57() {
- if (jj_3R_24()) return true;
+ if (jj_3R_49()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_35() {
- if (jj_3R_48()) return true;
+ final private boolean jj_3R_36() {
+ if (jj_3R_45()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
@@ -2454,26 +2457,30 @@
return false;
}
- final private boolean jj_3R_31() {
- if (jj_3R_46()) return true;
+ final private boolean jj_3R_35() {
+ if (jj_3R_47()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_27() {
- if (jj_3R_46()) return true;
+ final private boolean jj_3_3() {
+ if (jj_3R_18()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_52() {
- if (jj_scan_token(COMMA)) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ final private boolean jj_3R_55() {
if (jj_3R_47()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
+ final private boolean jj_3R_30() {
+ if (jj_3R_45()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
final private boolean jj_3R_34() {
if (jj_scan_token(WHITESPACE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
@@ -2488,8 +2495,16 @@
return false;
}
- final private boolean jj_3R_55() {
- if (jj_scan_token(WHITESPACE)) return true;
+ final private boolean jj_3R_26() {
+ if (jj_3R_45()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
+ final private boolean jj_3R_65() {
+ if (jj_scan_token(COMMA)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ if (jj_3R_46()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
@@ -2506,7 +2521,7 @@
jj_scanpos = xsp;
if (jj_3R_37()) {
jj_scanpos = xsp;
- if (jj_3_8()) {
+ if (jj_3_9()) {
jj_scanpos = xsp;
if (jj_3R_38()) {
jj_scanpos = xsp;
@@ -2537,32 +2552,9 @@
return false;
}
- final private boolean jj_3R_47() {
- Token xsp;
- xsp = jj_scanpos;
- if (jj_3R_55()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- xsp = jj_scanpos;
- if (jj_3R_56()) {
- jj_scanpos = xsp;
- if (jj_3R_57()) {
- jj_scanpos = xsp;
- if (jj_3R_58()) {
- jj_scanpos = xsp;
- if (jj_3R_59()) {
- jj_scanpos = xsp;
- if (jj_3R_60()) {
- jj_scanpos = xsp;
- if (jj_3R_61()) return true;
+ final private boolean jj_3R_54() {
+ if (jj_scan_token(WHITESPACE)) 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_65()) jj_scanpos = xsp;
- else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
@@ -2572,7 +2564,7 @@
return false;
}
- final private boolean jj_3_7() {
+ final private boolean jj_3_8() {
Token xsp;
xsp = jj_scanpos;
if (jj_3R_22()) jj_scanpos = xsp;
@@ -2587,7 +2579,7 @@
final private boolean jj_3R_23() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3_7()) {
+ if (jj_3_8()) {
jj_scanpos = xsp;
if (jj_3R_43()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
@@ -2617,24 +2609,44 @@
return false;
}
- final private boolean jj_3R_25() {
- if (jj_scan_token(WHITESPACE)) return true;
+ final private boolean jj_3R_46() {
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_54()) jj_scanpos = xsp;
+ else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ xsp = jj_scanpos;
+ if (jj_3R_55()) {
+ jj_scanpos = xsp;
+ if (jj_3_3()) {
+ jj_scanpos = xsp;
+ if (jj_3R_56()) {
+ jj_scanpos = xsp;
+ if (jj_3R_57()) {
+ jj_scanpos = xsp;
+ if (jj_3R_58()) {
+ jj_scanpos = xsp;
+ if (jj_3R_59()) {
+ jj_scanpos = xsp;
+ if (jj_3R_60()) 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;
+ xsp = jj_scanpos;
+ if (jj_3R_68()) jj_scanpos = xsp;
+ else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_62() {
+ final private boolean jj_3R_24() {
if (jj_scan_token(WHITESPACE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_30() {
- if (jj_3R_45()) return true;
- if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
- return false;
- }
-
final private boolean jj_3R_80() {
if (jj_3R_23()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
@@ -2647,26 +2659,14 @@
return false;
}
- final private boolean jj_3R_44() {
- if (jj_3R_47()) 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_28() {
+ final private boolean jj_3R_31() {
if (jj_scan_token(WHITESPACE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_26() {
- if (jj_3R_45()) return true;
+ final private boolean jj_3R_29() {
+ if (jj_3R_44()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
@@ -2679,6 +2679,30 @@
return false;
}
+ final private boolean jj_3R_27() {
+ if (jj_scan_token(WHITESPACE)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
+ final private boolean jj_3R_25() {
+ if (jj_3R_44()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ return false;
+ }
+
+ final private boolean jj_3R_61() {
+ if (jj_3R_46()) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ 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_87() {
if (jj_scan_token(PLUS)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
@@ -2703,30 +2727,30 @@
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_25()) jj_scanpos = xsp;
+ if (jj_3R_24()) jj_scanpos = xsp;
else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
xsp = jj_scanpos;
- if (jj_3R_26()) {
+ if (jj_3R_25()) {
jj_scanpos = xsp;
- if (jj_3R_27()) return true;
+ if (jj_3R_26()) 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_28()) jj_scanpos = xsp;
+ if (jj_3R_27()) jj_scanpos = xsp;
else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
if (jj_scan_token(DOUBLEDOT)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
xsp = jj_scanpos;
- if (jj_3R_29()) jj_scanpos = xsp;
+ if (jj_3R_28()) jj_scanpos = xsp;
else if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
xsp = jj_scanpos;
- if (jj_3R_30()) {
+ if (jj_3R_29()) {
jj_scanpos = xsp;
- if (jj_3R_31()) return true;
+ if (jj_3R_30()) 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_62()) jj_scanpos = xsp;
+ if (jj_3R_31()) 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;
@@ -2777,18 +2801,6 @@
return false;
}
- final private boolean jj_3R_24() {
- if (jj_scan_token(LBRACKET)) 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;
- return false;
- }
-
final private boolean jj_3R_77() {
Token xsp;
xsp = jj_scanpos;
@@ -2806,6 +2818,18 @@
return false;
}
+ final private boolean jj_3R_48() {
+ if (jj_scan_token(LBRACKET)) return true;
+ if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
+ Token xsp;
+ xsp = jj_scanpos;
+ if (jj_3R_61()) 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_3_1() {
if (jj_scan_token(DOUBLE_ESCAPE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
@@ -2891,7 +2915,7 @@
return false;
}
- final private boolean jj_3_6() {
+ final private boolean jj_3_7() {
if (jj_3R_21()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
if (jj_scan_token(EQUALS)) return true;
@@ -2899,7 +2923,7 @@
return false;
}
- final private boolean jj_3R_68() {
+ final private boolean jj_3R_67() {
if (jj_3R_69()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
Token xsp;
@@ -2911,7 +2935,7 @@
return false;
}
- final private boolean jj_3R_67() {
+ final private boolean jj_3R_66() {
if (jj_3R_21()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
if (jj_scan_token(EQUALS)) return true;
@@ -2921,8 +2945,8 @@
return false;
}
- final private boolean jj_3R_64() {
- if (jj_3R_68()) return true;
+ final private boolean jj_3R_63() {
+ if (jj_3R_67()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
@@ -2930,27 +2954,27 @@
final private boolean jj_3R_51() {
Token xsp;
xsp = jj_scanpos;
- if (jj_3R_63()) {
+ if (jj_3R_62()) {
jj_scanpos = xsp;
- if (jj_3R_64()) return true;
+ 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_63() {
- if (jj_3R_67()) return true;
+ final private boolean jj_3R_62() {
+ if (jj_3R_66()) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3_5() {
+ final private boolean jj_3_6() {
if (jj_scan_token(WHITESPACE)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
}
- final private boolean jj_3R_66() {
+ final private boolean jj_3R_64() {
if (jj_scan_token(RCURLY)) return true;
if (jj_la == 0 && jj_scanpos == jj_lastpos) return false;
return false;
@@ -2970,10 +2994,10 @@
public boolean lookingAhead = false;
private boolean jj_semLA;
private int jj_gen;
- final private int[] jj_la1 = new int[52];
- final private int[] jj_la1_0 =
{0x13f0360,0x13f0360,0x380000,0x1000000,0x6800002,0x800000,0x7800002,0x13f0360,0x8,0x7800002,0x800000,0x0,0x800000,0x800000,0x0,0x800000,0x800000,0x7000002,0x800000,0x8,0x7800002,0x0,0x0,0x0,0x0,0x1060060,0x800000,0x13f0360,0x0,0x0,0x0,0x13f0360,0x800000,0x13f0360,0x8000000,0x7800022,0x0,0x0,0x0,0x0,0x0,0x0,0x30000000,0x30000000,0xc0000000,0xc0000000,0x800000,0x7800022,0x800000,0x1000000,0x6000022,0x800000,};
- final private int[] jj_la1_1 =
{0x7129000,0x7129000,0x0,0x5120000,0x0,0x0,0x5120000,0x7129000,0x0,0x5020000,0x0,0x5020000,0x0,0x0,0x5020000,0x0,0x0,0x5020000,0x0,0x0,0x5020000,0x4000000,0x8000000,0x1000000,0x8000000,0x2020000,0x0,0x7129000,0x2000,0x2000,0x4000,0x7129000,0x0,0x7129000,0x0,0x5020200,0x4,0x2,0x180,0x180,0x78,0x78,0x0,0x0,0x1,0x1,0x0,0x5020000,0x0,0x5020000,0x0,0x0,};
- final private JJCalls[] jj_2_rtns = new JJCalls[8];
+ final private int[] jj_la1 = new int[53];
+ final private int[] jj_la1_0 =
{0x13f0360,0x13f0360,0x380000,0x1000000,0x6800002,0x800000,0x7800002,0x13f0360,0x8,0x7800002,0x800000,0x0,0x800000,0x800000,0x0,0x800000,0x800000,0x1000000,0x6000002,0x800000,0x8,0x7800002,0x0,0x0,0x0,0x0,0x1060060,0x800000,0x13f0360,0x0,0x0,0x0,0x13f0360,0x800000,0x13f0360,0x8000000,0x7800022,0x0,0x0,0x0,0x0,0x0,0x0,0x30000000,0x30000000,0xc0000000,0xc0000000,0x800000,0x7800022,0x800000,0x1000000,0x6000022,0x800000,};
+ final private int[] jj_la1_1 =
{0x7129000,0x7129000,0x0,0x5120000,0x0,0x0,0x5120000,0x7129000,0x0,0x5020000,0x0,0x5020000,0x0,0x0,0x5020000,0x0,0x0,0x0,0x5020000,0x0,0x0,0x5020000,0x4000000,0x8000000,0x1000000,0x8000000,0x2020000,0x0,0x7129000,0x2000,0x2000,0x4000,0x7129000,0x0,0x7129000,0x0,0x5020200,0x4,0x2,0x180,0x180,0x78,0x78,0x0,0x0,0x1,0x1,0x0,0x5020000,0x0,0x5020000,0x0,0x0,};
+ final private JJCalls[] jj_2_rtns = new JJCalls[9];
private boolean jj_rescan = false;
private int jj_gc = 0;
@@ -2982,7 +3006,7 @@
token = new Token();
jj_ntk = -1;
jj_gen = 0;
- for (int i = 0; i < 52; i++) jj_la1[i] = -1;
+ for (int i = 0; i < 53; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
@@ -2992,7 +3016,7 @@
jj_ntk = -1;
jjtree.reset();
jj_gen = 0;
- for (int i = 0; i < 52; i++) jj_la1[i] = -1;
+ for (int i = 0; i < 53; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
@@ -3001,7 +3025,7 @@
token = new Token();
jj_ntk = -1;
jj_gen = 0;
- for (int i = 0; i < 52; i++) jj_la1[i] = -1;
+ for (int i = 0; i < 53; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
@@ -3011,7 +3035,7 @@
jj_ntk = -1;
jjtree.reset();
jj_gen = 0;
- for (int i = 0; i < 52; i++) jj_la1[i] = -1;
+ for (int i = 0; i < 53; i++) jj_la1[i] = -1;
for (int i = 0; i < jj_2_rtns.length; i++) jj_2_rtns[i] = new JJCalls();
}
@@ -3126,7 +3150,7 @@
la1tokens[jj_kind] = true;
jj_kind = -1;
}
- for (int i = 0; i < 52; i++) {
+ for (int i = 0; i < 53; i++) {
if (jj_la1[i] == jj_gen) {
for (int j = 0; j < 32; j++) {
if ((jj_la1_0[i] & (1<<j)) != 0) {
@@ -3163,7 +3187,7 @@
final private void jj_rescan_token() {
jj_rescan = true;
- for (int i = 0; i < 8; i++) {
+ for (int i = 0; i < 9; i++) {
JJCalls p = jj_2_rtns[i];
do {
if (p.gen > jj_gen) {
@@ -3177,6 +3201,7 @@
case 5: jj_3_6(); break;
case 6: jj_3_7(); break;
case 7: jj_3_8(); break;
+ case 8: jj_3_9(); break;
}
}
p = p.next;
1.60 +7 -6
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.59
retrieving revision 1.60
diff -u -r1.59 -r1.60
--- Parser.jj 2001/06/12 03:18:22 1.59
+++ Parser.jj 2001/06/29 23:32:49 1.60
@@ -112,7 +112,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.59 2001/06/12 03:18:22 geirm Exp $
+ * @version $Id: Parser.jj,v 1.60 2001/06/29 23:32:49 geirm Exp $
*/
public class Parser/*@bgen(jjtree)*/implements ParserTreeConstants/*@egen*/
{/*@bgen(jjtree)*/
@@ -459,7 +459,7 @@
| <COMMA:",">
}
-<DIRECTIVE>
+<DIRECTIVE, REFMOD2>
TOKEN:
{
<DOUBLEDOT : ".." >
@@ -1253,7 +1253,7 @@
| Word()
| StringLiteral()
| NumberLiteral()
-| LOOKAHEAD(4) IntegerRange()
+| LOOKAHEAD(5) IntegerRange()
| ObjectArray()
| True()
| False()
@@ -1501,13 +1501,14 @@
[<WHITESPACE>]
(
StringLiteral()
+ | LOOKAHEAD(5) IntegerRange()
| ObjectArray()
| True()
| False()
| Reference()
| NumberLiteral()
)
- [<WHITESPACE>]
+ [ <WHITESPACE>]
}
/**
@@ -2402,8 +2403,8 @@
StringLiteral()
| NumberLiteral()
| Reference()
- | LOOKAHEAD(3) ObjectArray()
- | IntegerRange()
+ | LOOKAHEAD(5) IntegerRange()
+ | ObjectArray()
| True()
| False()
| <LPAREN> Expression() <RPAREN>
1.45 +8 -0
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.44
retrieving revision 1.45
diff -u -r1.44 -r1.45
--- ParserTokenManager.java 2001/05/30 05:55:22 1.44
+++ ParserTokenManager.java 2001/06/29 23:32:49 1.45
@@ -2478,6 +2478,8 @@
jjmatchedKind = 56;
return 25;
}
+ if ((active0 & 0x10L) != 0L)
+ return 27;
return -1;
case 1:
if ((active0 & 0x4000L) != 0L)
@@ -2534,6 +2536,8 @@
return jjStopAtPos(0, 7);
case 44:
return jjStopAtPos(0, 3);
+ case 46:
+ return jjMoveStringLiteralDfa1_1(0x10L);
case 91:
return jjStopAtPos(0, 1);
case 93:
@@ -2566,6 +2570,10 @@
case 42:
if ((active0 & 0x4000L) != 0L)
return jjStartNfaWithStates_1(1, 14, 0);
+ break;
+ case 46:
+ if ((active0 & 0x10L) != 0L)
+ return jjStopAtPos(1, 4);
break;
case 97:
return jjMoveStringLiteralDfa2_1(active0, 0x4000000L);