You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by ma...@apache.org on 2010/01/06 19:10:41 UTC
svn commit: r896589 - in /tomcat/trunk/java/org/apache/el/parser:
ELParser.java ELParser.jjt ELParserConstants.java ELParserTokenManager.java
ParseException.java Token.java TokenMgrError.java
Author: markt
Date: Wed Jan 6 18:10:41 2010
New Revision: 896589
URL: http://svn.apache.org/viewvc?rev=896589&view=rev
Log: (empty)
Modified:
tomcat/trunk/java/org/apache/el/parser/ELParser.java
tomcat/trunk/java/org/apache/el/parser/ELParser.jjt
tomcat/trunk/java/org/apache/el/parser/ELParserConstants.java
tomcat/trunk/java/org/apache/el/parser/ELParserTokenManager.java
tomcat/trunk/java/org/apache/el/parser/ParseException.java
tomcat/trunk/java/org/apache/el/parser/Token.java
tomcat/trunk/java/org/apache/el/parser/TokenMgrError.java
Modified: tomcat/trunk/java/org/apache/el/parser/ELParser.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/el/parser/ELParser.java?rev=896589&r1=896588&r2=896589&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/el/parser/ELParser.java (original)
+++ tomcat/trunk/java/org/apache/el/parser/ELParser.java Wed Jan 6 18:10:41 2010
@@ -1486,9 +1486,9 @@
private boolean jj_3R_29() {
Token xsp;
xsp = jj_scanpos;
- if (jj_scan_token(29)) {
+ if (jj_scan_token(28)) {
jj_scanpos = xsp;
- if (jj_scan_token(30)) return true;
+ if (jj_scan_token(29)) return true;
}
return false;
}
@@ -1501,9 +1501,9 @@
private boolean jj_3R_28() {
Token xsp;
xsp = jj_scanpos;
- if (jj_scan_token(31)) {
+ if (jj_scan_token(30)) {
jj_scanpos = xsp;
- if (jj_scan_token(32)) return true;
+ if (jj_scan_token(31)) return true;
}
return false;
}
@@ -1511,9 +1511,9 @@
private boolean jj_3R_27() {
Token xsp;
xsp = jj_scanpos;
- if (jj_scan_token(25)) {
+ if (jj_scan_token(24)) {
jj_scanpos = xsp;
- if (jj_scan_token(26)) return true;
+ if (jj_scan_token(25)) return true;
}
return false;
}
@@ -1537,9 +1537,9 @@
private boolean jj_3R_26() {
Token xsp;
xsp = jj_scanpos;
- if (jj_scan_token(27)) {
+ if (jj_scan_token(26)) {
jj_scanpos = xsp;
- if (jj_scan_token(28)) return true;
+ if (jj_scan_token(27)) return true;
}
return false;
}
@@ -1577,9 +1577,9 @@
private boolean jj_3R_23() {
Token xsp;
xsp = jj_scanpos;
- if (jj_scan_token(35)) {
+ if (jj_scan_token(34)) {
jj_scanpos = xsp;
- if (jj_scan_token(36)) return true;
+ if (jj_scan_token(35)) return true;
}
return false;
}
@@ -1592,9 +1592,9 @@
private boolean jj_3R_22() {
Token xsp;
xsp = jj_scanpos;
- if (jj_scan_token(33)) {
+ if (jj_scan_token(32)) {
jj_scanpos = xsp;
- if (jj_scan_token(34)) return true;
+ if (jj_scan_token(33)) return true;
}
return false;
}
@@ -1612,9 +1612,9 @@
private boolean jj_3R_17() {
Token xsp;
xsp = jj_scanpos;
- if (jj_scan_token(39)) {
+ if (jj_scan_token(38)) {
jj_scanpos = xsp;
- if (jj_scan_token(40)) return true;
+ if (jj_scan_token(39)) return true;
}
return false;
}
@@ -1692,9 +1692,9 @@
private boolean jj_3R_15() {
Token xsp;
xsp = jj_scanpos;
- if (jj_scan_token(41)) {
+ if (jj_scan_token(40)) {
jj_scanpos = xsp;
- if (jj_scan_token(42)) return true;
+ if (jj_scan_token(41)) return true;
}
return false;
}
@@ -1809,9 +1809,9 @@
private boolean jj_3R_35() {
Token xsp;
xsp = jj_scanpos;
- if (jj_scan_token(37)) {
+ if (jj_scan_token(36)) {
jj_scanpos = xsp;
- if (jj_scan_token(38)) return true;
+ if (jj_scan_token(37)) return true;
}
if (jj_3R_30()) return true;
return false;
@@ -1847,9 +1847,9 @@
private boolean jj_3R_40() {
Token xsp;
xsp = jj_scanpos;
- if (jj_scan_token(51)) {
+ if (jj_scan_token(50)) {
jj_scanpos = xsp;
- if (jj_scan_token(52)) return true;
+ if (jj_scan_token(51)) return true;
}
return false;
}
@@ -1857,9 +1857,9 @@
private boolean jj_3R_39() {
Token xsp;
xsp = jj_scanpos;
- if (jj_scan_token(49)) {
+ if (jj_scan_token(48)) {
jj_scanpos = xsp;
- if (jj_scan_token(50)) return true;
+ if (jj_scan_token(49)) return true;
}
return false;
}
@@ -1916,10 +1916,10 @@
jj_la1_init_1();
}
private static void jj_la1_init_0() {
- jj_la1_0 = new int[] {0xe,0xe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xfe000000,0x18000000,0x6000000,0x80000000,0x60000000,0xfe000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x9d600,0x240000,0x9d600,0x240000,0x80000,0x0,0x1000000,0x9d600,0x1d600,0xc000,};
+ jj_la1_0 = new int[] {0xe,0xe,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0xff000000,0xc000000,0x3000000,0xc0000000,0x30000000,0xff000000,0x0,0x0,0x0,0x0,0x0,0x0,0x0,0x4eb00,0x120000,0x4eb00,0x120000,0x40000,0x0,0x800000,0x4eb00,0xeb00,0x6000,};
}
private static void jj_la1_init_1() {
- jj_la1_1 = new int[] {0x0,0x0,0x600,0x600,0x180,0x180,0x1e,0x6,0x18,0x1e,0x1,0x0,0x0,0x1,0x0,0x1,0xc000,0xc000,0x1e2000,0x60000,0x180000,0x1e2000,0x60,0x208860,0x0,0x200000,0x0,0x0,0x200000,0x0,0x208860,0x0,0x0,};
+ jj_la1_1 = new int[] {0x0,0x0,0x300,0x300,0xc0,0xc0,0xf,0x3,0xc,0xf,0x0,0x0,0x0,0x0,0x0,0x0,0x6000,0x6000,0xf1000,0x30000,0xc0000,0xf1000,0x30,0x104430,0x0,0x100000,0x0,0x0,0x100000,0x0,0x104430,0x0,0x0,};
}
final private JJCalls[] jj_2_rtns = new JJCalls[3];
private boolean jj_rescan = false;
@@ -2108,7 +2108,7 @@
/** Generate ParseException. */
public ParseException generateParseException() {
jj_expentries.clear();
- boolean[] la1tokens = new boolean[59];
+ boolean[] la1tokens = new boolean[58];
if (jj_kind >= 0) {
la1tokens[jj_kind] = true;
jj_kind = -1;
@@ -2125,7 +2125,7 @@
}
}
}
- for (int i = 0; i < 59; i++) {
+ for (int i = 0; i < 58; i++) {
if (la1tokens[i]) {
jj_expentry = new int[1];
jj_expentry[0] = i;
Modified: tomcat/trunk/java/org/apache/el/parser/ELParser.jjt
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/el/parser/ELParser.jjt?rev=896589&r1=896588&r2=896589&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/el/parser/ELParser.jjt (original)
+++ tomcat/trunk/java/org/apache/el/parser/ELParser.jjt Wed Jan 6 18:10:41 2010
@@ -353,11 +353,15 @@
/* ==================================================================================== */
<DEFAULT> TOKEN :
{
+ /*
+ * The following definition uses + rather than * in two places to prevent
+ * LITERAL_EXPRESSION matching the empty string that could result in the
+ * Parser entering an infinite loop.
+ */
< LITERAL_EXPRESSION:
- ((~["\\", "$", "#"])
- | ("\\" ("\\" | "$" | "#"))
- | ("$" ~["{", "$"])
- | ("#" ~["{", "#"])
+ ( (~["$", "#", "\\"])* "\\" (["$", "#"])?
+ | (~["$", "#"])* (["$", "#"] ~["{"])
+ | (~["$", "#"])+
)+
| "$"
| "#"
@@ -368,8 +372,6 @@
< START_DEFERRED_EXPRESSION: "#{" > : IN_EXPRESSION
}
-<DEFAULT> SKIP : { "\\" }
-
<IN_EXPRESSION> SKIP : { " " | "\t" | "\n" | "\r" }
<IN_EXPRESSION> TOKEN :
Modified: tomcat/trunk/java/org/apache/el/parser/ELParserConstants.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/el/parser/ELParserConstants.java?rev=896589&r1=896588&r2=896589&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/el/parser/ELParserConstants.java (original)
+++ tomcat/trunk/java/org/apache/el/parser/ELParserConstants.java Wed Jan 6 18:10:41 2010
@@ -17,105 +17,105 @@
/** RegularExpression Id. */
int START_DEFERRED_EXPRESSION = 3;
/** RegularExpression Id. */
- int INTEGER_LITERAL = 9;
+ int INTEGER_LITERAL = 8;
/** RegularExpression Id. */
- int FLOATING_POINT_LITERAL = 10;
+ int FLOATING_POINT_LITERAL = 9;
/** RegularExpression Id. */
- int EXPONENT = 11;
+ int EXPONENT = 10;
/** RegularExpression Id. */
- int STRING_LITERAL = 12;
+ int STRING_LITERAL = 11;
/** RegularExpression Id. */
- int BADLY_ESCAPED_STRING_LITERAL = 13;
+ int BADLY_ESCAPED_STRING_LITERAL = 12;
/** RegularExpression Id. */
- int TRUE = 14;
+ int TRUE = 13;
/** RegularExpression Id. */
- int FALSE = 15;
+ int FALSE = 14;
/** RegularExpression Id. */
- int NULL = 16;
+ int NULL = 15;
/** RegularExpression Id. */
- int END_EXPRESSION = 17;
+ int END_EXPRESSION = 16;
/** RegularExpression Id. */
- int DOT = 18;
+ int DOT = 17;
/** RegularExpression Id. */
- int LPAREN = 19;
+ int LPAREN = 18;
/** RegularExpression Id. */
- int RPAREN = 20;
+ int RPAREN = 19;
/** RegularExpression Id. */
- int LBRACK = 21;
+ int LBRACK = 20;
/** RegularExpression Id. */
- int RBRACK = 22;
+ int RBRACK = 21;
/** RegularExpression Id. */
- int COLON = 23;
+ int COLON = 22;
/** RegularExpression Id. */
- int COMMA = 24;
+ int COMMA = 23;
/** RegularExpression Id. */
- int GT0 = 25;
+ int GT0 = 24;
/** RegularExpression Id. */
- int GT1 = 26;
+ int GT1 = 25;
/** RegularExpression Id. */
- int LT0 = 27;
+ int LT0 = 26;
/** RegularExpression Id. */
- int LT1 = 28;
+ int LT1 = 27;
/** RegularExpression Id. */
- int GE0 = 29;
+ int GE0 = 28;
/** RegularExpression Id. */
- int GE1 = 30;
+ int GE1 = 29;
/** RegularExpression Id. */
- int LE0 = 31;
+ int LE0 = 30;
/** RegularExpression Id. */
- int LE1 = 32;
+ int LE1 = 31;
/** RegularExpression Id. */
- int EQ0 = 33;
+ int EQ0 = 32;
/** RegularExpression Id. */
- int EQ1 = 34;
+ int EQ1 = 33;
/** RegularExpression Id. */
- int NE0 = 35;
+ int NE0 = 34;
/** RegularExpression Id. */
- int NE1 = 36;
+ int NE1 = 35;
/** RegularExpression Id. */
- int NOT0 = 37;
+ int NOT0 = 36;
/** RegularExpression Id. */
- int NOT1 = 38;
+ int NOT1 = 37;
/** RegularExpression Id. */
- int AND0 = 39;
+ int AND0 = 38;
/** RegularExpression Id. */
- int AND1 = 40;
+ int AND1 = 39;
/** RegularExpression Id. */
- int OR0 = 41;
+ int OR0 = 40;
/** RegularExpression Id. */
- int OR1 = 42;
+ int OR1 = 41;
/** RegularExpression Id. */
- int EMPTY = 43;
+ int EMPTY = 42;
/** RegularExpression Id. */
- int INSTANCEOF = 44;
+ int INSTANCEOF = 43;
/** RegularExpression Id. */
- int MULT = 45;
+ int MULT = 44;
/** RegularExpression Id. */
- int PLUS = 46;
+ int PLUS = 45;
/** RegularExpression Id. */
- int MINUS = 47;
+ int MINUS = 46;
/** RegularExpression Id. */
- int QUESTIONMARK = 48;
+ int QUESTIONMARK = 47;
/** RegularExpression Id. */
- int DIV0 = 49;
+ int DIV0 = 48;
/** RegularExpression Id. */
- int DIV1 = 50;
+ int DIV1 = 49;
/** RegularExpression Id. */
- int MOD0 = 51;
+ int MOD0 = 50;
/** RegularExpression Id. */
- int MOD1 = 52;
+ int MOD1 = 51;
/** RegularExpression Id. */
- int IDENTIFIER = 53;
+ int IDENTIFIER = 52;
/** RegularExpression Id. */
- int FUNCTIONSUFFIX = 54;
+ int FUNCTIONSUFFIX = 53;
/** RegularExpression Id. */
- int IMPL_OBJ_START = 55;
+ int IMPL_OBJ_START = 54;
/** RegularExpression Id. */
- int LETTER = 56;
+ int LETTER = 55;
/** RegularExpression Id. */
- int DIGIT = 57;
+ int DIGIT = 56;
/** RegularExpression Id. */
- int ILLEGAL_CHARACTER = 58;
+ int ILLEGAL_CHARACTER = 57;
/** Lexical state. */
int DEFAULT = 0;
@@ -128,7 +128,6 @@
"<LITERAL_EXPRESSION>",
"\"${\"",
"\"#{\"",
- "\"\\\\\"",
"\" \"",
"\"\\t\"",
"\"\\n\"",
Modified: tomcat/trunk/java/org/apache/el/parser/ELParserTokenManager.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/el/parser/ELParserTokenManager.java?rev=896589&r1=896588&r2=896589&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/el/parser/ELParserTokenManager.java (original)
+++ tomcat/trunk/java/org/apache/el/parser/ELParserTokenManager.java Wed Jan 6 18:10:41 2010
@@ -16,17 +16,10 @@
switch (pos)
{
case 0:
- if ((active0 & 0x10L) != 0L)
- return 2;
- if ((active0 & 0x4L) != 0L)
- {
- jjmatchedKind = 1;
- return 4;
- }
- if ((active0 & 0x8L) != 0L)
+ if ((active0 & 0xcL) != 0L)
{
jjmatchedKind = 1;
- return 6;
+ return 5;
}
return -1;
default :
@@ -51,8 +44,6 @@
return jjMoveStringLiteralDfa1_0(0x8L);
case 36:
return jjMoveStringLiteralDfa1_0(0x4L);
- case 92:
- return jjStartNfaWithStates_0(0, 4, 2);
default :
return jjMoveNfa_0(7, 0);
}
@@ -77,14 +68,6 @@
}
return jjStartNfa_0(0, active0);
}
-private int jjStartNfaWithStates_0(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_0(state, pos + 1);
-}
static final long[] jjbitVec0 = {
0xfffffffffffffffeL, 0xffffffffffffffffL, 0xffffffffffffffffL, 0xffffffffffffffffL
};
@@ -114,53 +97,47 @@
{
if (kind > 1)
kind = 1;
- jjCheckNAddStates(0, 3);
+ jjCheckNAddStates(0, 4);
}
else if ((0x1800000000L & l) != 0L)
{
if (kind > 1)
kind = 1;
+ jjCheckNAdd(5);
}
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 6;
- else if (curChar == 36)
- jjstateSet[jjnewStateCnt++] = 4;
+ if ((0xffffffe7ffffffffL & l) != 0L)
+ jjCheckNAddTwoStates(0, 1);
break;
case 0:
- if ((0xffffffe7ffffffffL & l) == 0L)
- break;
- if (kind > 1)
- kind = 1;
- jjCheckNAddStates(0, 3);
+ if ((0xffffffe7ffffffffL & l) != 0L)
+ jjCheckNAddTwoStates(0, 1);
break;
case 2:
- if ((0x1800000000L & l) == 0L)
+ if ((0xffffffe7ffffffffL & l) == 0L)
break;
if (kind > 1)
kind = 1;
- jjCheckNAddStates(0, 3);
+ jjCheckNAddStates(0, 4);
break;
case 3:
- if (curChar == 36)
- jjstateSet[jjnewStateCnt++] = 4;
+ if ((0xffffffe7ffffffffL & l) != 0L)
+ jjCheckNAddTwoStates(3, 4);
break;
case 4:
- if ((0xffffffefffffffffL & l) == 0L)
- break;
- if (kind > 1)
- kind = 1;
- jjCheckNAddStates(0, 3);
+ if ((0x1800000000L & l) != 0L)
+ jjCheckNAdd(5);
break;
case 5:
- if (curChar == 35)
- jjstateSet[jjnewStateCnt++] = 6;
+ if (kind > 1)
+ kind = 1;
+ jjCheckNAddStates(5, 8);
break;
case 6:
- if ((0xfffffff7ffffffffL & l) == 0L)
+ if ((0x1800000000L & l) == 0L)
break;
if (kind > 1)
kind = 1;
- jjCheckNAddStates(0, 3);
+ jjCheckNAddStates(9, 13);
break;
default : break;
}
@@ -174,40 +151,43 @@
switch(jjstateSet[--i])
{
case 7:
+ if (kind > 1)
+ kind = 1;
+ jjCheckNAddStates(0, 4);
if ((0xffffffffefffffffL & l) != 0L)
+ jjCheckNAddTwoStates(0, 1);
+ else if (curChar == 92)
{
if (kind > 1)
kind = 1;
- jjCheckNAddStates(0, 3);
+ jjCheckNAddStates(14, 17);
}
- else if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 2;
break;
case 0:
- if ((0xffffffffefffffffL & l) == 0L)
+ if ((0xffffffffefffffffL & l) != 0L)
+ jjCheckNAddTwoStates(0, 1);
+ break;
+ case 1:
+ if (curChar != 92)
break;
if (kind > 1)
kind = 1;
- jjCheckNAddStates(0, 3);
- break;
- case 1:
- if (curChar == 92)
- jjstateSet[jjnewStateCnt++] = 2;
+ jjCheckNAddStates(14, 17);
break;
case 2:
- if (curChar != 92)
- break;
if (kind > 1)
kind = 1;
- jjCheckNAddStates(0, 3);
+ jjCheckNAddStates(0, 4);
break;
- case 4:
- case 6:
+ case 3:
+ jjCheckNAddTwoStates(3, 4);
+ break;
+ case 5:
if ((0xf7ffffffffffffffL & l) == 0L)
break;
if (kind > 1)
kind = 1;
- jjCheckNAddStates(0, 3);
+ jjCheckNAddStates(5, 8);
break;
default : break;
}
@@ -225,14 +205,36 @@
switch(jjstateSet[--i])
{
case 7:
+ if (jjCanMove_0(hiByte, i1, i2, l1, l2))
+ jjCheckNAddTwoStates(0, 1);
+ if (jjCanMove_0(hiByte, i1, i2, l1, l2))
+ {
+ if (kind > 1)
+ kind = 1;
+ jjCheckNAddStates(0, 4);
+ }
+ break;
case 0:
- case 4:
- case 6:
+ if (jjCanMove_0(hiByte, i1, i2, l1, l2))
+ jjCheckNAddTwoStates(0, 1);
+ break;
+ case 2:
if (!jjCanMove_0(hiByte, i1, i2, l1, l2))
break;
if (kind > 1)
kind = 1;
- jjCheckNAddStates(0, 3);
+ jjCheckNAddStates(0, 4);
+ break;
+ case 3:
+ if (jjCanMove_0(hiByte, i1, i2, l1, l2))
+ jjCheckNAddTwoStates(3, 4);
+ break;
+ case 5:
+ if (!jjCanMove_0(hiByte, i1, i2, l1, l2))
+ break;
+ if (kind > 1)
+ kind = 1;
+ jjCheckNAddStates(5, 8);
break;
default : break;
}
@@ -256,82 +258,82 @@
switch (pos)
{
case 0:
- if ((active0 & 0x40000L) != 0L)
+ if ((active0 & 0x20000L) != 0L)
return 1;
- if ((active0 & 0x141d555401c000L) != 0L)
+ if ((active0 & 0xa0eaaaa00e000L) != 0L)
{
- jjmatchedKind = 53;
+ jjmatchedKind = 52;
return 36;
}
return -1;
case 1:
- if ((active0 & 0x41554000000L) != 0L)
+ if ((active0 & 0x20aaa000000L) != 0L)
return 36;
- if ((active0 & 0x1419400001c000L) != 0L)
+ if ((active0 & 0xa0ca00000e000L) != 0L)
{
- jjmatchedKind = 53;
+ jjmatchedKind = 52;
jjmatchedPos = 1;
return 36;
}
return -1;
case 2:
- if ((active0 & 0x18000001c000L) != 0L)
+ if ((active0 & 0xc000000e000L) != 0L)
{
- jjmatchedKind = 53;
+ jjmatchedKind = 52;
jjmatchedPos = 2;
return 36;
}
- if ((active0 & 0x14014000000000L) != 0L)
+ if ((active0 & 0xa00a000000000L) != 0L)
return 36;
return -1;
case 3:
- if ((active0 & 0x14000L) != 0L)
+ if ((active0 & 0xa000L) != 0L)
return 36;
- if ((active0 & 0x180000008000L) != 0L)
+ if ((active0 & 0xc0000004000L) != 0L)
{
- jjmatchedKind = 53;
+ jjmatchedKind = 52;
jjmatchedPos = 3;
return 36;
}
return -1;
case 4:
- if ((active0 & 0x80000008000L) != 0L)
+ if ((active0 & 0x40000004000L) != 0L)
return 36;
- if ((active0 & 0x100000000000L) != 0L)
+ if ((active0 & 0x80000000000L) != 0L)
{
- jjmatchedKind = 53;
+ jjmatchedKind = 52;
jjmatchedPos = 4;
return 36;
}
return -1;
case 5:
- if ((active0 & 0x100000000000L) != 0L)
+ if ((active0 & 0x80000000000L) != 0L)
{
- jjmatchedKind = 53;
+ jjmatchedKind = 52;
jjmatchedPos = 5;
return 36;
}
return -1;
case 6:
- if ((active0 & 0x100000000000L) != 0L)
+ if ((active0 & 0x80000000000L) != 0L)
{
- jjmatchedKind = 53;
+ jjmatchedKind = 52;
jjmatchedPos = 6;
return 36;
}
return -1;
case 7:
- if ((active0 & 0x100000000000L) != 0L)
+ if ((active0 & 0x80000000000L) != 0L)
{
- jjmatchedKind = 53;
+ jjmatchedKind = 52;
jjmatchedPos = 7;
return 36;
}
return -1;
case 8:
- if ((active0 & 0x100000000000L) != 0L)
+ if ((active0 & 0x80000000000L) != 0L)
{
- jjmatchedKind = 53;
+ jjmatchedKind = 52;
jjmatchedPos = 8;
return 36;
}
@@ -349,70 +351,70 @@
switch(curChar)
{
case 33:
- jjmatchedKind = 37;
- return jjMoveStringLiteralDfa1_1(0x800000000L);
+ jjmatchedKind = 36;
+ return jjMoveStringLiteralDfa1_1(0x400000000L);
case 37:
- return jjStopAtPos(0, 51);
+ return jjStopAtPos(0, 50);
case 38:
- return jjMoveStringLiteralDfa1_1(0x8000000000L);
+ return jjMoveStringLiteralDfa1_1(0x4000000000L);
case 40:
- return jjStopAtPos(0, 19);
+ return jjStopAtPos(0, 18);
case 41:
- return jjStopAtPos(0, 20);
+ return jjStopAtPos(0, 19);
case 42:
- return jjStopAtPos(0, 45);
+ return jjStopAtPos(0, 44);
case 43:
- return jjStopAtPos(0, 46);
+ return jjStopAtPos(0, 45);
case 44:
- return jjStopAtPos(0, 24);
+ return jjStopAtPos(0, 23);
case 45:
- return jjStopAtPos(0, 47);
+ return jjStopAtPos(0, 46);
case 46:
- return jjStartNfaWithStates_1(0, 18, 1);
+ return jjStartNfaWithStates_1(0, 17, 1);
case 47:
- return jjStopAtPos(0, 49);
+ return jjStopAtPos(0, 48);
case 58:
- return jjStopAtPos(0, 23);
+ return jjStopAtPos(0, 22);
case 60:
- jjmatchedKind = 27;
- return jjMoveStringLiteralDfa1_1(0x80000000L);
+ jjmatchedKind = 26;
+ return jjMoveStringLiteralDfa1_1(0x40000000L);
case 61:
- return jjMoveStringLiteralDfa1_1(0x200000000L);
+ return jjMoveStringLiteralDfa1_1(0x100000000L);
case 62:
- jjmatchedKind = 25;
- return jjMoveStringLiteralDfa1_1(0x20000000L);
+ jjmatchedKind = 24;
+ return jjMoveStringLiteralDfa1_1(0x10000000L);
case 63:
- return jjStopAtPos(0, 48);
+ return jjStopAtPos(0, 47);
case 91:
- return jjStopAtPos(0, 21);
+ return jjStopAtPos(0, 20);
case 93:
- return jjStopAtPos(0, 22);
+ return jjStopAtPos(0, 21);
case 97:
- return jjMoveStringLiteralDfa1_1(0x10000000000L);
+ return jjMoveStringLiteralDfa1_1(0x8000000000L);
case 100:
- return jjMoveStringLiteralDfa1_1(0x4000000000000L);
+ return jjMoveStringLiteralDfa1_1(0x2000000000000L);
case 101:
- return jjMoveStringLiteralDfa1_1(0x80400000000L);
+ return jjMoveStringLiteralDfa1_1(0x40200000000L);
case 102:
- return jjMoveStringLiteralDfa1_1(0x8000L);
+ return jjMoveStringLiteralDfa1_1(0x4000L);
case 103:
- return jjMoveStringLiteralDfa1_1(0x44000000L);
+ return jjMoveStringLiteralDfa1_1(0x22000000L);
case 105:
- return jjMoveStringLiteralDfa1_1(0x100000000000L);
+ return jjMoveStringLiteralDfa1_1(0x80000000000L);
case 108:
- return jjMoveStringLiteralDfa1_1(0x110000000L);
+ return jjMoveStringLiteralDfa1_1(0x88000000L);
case 109:
- return jjMoveStringLiteralDfa1_1(0x10000000000000L);
+ return jjMoveStringLiteralDfa1_1(0x8000000000000L);
case 110:
- return jjMoveStringLiteralDfa1_1(0x5000010000L);
+ return jjMoveStringLiteralDfa1_1(0x2800008000L);
case 111:
- return jjMoveStringLiteralDfa1_1(0x40000000000L);
+ return jjMoveStringLiteralDfa1_1(0x20000000000L);
case 116:
- return jjMoveStringLiteralDfa1_1(0x4000L);
+ return jjMoveStringLiteralDfa1_1(0x2000L);
case 124:
- return jjMoveStringLiteralDfa1_1(0x20000000000L);
+ return jjMoveStringLiteralDfa1_1(0x10000000000L);
case 125:
- return jjStopAtPos(0, 17);
+ return jjStopAtPos(0, 16);
default :
return jjMoveNfa_1(0, 0);
}
@@ -427,56 +429,56 @@
switch(curChar)
{
case 38:
- if ((active0 & 0x8000000000L) != 0L)
- return jjStopAtPos(1, 39);
+ if ((active0 & 0x4000000000L) != 0L)
+ return jjStopAtPos(1, 38);
break;
case 61:
- if ((active0 & 0x20000000L) != 0L)
- return jjStopAtPos(1, 29);
- else if ((active0 & 0x80000000L) != 0L)
- return jjStopAtPos(1, 31);
- else if ((active0 & 0x200000000L) != 0L)
- return jjStopAtPos(1, 33);
- else if ((active0 & 0x800000000L) != 0L)
- return jjStopAtPos(1, 35);
+ if ((active0 & 0x10000000L) != 0L)
+ return jjStopAtPos(1, 28);
+ else if ((active0 & 0x40000000L) != 0L)
+ return jjStopAtPos(1, 30);
+ else if ((active0 & 0x100000000L) != 0L)
+ return jjStopAtPos(1, 32);
+ else if ((active0 & 0x400000000L) != 0L)
+ return jjStopAtPos(1, 34);
break;
case 97:
- return jjMoveStringLiteralDfa2_1(active0, 0x8000L);
+ return jjMoveStringLiteralDfa2_1(active0, 0x4000L);
case 101:
- if ((active0 & 0x40000000L) != 0L)
- return jjStartNfaWithStates_1(1, 30, 36);
- else if ((active0 & 0x100000000L) != 0L)
- return jjStartNfaWithStates_1(1, 32, 36);
- else if ((active0 & 0x1000000000L) != 0L)
- return jjStartNfaWithStates_1(1, 36, 36);
+ if ((active0 & 0x20000000L) != 0L)
+ return jjStartNfaWithStates_1(1, 29, 36);
+ else if ((active0 & 0x80000000L) != 0L)
+ return jjStartNfaWithStates_1(1, 31, 36);
+ else if ((active0 & 0x800000000L) != 0L)
+ return jjStartNfaWithStates_1(1, 35, 36);
break;
case 105:
- return jjMoveStringLiteralDfa2_1(active0, 0x4000000000000L);
+ return jjMoveStringLiteralDfa2_1(active0, 0x2000000000000L);
case 109:
- return jjMoveStringLiteralDfa2_1(active0, 0x80000000000L);
+ return jjMoveStringLiteralDfa2_1(active0, 0x40000000000L);
case 110:
- return jjMoveStringLiteralDfa2_1(active0, 0x110000000000L);
+ return jjMoveStringLiteralDfa2_1(active0, 0x88000000000L);
case 111:
- return jjMoveStringLiteralDfa2_1(active0, 0x10004000000000L);
+ return jjMoveStringLiteralDfa2_1(active0, 0x8002000000000L);
case 113:
- if ((active0 & 0x400000000L) != 0L)
- return jjStartNfaWithStates_1(1, 34, 36);
+ if ((active0 & 0x200000000L) != 0L)
+ return jjStartNfaWithStates_1(1, 33, 36);
break;
case 114:
- if ((active0 & 0x40000000000L) != 0L)
- return jjStartNfaWithStates_1(1, 42, 36);
- return jjMoveStringLiteralDfa2_1(active0, 0x4000L);
+ if ((active0 & 0x20000000000L) != 0L)
+ return jjStartNfaWithStates_1(1, 41, 36);
+ return jjMoveStringLiteralDfa2_1(active0, 0x2000L);
case 116:
- if ((active0 & 0x4000000L) != 0L)
- return jjStartNfaWithStates_1(1, 26, 36);
- else if ((active0 & 0x10000000L) != 0L)
- return jjStartNfaWithStates_1(1, 28, 36);
+ if ((active0 & 0x2000000L) != 0L)
+ return jjStartNfaWithStates_1(1, 25, 36);
+ else if ((active0 & 0x8000000L) != 0L)
+ return jjStartNfaWithStates_1(1, 27, 36);
break;
case 117:
- return jjMoveStringLiteralDfa2_1(active0, 0x10000L);
+ return jjMoveStringLiteralDfa2_1(active0, 0x8000L);
case 124:
- if ((active0 & 0x20000000000L) != 0L)
- return jjStopAtPos(1, 41);
+ if ((active0 & 0x10000000000L) != 0L)
+ return jjStopAtPos(1, 40);
break;
default :
break;
@@ -495,26 +497,26 @@
switch(curChar)
{
case 100:
- if ((active0 & 0x10000000000L) != 0L)
- return jjStartNfaWithStates_1(2, 40, 36);
- else if ((active0 & 0x10000000000000L) != 0L)
- return jjStartNfaWithStates_1(2, 52, 36);
+ if ((active0 & 0x8000000000L) != 0L)
+ return jjStartNfaWithStates_1(2, 39, 36);
+ else if ((active0 & 0x8000000000000L) != 0L)
+ return jjStartNfaWithStates_1(2, 51, 36);
break;
case 108:
- return jjMoveStringLiteralDfa3_1(active0, 0x18000L);
+ return jjMoveStringLiteralDfa3_1(active0, 0xc000L);
case 112:
- return jjMoveStringLiteralDfa3_1(active0, 0x80000000000L);
+ return jjMoveStringLiteralDfa3_1(active0, 0x40000000000L);
case 115:
- return jjMoveStringLiteralDfa3_1(active0, 0x100000000000L);
+ return jjMoveStringLiteralDfa3_1(active0, 0x80000000000L);
case 116:
- if ((active0 & 0x4000000000L) != 0L)
- return jjStartNfaWithStates_1(2, 38, 36);
+ if ((active0 & 0x2000000000L) != 0L)
+ return jjStartNfaWithStates_1(2, 37, 36);
break;
case 117:
- return jjMoveStringLiteralDfa3_1(active0, 0x4000L);
+ return jjMoveStringLiteralDfa3_1(active0, 0x2000L);
case 118:
- if ((active0 & 0x4000000000000L) != 0L)
- return jjStartNfaWithStates_1(2, 50, 36);
+ if ((active0 & 0x2000000000000L) != 0L)
+ return jjStartNfaWithStates_1(2, 49, 36);
break;
default :
break;
@@ -533,17 +535,17 @@
switch(curChar)
{
case 101:
- if ((active0 & 0x4000L) != 0L)
- return jjStartNfaWithStates_1(3, 14, 36);
+ if ((active0 & 0x2000L) != 0L)
+ return jjStartNfaWithStates_1(3, 13, 36);
break;
case 108:
- if ((active0 & 0x10000L) != 0L)
- return jjStartNfaWithStates_1(3, 16, 36);
+ if ((active0 & 0x8000L) != 0L)
+ return jjStartNfaWithStates_1(3, 15, 36);
break;
case 115:
- return jjMoveStringLiteralDfa4_1(active0, 0x8000L);
+ return jjMoveStringLiteralDfa4_1(active0, 0x4000L);
case 116:
- return jjMoveStringLiteralDfa4_1(active0, 0x180000000000L);
+ return jjMoveStringLiteralDfa4_1(active0, 0xc0000000000L);
default :
break;
}
@@ -561,14 +563,14 @@
switch(curChar)
{
case 97:
- return jjMoveStringLiteralDfa5_1(active0, 0x100000000000L);
+ return jjMoveStringLiteralDfa5_1(active0, 0x80000000000L);
case 101:
- if ((active0 & 0x8000L) != 0L)
- return jjStartNfaWithStates_1(4, 15, 36);
+ if ((active0 & 0x4000L) != 0L)
+ return jjStartNfaWithStates_1(4, 14, 36);
break;
case 121:
- if ((active0 & 0x80000000000L) != 0L)
- return jjStartNfaWithStates_1(4, 43, 36);
+ if ((active0 & 0x40000000000L) != 0L)
+ return jjStartNfaWithStates_1(4, 42, 36);
break;
default :
break;
@@ -587,7 +589,7 @@
switch(curChar)
{
case 110:
- return jjMoveStringLiteralDfa6_1(active0, 0x100000000000L);
+ return jjMoveStringLiteralDfa6_1(active0, 0x80000000000L);
default :
break;
}
@@ -605,7 +607,7 @@
switch(curChar)
{
case 99:
- return jjMoveStringLiteralDfa7_1(active0, 0x100000000000L);
+ return jjMoveStringLiteralDfa7_1(active0, 0x80000000000L);
default :
break;
}
@@ -623,7 +625,7 @@
switch(curChar)
{
case 101:
- return jjMoveStringLiteralDfa8_1(active0, 0x100000000000L);
+ return jjMoveStringLiteralDfa8_1(active0, 0x80000000000L);
default :
break;
}
@@ -641,7 +643,7 @@
switch(curChar)
{
case 111:
- return jjMoveStringLiteralDfa9_1(active0, 0x100000000000L);
+ return jjMoveStringLiteralDfa9_1(active0, 0x80000000000L);
default :
break;
}
@@ -659,8 +661,8 @@
switch(curChar)
{
case 102:
- if ((active0 & 0x100000000000L) != 0L)
- return jjStartNfaWithStates_1(9, 44, 36);
+ if ((active0 & 0x80000000000L) != 0L)
+ return jjStartNfaWithStates_1(9, 43, 36);
break;
default :
break;
@@ -714,42 +716,42 @@
case 0:
if ((0x3ff000000000000L & l) != 0L)
{
- if (kind > 9)
- kind = 9;
- jjCheckNAddStates(4, 8);
+ if (kind > 8)
+ kind = 8;
+ jjCheckNAddStates(18, 22);
}
else if ((0x1800000000L & l) != 0L)
{
- if (kind > 53)
- kind = 53;
+ if (kind > 52)
+ kind = 52;
jjCheckNAddTwoStates(34, 35);
}
else if (curChar == 39)
- jjCheckNAddStates(9, 13);
+ jjCheckNAddStates(23, 27);
else if (curChar == 34)
- jjCheckNAddStates(14, 18);
+ jjCheckNAddStates(28, 32);
else if (curChar == 46)
jjCheckNAdd(1);
break;
case 36:
if ((0x3ff001000000000L & l) != 0L)
{
- if (kind > 54)
- kind = 54;
+ if (kind > 53)
+ kind = 53;
jjCheckNAdd(35);
}
if ((0x3ff001000000000L & l) != 0L)
{
- if (kind > 53)
- kind = 53;
+ if (kind > 52)
+ kind = 52;
jjCheckNAdd(34);
}
break;
case 1:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 10)
- kind = 10;
+ if (kind > 9)
+ kind = 9;
jjCheckNAddTwoStates(1, 2);
break;
case 3:
@@ -759,22 +761,22 @@
case 4:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 10)
- kind = 10;
+ if (kind > 9)
+ kind = 9;
jjCheckNAdd(4);
break;
case 5:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 9)
- kind = 9;
- jjCheckNAddStates(4, 8);
+ if (kind > 8)
+ kind = 8;
+ jjCheckNAddStates(18, 22);
break;
case 6:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 9)
- kind = 9;
+ if (kind > 8)
+ kind = 8;
jjCheckNAdd(6);
break;
case 7:
@@ -784,15 +786,15 @@
case 8:
if (curChar != 46)
break;
- if (kind > 10)
- kind = 10;
+ if (kind > 9)
+ kind = 9;
jjCheckNAddTwoStates(9, 10);
break;
case 9:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 10)
- kind = 10;
+ if (kind > 9)
+ kind = 9;
jjCheckNAddTwoStates(9, 10);
break;
case 11:
@@ -802,8 +804,8 @@
case 12:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 10)
- kind = 10;
+ if (kind > 9)
+ kind = 9;
jjCheckNAdd(12);
break;
case 13:
@@ -817,77 +819,77 @@
case 16:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 10)
- kind = 10;
+ if (kind > 9)
+ kind = 9;
jjCheckNAdd(16);
break;
case 17:
if (curChar == 34)
- jjCheckNAddStates(14, 18);
+ jjCheckNAddStates(28, 32);
break;
case 18:
if ((0xfffffffbffffffffL & l) != 0L)
- jjCheckNAddStates(19, 21);
+ jjCheckNAddStates(33, 35);
break;
case 20:
if (curChar == 34)
- jjCheckNAddStates(19, 21);
+ jjCheckNAddStates(33, 35);
break;
case 21:
- if (curChar == 34 && kind > 12)
- kind = 12;
+ if (curChar == 34 && kind > 11)
+ kind = 11;
break;
case 22:
if ((0xfffffffbffffffffL & l) != 0L)
jjCheckNAddTwoStates(22, 23);
break;
case 24:
- if ((0xfffffffbffffffffL & l) != 0L && kind > 13)
- kind = 13;
+ if ((0xfffffffbffffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
case 25:
if (curChar == 39)
- jjCheckNAddStates(9, 13);
+ jjCheckNAddStates(23, 27);
break;
case 26:
if ((0xffffff7fffffffffL & l) != 0L)
- jjCheckNAddStates(22, 24);
+ jjCheckNAddStates(36, 38);
break;
case 28:
if (curChar == 39)
- jjCheckNAddStates(22, 24);
+ jjCheckNAddStates(36, 38);
break;
case 29:
- if (curChar == 39 && kind > 12)
- kind = 12;
+ if (curChar == 39 && kind > 11)
+ kind = 11;
break;
case 30:
if ((0xffffff7fffffffffL & l) != 0L)
jjCheckNAddTwoStates(30, 31);
break;
case 32:
- if ((0xffffff7fffffffffL & l) != 0L && kind > 13)
- kind = 13;
+ if ((0xffffff7fffffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
case 33:
if ((0x1800000000L & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 52)
+ kind = 52;
jjCheckNAddTwoStates(34, 35);
break;
case 34:
if ((0x3ff001000000000L & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 52)
+ kind = 52;
jjCheckNAdd(34);
break;
case 35:
if ((0x3ff001000000000L & l) == 0L)
break;
- if (kind > 54)
- kind = 54;
+ if (kind > 53)
+ kind = 53;
jjCheckNAdd(35);
break;
default : break;
@@ -904,39 +906,39 @@
case 0:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 52)
+ kind = 52;
jjCheckNAddTwoStates(34, 35);
break;
case 36:
if ((0x7fffffe87fffffeL & l) != 0L)
{
- if (kind > 54)
- kind = 54;
+ if (kind > 53)
+ kind = 53;
jjCheckNAdd(35);
}
if ((0x7fffffe87fffffeL & l) != 0L)
{
- if (kind > 53)
- kind = 53;
+ if (kind > 52)
+ kind = 52;
jjCheckNAdd(34);
}
break;
case 2:
if ((0x2000000020L & l) != 0L)
- jjAddStates(25, 26);
+ jjAddStates(39, 40);
break;
case 10:
if ((0x2000000020L & l) != 0L)
- jjAddStates(27, 28);
+ jjAddStates(41, 42);
break;
case 14:
if ((0x2000000020L & l) != 0L)
- jjAddStates(29, 30);
+ jjAddStates(43, 44);
break;
case 18:
if ((0xffffffffefffffffL & l) != 0L)
- jjCheckNAddStates(19, 21);
+ jjCheckNAddStates(33, 35);
break;
case 19:
if (curChar == 92)
@@ -944,11 +946,11 @@
break;
case 20:
if (curChar == 92)
- jjCheckNAddStates(19, 21);
+ jjCheckNAddStates(33, 35);
break;
case 22:
if ((0xffffffffefffffffL & l) != 0L)
- jjAddStates(31, 32);
+ jjAddStates(45, 46);
break;
case 23:
if (curChar == 92)
@@ -956,12 +958,12 @@
break;
case 24:
case 32:
- if ((0xffffffffefffffffL & l) != 0L && kind > 13)
- kind = 13;
+ if ((0xffffffffefffffffL & l) != 0L && kind > 12)
+ kind = 12;
break;
case 26:
if ((0xffffffffefffffffL & l) != 0L)
- jjCheckNAddStates(22, 24);
+ jjCheckNAddStates(36, 38);
break;
case 27:
if (curChar == 92)
@@ -969,11 +971,11 @@
break;
case 28:
if (curChar == 92)
- jjCheckNAddStates(22, 24);
+ jjCheckNAddStates(36, 38);
break;
case 30:
if ((0xffffffffefffffffL & l) != 0L)
- jjAddStates(33, 34);
+ jjAddStates(47, 48);
break;
case 31:
if (curChar == 92)
@@ -982,15 +984,15 @@
case 34:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 52)
+ kind = 52;
jjCheckNAdd(34);
break;
case 35:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
- if (kind > 54)
- kind = 54;
+ if (kind > 53)
+ kind = 53;
jjCheckNAdd(35);
break;
default : break;
@@ -1011,57 +1013,57 @@
case 0:
if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 52)
+ kind = 52;
jjCheckNAddTwoStates(34, 35);
break;
case 36:
if (jjCanMove_1(hiByte, i1, i2, l1, l2))
{
- if (kind > 53)
- kind = 53;
+ if (kind > 52)
+ kind = 52;
jjCheckNAdd(34);
}
if (jjCanMove_1(hiByte, i1, i2, l1, l2))
{
- if (kind > 54)
- kind = 54;
+ if (kind > 53)
+ kind = 53;
jjCheckNAdd(35);
}
break;
case 18:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
- jjAddStates(19, 21);
+ jjAddStates(33, 35);
break;
case 22:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
- jjAddStates(31, 32);
+ jjAddStates(45, 46);
break;
case 24:
case 32:
- if (jjCanMove_0(hiByte, i1, i2, l1, l2) && kind > 13)
- kind = 13;
+ if (jjCanMove_0(hiByte, i1, i2, l1, l2) && kind > 12)
+ kind = 12;
break;
case 26:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
- jjAddStates(22, 24);
+ jjAddStates(36, 38);
break;
case 30:
if (jjCanMove_0(hiByte, i1, i2, l1, l2))
- jjAddStates(33, 34);
+ jjAddStates(47, 48);
break;
case 34:
if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 52)
+ kind = 52;
jjCheckNAdd(34);
break;
case 35:
if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
break;
- if (kind > 54)
- kind = 54;
+ if (kind > 53)
+ kind = 53;
jjCheckNAdd(35);
break;
default : break;
@@ -1082,9 +1084,10 @@
}
}
static final int[] jjnextStates = {
- 0, 1, 3, 5, 6, 7, 8, 13, 14, 26, 27, 29, 30, 31, 18, 19,
- 21, 22, 23, 18, 19, 21, 26, 27, 29, 3, 4, 11, 12, 15, 16, 22,
- 23, 30, 31,
+ 0, 1, 3, 4, 2, 0, 1, 4, 2, 0, 1, 4, 5, 2, 0, 1,
+ 2, 6, 6, 7, 8, 13, 14, 26, 27, 29, 30, 31, 18, 19, 21, 22,
+ 23, 18, 19, 21, 26, 27, 29, 3, 4, 11, 12, 15, 16, 22, 23, 30,
+ 31,
};
private static final boolean jjCanMove_0(int hiByte, int i1, int i2, long l1, long l2)
{
@@ -1122,10 +1125,10 @@
/** Token literal values. */
public static final String[] jjstrLiteralImages = {
"", null, "\44\173", "\43\173", null, null, null, null, null, null, null, null,
-null, null, "\164\162\165\145", "\146\141\154\163\145", "\156\165\154\154", "\175",
-"\56", "\50", "\51", "\133", "\135", "\72", "\54", "\76", "\147\164", "\74",
-"\154\164", "\76\75", "\147\145", "\74\75", "\154\145", "\75\75", "\145\161", "\41\75",
-"\156\145", "\41", "\156\157\164", "\46\46", "\141\156\144", "\174\174", "\157\162",
+null, "\164\162\165\145", "\146\141\154\163\145", "\156\165\154\154", "\175", "\56",
+"\50", "\51", "\133", "\135", "\72", "\54", "\76", "\147\164", "\74", "\154\164",
+"\76\75", "\147\145", "\74\75", "\154\145", "\75\75", "\145\161", "\41\75", "\156\145",
+"\41", "\156\157\164", "\46\46", "\141\156\144", "\174\174", "\157\162",
"\145\155\160\164\171", "\151\156\163\164\141\156\143\145\157\146", "\52", "\53", "\55", "\77", "\57",
"\144\151\166", "\45", "\155\157\144", null, null, null, null, null, null, };
@@ -1137,15 +1140,15 @@
/** Lex State array. */
public static final int[] jjnewLexState = {
- -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, 1, 1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 0, -1, -1, -1, -1, -1, -1, -1, -1,
-1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1,
- -1, -1, -1, -1, -1, -1, -1, -1, -1,
+ -1, -1, -1, -1, -1, -1, -1, -1,
};
static final long[] jjtoToken = {
- 0x47ffffffffff60fL,
+ 0x23ffffffffffb0fL,
};
static final long[] jjtoSkip = {
- 0x1f0L,
+ 0xf0L,
};
protected SimpleCharStream input_stream;
private final int[] jjrounds = new int[36];
@@ -1263,9 +1266,9 @@
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_1();
- if (jjmatchedPos == 0 && jjmatchedKind > 58)
+ if (jjmatchedPos == 0 && jjmatchedKind > 57)
{
- jjmatchedKind = 58;
+ jjmatchedKind = 57;
}
break;
}
Modified: tomcat/trunk/java/org/apache/el/parser/ParseException.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/el/parser/ParseException.java?rev=896589&r1=896588&r2=896589&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/el/parser/ParseException.java (original)
+++ tomcat/trunk/java/org/apache/el/parser/ParseException.java Wed Jan 6 18:10:41 2010
@@ -60,7 +60,7 @@
/**
* This is the last token that has been consumed successfully. If
* this object has been created due to a parse error, the token
- * following this token will (therefore) be the first error token.
+ * followng this token will (therefore) be the first error token.
*/
public Token currentToken;
@@ -139,7 +139,7 @@
* string literal.
*/
static String add_escapes(String str) {
- StringBuilder retval = new StringBuilder();
+ StringBuffer retval = new StringBuffer();
char ch;
for (int i = 0; i < str.length(); i++) {
switch (str.charAt(i))
Modified: tomcat/trunk/java/org/apache/el/parser/Token.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/el/parser/Token.java?rev=896589&r1=896588&r2=896589&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/el/parser/Token.java (original)
+++ tomcat/trunk/java/org/apache/el/parser/Token.java Wed Jan 6 18:10:41 2010
@@ -97,7 +97,6 @@
/**
* Returns the image.
*/
- @Override
public String toString()
{
return image;
Modified: tomcat/trunk/java/org/apache/el/parser/TokenMgrError.java
URL: http://svn.apache.org/viewvc/tomcat/trunk/java/org/apache/el/parser/TokenMgrError.java?rev=896589&r1=896588&r2=896589&view=diff
==============================================================================
--- tomcat/trunk/java/org/apache/el/parser/TokenMgrError.java (original)
+++ tomcat/trunk/java/org/apache/el/parser/TokenMgrError.java Wed Jan 6 18:10:41 2010
@@ -48,7 +48,7 @@
* equivalents in the given string
*/
protected static final String addEscapes(String str) {
- StringBuilder retval = new StringBuilder();
+ StringBuffer retval = new StringBuffer();
char ch;
for (int i = 0; i < str.length(); i++) {
switch (str.charAt(i))
@@ -121,7 +121,6 @@
*
* from this method for such cases in the release version of your parser.
*/
- @Override
public String getMessage() {
return super.getMessage();
}
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org
Re: svn commit: r896589 - in /tomcat/trunk/java/org/apache/el/parser:
ELParser.java ELParser.jjt ELParserConstants.java ELParserTokenManager.java
ParseException.java Token.java TokenMgrError.java
Posted by Mark Thomas <ma...@apache.org>.
On 06/01/2010 18:10, markt@apache.org wrote:
> Author: markt
> Date: Wed Jan 6 18:10:41 2010
> New Revision: 896589
>
> URL: http://svn.apache.org/viewvc?rev=896589&view=rev
> Log: (empty)
>
> --- tomcat/trunk/java/org/apache/el/parser/ELParser.jjt (original)
> +++ tomcat/trunk/java/org/apache/el/parser/ELParser.jjt Wed Jan 6 18:10:41 2010
> @@ -353,11 +353,15 @@
> /* ==================================================================================== */
> <DEFAULT> TOKEN :
> {
> + /*
> + * The following definition uses + rather than * in two places to prevent
> + * LITERAL_EXPRESSION matching the empty string that could result in the
> + * Parser entering an infinite loop.
> + */
> < LITERAL_EXPRESSION:
> - ((~["\\", "$", "#"])
> - | ("\\" ("\\" | "$" | "#"))
> - | ("$" ~["{", "$"])
> - | ("#" ~["{", "#"])
> + ( (~["$", "#", "\\"])* "\\" (["$", "#"])?
> + | (~["$", "#"])* (["$", "#"] ~["{"])
> + | (~["$", "#"])+
I've raised this with the EL spec folks. Hopefully it will get fixed in
a future version.
Mark
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
For additional commands, e-mail: dev-help@tomcat.apache.org