You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cayenne.apache.org by nt...@apache.org on 2017/01/19 11:33:12 UTC
[2/3] cayenne git commit: CAY-2196 Support for new function
expressions in expression parser - updated and refactored grammar for parser
- add token id to AST* function call nodes - escape in parse exception
message - tests
http://git-wip-us.apache.org/repos/asf/cayenne/blob/c44ccfde/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ExpressionParserTokenManager.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ExpressionParserTokenManager.java b/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ExpressionParserTokenManager.java
index ad5e218..79285ff 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ExpressionParserTokenManager.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ExpressionParserTokenManager.java
@@ -101,140 +101,9 @@ public class ExpressionParserTokenManager implements ExpressionParserConstants
}
/** Debug output. */
- public java.io.PrintStream debugStream = System.out;
+ public PrintStream debugStream = System.out;
/** Set debug output. */
- public void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }
-private final int jjStopStringLiteralDfa_0(int pos, long active0)
-{
- switch (pos)
- {
- case 0:
- if ((active0 & 0x8L) != 0L)
- {
- jjmatchedKind = 41;
- return 2;
- }
- if ((active0 & 0x38004e006L) != 0L)
- {
- jjmatchedKind = 41;
- return 56;
- }
- return -1;
- case 1:
- if ((active0 & 0x38004600cL) != 0L)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 1;
- return 56;
- }
- if ((active0 & 0x8002L) != 0L)
- return 56;
- return -1;
- case 2:
- if ((active0 & 0x280046000L) != 0L)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 2;
- return 56;
- }
- if ((active0 & 0xcL) != 0L)
- return 56;
- return -1;
- case 3:
- if ((active0 & 0x200040000L) != 0L)
- {
- if (jjmatchedPos != 3)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 3;
- }
- return 56;
- }
- if ((active0 & 0x6000L) != 0L)
- return 56;
- return -1;
- case 4:
- if ((active0 & 0x44000L) != 0L)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 4;
- return 56;
- }
- return -1;
- case 5:
- if ((active0 & 0x44000L) != 0L)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 5;
- return 56;
- }
- return -1;
- case 6:
- if ((active0 & 0x4000L) != 0L)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 6;
- return 56;
- }
- if ((active0 & 0x40000L) != 0L)
- return 56;
- return -1;
- case 7:
- if ((active0 & 0x4000L) != 0L)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 7;
- return 56;
- }
- return -1;
- case 8:
- if ((active0 & 0x4000L) != 0L)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 8;
- return 56;
- }
- return -1;
- case 9:
- if ((active0 & 0x4000L) != 0L)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 9;
- return 56;
- }
- return -1;
- case 10:
- if ((active0 & 0x4000L) != 0L)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 10;
- return 56;
- }
- return -1;
- case 11:
- if ((active0 & 0x4000L) != 0L)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 11;
- return 56;
- }
- return -1;
- case 12:
- if ((active0 & 0x4000L) != 0L)
- {
- jjmatchedKind = 41;
- jjmatchedPos = 12;
- return 56;
- }
- return -1;
- default :
- return -1;
- }
-}
-private final int jjStartNfa_0(int pos, long active0)
-{
- return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0), pos + 1);
-}
+ public void setDebugStream(PrintStream ds) { debugStream = ds; }
private int jjStopAtPos(int pos, int kind)
{
jjmatchedKind = kind;
@@ -245,31 +114,54 @@ private int jjMoveStringLiteralDfa0_0()
{
switch(curChar)
{
+ case 9:
+ jjmatchedKind = 31;
+ return jjMoveNfa_0(3, 0);
+ case 10:
+ jjmatchedKind = 32;
+ return jjMoveNfa_0(3, 0);
+ case 13:
+ jjmatchedKind = 33;
+ return jjMoveNfa_0(3, 0);
+ case 32:
+ jjmatchedKind = 30;
+ return jjMoveNfa_0(3, 0);
case 33:
jjmatchedKind = 4;
return jjMoveStringLiteralDfa1_0(0x80L);
case 34:
- return jjStopAtPos(0, 46);
+ jjmatchedKind = 64;
+ return jjMoveNfa_0(3, 0);
case 36:
- return jjStopAtPos(0, 30);
+ jjmatchedKind = 55;
+ return jjMoveNfa_0(3, 0);
case 38:
- return jjStopAtPos(0, 22);
+ jjmatchedKind = 22;
+ return jjMoveNfa_0(3, 0);
case 39:
- return jjStopAtPos(0, 45);
+ jjmatchedKind = 63;
+ return jjMoveNfa_0(3, 0);
case 40:
- return jjStopAtPos(0, 16);
+ jjmatchedKind = 16;
+ return jjMoveNfa_0(3, 0);
case 41:
- return jjStopAtPos(0, 17);
+ jjmatchedKind = 17;
+ return jjMoveNfa_0(3, 0);
case 42:
- return jjStopAtPos(0, 27);
+ jjmatchedKind = 27;
+ return jjMoveNfa_0(3, 0);
case 43:
- return jjStopAtPos(0, 25);
+ jjmatchedKind = 25;
+ return jjMoveNfa_0(3, 0);
case 44:
- return jjStopAtPos(0, 19);
+ jjmatchedKind = 19;
+ return jjMoveNfa_0(3, 0);
case 45:
- return jjStopAtPos(0, 26);
+ jjmatchedKind = 26;
+ return jjMoveNfa_0(3, 0);
case 47:
- return jjStopAtPos(0, 28);
+ jjmatchedKind = 28;
+ return jjMoveNfa_0(3, 0);
case 60:
jjmatchedKind = 10;
return jjMoveStringLiteralDfa1_0(0x800300L);
@@ -279,28 +171,55 @@ private int jjMoveStringLiteralDfa0_0()
case 62:
jjmatchedKind = 11;
return jjMoveStringLiteralDfa1_0(0x1001000L);
+ case 65:
+ return jjMoveStringLiteralDfa1_0(0x2002000000000L);
+ case 67:
+ return jjMoveStringLiteralDfa1_0(0x70060000000000L);
+ case 76:
+ return jjMoveStringLiteralDfa1_0(0x1a00000000000L);
+ case 77:
+ return jjMoveStringLiteralDfa1_0(0x800c000000000L);
+ case 83:
+ return jjMoveStringLiteralDfa1_0(0x4090000000000L);
+ case 84:
+ return jjMoveStringLiteralDfa1_0(0x100000000000L);
+ case 85:
+ return jjMoveStringLiteralDfa1_0(0x400000000000L);
case 94:
- return jjStopAtPos(0, 21);
+ jjmatchedKind = 21;
+ return jjMoveNfa_0(3, 0);
case 97:
- return jjMoveStringLiteralDfa1_0(0x4L);
+ return jjMoveStringLiteralDfa1_0(0x2002000000004L);
case 98:
return jjMoveStringLiteralDfa1_0(0x40000L);
+ case 99:
+ return jjMoveStringLiteralDfa1_0(0x70060000000000L);
case 100:
- return jjMoveStringLiteralDfa1_0(0x100000000L);
+ return jjMoveStringLiteralDfa1_0(0x200000000000000L);
case 101:
- return jjMoveStringLiteralDfa1_0(0x200000000L);
+ return jjMoveStringLiteralDfa1_0(0x400000000000000L);
case 105:
return jjMoveStringLiteralDfa1_0(0x8000L);
case 108:
- return jjMoveStringLiteralDfa1_0(0x6000L);
+ return jjMoveStringLiteralDfa1_0(0x1a00000006000L);
+ case 109:
+ return jjMoveStringLiteralDfa1_0(0x800c000000000L);
case 110:
return jjMoveStringLiteralDfa1_0(0x8L);
case 111:
- return jjMoveStringLiteralDfa1_0(0x80000002L);
+ return jjMoveStringLiteralDfa1_0(0x100000000000002L);
+ case 115:
+ return jjMoveStringLiteralDfa1_0(0x4090000000000L);
+ case 116:
+ return jjMoveStringLiteralDfa1_0(0x100000000000L);
+ case 117:
+ return jjMoveStringLiteralDfa1_0(0x400000000000L);
case 124:
- return jjStopAtPos(0, 20);
+ jjmatchedKind = 20;
+ return jjMoveNfa_0(3, 0);
case 126:
- return jjStopAtPos(0, 29);
+ jjmatchedKind = 29;
+ return jjMoveNfa_0(3, 0);
default :
return jjMoveNfa_0(3, 0);
}
@@ -308,320 +227,785 @@ private int jjMoveStringLiteralDfa0_0()
private int jjMoveStringLiteralDfa1_0(long active0)
{
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(0, active0);
- return 1;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 0);
}
switch(curChar)
{
case 60:
if ((active0 & 0x800000L) != 0L)
- return jjStopAtPos(1, 23);
+ {
+ jjmatchedKind = 23;
+ jjmatchedPos = 1;
+ }
break;
case 61:
if ((active0 & 0x40L) != 0L)
- return jjStopAtPos(1, 6);
+ {
+ jjmatchedKind = 6;
+ jjmatchedPos = 1;
+ }
else if ((active0 & 0x80L) != 0L)
- return jjStopAtPos(1, 7);
+ {
+ jjmatchedKind = 7;
+ jjmatchedPos = 1;
+ }
else if ((active0 & 0x200L) != 0L)
- return jjStopAtPos(1, 9);
+ {
+ jjmatchedKind = 9;
+ jjmatchedPos = 1;
+ }
else if ((active0 & 0x1000L) != 0L)
- return jjStopAtPos(1, 12);
+ {
+ jjmatchedKind = 12;
+ jjmatchedPos = 1;
+ }
break;
case 62:
if ((active0 & 0x100L) != 0L)
- return jjStopAtPos(1, 8);
+ {
+ jjmatchedKind = 8;
+ jjmatchedPos = 1;
+ }
else if ((active0 & 0x1000000L) != 0L)
- return jjStopAtPos(1, 24);
+ {
+ jjmatchedKind = 24;
+ jjmatchedPos = 1;
+ }
break;
+ case 65:
+ return jjMoveStringLiteralDfa2_0(active0, 0x8000000000L);
+ case 66:
+ return jjMoveStringLiteralDfa2_0(active0, 0x2000000000000L);
+ case 69:
+ return jjMoveStringLiteralDfa2_0(active0, 0x800000000000L);
+ case 73:
+ return jjMoveStringLiteralDfa2_0(active0, 0x4000000000L);
+ case 79:
+ return jjMoveStringLiteralDfa2_0(active0, 0x9260000000000L);
+ case 80:
+ return jjMoveStringLiteralDfa2_0(active0, 0x400000000000L);
+ case 81:
+ return jjMoveStringLiteralDfa2_0(active0, 0x4000000000000L);
+ case 82:
+ return jjMoveStringLiteralDfa2_0(active0, 0x100000000000L);
+ case 85:
+ return jjMoveStringLiteralDfa2_0(active0, 0x70090000000000L);
+ case 86:
+ return jjMoveStringLiteralDfa2_0(active0, 0x2000000000L);
+ case 97:
+ return jjMoveStringLiteralDfa2_0(active0, 0x8000000000L);
case 98:
- return jjMoveStringLiteralDfa2_0(active0, 0x180000000L);
+ return jjMoveStringLiteralDfa2_0(active0, 0x302000000000000L);
case 101:
- return jjMoveStringLiteralDfa2_0(active0, 0x40000L);
+ return jjMoveStringLiteralDfa2_0(active0, 0x800000040000L);
case 105:
- return jjMoveStringLiteralDfa2_0(active0, 0x6000L);
+ return jjMoveStringLiteralDfa2_0(active0, 0x4000006000L);
case 110:
if ((active0 & 0x8000L) != 0L)
- return jjStartNfaWithStates_0(1, 15, 56);
- return jjMoveStringLiteralDfa2_0(active0, 0x200000004L);
+ {
+ jjmatchedKind = 15;
+ jjmatchedPos = 1;
+ }
+ return jjMoveStringLiteralDfa2_0(active0, 0x400000000000004L);
case 111:
- return jjMoveStringLiteralDfa2_0(active0, 0x8L);
+ return jjMoveStringLiteralDfa2_0(active0, 0x9260000000008L);
+ case 112:
+ return jjMoveStringLiteralDfa2_0(active0, 0x400000000000L);
+ case 113:
+ return jjMoveStringLiteralDfa2_0(active0, 0x4000000000000L);
case 114:
if ((active0 & 0x2L) != 0L)
- return jjStartNfaWithStates_0(1, 1, 56);
- break;
+ {
+ jjmatchedKind = 1;
+ jjmatchedPos = 1;
+ }
+ return jjMoveStringLiteralDfa2_0(active0, 0x100000000000L);
+ case 117:
+ return jjMoveStringLiteralDfa2_0(active0, 0x70090000000000L);
+ case 118:
+ return jjMoveStringLiteralDfa2_0(active0, 0x2000000000L);
default :
break;
}
- return jjStartNfa_0(0, active0);
+ return jjMoveNfa_0(3, 1);
}
private int jjMoveStringLiteralDfa2_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(0, old0);
+ return jjMoveNfa_0(3, 1);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(1, active0);
- return 2;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 1);
}
switch(curChar)
{
case 58:
- if ((active0 & 0x100000000L) != 0L)
- return jjStopAtPos(2, 32);
+ if ((active0 & 0x200000000000000L) != 0L)
+ {
+ jjmatchedKind = 57;
+ jjmatchedPos = 2;
+ }
break;
+ case 66:
+ return jjMoveStringLiteralDfa3_0(active0, 0x80000000000L);
+ case 67:
+ return jjMoveStringLiteralDfa3_0(active0, 0x1000000000000L);
+ case 68:
+ if ((active0 & 0x8000000000000L) != 0L)
+ {
+ jjmatchedKind = 51;
+ jjmatchedPos = 2;
+ }
+ break;
+ case 71:
+ if ((active0 & 0x2000000000L) != 0L)
+ {
+ jjmatchedKind = 37;
+ jjmatchedPos = 2;
+ }
+ break;
+ case 73:
+ return jjMoveStringLiteralDfa3_0(active0, 0x100000000000L);
+ case 77:
+ if ((active0 & 0x10000000000L) != 0L)
+ {
+ jjmatchedKind = 40;
+ jjmatchedPos = 2;
+ }
+ break;
+ case 78:
+ if ((active0 & 0x4000000000L) != 0L)
+ {
+ jjmatchedKind = 38;
+ jjmatchedPos = 2;
+ }
+ return jjMoveStringLiteralDfa3_0(active0, 0x840000000000L);
+ case 80:
+ return jjMoveStringLiteralDfa3_0(active0, 0x400000000000L);
+ case 82:
+ return jjMoveStringLiteralDfa3_0(active0, 0x74000000000000L);
+ case 83:
+ if ((active0 & 0x2000000000000L) != 0L)
+ {
+ jjmatchedKind = 49;
+ jjmatchedPos = 2;
+ }
+ break;
+ case 85:
+ return jjMoveStringLiteralDfa3_0(active0, 0x20000000000L);
+ case 87:
+ return jjMoveStringLiteralDfa3_0(active0, 0x200000000000L);
+ case 88:
+ if ((active0 & 0x8000000000L) != 0L)
+ {
+ jjmatchedKind = 39;
+ jjmatchedPos = 2;
+ }
+ break;
+ case 98:
+ return jjMoveStringLiteralDfa3_0(active0, 0x80000000000L);
+ case 99:
+ return jjMoveStringLiteralDfa3_0(active0, 0x1000000000000L);
case 100:
if ((active0 & 0x4L) != 0L)
- return jjStartNfaWithStates_0(2, 2, 56);
+ {
+ jjmatchedKind = 2;
+ jjmatchedPos = 2;
+ }
+ else if ((active0 & 0x8000000000000L) != 0L)
+ {
+ jjmatchedKind = 51;
+ jjmatchedPos = 2;
+ }
break;
+ case 103:
+ if ((active0 & 0x2000000000L) != 0L)
+ {
+ jjmatchedKind = 37;
+ jjmatchedPos = 2;
+ }
+ break;
+ case 105:
+ return jjMoveStringLiteralDfa3_0(active0, 0x100000000000L);
case 106:
- return jjMoveStringLiteralDfa3_0(active0, 0x80000000L);
+ return jjMoveStringLiteralDfa3_0(active0, 0x100000000000000L);
case 107:
return jjMoveStringLiteralDfa3_0(active0, 0x6000L);
+ case 109:
+ if ((active0 & 0x10000000000L) != 0L)
+ {
+ jjmatchedKind = 40;
+ jjmatchedPos = 2;
+ }
+ break;
+ case 110:
+ if ((active0 & 0x4000000000L) != 0L)
+ {
+ jjmatchedKind = 38;
+ jjmatchedPos = 2;
+ }
+ return jjMoveStringLiteralDfa3_0(active0, 0x840000000000L);
+ case 112:
+ return jjMoveStringLiteralDfa3_0(active0, 0x400000000000L);
+ case 114:
+ return jjMoveStringLiteralDfa3_0(active0, 0x74000000000000L);
+ case 115:
+ if ((active0 & 0x2000000000000L) != 0L)
+ {
+ jjmatchedKind = 49;
+ jjmatchedPos = 2;
+ }
+ break;
case 116:
if ((active0 & 0x8L) != 0L)
- return jjStartNfaWithStates_0(2, 3, 56);
+ {
+ jjmatchedKind = 3;
+ jjmatchedPos = 2;
+ }
return jjMoveStringLiteralDfa3_0(active0, 0x40000L);
case 117:
- return jjMoveStringLiteralDfa3_0(active0, 0x200000000L);
+ return jjMoveStringLiteralDfa3_0(active0, 0x400020000000000L);
+ case 119:
+ return jjMoveStringLiteralDfa3_0(active0, 0x200000000000L);
+ case 120:
+ if ((active0 & 0x8000000000L) != 0L)
+ {
+ jjmatchedKind = 39;
+ jjmatchedPos = 2;
+ }
+ break;
default :
break;
}
- return jjStartNfa_0(1, active0);
+ return jjMoveNfa_0(3, 2);
}
private int jjMoveStringLiteralDfa3_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(1, old0);
+ return jjMoveNfa_0(3, 2);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(2, active0);
- return 3;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 2);
}
switch(curChar)
{
case 58:
- if ((active0 & 0x80000000L) != 0L)
- return jjStopAtPos(3, 31);
+ if ((active0 & 0x100000000000000L) != 0L)
+ {
+ jjmatchedKind = 56;
+ jjmatchedPos = 3;
+ }
+ break;
+ case 65:
+ return jjMoveStringLiteralDfa4_0(active0, 0x1000000000000L);
+ case 67:
+ return jjMoveStringLiteralDfa4_0(active0, 0x40000000000L);
+ case 69:
+ return jjMoveStringLiteralDfa4_0(active0, 0x600000000000L);
+ case 71:
+ return jjMoveStringLiteralDfa4_0(active0, 0x800000000000L);
+ case 77:
+ if ((active0 & 0x100000000000L) != 0L)
+ {
+ jjmatchedKind = 44;
+ jjmatchedPos = 3;
+ }
+ break;
+ case 78:
+ return jjMoveStringLiteralDfa4_0(active0, 0x20000000000L);
+ case 82:
+ return jjMoveStringLiteralDfa4_0(active0, 0x70000000000000L);
+ case 83:
+ return jjMoveStringLiteralDfa4_0(active0, 0x80000000000L);
+ case 84:
+ if ((active0 & 0x4000000000000L) != 0L)
+ {
+ jjmatchedKind = 50;
+ jjmatchedPos = 3;
+ }
break;
+ case 97:
+ return jjMoveStringLiteralDfa4_0(active0, 0x1000000000000L);
+ case 99:
+ return jjMoveStringLiteralDfa4_0(active0, 0x40000000000L);
case 101:
if ((active0 & 0x2000L) != 0L)
{
jjmatchedKind = 13;
jjmatchedPos = 3;
}
- return jjMoveStringLiteralDfa4_0(active0, 0x4000L);
+ return jjMoveStringLiteralDfa4_0(active0, 0x600000004000L);
+ case 103:
+ return jjMoveStringLiteralDfa4_0(active0, 0x800000000000L);
case 109:
- return jjMoveStringLiteralDfa4_0(active0, 0x200000000L);
+ if ((active0 & 0x100000000000L) != 0L)
+ {
+ jjmatchedKind = 44;
+ jjmatchedPos = 3;
+ }
+ return jjMoveStringLiteralDfa4_0(active0, 0x400000000000000L);
+ case 110:
+ return jjMoveStringLiteralDfa4_0(active0, 0x20000000000L);
+ case 114:
+ return jjMoveStringLiteralDfa4_0(active0, 0x70000000000000L);
+ case 115:
+ return jjMoveStringLiteralDfa4_0(active0, 0x80000000000L);
+ case 116:
+ if ((active0 & 0x4000000000000L) != 0L)
+ {
+ jjmatchedKind = 50;
+ jjmatchedPos = 3;
+ }
+ break;
case 119:
return jjMoveStringLiteralDfa4_0(active0, 0x40000L);
default :
break;
}
- return jjStartNfa_0(2, active0);
+ return jjMoveNfa_0(3, 3);
}
private int jjMoveStringLiteralDfa4_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(2, old0);
+ return jjMoveNfa_0(3, 3);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(3, active0);
- return 4;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 3);
}
switch(curChar)
{
case 58:
- if ((active0 & 0x200000000L) != 0L)
- return jjStopAtPos(4, 33);
+ if ((active0 & 0x400000000000000L) != 0L)
+ {
+ jjmatchedKind = 58;
+ jjmatchedPos = 4;
+ }
break;
+ case 65:
+ return jjMoveStringLiteralDfa5_0(active0, 0x40000000000L);
+ case 69:
+ return jjMoveStringLiteralDfa5_0(active0, 0x70000000000000L);
case 73:
return jjMoveStringLiteralDfa5_0(active0, 0x4000L);
+ case 82:
+ if ((active0 & 0x200000000000L) != 0L)
+ {
+ jjmatchedKind = 45;
+ jjmatchedPos = 4;
+ }
+ else if ((active0 & 0x400000000000L) != 0L)
+ {
+ jjmatchedKind = 46;
+ jjmatchedPos = 4;
+ }
+ break;
+ case 84:
+ if ((active0 & 0x20000000000L) != 0L)
+ {
+ jjmatchedKind = 41;
+ jjmatchedPos = 4;
+ }
+ return jjMoveStringLiteralDfa5_0(active0, 0x1880000000000L);
+ case 97:
+ return jjMoveStringLiteralDfa5_0(active0, 0x40000000000L);
case 101:
- return jjMoveStringLiteralDfa5_0(active0, 0x40000L);
+ return jjMoveStringLiteralDfa5_0(active0, 0x70000000040000L);
+ case 114:
+ if ((active0 & 0x200000000000L) != 0L)
+ {
+ jjmatchedKind = 45;
+ jjmatchedPos = 4;
+ }
+ else if ((active0 & 0x400000000000L) != 0L)
+ {
+ jjmatchedKind = 46;
+ jjmatchedPos = 4;
+ }
+ break;
+ case 116:
+ if ((active0 & 0x20000000000L) != 0L)
+ {
+ jjmatchedKind = 41;
+ jjmatchedPos = 4;
+ }
+ return jjMoveStringLiteralDfa5_0(active0, 0x1880000000000L);
default :
break;
}
- return jjStartNfa_0(3, active0);
+ return jjMoveNfa_0(3, 4);
}
private int jjMoveStringLiteralDfa5_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(3, old0);
+ return jjMoveNfa_0(3, 4);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(4, active0);
- return 5;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 4);
}
switch(curChar)
{
+ case 69:
+ if ((active0 & 0x1000000000000L) != 0L)
+ {
+ jjmatchedKind = 48;
+ jjmatchedPos = 5;
+ }
+ break;
+ case 72:
+ if ((active0 & 0x800000000000L) != 0L)
+ {
+ jjmatchedKind = 47;
+ jjmatchedPos = 5;
+ }
+ break;
+ case 78:
+ return jjMoveStringLiteralDfa6_0(active0, 0x70000000000000L);
+ case 82:
+ return jjMoveStringLiteralDfa6_0(active0, 0x80000000000L);
+ case 84:
+ if ((active0 & 0x40000000000L) != 0L)
+ {
+ jjmatchedKind = 42;
+ jjmatchedPos = 5;
+ }
+ break;
case 101:
+ if ((active0 & 0x1000000000000L) != 0L)
+ {
+ jjmatchedKind = 48;
+ jjmatchedPos = 5;
+ }
return jjMoveStringLiteralDfa6_0(active0, 0x40000L);
case 103:
return jjMoveStringLiteralDfa6_0(active0, 0x4000L);
+ case 104:
+ if ((active0 & 0x800000000000L) != 0L)
+ {
+ jjmatchedKind = 47;
+ jjmatchedPos = 5;
+ }
+ break;
+ case 110:
+ return jjMoveStringLiteralDfa6_0(active0, 0x70000000000000L);
+ case 114:
+ return jjMoveStringLiteralDfa6_0(active0, 0x80000000000L);
+ case 116:
+ if ((active0 & 0x40000000000L) != 0L)
+ {
+ jjmatchedKind = 42;
+ jjmatchedPos = 5;
+ }
+ break;
default :
break;
}
- return jjStartNfa_0(4, active0);
+ return jjMoveNfa_0(3, 5);
}
private int jjMoveStringLiteralDfa6_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(4, old0);
+ return jjMoveNfa_0(3, 5);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(5, active0);
- return 6;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 5);
}
switch(curChar)
{
+ case 73:
+ return jjMoveStringLiteralDfa7_0(active0, 0x80000000000L);
+ case 84:
+ return jjMoveStringLiteralDfa7_0(active0, 0x70000000000000L);
+ case 105:
+ return jjMoveStringLiteralDfa7_0(active0, 0x80000000000L);
case 110:
if ((active0 & 0x40000L) != 0L)
- return jjStartNfaWithStates_0(6, 18, 56);
+ {
+ jjmatchedKind = 18;
+ jjmatchedPos = 6;
+ }
return jjMoveStringLiteralDfa7_0(active0, 0x4000L);
+ case 116:
+ return jjMoveStringLiteralDfa7_0(active0, 0x70000000000000L);
default :
break;
}
- return jjStartNfa_0(5, active0);
+ return jjMoveNfa_0(3, 6);
}
private int jjMoveStringLiteralDfa7_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(5, old0);
+ return jjMoveNfa_0(3, 6);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(6, active0);
- return 7;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 6);
}
switch(curChar)
{
+ case 78:
+ return jjMoveStringLiteralDfa8_0(active0, 0x80000000000L);
+ case 95:
+ return jjMoveStringLiteralDfa8_0(active0, 0x70000000000000L);
+ case 110:
+ return jjMoveStringLiteralDfa8_0(active0, 0x80000000000L);
case 111:
return jjMoveStringLiteralDfa8_0(active0, 0x4000L);
default :
break;
}
- return jjStartNfa_0(6, active0);
+ return jjMoveNfa_0(3, 7);
}
private int jjMoveStringLiteralDfa8_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(6, old0);
+ return jjMoveNfa_0(3, 7);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(7, active0);
- return 8;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 7);
}
switch(curChar)
{
+ case 68:
+ return jjMoveStringLiteralDfa9_0(active0, 0x10000000000000L);
+ case 71:
+ if ((active0 & 0x80000000000L) != 0L)
+ {
+ jjmatchedKind = 43;
+ jjmatchedPos = 8;
+ }
+ break;
+ case 84:
+ return jjMoveStringLiteralDfa9_0(active0, 0x60000000000000L);
+ case 100:
+ return jjMoveStringLiteralDfa9_0(active0, 0x10000000000000L);
+ case 103:
+ if ((active0 & 0x80000000000L) != 0L)
+ {
+ jjmatchedKind = 43;
+ jjmatchedPos = 8;
+ }
+ break;
case 114:
return jjMoveStringLiteralDfa9_0(active0, 0x4000L);
+ case 116:
+ return jjMoveStringLiteralDfa9_0(active0, 0x60000000000000L);
default :
break;
}
- return jjStartNfa_0(7, active0);
+ return jjMoveNfa_0(3, 8);
}
private int jjMoveStringLiteralDfa9_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(7, old0);
+ return jjMoveNfa_0(3, 8);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(8, active0);
- return 9;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 8);
}
switch(curChar)
{
+ case 65:
+ return jjMoveStringLiteralDfa10_0(active0, 0x10000000000000L);
+ case 73:
+ return jjMoveStringLiteralDfa10_0(active0, 0x60000000000000L);
+ case 97:
+ return jjMoveStringLiteralDfa10_0(active0, 0x10000000000000L);
case 101:
return jjMoveStringLiteralDfa10_0(active0, 0x4000L);
+ case 105:
+ return jjMoveStringLiteralDfa10_0(active0, 0x60000000000000L);
default :
break;
}
- return jjStartNfa_0(8, active0);
+ return jjMoveNfa_0(3, 9);
}
private int jjMoveStringLiteralDfa10_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(8, old0);
+ return jjMoveNfa_0(3, 9);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(9, active0);
- return 10;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 9);
}
switch(curChar)
{
case 67:
return jjMoveStringLiteralDfa11_0(active0, 0x4000L);
+ case 77:
+ return jjMoveStringLiteralDfa11_0(active0, 0x60000000000000L);
+ case 84:
+ return jjMoveStringLiteralDfa11_0(active0, 0x10000000000000L);
+ case 109:
+ return jjMoveStringLiteralDfa11_0(active0, 0x60000000000000L);
+ case 116:
+ return jjMoveStringLiteralDfa11_0(active0, 0x10000000000000L);
default :
break;
}
- return jjStartNfa_0(9, active0);
+ return jjMoveNfa_0(3, 10);
}
private int jjMoveStringLiteralDfa11_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(9, old0);
+ return jjMoveNfa_0(3, 10);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(10, active0);
- return 11;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 10);
}
switch(curChar)
{
+ case 69:
+ if ((active0 & 0x10000000000000L) != 0L)
+ {
+ jjmatchedKind = 52;
+ jjmatchedPos = 11;
+ }
+ else if ((active0 & 0x20000000000000L) != 0L)
+ {
+ jjmatchedKind = 53;
+ jjmatchedPos = 11;
+ }
+ return jjMoveStringLiteralDfa12_0(active0, 0x40000000000000L);
case 97:
return jjMoveStringLiteralDfa12_0(active0, 0x4000L);
+ case 101:
+ if ((active0 & 0x10000000000000L) != 0L)
+ {
+ jjmatchedKind = 52;
+ jjmatchedPos = 11;
+ }
+ else if ((active0 & 0x20000000000000L) != 0L)
+ {
+ jjmatchedKind = 53;
+ jjmatchedPos = 11;
+ }
+ return jjMoveStringLiteralDfa12_0(active0, 0x40000000000000L);
default :
break;
}
- return jjStartNfa_0(10, active0);
+ return jjMoveNfa_0(3, 11);
}
private int jjMoveStringLiteralDfa12_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(10, old0);
+ return jjMoveNfa_0(3, 11);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(11, active0);
- return 12;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 11);
}
switch(curChar)
{
+ case 83:
+ return jjMoveStringLiteralDfa13_0(active0, 0x40000000000000L);
case 115:
- return jjMoveStringLiteralDfa13_0(active0, 0x4000L);
+ return jjMoveStringLiteralDfa13_0(active0, 0x40000000004000L);
default :
break;
}
- return jjStartNfa_0(11, active0);
+ return jjMoveNfa_0(3, 12);
}
private int jjMoveStringLiteralDfa13_0(long old0, long active0)
{
if (((active0 &= old0)) == 0L)
- return jjStartNfa_0(11, old0);
+ return jjMoveNfa_0(3, 12);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) {
- jjStopStringLiteralDfa_0(12, active0);
- return 13;
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 12);
}
switch(curChar)
{
+ case 84:
+ return jjMoveStringLiteralDfa14_0(active0, 0x40000000000000L);
case 101:
if ((active0 & 0x4000L) != 0L)
- return jjStartNfaWithStates_0(13, 14, 56);
+ {
+ jjmatchedKind = 14;
+ jjmatchedPos = 13;
+ }
break;
+ case 116:
+ return jjMoveStringLiteralDfa14_0(active0, 0x40000000000000L);
default :
break;
}
- return jjStartNfa_0(12, active0);
+ return jjMoveNfa_0(3, 13);
}
-private int jjStartNfaWithStates_0(int pos, int kind, int state)
+private int jjMoveStringLiteralDfa14_0(long old0, long active0)
{
- jjmatchedKind = kind;
- jjmatchedPos = pos;
+ if (((active0 &= old0)) == 0L)
+ return jjMoveNfa_0(3, 13);
+ try { curChar = input_stream.readChar(); }
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 13);
+ }
+ switch(curChar)
+ {
+ case 65:
+ return jjMoveStringLiteralDfa15_0(active0, 0x40000000000000L);
+ case 97:
+ return jjMoveStringLiteralDfa15_0(active0, 0x40000000000000L);
+ default :
+ break;
+ }
+ return jjMoveNfa_0(3, 14);
+}
+private int jjMoveStringLiteralDfa15_0(long old0, long active0)
+{
+ if (((active0 &= old0)) == 0L)
+ return jjMoveNfa_0(3, 14);
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) { return pos + 1; }
- return jjMoveNfa_0(state, pos + 1);
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 14);
+ }
+ switch(curChar)
+ {
+ case 77:
+ return jjMoveStringLiteralDfa16_0(active0, 0x40000000000000L);
+ case 109:
+ return jjMoveStringLiteralDfa16_0(active0, 0x40000000000000L);
+ default :
+ break;
+ }
+ return jjMoveNfa_0(3, 15);
+}
+private int jjMoveStringLiteralDfa16_0(long old0, long active0)
+{
+ if (((active0 &= old0)) == 0L)
+ return jjMoveNfa_0(3, 15);
+ try { curChar = input_stream.readChar(); }
+ catch(IOException e) {
+ return jjMoveNfa_0(3, 15);
+ }
+ switch(curChar)
+ {
+ case 80:
+ if ((active0 & 0x40000000000000L) != 0L)
+ {
+ jjmatchedKind = 54;
+ jjmatchedPos = 16;
+ }
+ break;
+ case 112:
+ if ((active0 & 0x40000000000000L) != 0L)
+ {
+ jjmatchedKind = 54;
+ jjmatchedPos = 16;
+ }
+ break;
+ default :
+ break;
+ }
+ return jjMoveNfa_0(3, 16);
}
private int jjMoveNfa_0(int startState, int curPos)
{
+ int strKind = jjmatchedKind;
+ int strPos = jjmatchedPos;
+ int seenUpto;
+ input_stream.backup(seenUpto = curPos + 1);
+ try { curChar = input_stream.readChar(); }
+ catch(IOException e) { throw new Error("Internal Error"); }
+ curPos = 0;
int startsAt = 0;
jjnewStateCnt = 56;
int i = 1;
@@ -638,90 +1022,36 @@ private int jjMoveNfa_0(int startState, int curPos)
{
switch(jjstateSet[--i])
{
- case 56:
- if ((0x3ff000000000000L & l) != 0L)
- {
- if (kind > 42)
- kind = 42;
- jjCheckNAddTwoStates(54, 55);
- }
- else if (curChar == 43)
- {
- if (kind > 42)
- kind = 42;
- }
- else if (curChar == 46)
- jjstateSet[jjnewStateCnt++] = 52;
- if ((0x3ff000000000000L & l) != 0L)
- {
- if (kind > 41)
- kind = 41;
- jjCheckNAddStates(0, 2);
- }
- else if (curChar == 43)
- {
- if (kind > 41)
- kind = 41;
- jjCheckNAdd(51);
- }
- break;
case 3:
if ((0x3ff000000000000L & l) != 0L)
- jjCheckNAddStates(3, 8);
+ jjCheckNAddStates(0, 5);
else if (curChar == 46)
jjCheckNAdd(30);
if ((0x3fe000000000000L & l) != 0L)
{
- if (kind > 53)
- kind = 53;
+ if (kind > 71)
+ kind = 71;
jjCheckNAddTwoStates(27, 28);
}
else if (curChar == 48)
{
- if (kind > 53)
- kind = 53;
- jjCheckNAddStates(9, 11);
- }
- break;
- case 2:
- if ((0x3ff000000000000L & l) != 0L)
- {
- if (kind > 42)
- kind = 42;
- jjCheckNAddTwoStates(54, 55);
- }
- else if (curChar == 43)
- {
- if (kind > 42)
- kind = 42;
- }
- else if (curChar == 46)
- jjstateSet[jjnewStateCnt++] = 52;
- if ((0x3ff000000000000L & l) != 0L)
- {
- if (kind > 41)
- kind = 41;
- jjCheckNAddStates(0, 2);
- }
- else if (curChar == 43)
- {
- if (kind > 41)
- kind = 41;
- jjCheckNAdd(51);
+ if (kind > 71)
+ kind = 71;
+ jjCheckNAddStates(6, 8);
}
break;
case 26:
if ((0x3fe000000000000L & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 71)
+ kind = 71;
jjCheckNAddTwoStates(27, 28);
break;
case 27:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 71)
+ kind = 71;
jjCheckNAddTwoStates(27, 28);
break;
case 29:
@@ -731,9 +1061,9 @@ private int jjMoveNfa_0(int startState, int curPos)
case 30:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 54)
- kind = 54;
- jjCheckNAddStates(12, 14);
+ if (kind > 72)
+ kind = 72;
+ jjCheckNAddStates(9, 11);
break;
case 32:
if ((0x280000000000L & l) != 0L)
@@ -742,13 +1072,13 @@ private int jjMoveNfa_0(int startState, int curPos)
case 33:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 54)
- kind = 54;
+ if (kind > 72)
+ kind = 72;
jjCheckNAddTwoStates(33, 34);
break;
case 35:
if ((0x3ff000000000000L & l) != 0L)
- jjCheckNAddStates(3, 8);
+ jjCheckNAddStates(0, 5);
break;
case 36:
if ((0x3ff000000000000L & l) != 0L)
@@ -757,16 +1087,16 @@ private int jjMoveNfa_0(int startState, int curPos)
case 37:
if (curChar != 46)
break;
- if (kind > 54)
- kind = 54;
- jjCheckNAddStates(15, 17);
+ if (kind > 72)
+ kind = 72;
+ jjCheckNAddStates(12, 14);
break;
case 38:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 54)
- kind = 54;
- jjCheckNAddStates(15, 17);
+ if (kind > 72)
+ kind = 72;
+ jjCheckNAddStates(12, 14);
break;
case 39:
if ((0x3ff000000000000L & l) != 0L)
@@ -779,8 +1109,8 @@ private int jjMoveNfa_0(int startState, int curPos)
case 42:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 54)
- kind = 54;
+ if (kind > 72)
+ kind = 72;
jjCheckNAddTwoStates(42, 34);
break;
case 43:
@@ -790,36 +1120,36 @@ private int jjMoveNfa_0(int startState, int curPos)
case 44:
if (curChar != 48)
break;
- if (kind > 53)
- kind = 53;
- jjCheckNAddStates(9, 11);
+ if (kind > 71)
+ kind = 71;
+ jjCheckNAddStates(6, 8);
break;
case 45:
if ((0xff000000000000L & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 71)
+ kind = 71;
jjCheckNAddTwoStates(45, 28);
break;
case 47:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 71)
+ kind = 71;
jjCheckNAddTwoStates(47, 28);
break;
case 49:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 41)
- kind = 41;
- jjCheckNAddStates(0, 2);
+ if (kind > 59)
+ kind = 59;
+ jjCheckNAddStates(15, 17);
break;
case 50:
if (curChar != 43)
break;
- if (kind > 41)
- kind = 41;
+ if (kind > 59)
+ kind = 59;
jjCheckNAdd(51);
break;
case 51:
@@ -829,20 +1159,20 @@ private int jjMoveNfa_0(int startState, int curPos)
case 53:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 41)
- kind = 41;
+ if (kind > 59)
+ kind = 59;
jjCheckNAddStates(18, 20);
break;
case 54:
if ((0x3ff000000000000L & l) == 0L)
break;
- if (kind > 42)
- kind = 42;
- jjCheckNAddTwoStates(54, 55);
+ if (kind > 60)
+ kind = 60;
+ jjAddStates(21, 22);
break;
case 55:
- if (curChar == 43 && kind > 42)
- kind = 42;
+ if (curChar == 43 && kind > 60)
+ kind = 60;
break;
default : break;
}
@@ -855,26 +1185,12 @@ private int jjMoveNfa_0(int startState, int curPos)
{
switch(jjstateSet[--i])
{
- case 56:
- if ((0x7fffffe87fffffeL & l) != 0L)
- {
- if (kind > 42)
- kind = 42;
- jjCheckNAddTwoStates(54, 55);
- }
- if ((0x7fffffe87fffffeL & l) != 0L)
- {
- if (kind > 41)
- kind = 41;
- jjCheckNAddStates(0, 2);
- }
- break;
case 3:
if ((0x7fffffe87fffffeL & l) != 0L)
{
- if (kind > 41)
- kind = 41;
- jjCheckNAddStates(21, 25);
+ if (kind > 59)
+ kind = 59;
+ jjCheckNAddStates(23, 27);
}
if (curChar == 70)
jjstateSet[jjnewStateCnt++] = 24;
@@ -889,33 +1205,21 @@ private int jjMoveNfa_0(int startState, int curPos)
else if (curChar == 110)
jjstateSet[jjnewStateCnt++] = 2;
break;
- case 2:
- if ((0x7fffffe87fffffeL & l) != 0L)
- {
- if (kind > 42)
- kind = 42;
- jjCheckNAddTwoStates(54, 55);
- }
- if ((0x7fffffe87fffffeL & l) != 0L)
- {
- if (kind > 41)
- kind = 41;
- jjCheckNAddStates(0, 2);
- }
- if (curChar == 117)
- jjstateSet[jjnewStateCnt++] = 1;
- break;
case 0:
- if (curChar == 108 && kind > 38)
- kind = 38;
+ if (curChar == 108 && kind > 34)
+ kind = 34;
break;
case 1:
if (curChar == 108)
jjstateSet[jjnewStateCnt++] = 0;
break;
+ case 2:
+ if (curChar == 117)
+ jjstateSet[jjnewStateCnt++] = 1;
+ break;
case 4:
- if (curChar == 76 && kind > 38)
- kind = 38;
+ if (curChar == 76 && kind > 34)
+ kind = 34;
break;
case 5:
if (curChar == 76)
@@ -930,8 +1234,8 @@ private int jjMoveNfa_0(int startState, int curPos)
jjstateSet[jjnewStateCnt++] = 6;
break;
case 8:
- if (curChar == 101 && kind > 39)
- kind = 39;
+ if (curChar == 101 && kind > 35)
+ kind = 35;
break;
case 9:
if (curChar == 117)
@@ -946,8 +1250,8 @@ private int jjMoveNfa_0(int startState, int curPos)
jjstateSet[jjnewStateCnt++] = 10;
break;
case 12:
- if (curChar == 69 && kind > 39)
- kind = 39;
+ if (curChar == 69 && kind > 35)
+ kind = 35;
break;
case 13:
if (curChar == 85)
@@ -962,8 +1266,8 @@ private int jjMoveNfa_0(int startState, int curPos)
jjstateSet[jjnewStateCnt++] = 14;
break;
case 16:
- if (curChar == 101 && kind > 40)
- kind = 40;
+ if (curChar == 101 && kind > 36)
+ kind = 36;
break;
case 17:
if (curChar == 115)
@@ -982,8 +1286,8 @@ private int jjMoveNfa_0(int startState, int curPos)
jjstateSet[jjnewStateCnt++] = 19;
break;
case 21:
- if (curChar == 69 && kind > 40)
- kind = 40;
+ if (curChar == 69 && kind > 36)
+ kind = 36;
break;
case 22:
if (curChar == 83)
@@ -1002,20 +1306,20 @@ private int jjMoveNfa_0(int startState, int curPos)
jjstateSet[jjnewStateCnt++] = 24;
break;
case 28:
- if ((0x110000001100L & l) != 0L && kind > 53)
- kind = 53;
+ if ((0x110000001100L & l) != 0L && kind > 71)
+ kind = 71;
break;
case 31:
if ((0x2000000020L & l) != 0L)
- jjAddStates(26, 27);
+ jjAddStates(28, 29);
break;
case 34:
- if ((0x5400000054L & l) != 0L && kind > 54)
- kind = 54;
+ if ((0x5400000054L & l) != 0L && kind > 72)
+ kind = 72;
break;
case 40:
if ((0x2000000020L & l) != 0L)
- jjAddStates(28, 29);
+ jjAddStates(30, 31);
break;
case 46:
if ((0x100000001000000L & l) != 0L)
@@ -1024,37 +1328,37 @@ private int jjMoveNfa_0(int startState, int curPos)
case 47:
if ((0x7e0000007eL & l) == 0L)
break;
- if (kind > 53)
- kind = 53;
+ if (kind > 71)
+ kind = 71;
jjCheckNAddTwoStates(47, 28);
break;
case 48:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
- if (kind > 41)
- kind = 41;
- jjCheckNAddStates(21, 25);
+ if (kind > 59)
+ kind = 59;
+ jjCheckNAddStates(23, 27);
break;
case 49:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
- if (kind > 41)
- kind = 41;
- jjCheckNAddStates(0, 2);
+ if (kind > 59)
+ kind = 59;
+ jjCheckNAddStates(15, 17);
break;
case 52:
case 53:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
- if (kind > 41)
- kind = 41;
+ if (kind > 59)
+ kind = 59;
jjCheckNAddStates(18, 20);
break;
case 54:
if ((0x7fffffe87fffffeL & l) == 0L)
break;
- if (kind > 42)
- kind = 42;
+ if (kind > 60)
+ kind = 60;
jjCheckNAddTwoStates(54, 55);
break;
default : break;
@@ -1084,12 +1388,31 @@ private int jjMoveNfa_0(int startState, int curPos)
}
++curPos;
if ((i = jjnewStateCnt) == (startsAt = 56 - (jjnewStateCnt = startsAt)))
- return curPos;
+ break;
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) { return curPos; }
+ catch(IOException e) { break; }
}
+ if (jjmatchedPos > strPos)
+ return curPos;
+
+ int toRet = Math.max(curPos, seenUpto);
+
+ if (curPos < toRet)
+ for (i = toRet - Math.min(curPos, seenUpto); i-- > 0; )
+ try { curChar = input_stream.readChar(); }
+ catch(IOException e) { throw new Error("Internal Error : Please send a bug report."); }
+
+ if (jjmatchedPos < strPos)
+ {
+ jjmatchedKind = strKind;
+ jjmatchedPos = strPos;
+ }
+ else if (jjmatchedPos == strPos && jjmatchedKind > strKind)
+ jjmatchedKind = strKind;
+
+ return toRet;
}
-private final int jjStopStringLiteralDfa_1(int pos, long active0)
+private final int jjStopStringLiteralDfa_1(int pos, long active0, long active1)
{
switch (pos)
{
@@ -1097,16 +1420,16 @@ private final int jjStopStringLiteralDfa_1(int pos, long active0)
return -1;
}
}
-private final int jjStartNfa_1(int pos, long active0)
+private final int jjStartNfa_1(int pos, long active0, long active1)
{
- return jjMoveNfa_1(jjStopStringLiteralDfa_1(pos, active0), pos + 1);
+ return jjMoveNfa_1(jjStopStringLiteralDfa_1(pos, active0, active1), pos + 1);
}
private int jjMoveStringLiteralDfa0_1()
{
switch(curChar)
{
case 39:
- return jjStopAtPos(0, 49);
+ return jjStopAtPos(0, 67);
default :
return jjMoveNfa_1(0, 0);
}
@@ -1136,12 +1459,12 @@ private int jjMoveNfa_1(int startState, int curPos)
switch(jjstateSet[--i])
{
case 0:
- if ((0xffffff7fffffffffL & l) != 0L && kind > 48)
- kind = 48;
+ if ((0xffffff7fffffffffL & l) != 0L && kind > 66)
+ kind = 66;
break;
case 1:
- if ((0x8400000000L & l) != 0L && kind > 47)
- kind = 47;
+ if ((0x8400000000L & l) != 0L && kind > 65)
+ kind = 65;
break;
case 2:
if ((0xf000000000000L & l) != 0L)
@@ -1150,13 +1473,13 @@ private int jjMoveNfa_1(int startState, int curPos)
case 3:
if ((0xff000000000000L & l) == 0L)
break;
- if (kind > 47)
- kind = 47;
+ if (kind > 65)
+ kind = 65;
jjstateSet[jjnewStateCnt++] = 4;
break;
case 4:
- if ((0xff000000000000L & l) != 0L && kind > 47)
- kind = 47;
+ if ((0xff000000000000L & l) != 0L && kind > 65)
+ kind = 65;
break;
default : break;
}
@@ -1172,19 +1495,19 @@ private int jjMoveNfa_1(int startState, int curPos)
case 0:
if ((0xffffffffefffffffL & l) != 0L)
{
- if (kind > 48)
- kind = 48;
+ if (kind > 66)
+ kind = 66;
}
else if (curChar == 92)
- jjAddStates(30, 32);
+ jjAddStates(32, 34);
break;
case 1:
- if ((0x14404510000000L & l) != 0L && kind > 47)
- kind = 47;
+ if ((0x14404510000000L & l) != 0L && kind > 65)
+ kind = 65;
break;
case 5:
- if ((0xffffffffefffffffL & l) != 0L && kind > 48)
- kind = 48;
+ if ((0xffffffffefffffffL & l) != 0L && kind > 66)
+ kind = 66;
break;
default : break;
}
@@ -1202,8 +1525,8 @@ private int jjMoveNfa_1(int startState, int curPos)
switch(jjstateSet[--i])
{
case 0:
- if (jjCanMove_0(hiByte, i1, i2, l1, l2) && kind > 48)
- kind = 48;
+ if (jjCanMove_0(hiByte, i1, i2, l1, l2) && kind > 66)
+ kind = 66;
break;
default : break;
}
@@ -1219,10 +1542,10 @@ private int jjMoveNfa_1(int startState, int curPos)
if ((i = jjnewStateCnt) == (startsAt = 6 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) { return curPos; }
+ catch(IOException e) { return curPos; }
}
}
-private final int jjStopStringLiteralDfa_2(int pos, long active0)
+private final int jjStopStringLiteralDfa_2(int pos, long active0, long active1)
{
switch (pos)
{
@@ -1230,16 +1553,16 @@ private final int jjStopStringLiteralDfa_2(int pos, long active0)
return -1;
}
}
-private final int jjStartNfa_2(int pos, long active0)
+private final int jjStartNfa_2(int pos, long active0, long active1)
{
- return jjMoveNfa_2(jjStopStringLiteralDfa_2(pos, active0), pos + 1);
+ return jjMoveNfa_2(jjStopStringLiteralDfa_2(pos, active0, active1), pos + 1);
}
private int jjMoveStringLiteralDfa0_2()
{
switch(curChar)
{
case 34:
- return jjStopAtPos(0, 52);
+ return jjStopAtPos(0, 70);
default :
return jjMoveNfa_2(0, 0);
}
@@ -1263,12 +1586,12 @@ private int jjMoveNfa_2(int startState, int curPos)
switch(jjstateSet[--i])
{
case 0:
- if ((0xfffffffbffffffffL & l) != 0L && kind > 51)
- kind = 51;
+ if ((0xfffffffbffffffffL & l) != 0L && kind > 69)
+ kind = 69;
break;
case 1:
- if ((0x8400000000L & l) != 0L && kind > 50)
- kind = 50;
+ if ((0x8400000000L & l) != 0L && kind > 68)
+ kind = 68;
break;
case 2:
if ((0xf000000000000L & l) != 0L)
@@ -1277,13 +1600,13 @@ private int jjMoveNfa_2(int startState, int curPos)
case 3:
if ((0xff000000000000L & l) == 0L)
break;
- if (kind > 50)
- kind = 50;
+ if (kind > 68)
+ kind = 68;
jjstateSet[jjnewStateCnt++] = 4;
break;
case 4:
- if ((0xff000000000000L & l) != 0L && kind > 50)
- kind = 50;
+ if ((0xff000000000000L & l) != 0L && kind > 68)
+ kind = 68;
break;
default : break;
}
@@ -1299,19 +1622,19 @@ private int jjMoveNfa_2(int startState, int curPos)
case 0:
if ((0xffffffffefffffffL & l) != 0L)
{
- if (kind > 51)
- kind = 51;
+ if (kind > 69)
+ kind = 69;
}
else if (curChar == 92)
- jjAddStates(30, 32);
+ jjAddStates(32, 34);
break;
case 1:
- if ((0x14404510000000L & l) != 0L && kind > 50)
- kind = 50;
+ if ((0x14404510000000L & l) != 0L && kind > 68)
+ kind = 68;
break;
case 5:
- if ((0xffffffffefffffffL & l) != 0L && kind > 51)
- kind = 51;
+ if ((0xffffffffefffffffL & l) != 0L && kind > 69)
+ kind = 69;
break;
default : break;
}
@@ -1329,8 +1652,8 @@ private int jjMoveNfa_2(int startState, int curPos)
switch(jjstateSet[--i])
{
case 0:
- if (jjCanMove_0(hiByte, i1, i2, l1, l2) && kind > 51)
- kind = 51;
+ if (jjCanMove_0(hiByte, i1, i2, l1, l2) && kind > 69)
+ kind = 69;
break;
default : break;
}
@@ -1346,13 +1669,13 @@ private int jjMoveNfa_2(int startState, int curPos)
if ((i = jjnewStateCnt) == (startsAt = 6 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
- catch(java.io.IOException e) { return curPos; }
+ catch(IOException e) { return curPos; }
}
}
static final int[] jjnextStates = {
- 49, 50, 51, 36, 37, 39, 40, 43, 34, 45, 46, 28, 30, 31, 34, 38,
- 31, 34, 51, 53, 50, 49, 50, 51, 54, 55, 32, 33, 41, 42, 1, 2,
- 3,
+ 36, 37, 39, 40, 43, 34, 45, 46, 28, 30, 31, 34, 38, 31, 34, 49,
+ 50, 51, 51, 53, 50, 54, 55, 49, 50, 51, 54, 55, 32, 33, 41, 42,
+ 1, 2, 3,
};
private static final boolean jjCanMove_0(int hiByte, int i1, int i2, long l1, long l2)
{
@@ -1372,10 +1695,11 @@ public static final String[] jjstrLiteralImages = {
"", "\157\162", "\141\156\144", "\156\157\164", "\41", "\75", "\75\75",
"\41\75", "\74\76", "\74\75", "\74", "\76", "\76\75", "\154\151\153\145",
"\154\151\153\145\111\147\156\157\162\145\103\141\163\145", "\151\156", "\50", "\51", "\142\145\164\167\145\145\156", "\54", "\174",
-"\136", "\46", "\74\74", "\76\76", "\53", "\55", "\52", "\57", "\176", "\44",
-"\157\142\152\72", "\144\142\72", "\145\156\165\155\72", null, null, null, null, null, null, null,
+"\136", "\46", "\74\74", "\76\76", "\53", "\55", "\52", "\57", "\176", null, null,
null, null, null, null, null, null, null, null, null, null, null, null, null, null,
-null, null, null, null, };
+null, null, null, null, null, null, null, null, null, "\44", "\157\142\152\72",
+"\144\142\72", "\145\156\165\155\72", null, null, null, null, null, null, null, null, null,
+null, null, null, null, null, null, null, null, null, };
/** Lexer state names. */
public static final String[] lexStateNames = {
@@ -1387,17 +1711,18 @@ public static final String[] lexStateNames = {
/** 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, -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, 2, -1, -1, 0,
- -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, 2, -1, -1, 0, -1, -1, 0, -1, -1, -1, -1,
+ -1, -1,
};
static final long[] jjtoToken = {
- 0x7207c3ffffffffL,
+ 0x1ffffffc3fffffffL, 0x1c8L,
};
static final long[] jjtoSkip = {
- 0x3c00000000L,
+ 0x3c0000000L, 0x0L,
};
static final long[] jjtoMore = {
- 0xde00000000000L,
+ 0x8000000000000000L, 0x37L,
};
protected JavaCharStream input_stream;
private final int[] jjrounds = new int[56];
@@ -1496,7 +1821,7 @@ public Token getNextToken()
{
curChar = input_stream.BeginToken();
}
- catch(java.io.IOException e)
+ catch(IOException e)
{
jjmatchedKind = 0;
matchedToken = jjFillToken();
@@ -1511,11 +1836,6 @@ public Token getNextToken()
switch(curLexState)
{
case 0:
- try { input_stream.backup(0);
- while (curChar <= 32 && (0x100002600L & (1L << curChar)) != 0L)
- curChar = input_stream.BeginToken();
- }
- catch (java.io.IOException e1) { continue EOFLoop; }
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_0();
@@ -1558,14 +1878,14 @@ public Token getNextToken()
curChar = input_stream.readChar();
continue;
}
- catch (java.io.IOException e1) { }
+ catch (IOException e1) { }
}
int error_line = input_stream.getEndLine();
int error_column = input_stream.getEndColumn();
String error_after = null;
boolean EOFSeen = false;
try { input_stream.readChar(); input_stream.backup(1); }
- catch (java.io.IOException e1) {
+ catch (IOException e1) {
EOFSeen = true;
error_after = curPos <= 1 ? "" : input_stream.GetImage();
if (curChar == '\n' || curChar == '\r') {
@@ -1589,32 +1909,32 @@ void MoreLexicalActions()
jjimageLen += (lengthOfMatch = jjmatchedPos + 1);
switch(jjmatchedKind)
{
- case 45 :
+ case 63 :
image.append(input_stream.GetSuffix(jjimageLen));
jjimageLen = 0;
stringBuffer = new StringBuffer();
break;
- case 46 :
+ case 64 :
image.append(input_stream.GetSuffix(jjimageLen));
jjimageLen = 0;
stringBuffer = new StringBuffer();
break;
- case 47 :
+ case 65 :
image.append(input_stream.GetSuffix(jjimageLen));
jjimageLen = 0;
stringBuffer.append( escapeChar() );
break;
- case 48 :
+ case 66 :
image.append(input_stream.GetSuffix(jjimageLen));
jjimageLen = 0;
stringBuffer.append( image.charAt(image.length()-1) );
break;
- case 50 :
+ case 68 :
image.append(input_stream.GetSuffix(jjimageLen));
jjimageLen = 0;
stringBuffer.append( escapeChar() );
break;
- case 51 :
+ case 69 :
image.append(input_stream.GetSuffix(jjimageLen));
jjimageLen = 0;
stringBuffer.append( image.charAt(image.length()-1) );
@@ -1627,19 +1947,19 @@ void TokenLexicalActions(Token matchedToken)
{
switch(jjmatchedKind)
{
- case 49 :
+ case 67 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
literalValue = stringBuffer.toString();
break;
- case 52 :
+ case 70 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
literalValue = stringBuffer.toString();
break;
- case 53 :
+ case 71 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
literalValue = makeInt();
break;
- case 54 :
+ case 72 :
image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1)));
literalValue = makeFloat();
break;
http://git-wip-us.apache.org/repos/asf/cayenne/blob/c44ccfde/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ExpressionParserTreeConstants.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ExpressionParserTreeConstants.java b/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ExpressionParserTreeConstants.java
index 2a4aefa..62fa5a3 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ExpressionParserTreeConstants.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/ExpressionParserTreeConstants.java
@@ -1,4 +1,23 @@
/* Generated By:JavaCC: Do not edit this line. ExpressionParserTreeConstants.java Version 5.0 */
+/*****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ ****************************************************************/
+
package org.apache.cayenne.exp.parser;
public interface ExpressionParserTreeConstants
@@ -36,9 +55,19 @@ public interface ExpressionParserTreeConstants
public int JJTDIVIDE = 30;
public int JJTBITWISENOT = 31;
public int JJTNEGATE = 32;
- public int JJTNAMEDPARAMETER = 33;
- public int JJTOBJPATH = 34;
- public int JJTDBPATH = 35;
+ public int JJTCONCAT = 33;
+ public int JJTSUBSTRING = 34;
+ public int JJTTRIM = 35;
+ public int JJTLOWER = 36;
+ public int JJTUPPER = 37;
+ public int JJTLENGTH = 38;
+ public int JJTLOCATE = 39;
+ public int JJTABS = 40;
+ public int JJTSQRT = 41;
+ public int JJTMOD = 42;
+ public int JJTNAMEDPARAMETER = 43;
+ public int JJTOBJPATH = 44;
+ public int JJTDBPATH = 45;
public String[] jjtNodeName = {
@@ -75,9 +104,19 @@ public interface ExpressionParserTreeConstants
"Divide",
"BitwiseNot",
"Negate",
+ "Concat",
+ "Substring",
+ "Trim",
+ "Lower",
+ "Upper",
+ "Length",
+ "Locate",
+ "Abs",
+ "Sqrt",
+ "Mod",
"NamedParameter",
"ObjPath",
"DbPath",
};
}
-/* JavaCC - OriginalChecksum=c9c4fb7fe11d6ed9456e027ce61531d5 (do not edit this line) */
+/* JavaCC - OriginalChecksum=3658f423e33338225cd28f666e76c706 (do not edit this line) */
http://git-wip-us.apache.org/repos/asf/cayenne/blob/c44ccfde/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/JJTExpressionParserState.java
----------------------------------------------------------------------
diff --git a/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/JJTExpressionParserState.java b/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/JJTExpressionParserState.java
index 349ac96..aab8be9 100644
--- a/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/JJTExpressionParserState.java
+++ b/cayenne-server/src/main/java/org/apache/cayenne/exp/parser/JJTExpressionParserState.java
@@ -1,4 +1,23 @@
/* Generated By:JavaCC: Do not edit this line. JJTExpressionParserState.java Version 5.0 */
+/*****************************************************************
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ ****************************************************************/
+
package org.apache.cayenne.exp.parser;
public class JJTExpressionParserState {