14ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira/* Generated By:JavaCC: Do not edit this line. ContentTypeParserTokenManager.java */ 24ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira/* 34ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * Copyright 2004 the mime4j project 44ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * 54ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * Licensed under the Apache License, Version 2.0 (the "License"); 64ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * you may not use this file except in compliance with the License. 74ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * You may obtain a copy of the License at 84ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * 94ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * http://www.apache.org/licenses/LICENSE-2.0 104ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * 114ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * Unless required by applicable law or agreed to in writing, software 124ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * distributed under the License is distributed on an "AS IS" BASIS, 134ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 144ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * See the License for the specific language governing permissions and 154ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira * limitations under the License. 164ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira */ 174ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapackage org.apache.james.mime4j.field.contenttype.parser; 184ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraimport java.util.ArrayList; 194ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 204ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic class ContentTypeParserTokenManager implements ContentTypeParserConstants 214ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 224ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira // Keeps track of how many levels of comment nesting 234ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira // we've encountered. This is only used when the 2nd 244ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira // level is reached, for example ((this)), not (this). 254ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira // This is because the outermost level must be treated 264ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira // specially anyway, because the outermost ")" has a 274ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira // different token type than inner ")" instances. 284ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira static int commentNest; 294ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira public java.io.PrintStream debugStream = System.out; 304ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira public void setDebugStream(java.io.PrintStream ds) { debugStream = ds; } 314ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStopStringLiteralDfa_0(int pos, long active0) 324ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 334ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch (pos) 344ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 354ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : 364ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return -1; 374ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 384ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 394ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStartNfa_0(int pos, long active0) 404ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 414ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0), pos + 1); 424ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 434ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStopAtPos(int pos, int kind) 444ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 454ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = kind; 464ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = pos; 474ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return pos + 1; 484ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 494ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStartNfaWithStates_0(int pos, int kind, int state) 504ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 514ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = kind; 524ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = pos; 534ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira try { curChar = input_stream.readChar(); } 544ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira catch(java.io.IOException e) { return pos + 1; } 554ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_0(state, pos + 1); 564ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 574ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjMoveStringLiteralDfa0_0() 584ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 594ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(curChar) 604ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 614ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 10: 624ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStartNfaWithStates_0(0, 2, 2); 634ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 13: 644ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStartNfaWithStates_0(0, 1, 2); 654ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 34: 664ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStopAtPos(0, 16); 674ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 40: 684ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStopAtPos(0, 7); 694ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 47: 704ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStopAtPos(0, 3); 714ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 59: 724ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStopAtPos(0, 4); 734ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 61: 744ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStopAtPos(0, 5); 754ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : 764ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_0(3, 0); 774ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 784ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 794ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final void jjCheckNAdd(int state) 804ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 814ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (jjrounds[state] != jjround) 824ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 834ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjstateSet[jjnewStateCnt++] = state; 844ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjrounds[state] = jjround; 854ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 864ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 874ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final void jjAddStates(int start, int end) 884ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 894ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira do { 904ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjstateSet[jjnewStateCnt++] = jjnextStates[start]; 914ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while (start++ != end); 924ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 934ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final void jjCheckNAddTwoStates(int state1, int state2) 944ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 954ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(state1); 964ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(state2); 974ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 984ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final void jjCheckNAddStates(int start, int end) 994ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 1004ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira do { 1014ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(jjnextStates[start]); 1024ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while (start++ != end); 1034ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 1044ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final void jjCheckNAddStates(int start) 1054ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 1064ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(jjnextStates[start]); 1074ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(jjnextStates[start + 1]); 1084ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 1094ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirastatic final long[] jjbitVec0 = { 1104ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 0x0L, 0x0L, 0xffffffffffffffffL, 0xffffffffffffffffL 1114ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira}; 1124ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjMoveNfa_0(int startState, int curPos) 1134ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 1144ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int[] nextStates; 1154ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int startsAt = 0; 1164ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjnewStateCnt = 3; 1174ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int i = 1; 1184ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjstateSet[0] = startState; 1194ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int j, kind = 0x7fffffff; 1204ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira for (;;) 1214ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1224ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (++jjround == 0x7fffffff) 1234ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira ReInitRounds(); 1244ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (curChar < 64) 1254ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1264ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l = 1L << curChar; 1274ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 1284ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1294ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 1304ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1314ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 3: 1324ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((0x3ff6cfafffffdffL & l) != 0L) 1334ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1344ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 21) 1354ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 21; 1364ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(2); 1374ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 1384ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else if ((0x100000200L & l) != 0L) 1394ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1404ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 6) 1414ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 6; 1424ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(0); 1434ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 1444ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((0x3ff000000000000L & l) != 0L) 1454ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1464ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 20) 1474ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 20; 1484ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(1); 1494ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 1504ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 1514ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 0: 1524ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((0x100000200L & l) == 0L) 1534ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 1544ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 6; 1554ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(0); 1564ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 1574ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 1: 1584ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((0x3ff000000000000L & l) == 0L) 1594ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 1604ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 20) 1614ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 20; 1624ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(1); 1634ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 1644ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 2: 1654ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((0x3ff6cfafffffdffL & l) == 0L) 1664ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 1674ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 21) 1684ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 21; 1694ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(2); 1704ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 1714ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 1724ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 1734ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 1744ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 1754ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else if (curChar < 128) 1764ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1774ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l = 1L << (curChar & 077); 1784ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 1794ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1804ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 1814ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1824ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 3: 1834ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 2: 1844ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((0xffffffffc7fffffeL & l) == 0L) 1854ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 1864ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 21; 1874ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(2); 1884ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 1894ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 1904ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 1914ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 1924ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 1934ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else 1944ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1954ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int i2 = (curChar & 0xff) >> 6; 1964ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l2 = 1L << (curChar & 077); 1974ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 1984ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 1994ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 2004ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 2014ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 3: 2024ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 2: 2034ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((jjbitVec0[i2] & l2) == 0L) 2044ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 2054ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 21) 2064ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 21; 2074ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(2); 2084ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 2094ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 2104ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 2114ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 2124ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 2134ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind != 0x7fffffff) 2144ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 2154ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = kind; 2164ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = curPos; 2174ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 0x7fffffff; 2184ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 2194ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira ++curPos; 2204ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((i = jjnewStateCnt) == (startsAt = 3 - (jjnewStateCnt = startsAt))) 2214ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return curPos; 2224ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira try { curChar = input_stream.readChar(); } 2234ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira catch(java.io.IOException e) { return curPos; } 2244ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 2254ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 2264ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStopStringLiteralDfa_1(int pos, long active0) 2274ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 2284ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch (pos) 2294ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 2304ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : 2314ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return -1; 2324ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 2334ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 2344ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStartNfa_1(int pos, long active0) 2354ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 2364ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_1(jjStopStringLiteralDfa_1(pos, active0), pos + 1); 2374ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 2384ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStartNfaWithStates_1(int pos, int kind, int state) 2394ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 2404ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = kind; 2414ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = pos; 2424ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira try { curChar = input_stream.readChar(); } 2434ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira catch(java.io.IOException e) { return pos + 1; } 2444ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_1(state, pos + 1); 2454ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 2464ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjMoveStringLiteralDfa0_1() 2474ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 2484ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(curChar) 2494ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 2504ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 40: 2514ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStopAtPos(0, 10); 2524ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 41: 2534ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStopAtPos(0, 8); 2544ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : 2554ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_1(0, 0); 2564ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 2574ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 2584ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjMoveNfa_1(int startState, int curPos) 2594ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 2604ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int[] nextStates; 2614ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int startsAt = 0; 2624ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjnewStateCnt = 3; 2634ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int i = 1; 2644ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjstateSet[0] = startState; 2654ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int j, kind = 0x7fffffff; 2664ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira for (;;) 2674ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 2684ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (++jjround == 0x7fffffff) 2694ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira ReInitRounds(); 2704ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (curChar < 64) 2714ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 2724ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l = 1L << curChar; 2734ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 2744ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 2754ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 2764ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 2774ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 0: 2784ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 11) 2794ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 11; 2804ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 2814ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 1: 2824ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 9) 2834ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 9; 2844ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 2854ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 2864ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 2874ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 2884ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 2894ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else if (curChar < 128) 2904ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 2914ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l = 1L << (curChar & 077); 2924ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 2934ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 2944ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 2954ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 2964ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 0: 2974ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 11) 2984ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 11; 2994ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (curChar == 92) 3004ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjstateSet[jjnewStateCnt++] = 1; 3014ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 3024ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 1: 3034ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 9) 3044ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 9; 3054ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 3064ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 2: 3074ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 11) 3084ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 11; 3094ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 3104ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 3114ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 3124ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 3134ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 3144ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else 3154ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 3164ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int i2 = (curChar & 0xff) >> 6; 3174ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l2 = 1L << (curChar & 077); 3184ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 3194ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 3204ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 3214ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 3224ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 0: 3234ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((jjbitVec0[i2] & l2) != 0L && kind > 11) 3244ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 11; 3254ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 3264ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 1: 3274ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((jjbitVec0[i2] & l2) != 0L && kind > 9) 3284ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 9; 3294ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 3304ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 3314ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 3324ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 3334ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 3344ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind != 0x7fffffff) 3354ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 3364ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = kind; 3374ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = curPos; 3384ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 0x7fffffff; 3394ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 3404ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira ++curPos; 3414ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((i = jjnewStateCnt) == (startsAt = 3 - (jjnewStateCnt = startsAt))) 3424ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return curPos; 3434ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira try { curChar = input_stream.readChar(); } 3444ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira catch(java.io.IOException e) { return curPos; } 3454ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 3464ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 3474ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStopStringLiteralDfa_3(int pos, long active0) 3484ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 3494ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch (pos) 3504ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 3514ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : 3524ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return -1; 3534ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 3544ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 3554ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStartNfa_3(int pos, long active0) 3564ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 3574ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_3(jjStopStringLiteralDfa_3(pos, active0), pos + 1); 3584ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 3594ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStartNfaWithStates_3(int pos, int kind, int state) 3604ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 3614ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = kind; 3624ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = pos; 3634ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira try { curChar = input_stream.readChar(); } 3644ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira catch(java.io.IOException e) { return pos + 1; } 3654ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_3(state, pos + 1); 3664ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 3674ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjMoveStringLiteralDfa0_3() 3684ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 3694ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(curChar) 3704ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 3714ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 34: 3724ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStopAtPos(0, 19); 3734ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : 3744ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_3(0, 0); 3754ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 3764ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 3774ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjMoveNfa_3(int startState, int curPos) 3784ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 3794ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int[] nextStates; 3804ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int startsAt = 0; 3814ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjnewStateCnt = 3; 3824ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int i = 1; 3834ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjstateSet[0] = startState; 3844ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int j, kind = 0x7fffffff; 3854ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira for (;;) 3864ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 3874ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (++jjround == 0x7fffffff) 3884ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira ReInitRounds(); 3894ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (curChar < 64) 3904ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 3914ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l = 1L << curChar; 3924ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 3934ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 3944ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 3954ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 3964ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 0: 3974ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 2: 3984ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((0xfffffffbffffffffL & l) == 0L) 3994ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 4004ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 18) 4014ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 18; 4024ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(2); 4034ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 4044ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 1: 4054ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 17) 4064ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 17; 4074ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 4084ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 4094ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 4104ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 4114ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 4124ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else if (curChar < 128) 4134ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 4144ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l = 1L << (curChar & 077); 4154ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 4164ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 4174ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 4184ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 4194ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 0: 4204ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((0xffffffffefffffffL & l) != 0L) 4214ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 4224ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 18) 4234ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 18; 4244ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(2); 4254ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 4264ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else if (curChar == 92) 4274ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjstateSet[jjnewStateCnt++] = 1; 4284ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 4294ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 1: 4304ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 17) 4314ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 17; 4324ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 4334ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 2: 4344ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((0xffffffffefffffffL & l) == 0L) 4354ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 4364ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 18) 4374ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 18; 4384ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(2); 4394ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 4404ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 4414ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 4424ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 4434ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 4444ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else 4454ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 4464ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int i2 = (curChar & 0xff) >> 6; 4474ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l2 = 1L << (curChar & 077); 4484ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 4494ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 4504ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 4514ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 4524ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 0: 4534ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 2: 4544ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((jjbitVec0[i2] & l2) == 0L) 4554ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 4564ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 18) 4574ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 18; 4584ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjCheckNAdd(2); 4594ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 4604ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 1: 4614ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((jjbitVec0[i2] & l2) != 0L && kind > 17) 4624ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 17; 4634ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 4644ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 4654ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 4664ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 4674ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 4684ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind != 0x7fffffff) 4694ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 4704ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = kind; 4714ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = curPos; 4724ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 0x7fffffff; 4734ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 4744ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira ++curPos; 4754ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((i = jjnewStateCnt) == (startsAt = 3 - (jjnewStateCnt = startsAt))) 4764ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return curPos; 4774ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira try { curChar = input_stream.readChar(); } 4784ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira catch(java.io.IOException e) { return curPos; } 4794ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 4804ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 4814ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStopStringLiteralDfa_2(int pos, long active0) 4824ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 4834ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch (pos) 4844ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 4854ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : 4864ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return -1; 4874ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 4884ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 4894ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStartNfa_2(int pos, long active0) 4904ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 4914ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_2(jjStopStringLiteralDfa_2(pos, active0), pos + 1); 4924ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 4934ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjStartNfaWithStates_2(int pos, int kind, int state) 4944ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 4954ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = kind; 4964ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = pos; 4974ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira try { curChar = input_stream.readChar(); } 4984ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira catch(java.io.IOException e) { return pos + 1; } 4994ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_2(state, pos + 1); 5004ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 5014ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjMoveStringLiteralDfa0_2() 5024ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 5034ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(curChar) 5044ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5054ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 40: 5064ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStopAtPos(0, 13); 5074ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 41: 5084ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjStopAtPos(0, 14); 5094ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : 5104ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return jjMoveNfa_2(0, 0); 5114ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 5124ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 5134ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int jjMoveNfa_2(int startState, int curPos) 5144ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 5154ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int[] nextStates; 5164ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int startsAt = 0; 5174ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjnewStateCnt = 3; 5184ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int i = 1; 5194ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjstateSet[0] = startState; 5204ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int j, kind = 0x7fffffff; 5214ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira for (;;) 5224ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5234ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (++jjround == 0x7fffffff) 5244ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira ReInitRounds(); 5254ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (curChar < 64) 5264ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5274ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l = 1L << curChar; 5284ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 5294ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5304ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 5314ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5324ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 0: 5334ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 15) 5344ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 15; 5354ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 5364ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 1: 5374ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 12) 5384ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 12; 5394ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 5404ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 5414ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 5424ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 5434ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 5444ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else if (curChar < 128) 5454ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5464ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l = 1L << (curChar & 077); 5474ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 5484ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5494ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 5504ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5514ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 0: 5524ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 15) 5534ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 15; 5544ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (curChar == 92) 5554ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjstateSet[jjnewStateCnt++] = 1; 5564ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 5574ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 1: 5584ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 12) 5594ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 12; 5604ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 5614ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 2: 5624ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind > 15) 5634ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 15; 5644ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 5654ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 5664ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 5674ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 5684ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 5694ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else 5704ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5714ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int i2 = (curChar & 0xff) >> 6; 5724ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira long l2 = 1L << (curChar & 077); 5734ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MatchLoop: do 5744ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5754ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjstateSet[--i]) 5764ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5774ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 0: 5784ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((jjbitVec0[i2] & l2) != 0L && kind > 15) 5794ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 15; 5804ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 5814ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 1: 5824ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((jjbitVec0[i2] & l2) != 0L && kind > 12) 5834ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 12; 5844ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 5854ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : break; 5864ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 5874ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } while(i != startsAt); 5884ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 5894ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (kind != 0x7fffffff) 5904ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 5914ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = kind; 5924ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = curPos; 5934ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira kind = 0x7fffffff; 5944ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 5954ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira ++curPos; 5964ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((i = jjnewStateCnt) == (startsAt = 3 - (jjnewStateCnt = startsAt))) 5974ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return curPos; 5984ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira try { curChar = input_stream.readChar(); } 5994ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira catch(java.io.IOException e) { return curPos; } 6004ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 6014ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 6024ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirastatic final int[] jjnextStates = { 6034ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira}; 6044ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic static final String[] jjstrLiteralImages = { 6054ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira"", "\15", "\12", "\57", "\73", "\75", null, null, null, null, null, null, 6064ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiranull, null, null, null, null, null, null, null, null, null, null, null, }; 6074ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic static final String[] lexStateNames = { 6084ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira "DEFAULT", 6094ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira "INCOMMENT", 6104ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira "NESTED_COMMENT", 6114ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira "INQUOTEDSTRING", 6124ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira}; 6134ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic static final int[] jjnewLexState = { 6144ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira -1, -1, -1, -1, -1, -1, -1, 1, 0, -1, 2, -1, -1, -1, -1, -1, 3, -1, -1, 0, -1, -1, -1, -1, 6154ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira}; 6164ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirastatic final long[] jjtoToken = { 6174ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 0x38003fL, 6184ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira}; 6194ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirastatic final long[] jjtoSkip = { 6204ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 0x140L, 6214ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira}; 6224ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirastatic final long[] jjtoSpecial = { 6234ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 0x40L, 6244ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira}; 6254ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirastatic final long[] jjtoMore = { 6264ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 0x7fe80L, 6274ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira}; 6284ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprotected SimpleCharStream input_stream; 6294ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int[] jjrounds = new int[3]; 6304ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final int[] jjstateSet = new int[6]; 6314ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy PereiraStringBuffer image; 6324ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraint jjimageLen; 6334ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraint lengthOfMatch; 6344ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprotected char curChar; 6354ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic ContentTypeParserTokenManager(SimpleCharStream stream){ 6364ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (SimpleCharStream.staticFlag) 6374ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira throw new Error("ERROR: Cannot use a static CharStream class with a non-static lexical analyzer."); 6384ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira input_stream = stream; 6394ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 6404ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic ContentTypeParserTokenManager(SimpleCharStream stream, int lexState){ 6414ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira this(stream); 6424ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira SwitchTo(lexState); 6434ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 6444ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic void ReInit(SimpleCharStream stream) 6454ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 6464ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = jjnewStateCnt = 0; 6474ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curLexState = defaultLexState; 6484ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira input_stream = stream; 6494ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira ReInitRounds(); 6504ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 6514ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprivate final void ReInitRounds() 6524ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 6534ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int i; 6544ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjround = 0x80000001; 6554ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira for (i = 3; i-- > 0;) 6564ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjrounds[i] = 0x80000000; 6574ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 6584ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic void ReInit(SimpleCharStream stream, int lexState) 6594ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 6604ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira ReInit(stream); 6614ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira SwitchTo(lexState); 6624ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 6634ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic void SwitchTo(int lexState) 6644ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 6654ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (lexState >= 4 || lexState < 0) 6664ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE); 6674ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else 6684ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curLexState = lexState; 6694ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 6704ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 6714ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraprotected Token jjFillToken() 6724ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 6734ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira Token t = Token.newToken(jjmatchedKind); 6744ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira t.kind = jjmatchedKind; 6754ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira String im = jjstrLiteralImages[jjmatchedKind]; 6764ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira t.image = (im == null) ? input_stream.GetImage() : im; 6774ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira t.beginLine = input_stream.getBeginLine(); 6784ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira t.beginColumn = input_stream.getBeginColumn(); 6794ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira t.endLine = input_stream.getEndLine(); 6804ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira t.endColumn = input_stream.getEndColumn(); 6814ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return t; 6824ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 6834ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 6844ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraint curLexState = 0; 6854ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraint defaultLexState = 0; 6864ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraint jjnewStateCnt; 6874ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraint jjround; 6884ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraint jjmatchedPos; 6894ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiraint jjmatchedKind; 6904ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 6914ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereirapublic Token getNextToken() 6924ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 6934ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int kind; 6944ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira Token specialToken = null; 6954ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira Token matchedToken; 6964ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int curPos = 0; 6974ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 6984ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira EOFLoop : 6994ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira for (;;) 7004ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 7014ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira try 7024ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 7034ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curChar = input_stream.BeginToken(); 7044ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 7054ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira catch(java.io.IOException e) 7064ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 7074ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = 0; 7084ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira matchedToken = jjFillToken(); 7094ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira matchedToken.specialToken = specialToken; 7104ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return matchedToken; 7114ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 7124ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image = null; 7134ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjimageLen = 0; 7144ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 7154ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira for (;;) 7164ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 7174ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(curLexState) 7184ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 7194ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 0: 7204ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = 0x7fffffff; 7214ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = 0; 7224ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curPos = jjMoveStringLiteralDfa0_0(); 7234ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 7244ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 1: 7254ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = 0x7fffffff; 7264ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = 0; 7274ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curPos = jjMoveStringLiteralDfa0_1(); 7284ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 7294ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 2: 7304ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = 0x7fffffff; 7314ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = 0; 7324ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curPos = jjMoveStringLiteralDfa0_2(); 7334ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 7344ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 3: 7354ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = 0x7fffffff; 7364ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedPos = 0; 7374ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curPos = jjMoveStringLiteralDfa0_3(); 7384ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 7394ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 7404ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (jjmatchedKind != 0x7fffffff) 7414ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 7424ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (jjmatchedPos + 1 < curPos) 7434ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira input_stream.backup(curPos - jjmatchedPos - 1); 7444ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) 7454ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 7464ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira matchedToken = jjFillToken(); 7474ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira matchedToken.specialToken = specialToken; 7484ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira TokenLexicalActions(matchedToken); 7494ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (jjnewLexState[jjmatchedKind] != -1) 7504ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curLexState = jjnewLexState[jjmatchedKind]; 7514ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira return matchedToken; 7524ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 7534ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else if ((jjtoSkip[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) 7544ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 7554ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if ((jjtoSpecial[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L) 7564ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 7574ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira matchedToken = jjFillToken(); 7584ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (specialToken == null) 7594ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira specialToken = matchedToken; 7604ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else 7614ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 7624ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira matchedToken.specialToken = specialToken; 7634ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira specialToken = (specialToken.next = matchedToken); 7644ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 7654ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 7664ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (jjnewLexState[jjmatchedKind] != -1) 7674ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curLexState = jjnewLexState[jjmatchedKind]; 7684ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira continue EOFLoop; 7694ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 7704ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira MoreLexicalActions(); 7714ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (jjnewLexState[jjmatchedKind] != -1) 7724ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curLexState = jjnewLexState[jjmatchedKind]; 7734ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curPos = 0; 7744ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjmatchedKind = 0x7fffffff; 7754ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira try { 7764ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira curChar = input_stream.readChar(); 7774ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira continue; 7784ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 7794ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira catch (java.io.IOException e1) { } 7804ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 7814ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int error_line = input_stream.getEndLine(); 7824ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira int error_column = input_stream.getEndColumn(); 7834ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira String error_after = null; 7844ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira boolean EOFSeen = false; 7854ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira try { input_stream.readChar(); input_stream.backup(1); } 7864ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira catch (java.io.IOException e1) { 7874ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira EOFSeen = true; 7884ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira error_after = curPos <= 1 ? "" : input_stream.GetImage(); 7894ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (curChar == '\n' || curChar == '\r') { 7904ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira error_line++; 7914ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira error_column = 0; 7924ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 7934ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira else 7944ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira error_column++; 7954ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 7964ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (!EOFSeen) { 7974ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira input_stream.backup(1); 7984ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira error_after = curPos <= 1 ? "" : input_stream.GetImage(); 7994ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 8004ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar, TokenMgrError.LEXICAL_ERROR); 8014ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 8024ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 8034ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 8044ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira 8054ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiravoid MoreLexicalActions() 8064ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 8074ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjimageLen += (lengthOfMatch = jjmatchedPos + 1); 8084ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjmatchedKind) 8094ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 8104ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 9 : 8114ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (image == null) 8124ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image = new StringBuffer(); 8134ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.append(input_stream.GetSuffix(jjimageLen)); 8144ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjimageLen = 0; 8154ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.deleteCharAt(image.length() - 2); 8164ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 8174ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 10 : 8184ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (image == null) 8194ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image = new StringBuffer(); 8204ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.append(input_stream.GetSuffix(jjimageLen)); 8214ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjimageLen = 0; 8224ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira commentNest = 1; 8234ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 8244ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 12 : 8254ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (image == null) 8264ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image = new StringBuffer(); 8274ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.append(input_stream.GetSuffix(jjimageLen)); 8284ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjimageLen = 0; 8294ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.deleteCharAt(image.length() - 2); 8304ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 8314ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 13 : 8324ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (image == null) 8334ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image = new StringBuffer(); 8344ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.append(input_stream.GetSuffix(jjimageLen)); 8354ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjimageLen = 0; 8364ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira ++commentNest; 8374ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 8384ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 14 : 8394ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (image == null) 8404ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image = new StringBuffer(); 8414ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.append(input_stream.GetSuffix(jjimageLen)); 8424ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjimageLen = 0; 8434ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira --commentNest; if (commentNest == 0) SwitchTo(INCOMMENT); 8444ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 8454ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 16 : 8464ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (image == null) 8474ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image = new StringBuffer(); 8484ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.append(input_stream.GetSuffix(jjimageLen)); 8494ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjimageLen = 0; 8504ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.deleteCharAt(image.length() - 1); 8514ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 8524ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 17 : 8534ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (image == null) 8544ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image = new StringBuffer(); 8554ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.append(input_stream.GetSuffix(jjimageLen)); 8564ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira jjimageLen = 0; 8574ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.deleteCharAt(image.length() - 2); 8584ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 8594ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : 8604ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 8614ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 8624ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 8634ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereiravoid TokenLexicalActions(Token matchedToken) 8644ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira{ 8654ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira switch(jjmatchedKind) 8664ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira { 8674ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira case 19 : 8684ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira if (image == null) 8694ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image = new StringBuffer(); 8704ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira image.append(input_stream.GetSuffix(jjimageLen + (lengthOfMatch = jjmatchedPos + 1))); 8714ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira matchedToken.image = image.substring(0, image.length() - 1); 8724ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 8734ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira default : 8744ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira break; 8754ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira } 8764ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 8774ebb916ddca5f59d4f854f104fca0de6e0dda706Mindy Pereira} 878