/* Generated By:JavaCC: Do not edit this line. NomParserTokenManager.java */
/*
* Copyright (C) 2003-2007 University of Manchester
*
* This library is free software; you can redistribute it and/or
* modify it under the terms of the GNU Lesser General Public
* License as published by the Free Software Foundation; either
* version 2.1 of the License, or (at your option) any later version.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
* Lesser General Public License for more details.
*
* You should have received a copy of the GNU Lesser General Public
* License along with this library; if not, write to the Free Software
* Foundation, 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
* (or see http://www.gnu.org/copyleft/lesser.html)
*/
package org.openscience.cdk.iupac.parser;
import java.io.StringReader;
import org.openscience.cdk.Molecule;
import org.openscience.cdk.exception.*;
import java.util.*;
public class NomParserTokenManager implements NomParserConstants
{
public java.io.PrintStream debugStream = System.out;
public void setDebugStream(java.io.PrintStream ds) { debugStream = ds; }
private final int jjStopStringLiteralDfa_0(int pos, long active0, long active1, long active2)
{
switch (pos)
{
case 0:
if ((active0 & 0x1000000000L) != 0L || (active1 & 0x20010400000L) != 0L)
return 8;
if ((active0 & 0x100010000080L) != 0L || (active1 & 0x4200000000000000L) != 0L || (active2 & 0x800L) != 0L)
return 5;
return -1;
case 1:
if ((active2 & 0x800L) != 0L)
return 4;
return -1;
default :
return -1;
}
}
private final int jjStartNfa_0(int pos, long active0, long active1, long active2)
{
return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0, active1, active2), pos + 1);
}
private final int jjStopAtPos(int pos, int kind)
{
jjmatchedKind = kind;
jjmatchedPos = pos;
return pos + 1;
}
private final int jjStartNfaWithStates_0(int pos, int kind, int state)
{
jjmatchedKind = kind;
jjmatchedPos = pos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return pos + 1; }
return jjMoveNfa_0(state, pos + 1);
}
private final int jjMoveStringLiteralDfa0_0()
{
switch(curChar)
{
case 44:
return jjStopAtPos(0, 5);
case 45:
return jjStopAtPos(0, 4);
case 97:
jjmatchedKind = 25;
return jjMoveStringLiteralDfa1_0(0xe030008000000L, 0xc08000000020L, 0x80L);
case 98:
return jjMoveStringLiteralDfa1_0(0x1000000800000200L, 0x1000000200001L, 0x200L);
case 99:
return jjMoveStringLiteralDfa1_0(0x4400000301800000L, 0x10002204004000L, 0x500L);
case 100:
return jjMoveStringLiteralDfa1_0(0x80404000L, 0x1000000000002000L, 0x0L);
case 101:
jjmatchedKind = 44;
return jjMoveStringLiteralDfa1_0(0x10000080L, 0x4200000000000000L, 0x800L);
case 102:
return jjMoveStringLiteralDfa1_0(0x800000400000000L, 0x0L, 0x1000L);
case 103:
return jjMoveStringLiteralDfa1_0(0x0L, 0x400090800000000L, 0x0L);
case 104:
return jjMoveStringLiteralDfa1_0(0x800000c3000L, 0x2000000002000100L, 0x0L);
case 105:
return jjMoveStringLiteralDfa1_0(0x1000000000L, 0x20010400000L, 0x0L);
case 108:
return jjMoveStringLiteralDfa1_0(0x40040000000000L, 0x200000000010L, 0x8002L);
case 109:
return jjMoveStringLiteralDfa1_0(0x2000000000000040L, 0x4020048000L, 0x2000L);
case 110:
return jjMoveStringLiteralDfa1_0(0x1002000200000L, 0x40000040000800L, 0x4020L);
case 111:
return jjMoveStringLiteralDfa1_0(0x30e04000100000L, 0x1000000L, 0x0L);
case 112:
return jjMoveStringLiteralDfa1_0(0x100008000020100L, 0xa8000180000000L, 0x48L);
case 114:
return jjMoveStringLiteralDfa1_0(0x200000000000000L, 0x8900202L, 0x0L);
case 115:
return jjMoveStringLiteralDfa1_0(0x8080000000000000L, 0x102000400020004L, 0x0L);
case 116:
return jjMoveStringLiteralDfa1_0(0x18000L, 0x8804140000091040L, 0x4L);
case 117:
return jjMoveStringLiteralDfa1_0(0x400L, 0x0L, 0x10L);
case 118:
return jjMoveStringLiteralDfa1_0(0x0L, 0x400L, 0x0L);
case 121:
return jjMoveStringLiteralDfa1_0(0x60000000L, 0x8L, 0x1L);
case 122:
return jjMoveStringLiteralDfa1_0(0x0L, 0x1000000080L, 0x0L);
default :
return jjMoveNfa_0(0, 0);
}
}
private final int jjMoveStringLiteralDfa1_0(long active0, long active1, long active2)
{
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(0, active0, active1, active2);
return 1;
}
switch(curChar)
{
case 97:
return jjMoveStringLiteralDfa2_0(active0, 0x6020000000000000L, active1, 0x500012082041513L, active2, 0x8400L);
case 99:
return jjMoveStringLiteralDfa2_0(active0, 0x100000L, active1, 0x24L, active2, 0L);
case 101:
return jjMoveStringLiteralDfa2_0(active0, 0x14000000004f3040L, active1, 0x8562840200a0000L, active2, 0x3220L);
case 104:
return jjMoveStringLiteralDfa2_0(active0, 0x8200000000L, active1, 0x8000040008104000L, active2, 0x4L);
case 105:
if ((active0 & 0x80000000L) != 0L)
return jjStopAtPos(1, 31);
return jjMoveStringLiteralDfa2_0(active0, 0x41442000000000L, active1, 0x11014400008c0L, active2, 0x800L);
case 108:
if ((active0 & 0x40000000L) != 0L)
return jjStopAtPos(1, 30);
else if ((active0 & 0x200000000000L) != 0L)
return jjStopAtPos(1, 45);
else if ((active0 & 0x2000000000000L) != 0L)
{
jjmatchedKind = 49;
jjmatchedPos = 1;
}
return jjMoveStringLiteralDfa2_0(active0, 0x20400000000L, active1, 0x8100000000L, active2, 0x40L);
case 109:
return jjMoveStringLiteralDfa2_0(active0, 0xc010000000000L, active1, 0L, active2, 0x80L);
case 110:
if ((active0 & 0x8000000L) != 0L)
{
jjmatchedKind = 27;
jjmatchedPos = 1;
}
else if ((active0 & 0x10000000L) != 0L)
return jjStopAtPos(1, 28);
else if ((active0 & 0x20000000L) != 0L)
return jjStopAtPos(1, 29);
return jjMoveStringLiteralDfa2_0(active0, 0x10000000000400L, active1, 0x820000000000L, active2, 0L);
case 111:
if ((active0 & 0x4000L) != 0L)
return jjStopAtPos(1, 14);
return jjMoveStringLiteralDfa2_0(active0, 0x180001001a00000L, active1, 0x2008000a04208000L, active2, 0x4000L);
case 114:
return jjMoveStringLiteralDfa2_0(active0, 0x800000800008100L, active1, 0x40a0400010400000L, active2, 0x18L);
case 115:
return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x1000000L, active2, 0L);
case 116:
return jjMoveStringLiteralDfa2_0(active0, 0x8000000000000080L, active1, 0x8L, active2, 0x1L);
case 117:
return jjMoveStringLiteralDfa2_0(active0, 0x200000000000200L, active1, 0x200000000812200L, active2, 0x102L);
case 120:
return jjMoveStringLiteralDfa2_0(active0, 0x4000000000L, active1, 0L, active2, 0L);
case 121:
return jjMoveStringLiteralDfa2_0(active0, 0x880100000000L, active1, 0x1000000000000000L, active2, 0L);
default :
break;
}
return jjStartNfa_0(0, active0, active1, active2);
}
private final int jjMoveStringLiteralDfa2_0(long old0, long active0, long old1, long active1, long old2, long active2)
{
if (((active0 &= old0) | (active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_0(0, old0, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(1, active0, active1, active2);
return 2;
}
switch(curChar)
{
case 97:
return jjMoveStringLiteralDfa3_0(active0, 0x800000000000000L, active1, 0x20240100020004L, active2, 0x10L);
case 98:
return jjMoveStringLiteralDfa3_0(active0, 0x200000000000000L, active1, 0x4000000004002000L, active2, 0x4000L);
case 99:
if ((active0 & 0x400000L) != 0L)
return jjStopAtPos(2, 22);
return jjMoveStringLiteralDfa3_0(active0, 0x400100000000L, active1, 0x40080000L, active2, 0L);
case 100:
return jjMoveStringLiteralDfa3_0(active0, 0x80081000000400L, active1, 0x400022000000002L, active2, 0L);
case 101:
if ((active0 & 0x10000000000000L) != 0L)
return jjStopAtPos(2, 52);
return jjMoveStringLiteralDfa3_0(active0, 0x8000000000L, active1, 0x100000L, active2, 0x80L);
case 102:
return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0x100L, active2, 0L);
case 103:
return jjMoveStringLiteralDfa3_0(active0, 0x2000000000000000L, active1, 0L, active2, 0L);
case 104:
if ((active0 & 0x80L) != 0L)
return jjStopAtPos(2, 7);
return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0x200000L, active2, 0L);
case 105:
if ((active0 & 0x8000L) != 0L)
return jjStopAtPos(2, 15);
return jjMoveStringLiteralDfa3_0(active0, 0xc010000000000L, active1, 0x30000000L, active2, 0L);
case 108:
return jjMoveStringLiteralDfa3_0(active0, 0x4000800200000000L, active1, 0x200e010c80008000L, active2, 0x400L);
case 109:
return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0x1000000L, active2, 0L);
case 110:
if ((active0 & 0x2000L) != 0L)
{
jjmatchedKind = 13;
jjmatchedPos = 2;
}
else if ((active0 & 0x200000L) != 0L)
return jjStopAtPos(2, 21);
else if ((active1 & 0x100000000000L) != 0L)
return jjStopAtPos(2, 108);
return jjMoveStringLiteralDfa3_0(active0, 0x1021000L, active1, 0x100001000051410L, active2, 0x2800L);
case 111:
if ((active0 & 0x4000000000L) != 0L)
return jjStopAtPos(2, 38);
return jjMoveStringLiteralDfa3_0(active0, 0x800000100L, active1, 0xc0000008400800L, active2, 0xcL);
case 112:
return jjMoveStringLiteralDfa3_0(active0, 0x80000L, active1, 0x200000000L, active2, 0x20L);
case 114:
return jjMoveStringLiteralDfa3_0(active0, 0x9000000000000000L, active1, 0xa10084000004081L, active2, 0x1300L);
case 115:
if ((active0 & 0x800000L) != 0L)
return jjStopAtPos(2, 23);
return jjMoveStringLiteralDfa3_0(active0, 0x400000000000000L, active1, 0x1001400002000000L, active2, 0L);
case 116:
if ((active0 & 0x200L) != 0L)
return jjStopAtPos(2, 9);
else if ((active0 & 0x100000L) != 0L)
return jjStopAtPos(2, 20);
return jjMoveStringLiteralDfa3_0(active0, 0x161042000010040L, active1, 0x800000800268L, active2, 0x3L);
case 117:
return jjMoveStringLiteralDfa3_0(active0, 0x20400000000L, active1, 0x8000008000000000L, active2, 0x40L);
case 119:
return jjMoveStringLiteralDfa3_0(active0, 0L, active1, 0L, active2, 0x8000L);
case 120:
if ((active0 & 0x40000L) != 0L)
return jjStopAtPos(2, 18);
break;
default :
break;
}
return jjStartNfa_0(1, active0, active1, active2);
}
private final int jjMoveStringLiteralDfa3_0(long old0, long active0, long old1, long active1, long old2, long active2)
{
if (((active0 &= old0) | (active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_0(1, old0, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(2, active0, active1, active2);
return 3;
}
switch(curChar)
{
case 32:
return jjMoveStringLiteralDfa4_0(active0, 0xc00000000000L, active1, 0L, active2, 0L);
case 97:
return jjMoveStringLiteralDfa4_0(active0, 0x100000000000000L, active1, 0x100000004000440L, active2, 0L);
case 98:
return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x800000000020800L, active2, 0L);
case 99:
if ((active1 & 0x1000000000L) != 0L)
return jjStopAtPos(3, 100);
return jjMoveStringLiteralDfa4_0(active0, 0x4000000000000000L, active1, 0x4000000080L, active2, 0L);
case 100:
if ((active1 & 0x800000000L) != 0L)
return jjStopAtPos(3, 99);
else if ((active1 & 0x200000000000L) != 0L)
return jjStopAtPos(3, 109);
return jjMoveStringLiteralDfa4_0(active0, 0x4000000000000L, active1, 0x40000018000000L, active2, 0x2000L);
case 101:
if ((active0 & 0x20000000000000L) != 0L)
return jjStopAtPos(3, 53);
return jjMoveStringLiteralDfa4_0(active0, 0x400L, active1, 0x2400000000000L, active2, 0x4003L);
case 103:
return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x50000L, active2, 0L);
case 104:
if ((active0 & 0x40L) != 0L)
return jjStopAtPos(3, 6);
return jjMoveStringLiteralDfa4_0(active0, 0x40040000000000L, active1, 0x880200L, active2, 0L);
case 105:
return jjMoveStringLiteralDfa4_0(active0, 0x680000000001000L, active1, 0x4010820001000023L, active2, 0x500L);
case 107:
return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x40000000L, active2, 0x200L);
case 108:
return jjMoveStringLiteralDfa4_0(active0, 0x100000000L, active1, 0x8004050080000000L, active2, 0L);
case 109:
return jjMoveStringLiteralDfa4_0(active0, 0x20800000000L, active1, 0x208108a000000000L, active2, 0x1000L);
case 110:
if ((active1 & 0x400000L) != 0L)
return jjStopAtPos(3, 86);
return jjMoveStringLiteralDfa4_0(active0, 0x2808018000000000L, active1, 0x102104L, active2, 0x10L);
case 111:
if ((active0 & 0x1000000000L) != 0L)
return jjStopAtPos(3, 36);
return jjMoveStringLiteralDfa4_0(active0, 0x8000000600000000L, active1, 0x608000000004000L, active2, 0L);
case 112:
if ((active0 & 0x100L) != 0L)
return jjStopAtPos(3, 8);
return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x1000000200000000L, active2, 0L);
case 114:
return jjMoveStringLiteralDfa4_0(active0, 0x1082000010000L, active1, 0x200008L, active2, 0x8084L);
case 115:
return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x20000002000000L, active2, 0x800L);
case 116:
if ((active0 & 0x20000L) != 0L)
return jjStopAtPos(3, 17);
else if ((active0 & 0x80000L) != 0L)
return jjStopAtPos(3, 19);
else if ((active0 & 0x1000000L) != 0L)
return jjStopAtPos(3, 24);
return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x120001010L, active2, 0x68L);
case 118:
return jjMoveStringLiteralDfa4_0(active0, 0L, active1, 0x400000000L, active2, 0L);
case 121:
return jjMoveStringLiteralDfa4_0(active0, 0x1000000000000000L, active1, 0x8000L, active2, 0L);
default :
break;
}
return jjStartNfa_0(2, active0, active1, active2);
}
private final int jjMoveStringLiteralDfa4_0(long old0, long active0, long old1, long active1, long old2, long active2)
{
if (((active0 &= old0) | (active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_0(2, old0, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(3, active0, active1, active2);
return 4;
}
switch(curChar)
{
case 97:
if ((active0 & 0x10000L) != 0L)
return jjStopAtPos(4, 16);
return jjMoveStringLiteralDfa5_0(active0, 0x400000000000L, active1, 0x80080041000L, active2, 0x8L);
case 98:
return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x8000L, active2, 0L);
case 99:
if ((active0 & 0x400L) != 0L)
return jjStopAtPos(4, 10);
return jjMoveStringLiteralDfa5_0(active0, 0x800800000001000L, active1, 0L, active2, 0x80L);
case 100:
return jjMoveStringLiteralDfa5_0(active0, 0x200000000000000L, active1, 0x404L, active2, 0L);
case 101:
if ((active0 & 0x4000000000000L) != 0L)
return jjStopAtPos(4, 50);
else if ((active0 & 0x8000000000000L) != 0L)
return jjStopAtPos(4, 51);
return jjMoveStringLiteralDfa5_0(active0, 0x2000000000000000L, active1, 0xa0000640800200L, active2, 0xa200L);
case 102:
return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0L, active2, 0x400L);
case 104:
return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x10L, active2, 0L);
case 105:
return jjMoveStringLiteralDfa5_0(active0, 0x4041020000000000L, active1, 0xa80001a11a302908L, active2, 0x1014L);
case 108:
return jjMoveStringLiteralDfa5_0(active0, 0x1000000000000000L, active1, 0x400040004000000L, active2, 0x4000L);
case 109:
return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x800020004000L, active2, 0L);
case 110:
return jjMoveStringLiteralDfa5_0(active0, 0x8000000000000000L, active1, 0xa400000080060L, active2, 0L);
case 111:
if ((active0 & 0x100000000L) != 0L)
return jjStopAtPos(4, 32);
else if ((active0 & 0x800000000L) != 0L)
return jjStopAtPos(4, 35);
else if ((active0 & 0x2000000000L) != 0L)
return jjStopAtPos(4, 37);
else if ((active0 & 0x10000000000L) != 0L)
return jjStopAtPos(4, 40);
else if ((active0 & 0x40000000000L) != 0L)
return jjStopAtPos(4, 42);
return jjMoveStringLiteralDfa5_0(active0, 0x80000000000L, active1, 0x20080L, active2, 0x40L);
case 112:
return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0x200000000000000L, active2, 0L);
case 114:
return jjMoveStringLiteralDfa5_0(active0, 0x600000000L, active1, 0x1100000000000000L, active2, 0x1L);
case 115:
return jjMoveStringLiteralDfa5_0(active0, 0x100000000000000L, active1, 0x10000L, active2, 0L);
case 116:
return jjMoveStringLiteralDfa5_0(active0, 0L, active1, 0L, active2, 0x802L);
case 117:
return jjMoveStringLiteralDfa5_0(active0, 0x480000000000000L, active1, 0x4015024001000003L, active2, 0x120L);
case 121:
return jjMoveStringLiteralDfa5_0(active0, 0x8000000000L, active1, 0x40000000000000L, active2, 0L);
default :
break;
}
return jjStartNfa_0(3, active0, active1, active2);
}
private final int jjMoveStringLiteralDfa5_0(long old0, long active0, long old1, long active1, long old2, long active2)
{
if (((active0 &= old0) | (active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_0(3, old0, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(4, active0, active1, active2);
return 5;
}
switch(curChar)
{
case 97:
return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x10L, active2, 0L);
case 98:
return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0L, active2, 0x1L);
case 99:
return jjMoveStringLiteralDfa6_0(active0, 0x400000000000L, active1, 0L, active2, 0x8L);
case 100:
return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x80008000L, active2, 0L);
case 101:
return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x20080000L, active2, 0x800L);
case 104:
return jjMoveStringLiteralDfa6_0(active0, 0x800000000000L, active1, 0L, active2, 0L);
case 105:
return jjMoveStringLiteralDfa6_0(active0, 0xa00000000000000L, active1, 0x70a4c0000004464L, active2, 0x4082L);
case 108:
if ((active0 & 0x8000000000L) != 0L)
return jjStopAtPos(5, 39);
else if ((active1 & 0x40000000L) != 0L)
return jjStopAtPos(5, 94);
return jjMoveStringLiteralDfa6_0(active0, 0x1001000000000000L, active1, 0x1000L, active2, 0x2200L);
case 109:
if ((active0 & 0x80000000000000L) != 0L)
return jjStopAtPos(5, 55);
else if ((active0 & 0x400000000000000L) != 0L)
return jjStopAtPos(5, 58);
else if ((active1 & 0x1L) != 0L)
return jjStopAtPos(5, 64);
else if ((active1 & 0x2L) != 0L)
return jjStopAtPos(5, 65);
else if ((active1 & 0x1000000L) != 0L)
return jjStopAtPos(5, 88);
else if ((active1 & 0x20000000000L) != 0L)
return jjStopAtPos(5, 105);
else if ((active1 & 0x10000000000000L) != 0L)
return jjStopAtPos(5, 116);
else if ((active1 & 0x4000000000000000L) != 0L)
return jjStopAtPos(5, 126);
else if ((active2 & 0x100L) != 0L)
return jjStopAtPos(5, 136);
return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x40000000000000L, active2, 0L);
case 110:
return jjMoveStringLiteralDfa6_0(active0, 0x20000000000L, active1, 0x8100840080L, active2, 0x8060L);
case 111:
if ((active0 & 0x200000000L) != 0L)
return jjStopAtPos(5, 33);
else if ((active0 & 0x400000000L) != 0L)
return jjStopAtPos(5, 34);
return jjMoveStringLiteralDfa6_0(active0, 0x1000L, active1, 0x1020800000000000L, active2, 0x400L);
case 114:
if ((active1 & 0x200000000L) != 0L)
return jjStopAtPos(5, 97);
else if ((active1 & 0x400000000L) != 0L)
return jjStopAtPos(5, 98);
return jjMoveStringLiteralDfa6_0(active0, 0L, active1, 0x4004000020200L, active2, 0L);
case 115:
return jjMoveStringLiteralDfa6_0(active0, 0x2100000000000000L, active1, 0L, active2, 0L);
case 116:
if ((active1 & 0x4000000L) != 0L)
return jjStopAtPos(5, 90);
return jjMoveStringLiteralDfa6_0(active0, 0x8000000000000000L, active1, 0x81000000010000L, active2, 0L);
case 117:
return jjMoveStringLiteralDfa6_0(active0, 0x4040000000000000L, active1, 0xa80001201a302908L, active2, 0x1014L);
case 120:
return jjMoveStringLiteralDfa6_0(active0, 0x80000000000L, active1, 0L, active2, 0L);
default :
break;
}
return jjStartNfa_0(4, active0, active1, active2);
}
private final int jjMoveStringLiteralDfa6_0(long old0, long active0, long old1, long active1, long old2, long active2)
{
if (((active0 &= old0) | (active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_0(4, old0, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(5, active0, active1, active2);
return 6;
}
switch(curChar)
{
case 99:
if ((active1 & 0x400000000000L) != 0L)
return jjStopAtPos(6, 110);
return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0L, active2, 0x8000L);
case 100:
return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x20000000000000L, active2, 0L);
case 101:
if ((active0 & 0x1000000000000L) != 0L)
return jjStopAtPos(6, 48);
return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x58000L, active2, 0x2000L);
case 102:
return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x200L, active2, 0L);
case 103:
return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x20000L, active2, 0L);
case 104:
if ((active1 & 0x1000000000000L) != 0L)
return jjStopAtPos(6, 112);
return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x80000000000000L, active2, 0L);
case 105:
return jjMoveStringLiteralDfa7_0(active0, 0xb100400000000000L, active1, 0x44008080800080L, active2, 0xa61L);
case 108:
return jjMoveStringLiteralDfa7_0(active0, 0x800000000000L, active1, 0L, active2, 0L);
case 109:
if ((active0 & 0x40000000000000L) != 0L)
return jjStopAtPos(6, 54);
else if ((active0 & 0x4000000000000000L) != 0L)
return jjStopAtPos(6, 62);
else if ((active1 & 0x8L) != 0L)
return jjStopAtPos(6, 67);
else if ((active1 & 0x100L) != 0L)
return jjStopAtPos(6, 72);
else if ((active1 & 0x800L) != 0L)
return jjStopAtPos(6, 75);
else if ((active1 & 0x2000L) != 0L)
return jjStopAtPos(6, 77);
else if ((active1 & 0x100000L) != 0L)
return jjStopAtPos(6, 84);
else if ((active1 & 0x200000L) != 0L)
return jjStopAtPos(6, 85);
else if ((active1 & 0x2000000L) != 0L)
return jjStopAtPos(6, 89);
else if ((active1 & 0x8000000L) != 0L)
return jjStopAtPos(6, 91);
else if ((active1 & 0x10000000L) != 0L)
return jjStopAtPos(6, 92);
else if ((active1 & 0x2000000000L) != 0L)
return jjStopAtPos(6, 101);
else if ((active1 & 0x10000000000L) != 0L)
return jjStopAtPos(6, 104);
else if ((active1 & 0x800000000000000L) != 0L)
return jjStopAtPos(6, 123);
else if ((active1 & 0x2000000000000000L) != 0L)
return jjStopAtPos(6, 125);
else if ((active1 & 0x8000000000000000L) != 0L)
return jjStopAtPos(6, 127);
else if ((active2 & 0x4L) != 0L)
return jjStopAtPos(6, 130);
else if ((active2 & 0x10L) != 0L)
return jjStopAtPos(6, 132);
else if ((active2 & 0x1000L) != 0L)
return jjStopAtPos(6, 140);
break;
case 110:
return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x400880000000010L, active2, 0L);
case 111:
if ((active0 & 0x20000000000L) != 0L)
return jjStopAtPos(6, 41);
break;
case 114:
return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x20000000L, active2, 0x400L);
case 115:
if ((active0 & 0x1000L) != 0L)
return jjStopAtPos(6, 12);
return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x1000000000000000L, active2, 0L);
case 116:
return jjMoveStringLiteralDfa7_0(active0, 0L, active1, 0x80000L, active2, 0x8L);
case 117:
return jjMoveStringLiteralDfa7_0(active0, 0xa00000000000000L, active1, 0x30a040100005464L, active2, 0x4082L);
case 121:
if ((active0 & 0x80000000000L) != 0L)
return jjStopAtPos(6, 43);
else if ((active1 & 0x4000000000L) != 0L)
return jjStopAtPos(6, 102);
break;
default :
break;
}
return jjStartNfa_0(5, active0, active1, active2);
}
private final int jjMoveStringLiteralDfa7_0(long old0, long active0, long old1, long active1, long old2, long active2)
{
if (((active0 &= old0) | (active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_0(5, old0, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(6, active0, active1, active2);
return 7;
}
switch(curChar)
{
case 100:
if ((active0 & 0x400000000000L) != 0L)
return jjStopAtPos(7, 46);
break;
case 105:
return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x14800800200a0000L, active2, 0x8008L);
case 109:
if ((active0 & 0x200000000000000L) != 0L)
return jjStopAtPos(7, 57);
else if ((active0 & 0x800000000000000L) != 0L)
return jjStopAtPos(7, 59);
else if ((active1 & 0x4L) != 0L)
return jjStopAtPos(7, 66);
else if ((active1 & 0x20L) != 0L)
return jjStopAtPos(7, 69);
else if ((active1 & 0x40L) != 0L)
return jjStopAtPos(7, 70);
else if ((active1 & 0x400L) != 0L)
return jjStopAtPos(7, 74);
else if ((active1 & 0x1000L) != 0L)
return jjStopAtPos(7, 76);
else if ((active1 & 0x4000L) != 0L)
return jjStopAtPos(7, 78);
else if ((active1 & 0x100000000L) != 0L)
return jjStopAtPos(7, 96);
else if ((active1 & 0x40000000000L) != 0L)
return jjStopAtPos(7, 106);
else if ((active1 & 0x2000000000000L) != 0L)
return jjStopAtPos(7, 113);
else if ((active1 & 0x8000000000000L) != 0L)
return jjStopAtPos(7, 115);
else if ((active1 & 0x100000000000000L) != 0L)
return jjStopAtPos(7, 120);
else if ((active1 & 0x200000000000000L) != 0L)
return jjStopAtPos(7, 121);
else if ((active2 & 0x2L) != 0L)
return jjStopAtPos(7, 129);
else if ((active2 & 0x80L) != 0L)
return jjStopAtPos(7, 135);
else if ((active2 & 0x4000L) != 0L)
return jjStopAtPos(7, 142);
break;
case 110:
if ((active1 & 0x10000L) != 0L)
return jjStopAtPos(7, 80);
return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x8000L, active2, 0xc00L);
case 111:
return jjMoveStringLiteralDfa8_0(active0, 0x800000000000L, active1, 0x200L, active2, 0L);
case 115:
return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x40000L, active2, 0L);
case 117:
return jjMoveStringLiteralDfa8_0(active0, 0xb100000000000000L, active1, 0x44008080800090L, active2, 0x261L);
case 118:
return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0L, active2, 0x2000L);
case 121:
if ((active1 & 0x800000000000L) != 0L)
return jjStopAtPos(7, 111);
return jjMoveStringLiteralDfa8_0(active0, 0L, active1, 0x20000000000000L, active2, 0L);
default :
break;
}
return jjStartNfa_0(6, active0, active1, active2);
}
private final int jjMoveStringLiteralDfa8_0(long old0, long active0, long old1, long active1, long old2, long active2)
{
if (((active0 &= old0) | (active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_0(6, old0, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(7, active0, active1, active2);
return 8;
}
switch(curChar)
{
case 101:
if ((active1 & 0x40000L) != 0L)
return jjStopAtPos(8, 82);
break;
case 105:
return jjMoveStringLiteralDfa9_0(active0, 0L, active1, 0L, active2, 0x2c00L);
case 109:
if ((active0 & 0x100000000000000L) != 0L)
return jjStopAtPos(8, 56);
else if ((active0 & 0x1000000000000000L) != 0L)
return jjStopAtPos(8, 60);
else if ((active0 & 0x2000000000000000L) != 0L)
return jjStopAtPos(8, 61);
else if ((active0 & 0x8000000000000000L) != 0L)
return jjStopAtPos(8, 63);
else if ((active1 & 0x10L) != 0L)
return jjStopAtPos(8, 68);
else if ((active1 & 0x80L) != 0L)
return jjStopAtPos(8, 71);
else if ((active1 & 0x800000L) != 0L)
return jjStopAtPos(8, 87);
else if ((active1 & 0x80000000L) != 0L)
return jjStopAtPos(8, 95);
else if ((active1 & 0x8000000000L) != 0L)
return jjStopAtPos(8, 103);
else if ((active1 & 0x4000000000000L) != 0L)
return jjStopAtPos(8, 114);
else if ((active1 & 0x40000000000000L) != 0L)
return jjStopAtPos(8, 118);
else if ((active2 & 0x1L) != 0L)
return jjStopAtPos(8, 128);
else if ((active2 & 0x20L) != 0L)
return jjStopAtPos(8, 133);
else if ((active2 & 0x40L) != 0L)
return jjStopAtPos(8, 134);
else if ((active2 & 0x200L) != 0L)
return jjStopAtPos(8, 137);
return jjMoveStringLiteralDfa9_0(active0, 0L, active1, 0x20000000000000L, active2, 0L);
case 110:
return jjMoveStringLiteralDfa9_0(active0, 0L, active1, 0L, active2, 0x8L);
case 114:
return jjMoveStringLiteralDfa9_0(active0, 0x800000000000L, active1, 0x200L, active2, 0L);
case 117:
return jjMoveStringLiteralDfa9_0(active0, 0L, active1, 0x14800800200a8000L, active2, 0x8000L);
default :
break;
}
return jjStartNfa_0(7, active0, active1, active2);
}
private final int jjMoveStringLiteralDfa9_0(long old0, long active0, long old1, long active1, long old2, long active2)
{
if (((active0 &= old0) | (active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_0(7, old0, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(8, active0, active1, active2);
return 9;
}
switch(curChar)
{
case 100:
return jjMoveStringLiteralDfa10_0(active0, 0L, active1, 0x200L, active2, 0L);
case 105:
return jjMoveStringLiteralDfa10_0(active0, 0x800000000000L, active1, 0x20000000000000L, active2, 0x8L);
case 109:
if ((active1 & 0x8000L) != 0L)
return jjStopAtPos(9, 79);
else if ((active1 & 0x20000L) != 0L)
return jjStopAtPos(9, 81);
else if ((active1 & 0x80000L) != 0L)
return jjStopAtPos(9, 83);
else if ((active1 & 0x20000000L) != 0L)
return jjStopAtPos(9, 93);
else if ((active1 & 0x80000000000L) != 0L)
return jjStopAtPos(9, 107);
else if ((active1 & 0x80000000000000L) != 0L)
return jjStopAtPos(9, 119);
else if ((active1 & 0x400000000000000L) != 0L)
return jjStopAtPos(9, 122);
else if ((active1 & 0x1000000000000000L) != 0L)
return jjStopAtPos(9, 124);
else if ((active2 & 0x8000L) != 0L)
return jjStopAtPos(9, 143);
break;
case 117:
return jjMoveStringLiteralDfa10_0(active0, 0L, active1, 0L, active2, 0x2c00L);
default :
break;
}
return jjStartNfa_0(8, active0, active1, active2);
}
private final int jjMoveStringLiteralDfa10_0(long old0, long active0, long old1, long active1, long old2, long active2)
{
if (((active0 &= old0) | (active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_0(8, old0, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(9, active0, active1, active2);
return 10;
}
switch(curChar)
{
case 100:
return jjMoveStringLiteralDfa11_0(active0, 0x800000000000L, active1, 0L, active2, 0L);
case 105:
return jjMoveStringLiteralDfa11_0(active0, 0L, active1, 0x200L, active2, 0L);
case 109:
if ((active2 & 0x400L) != 0L)
return jjStopAtPos(10, 138);
else if ((active2 & 0x800L) != 0L)
return jjStopAtPos(10, 139);
else if ((active2 & 0x2000L) != 0L)
return jjStopAtPos(10, 141);
break;
case 117:
return jjMoveStringLiteralDfa11_0(active0, 0L, active1, 0x20000000000000L, active2, 0x8L);
default :
break;
}
return jjStartNfa_0(9, active0, active1, active2);
}
private final int jjMoveStringLiteralDfa11_0(long old0, long active0, long old1, long active1, long old2, long active2)
{
if (((active0 &= old0) | (active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_0(9, old0, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(10, active0, active1, active2);
return 11;
}
switch(curChar)
{
case 101:
if ((active0 & 0x800000000000L) != 0L)
return jjStopAtPos(11, 47);
break;
case 109:
if ((active1 & 0x20000000000000L) != 0L)
return jjStopAtPos(11, 117);
else if ((active2 & 0x8L) != 0L)
return jjStopAtPos(11, 131);
break;
case 117:
return jjMoveStringLiteralDfa12_0(active0, 0L, active1, 0x200L, active2, 0L);
default :
break;
}
return jjStartNfa_0(10, active0, active1, active2);
}
private final int jjMoveStringLiteralDfa12_0(long old0, long active0, long old1, long active1, long old2, long active2)
{
if (((active0 &= old0) | (active1 &= old1) | (active2 &= old2)) == 0L)
return jjStartNfa_0(10, old0, old1, old2);
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) {
jjStopStringLiteralDfa_0(11, 0L, active1, 0L);
return 12;
}
switch(curChar)
{
case 109:
if ((active1 & 0x200L) != 0L)
return jjStopAtPos(12, 73);
break;
default :
break;
}
return jjStartNfa_0(11, 0L, active1, 0L);
}
private final void jjCheckNAdd(int state)
{
if (jjrounds[state] != jjround)
{
jjstateSet[jjnewStateCnt++] = state;
jjrounds[state] = jjround;
}
}
private final void jjAddStates(int start, int end)
{
do {
jjstateSet[jjnewStateCnt++] = jjnextStates[start];
} while (start++ != end);
}
private final void jjCheckNAddTwoStates(int state1, int state2)
{
jjCheckNAdd(state1);
jjCheckNAdd(state2);
}
private final void jjCheckNAddStates(int start, int end)
{
do {
jjCheckNAdd(jjnextStates[start]);
} while (start++ != end);
}
private final void jjCheckNAddStates(int start)
{
jjCheckNAdd(jjnextStates[start]);
jjCheckNAdd(jjnextStates[start + 1]);
}
private final int jjMoveNfa_0(int startState, int curPos)
{
int[] nextStates;
int startsAt = 0;
jjnewStateCnt = 10;
int i = 1;
jjstateSet[0] = startState;
int j, kind = 0x7fffffff;
for (;;)
{
if (++jjround == 0x7fffffff)
ReInitRounds();
if (curChar < 64)
{
long l = 1L << curChar;
MatchLoop: do
{
switch(jjstateSet[--i])
{
case 0:
if ((0x3ff000000000000L & l) != 0L)
{
if (kind > 2)
kind = 2;
jjCheckNAdd(1);
}
else if ((0x2400L & l) != 0L)
{
if (kind > 1)
kind = 1;
}
break;
case 1:
if ((0x3ff000000000000L & l) == 0L)
break;
kind = 2;
jjCheckNAdd(1);
break;
default : break;
}
} while(i != startsAt);
}
else if (curChar < 128)
{
long l = 1L << (curChar & 077);
MatchLoop: do
{
switch(jjstateSet[--i])
{
case 0:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 8;
else if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 5;
break;
case 2:
if (curChar == 115)
kind = 11;
break;
case 3:
case 7:
if (curChar == 111)
jjCheckNAdd(2);
break;
case 4:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 3;
break;
case 5:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 4;
break;
case 6:
if (curChar == 101)
jjstateSet[jjnewStateCnt++] = 5;
break;
case 8:
if (curChar == 99)
jjstateSet[jjnewStateCnt++] = 7;
break;
case 9:
if (curChar == 105)
jjstateSet[jjnewStateCnt++] = 8;
break;
default : break;
}
} while(i != startsAt);
}
else
{
int i2 = (curChar & 0xff) >> 6;
long l2 = 1L << (curChar & 077);
MatchLoop: do
{
switch(jjstateSet[--i])
{
default : break;
}
} while(i != startsAt);
}
if (kind != 0x7fffffff)
{
jjmatchedKind = kind;
jjmatchedPos = curPos;
kind = 0x7fffffff;
}
++curPos;
if ((i = jjnewStateCnt) == (startsAt = 10 - (jjnewStateCnt = startsAt)))
return curPos;
try { curChar = input_stream.readChar(); }
catch(java.io.IOException e) { return curPos; }
}
}
static final int[] jjnextStates = {
};
public static final String[] jjstrLiteralImages = {
"", null, null, null, "\55", "\54", "\155\145\164\150", "\145\164\150",
"\160\162\157\160", "\142\165\164", "\165\156\144\145\143", null, "\150\145\156\151\143\157\163",
"\150\145\156", "\144\157", "\164\162\151", "\164\145\164\162\141", "\160\145\156\164",
"\150\145\170", "\150\145\160\164", "\157\143\164", "\156\157\156", "\144\145\143",
"\143\157\163", "\143\157\156\164", null, null, "\141\156", "\145\156", "\171\156",
"\171\154", "\144\151", "\143\171\143\154\157", "\143\150\154\157\162\157",
"\146\154\165\157\162\157", "\142\162\157\155\157", "\151\157\144\157", "\156\151\164\162\157",
"\157\170\157", "\160\150\145\156\171\154", "\141\155\151\156\157",
"\141\154\165\155\151\156\157", "\154\151\164\150\157", "\150\171\144\162\157\170\171", "\145", "\157\154",
"\157\151\143\40\141\143\151\144", "\157\171\154\40\143\150\154\157\162\151\144\145",
"\156\151\164\162\151\154\145", "\141\154", "\141\155\151\144\145", "\141\155\151\156\145", "\157\156\145",
"\157\141\164\145", "\154\151\164\150\151\165\155", "\163\157\144\151\165\155",
"\160\157\164\141\163\163\151\165\155", "\162\165\142\151\144\151\165\155", "\143\145\163\151\165\155",
"\146\162\141\156\143\151\165\155", "\142\145\162\171\154\154\151\165\155",
"\155\141\147\156\145\163\151\165\155", "\143\141\154\143\151\165\155", "\163\164\162\157\156\164\151\165\155",
"\142\141\162\151\165\155", "\162\141\144\151\165\155", "\163\143\141\156\144\151\165\155",
"\171\164\164\162\151\165\155", "\154\141\156\164\150\141\156\165\155", "\141\143\164\151\156\151\165\155",
"\164\151\164\141\156\151\165\155", "\172\151\162\143\157\156\151\165\155", "\150\141\146\156\151\165\155",
"\162\165\164\150\145\162\146\157\162\144\151\165\155", "\166\141\156\141\144\151\165\155", "\156\151\157\142\151\165\155",
"\164\141\156\164\141\154\165\155", "\144\165\142\156\151\165\155", "\143\150\162\157\155\151\165\155",
"\155\157\154\171\142\144\145\156\165\155", "\164\165\156\147\163\164\145\156",
"\163\145\141\142\157\162\147\151\165\155", "\155\141\156\147\141\156\145\163\145",
"\164\145\143\150\156\145\164\151\165\155", "\162\150\145\156\151\165\155", "\142\157\150\162\151\165\155",
"\151\162\157\156", "\162\165\164\150\145\156\151\165\155", "\157\163\155\151\165\155",
"\150\141\163\163\151\165\155", "\143\157\142\141\154\164", "\162\150\157\144\151\165\155",
"\151\162\151\144\151\165\155", "\155\145\151\164\155\145\162\151\165\155", "\156\151\143\153\145\154",
"\160\141\154\154\141\144\151\165\155", "\160\154\141\164\151\156\165\155", "\143\157\160\160\145\162",
"\163\151\154\166\145\162", "\147\157\154\144", "\172\151\156\143", "\143\141\144\155\151\165\155",
"\155\145\162\143\165\162\171", "\141\154\165\155\151\156\151\165\155", "\147\141\154\154\151\165\155",
"\151\156\144\151\165\155", "\164\150\141\154\154\151\165\155",
"\147\145\162\155\141\151\156\151\165\155", "\164\151\156", "\154\145\141\144", "\141\162\163\145\156\151\143",
"\141\156\164\151\155\157\156\171", "\142\151\163\155\165\164\150", "\163\145\154\145\156\151\165\155",
"\164\145\154\154\165\162\151\165\155", "\160\157\154\157\156\151\165\155", "\143\145\162\151\165\155",
"\160\162\141\163\145\157\144\171\155\151\165\155", "\156\145\157\144\171\155\151\165\155",
"\160\162\157\155\145\164\150\151\165\155", "\163\141\156\141\162\151\165\155", "\145\165\162\157\160\151\165\155",
"\147\141\144\157\154\151\156\151\165\155", "\164\145\162\142\151\165\155", "\144\171\163\160\162\157\163\151\165\155",
"\150\157\154\155\151\165\155", "\145\162\142\151\165\155", "\164\150\165\154\151\165\155",
"\171\164\164\145\162\142\151\165\155", "\154\165\164\145\164\151\165\155", "\164\150\157\162\151\165\155",
"\160\162\157\164\141\143\164\151\156\151\165\155", "\165\162\141\156\151\165\155", "\156\145\160\164\165\156\151\165\155",
"\160\154\165\164\157\156\151\165\155", "\141\155\145\162\143\151\165\155", "\143\165\162\151\165\155",
"\142\145\162\153\145\154\151\165\155", "\143\141\154\151\146\157\162\156\151\165\155",
"\145\151\156\163\164\145\151\156\151\165\155", "\146\145\162\155\151\165\155",
"\155\145\156\144\145\154\145\166\151\165\155", "\156\157\142\145\154\151\165\155",
"\154\141\167\162\145\156\143\151\165\155", };
public static final String[] lexStateNames = {
"DEFAULT",
};
static final long[] jjtoToken = {
0xfffffffff9fffff7L, 0xffffffffffffffffL, 0xffffL,
};
static final long[] jjtoSkip = {
0x6000000L, 0x0L, 0x0L,
};
protected SimpleCharStream input_stream;
private final int[] jjrounds = new int[10];
private final int[] jjstateSet = new int[20];
protected char curChar;
public NomParserTokenManager(SimpleCharStream stream)
{
if (SimpleCharStream.staticFlag)
throw new Error("ERROR: Cannot use a static CharStream class with a non-static lexical analyzer.");
input_stream = stream;
}
public NomParserTokenManager(SimpleCharStream stream, int lexState)
{
this(stream);
SwitchTo(lexState);
}
public void ReInit(SimpleCharStream stream)
{
jjmatchedPos = jjnewStateCnt = 0;
curLexState = defaultLexState;
input_stream = stream;
ReInitRounds();
}
private final void ReInitRounds()
{
int i;
jjround = 0x80000001;
for (i = 10; i-- > 0;)
jjrounds[i] = 0x80000000;
}
public void ReInit(SimpleCharStream stream, int lexState)
{
ReInit(stream);
SwitchTo(lexState);
}
public void SwitchTo(int lexState)
{
if (lexState >= 1 || lexState < 0)
throw new TokenMgrError("Error: Ignoring invalid lexical state : " + lexState + ". State unchanged.", TokenMgrError.INVALID_LEXICAL_STATE);
else
curLexState = lexState;
}
protected Token jjFillToken()
{
Token t = Token.newToken(jjmatchedKind);
t.kind = jjmatchedKind;
String im = jjstrLiteralImages[jjmatchedKind];
t.image = (im == null) ? input_stream.GetImage() : im;
t.beginLine = input_stream.getBeginLine();
t.beginColumn = input_stream.getBeginColumn();
t.endLine = input_stream.getEndLine();
t.endColumn = input_stream.getEndColumn();
return t;
}
int curLexState = 0;
int defaultLexState = 0;
int jjnewStateCnt;
int jjround;
int jjmatchedPos;
int jjmatchedKind;
public Token getNextToken()
{
int kind;
Token specialToken = null;
Token matchedToken;
int curPos = 0;
EOFLoop :
for (;;)
{
try
{
curChar = input_stream.BeginToken();
}
catch(java.io.IOException e)
{
jjmatchedKind = 0;
matchedToken = jjFillToken();
return matchedToken;
}
try { input_stream.backup(0);
while (curChar <= 32 && (0x100000000L & (1L << curChar)) != 0L)
curChar = input_stream.BeginToken();
}
catch (java.io.IOException e1) { continue EOFLoop; }
jjmatchedKind = 0x7fffffff;
jjmatchedPos = 0;
curPos = jjMoveStringLiteralDfa0_0();
if (jjmatchedKind != 0x7fffffff)
{
if (jjmatchedPos + 1 < curPos)
input_stream.backup(curPos - jjmatchedPos - 1);
if ((jjtoToken[jjmatchedKind >> 6] & (1L << (jjmatchedKind & 077))) != 0L)
{
matchedToken = jjFillToken();
return matchedToken;
}
else
{
continue EOFLoop;
}
}
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) {
EOFSeen = true;
error_after = curPos <= 1 ? "" : input_stream.GetImage();
if (curChar == '\n' || curChar == '\r') {
error_line++;
error_column = 0;
}
else
error_column++;
}
if (!EOFSeen) {
input_stream.backup(1);
error_after = curPos <= 1 ? "" : input_stream.GetImage();
}
throw new TokenMgrError(EOFSeen, curLexState, error_line, error_column, error_after, curChar, TokenMgrError.LEXICAL_ERROR);
}
}
}