package org.nfunk.jep; import java.io.IOException; import java.io.PrintStream; public class ParserTokenManager implements ParserConstants { public PrintStream debugStream = System.out; static final long[] jjbitVec0 = new long[] { -2L, -1L, -1L, -1L }; static final long[] jjbitVec2 = new long[] { 0L, 0L, -1L, -1L }; static final long[] jjbitVec3 = new long[] { 2301339413881290750L, -16384L, 4294967295L, 432345564227567616L }; static final long[] jjbitVec4 = new long[] { 0L, 0L, 0L, -36028797027352577L }; static final long[] jjbitVec5 = new long[] { 0L, -1L, -1L, -1L }; static final long[] jjbitVec6 = new long[] { -1L, -1L, 65535L, 0L }; static final long[] jjbitVec7 = new long[] { -1L, -1L, 0L, 0L }; static final long[] jjbitVec8 = new long[] { 70368744177663L, 0L, 0L, 0L }; static final int[] jjnextStates = new int[] { 14, 15, 17, 25, 26, 27, 32, 33, 13, 18, 6, 7, 9, 21, 23, 3, 4, 30, 31, 34, 35 }; public static final String[] jjstrLiteralImages = new String[] { "", null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, null, "=", ";", ",", ">", "<", "==", "<=", ">=", "!=", "&&", "||", "+", "-", "*", ".", "/", "%", "!", "^", "^^", "[", "]", "(", ")" }; public static final String[] lexStateNames = new String[] { "NO_DOT_IN_IDENTIFIERS", "DEFAULT" }; public static final int[] jjnewLexState = new int[] { -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1 }; static final long[] jjtoToken = new long[] { 4398046288513L }; static final long[] jjtoSkip = new long[] { 126L }; protected JavaCharStream input_stream; private final int[] jjrounds = new int[36]; private final int[] jjstateSet = new int[72]; protected char curChar; int curLexState = 1; int defaultLexState = 1; int jjnewStateCnt; int jjround; int jjmatchedPos; int jjmatchedKind; public void setDebugStream(PrintStream paramPrintStream) { this.debugStream = paramPrintStream; } private final int jjStopStringLiteralDfa_1(int paramInt, long paramLong) { switch (paramInt) { case 0: return ((paramLong & 0x100000000L) != 0L) ? 1 : (((paramLong & 0x200000000L) != 0L) ? 13 : -1); } return -1; } private final int jjStartNfa_1(int paramInt, long paramLong) { return jjMoveNfa_1(jjStopStringLiteralDfa_1(paramInt, paramLong), paramInt + 1); } private final int jjStopAtPos(int paramInt1, int paramInt2) { this.jjmatchedKind = paramInt2; this.jjmatchedPos = paramInt1; return paramInt1 + 1; } private final int jjStartNfaWithStates_1(int paramInt1, int paramInt2, int paramInt3) { this.jjmatchedKind = paramInt2; this.jjmatchedPos = paramInt1; try { this.curChar = this.input_stream.readChar(); } catch (IOException iOException) { return paramInt1 + 1; } return jjMoveNfa_1(paramInt3, paramInt1 + 1); } private final int jjMoveStringLiteralDfa0_1() { switch (this.curChar) { case '!': this.jjmatchedKind = 35; return jjMoveStringLiteralDfa1_1(67108864L); case '%': return jjStopAtPos(0, 34); case '&': return jjMoveStringLiteralDfa1_1(134217728L); case '(': return jjStopAtPos(0, 40); case ')': return jjStopAtPos(0, 41); case '*': return jjStopAtPos(0, 31); case '+': return jjStopAtPos(0, 29); case ',': return jjStopAtPos(0, 20); case '-': return jjStopAtPos(0, 30); case '.': return jjStartNfaWithStates_1(0, 32, 1); case '/': return jjStartNfaWithStates_1(0, 33, 13); case ';': return jjStopAtPos(0, 19); case '<': this.jjmatchedKind = 22; return jjMoveStringLiteralDfa1_1(16777216L); case '=': this.jjmatchedKind = 18; return jjMoveStringLiteralDfa1_1(8388608L); case '>': this.jjmatchedKind = 21; return jjMoveStringLiteralDfa1_1(33554432L); case '[': return jjStopAtPos(0, 38); case ']': return jjStopAtPos(0, 39); case '^': this.jjmatchedKind = 36; return jjMoveStringLiteralDfa1_1(137438953472L); case '|': return jjMoveStringLiteralDfa1_1(268435456L); } return jjMoveNfa_1(0, 0); } private final int jjMoveStringLiteralDfa1_1(long paramLong) { try { this.curChar = this.input_stream.readChar(); } catch (IOException iOException) { jjStopStringLiteralDfa_1(0, paramLong); return 1; } switch (this.curChar) { case '&': if ((paramLong & 0x8000000L) != 0L) return jjStopAtPos(1, 27); break; case '=': if ((paramLong & 0x800000L) != 0L) return jjStopAtPos(1, 23); if ((paramLong & 0x1000000L) != 0L) return jjStopAtPos(1, 24); if ((paramLong & 0x2000000L) != 0L) return jjStopAtPos(1, 25); if ((paramLong & 0x4000000L) != 0L) return jjStopAtPos(1, 26); break; case '^': if ((paramLong & 0x2000000000L) != 0L) return jjStopAtPos(1, 37); break; case '|': if ((paramLong & 0x10000000L) != 0L) return jjStopAtPos(1, 28); break; } return jjStartNfa_1(0, paramLong); } private final void jjCheckNAdd(int paramInt) { if (this.jjrounds[paramInt] != this.jjround) { this.jjstateSet[this.jjnewStateCnt++] = paramInt; this.jjrounds[paramInt] = this.jjround; } } private final void jjAddStates(int paramInt1, int paramInt2) { do { this.jjstateSet[this.jjnewStateCnt++] = jjnextStates[paramInt1]; } while (paramInt1++ != paramInt2); } private final void jjCheckNAddTwoStates(int paramInt1, int paramInt2) { jjCheckNAdd(paramInt1); jjCheckNAdd(paramInt2); } private final void jjCheckNAddStates(int paramInt1, int paramInt2) { do { jjCheckNAdd(jjnextStates[paramInt1]); } while (paramInt1++ != paramInt2); } private final void jjCheckNAddStates(int paramInt) { jjCheckNAdd(jjnextStates[paramInt]); jjCheckNAdd(jjnextStates[paramInt + 1]); } private final int jjMoveNfa_1(int paramInt1, int paramInt2) { int i = 0; this.jjnewStateCnt = 36; int j = 1; this.jjstateSet[0] = paramInt1; int k = Integer.MAX_VALUE; while (true) { if (++this.jjround == Integer.MAX_VALUE) ReInitRounds(); if (this.curChar < '@') { long l = 1L << this.curChar; do { switch (this.jjstateSet[--j]) { case 13: if (this.curChar == '*') { jjCheckNAddTwoStates(19, 20); break; } if (this.curChar == '/') jjCheckNAddStates(0, 2); break; case 0: if ((0x3FF000000000000L & l) != 0L) { if (k > 7) k = 7; jjCheckNAddStates(3, 7); break; } if (this.curChar == '/') { jjAddStates(8, 9); break; } if (this.curChar == '$') { if (k > 12) k = 12; jjCheckNAdd(11); break; } if (this.curChar == '"') { jjCheckNAddStates(10, 12); break; } if (this.curChar == '.') jjCheckNAdd(1); break; case 1: if ((0x3FF000000000000L & l) == 0L) break; if (k > 9) k = 9; jjCheckNAddTwoStates(1, 2); break; case 3: if ((0x280000000000L & l) != 0L) jjCheckNAdd(4); break; case 4: if ((0x3FF000000000000L & l) == 0L) break; if (k > 9) k = 9; jjCheckNAdd(4); break; case 5: if (this.curChar == '"') jjCheckNAddStates(10, 12); break; case 6: if ((0xFFFFFFFBFFFFDBFFL & l) != 0L) jjCheckNAddStates(10, 12); break; case 8: if ((0x8400000000L & l) != 0L) jjCheckNAddStates(10, 12); break; case 9: if (this.curChar == '"' && k > 11) k = 11; break; case 10: if (this.curChar != '$') break; if (k > 12) k = 12; jjCheckNAdd(11); break; case 11: if ((0x3FF401000000000L & l) == 0L) break; if (k > 12) k = 12; jjCheckNAdd(11); break; case 12: if (this.curChar == '/') jjAddStates(8, 9); break; case 14: if ((0xFFFFFFFFFFFFDBFFL & l) != 0L) jjCheckNAddStates(0, 2); break; case 15: if ((0x2400L & l) != 0L && k > 5) k = 5; break; case 16: if (this.curChar == '\n' && k > 5) k = 5; break; case 17: if (this.curChar == '\r') this.jjstateSet[this.jjnewStateCnt++] = 16; break; case 18: if (this.curChar == '*') jjCheckNAddTwoStates(19, 20); break; case 19: if ((0xFFFFFBFFFFFFFFFFL & l) != 0L) jjCheckNAddTwoStates(19, 20); break; case 20: if (this.curChar == '*') jjAddStates(13, 14); break; case 21: if ((0xFFFF7FFFFFFFFFFFL & l) != 0L) jjCheckNAddTwoStates(22, 20); break; case 22: if ((0xFFFFFBFFFFFFFFFFL & l) != 0L) jjCheckNAddTwoStates(22, 20); break; case 23: if (this.curChar == '/' && k > 6) k = 6; break; case 24: if ((0x3FF000000000000L & l) == 0L) break; if (k > 7) k = 7; jjCheckNAddStates(3, 7); break; case 25: if ((0x3FF000000000000L & l) == 0L) break; if (k > 7) k = 7; jjCheckNAdd(25); break; case 26: if ((0x3FF000000000000L & l) != 0L) jjCheckNAddTwoStates(26, 27); break; case 27: if (this.curChar != '.') break; if (k > 9) k = 9; jjCheckNAddTwoStates(28, 29); break; case 28: if ((0x3FF000000000000L & l) == 0L) break; if (k > 9) k = 9; jjCheckNAddTwoStates(28, 29); break; case 30: if ((0x280000000000L & l) != 0L) jjCheckNAdd(31); break; case 31: if ((0x3FF000000000000L & l) == 0L) break; if (k > 9) k = 9; jjCheckNAdd(31); break; case 32: if ((0x3FF000000000000L & l) != 0L) jjCheckNAddTwoStates(32, 33); break; case 34: if ((0x280000000000L & l) != 0L) jjCheckNAdd(35); break; case 35: if ((0x3FF000000000000L & l) == 0L) break; if (k > 9) k = 9; jjCheckNAdd(35); break; } } while (j != i); } else if (this.curChar < '€') { long l = 1L << (this.curChar & 0x3F); do { switch (this.jjstateSet[--j]) { case 0: case 11: if ((0x7FFFFFE87FFFFFEL & l) == 0L) break; if (k > 12) k = 12; jjCheckNAdd(11); break; case 2: if ((0x2000000020L & l) != 0L) jjAddStates(15, 16); break; case 6: if ((0xFFFFFFFFEFFFFFFFL & l) != 0L) jjCheckNAddStates(10, 12); break; case 7: if (this.curChar == '\\') this.jjstateSet[this.jjnewStateCnt++] = 8; break; case 8: if ((0x14404410000000L & l) != 0L) jjCheckNAddStates(10, 12); break; case 14: jjAddStates(0, 2); break; case 19: jjCheckNAddTwoStates(19, 20); break; case 21: case 22: jjCheckNAddTwoStates(22, 20); break; case 29: if ((0x2000000020L & l) != 0L) jjAddStates(17, 18); break; case 33: if ((0x2000000020L & l) != 0L) jjAddStates(19, 20); break; } } while (j != i); } else { int m = this.curChar >> 8; int n = m >> 6; long l1 = 1L << (m & 0x3F); int i1 = (this.curChar & 0xFF) >> 6; long l2 = 1L << (this.curChar & 0x3F); do { switch (this.jjstateSet[--j]) { case 0: case 11: if (!jjCanMove_1(m, n, i1, l1, l2)) break; if (k > 12) k = 12; jjCheckNAdd(11); break; case 6: if (jjCanMove_0(m, n, i1, l1, l2)) jjAddStates(10, 12); break; case 14: if (jjCanMove_0(m, n, i1, l1, l2)) jjAddStates(0, 2); break; case 19: if (jjCanMove_0(m, n, i1, l1, l2)) jjCheckNAddTwoStates(19, 20); break; case 21: case 22: if (jjCanMove_0(m, n, i1, l1, l2)) jjCheckNAddTwoStates(22, 20); break; } } while (j != i); } if (k != Integer.MAX_VALUE) { this.jjmatchedKind = k; this.jjmatchedPos = paramInt2; k = Integer.MAX_VALUE; } paramInt2++; if ((j = this.jjnewStateCnt) == (i = 36 - (this.jjnewStateCnt = i))) return paramInt2; try { this.curChar = this.input_stream.readChar(); } catch (IOException iOException) { return paramInt2; } } } private final int jjStopStringLiteralDfa_0(int paramInt, long paramLong) { switch (paramInt) { case 0: return ((paramLong & 0x100000000L) != 0L) ? 1 : (((paramLong & 0x200000000L) != 0L) ? 13 : -1); } return -1; } private final int jjStartNfa_0(int paramInt, long paramLong) { return jjMoveNfa_0(jjStopStringLiteralDfa_0(paramInt, paramLong), paramInt + 1); } private final int jjStartNfaWithStates_0(int paramInt1, int paramInt2, int paramInt3) { this.jjmatchedKind = paramInt2; this.jjmatchedPos = paramInt1; try { this.curChar = this.input_stream.readChar(); } catch (IOException iOException) { return paramInt1 + 1; } return jjMoveNfa_0(paramInt3, paramInt1 + 1); } private final int jjMoveStringLiteralDfa0_0() { switch (this.curChar) { case '!': this.jjmatchedKind = 35; return jjMoveStringLiteralDfa1_0(67108864L); case '%': return jjStopAtPos(0, 34); case '&': return jjMoveStringLiteralDfa1_0(134217728L); case '(': return jjStopAtPos(0, 40); case ')': return jjStopAtPos(0, 41); case '*': return jjStopAtPos(0, 31); case '+': return jjStopAtPos(0, 29); case ',': return jjStopAtPos(0, 20); case '-': return jjStopAtPos(0, 30); case '.': return jjStartNfaWithStates_0(0, 32, 1); case '/': return jjStartNfaWithStates_0(0, 33, 13); case ';': return jjStopAtPos(0, 19); case '<': this.jjmatchedKind = 22; return jjMoveStringLiteralDfa1_0(16777216L); case '=': this.jjmatchedKind = 18; return jjMoveStringLiteralDfa1_0(8388608L); case '>': this.jjmatchedKind = 21; return jjMoveStringLiteralDfa1_0(33554432L); case '[': return jjStopAtPos(0, 38); case ']': return jjStopAtPos(0, 39); case '^': this.jjmatchedKind = 36; return jjMoveStringLiteralDfa1_0(137438953472L); case '|': return jjMoveStringLiteralDfa1_0(268435456L); } return jjMoveNfa_0(0, 0); } private final int jjMoveStringLiteralDfa1_0(long paramLong) { try { this.curChar = this.input_stream.readChar(); } catch (IOException iOException) { jjStopStringLiteralDfa_0(0, paramLong); return 1; } switch (this.curChar) { case '&': if ((paramLong & 0x8000000L) != 0L) return jjStopAtPos(1, 27); break; case '=': if ((paramLong & 0x800000L) != 0L) return jjStopAtPos(1, 23); if ((paramLong & 0x1000000L) != 0L) return jjStopAtPos(1, 24); if ((paramLong & 0x2000000L) != 0L) return jjStopAtPos(1, 25); if ((paramLong & 0x4000000L) != 0L) return jjStopAtPos(1, 26); break; case '^': if ((paramLong & 0x2000000000L) != 0L) return jjStopAtPos(1, 37); break; case '|': if ((paramLong & 0x10000000L) != 0L) return jjStopAtPos(1, 28); break; } return jjStartNfa_0(0, paramLong); } private final int jjMoveNfa_0(int paramInt1, int paramInt2) { int i = 0; this.jjnewStateCnt = 36; int j = 1; this.jjstateSet[0] = paramInt1; int k = Integer.MAX_VALUE; while (true) { if (++this.jjround == Integer.MAX_VALUE) ReInitRounds(); if (this.curChar < '@') { long l = 1L << this.curChar; do { switch (this.jjstateSet[--j]) { case 13: if (this.curChar == '*') { jjCheckNAddTwoStates(19, 20); break; } if (this.curChar == '/') jjCheckNAddStates(0, 2); break; case 0: if ((0x3FF000000000000L & l) != 0L) { if (k > 7) k = 7; jjCheckNAddStates(3, 7); break; } if (this.curChar == '/') { jjAddStates(8, 9); break; } if (this.curChar == '$') { if (k > 15) k = 15; jjCheckNAdd(11); break; } if (this.curChar == '"') { jjCheckNAddStates(10, 12); break; } if (this.curChar == '.') jjCheckNAdd(1); break; case 1: if ((0x3FF000000000000L & l) == 0L) break; if (k > 9) k = 9; jjCheckNAddTwoStates(1, 2); break; case 3: if ((0x280000000000L & l) != 0L) jjCheckNAdd(4); break; case 4: if ((0x3FF000000000000L & l) == 0L) break; if (k > 9) k = 9; jjCheckNAdd(4); break; case 5: if (this.curChar == '"') jjCheckNAddStates(10, 12); break; case 6: if ((0xFFFFFFFBFFFFDBFFL & l) != 0L) jjCheckNAddStates(10, 12); break; case 8: if ((0x8400000000L & l) != 0L) jjCheckNAddStates(10, 12); break; case 9: if (this.curChar == '"' && k > 11) k = 11; break; case 10: if (this.curChar != '$') break; if (k > 15) k = 15; jjCheckNAdd(11); break; case 11: if ((0x3FF001000000000L & l) == 0L) break; if (k > 15) k = 15; jjCheckNAdd(11); break; case 12: if (this.curChar == '/') jjAddStates(8, 9); break; case 14: if ((0xFFFFFFFFFFFFDBFFL & l) != 0L) jjCheckNAddStates(0, 2); break; case 15: if ((0x2400L & l) != 0L && k > 5) k = 5; break; case 16: if (this.curChar == '\n' && k > 5) k = 5; break; case 17: if (this.curChar == '\r') this.jjstateSet[this.jjnewStateCnt++] = 16; break; case 18: if (this.curChar == '*') jjCheckNAddTwoStates(19, 20); break; case 19: if ((0xFFFFFBFFFFFFFFFFL & l) != 0L) jjCheckNAddTwoStates(19, 20); break; case 20: if (this.curChar == '*') jjAddStates(13, 14); break; case 21: if ((0xFFFF7FFFFFFFFFFFL & l) != 0L) jjCheckNAddTwoStates(22, 20); break; case 22: if ((0xFFFFFBFFFFFFFFFFL & l) != 0L) jjCheckNAddTwoStates(22, 20); break; case 23: if (this.curChar == '/' && k > 6) k = 6; break; case 24: if ((0x3FF000000000000L & l) == 0L) break; if (k > 7) k = 7; jjCheckNAddStates(3, 7); break; case 25: if ((0x3FF000000000000L & l) == 0L) break; if (k > 7) k = 7; jjCheckNAdd(25); break; case 26: if ((0x3FF000000000000L & l) != 0L) jjCheckNAddTwoStates(26, 27); break; case 27: if (this.curChar != '.') break; if (k > 9) k = 9; jjCheckNAddTwoStates(28, 29); break; case 28: if ((0x3FF000000000000L & l) == 0L) break; if (k > 9) k = 9; jjCheckNAddTwoStates(28, 29); break; case 30: if ((0x280000000000L & l) != 0L) jjCheckNAdd(31); break; case 31: if ((0x3FF000000000000L & l) == 0L) break; if (k > 9) k = 9; jjCheckNAdd(31); break; case 32: if ((0x3FF000000000000L & l) != 0L) jjCheckNAddTwoStates(32, 33); break; case 34: if ((0x280000000000L & l) != 0L) jjCheckNAdd(35); break; case 35: if ((0x3FF000000000000L & l) == 0L) break; if (k > 9) k = 9; jjCheckNAdd(35); break; } } while (j != i); } else if (this.curChar < '€') { long l = 1L << (this.curChar & 0x3F); do { switch (this.jjstateSet[--j]) { case 0: case 11: if ((0x7FFFFFE87FFFFFEL & l) == 0L) break; if (k > 15) k = 15; jjCheckNAdd(11); break; case 2: if ((0x2000000020L & l) != 0L) jjAddStates(15, 16); break; case 6: if ((0xFFFFFFFFEFFFFFFFL & l) != 0L) jjCheckNAddStates(10, 12); break; case 7: if (this.curChar == '\\') this.jjstateSet[this.jjnewStateCnt++] = 8; break; case 8: if ((0x14404410000000L & l) != 0L) jjCheckNAddStates(10, 12); break; case 14: jjAddStates(0, 2); break; case 19: jjCheckNAddTwoStates(19, 20); break; case 21: case 22: jjCheckNAddTwoStates(22, 20); break; case 29: if ((0x2000000020L & l) != 0L) jjAddStates(17, 18); break; case 33: if ((0x2000000020L & l) != 0L) jjAddStates(19, 20); break; } } while (j != i); } else { int m = this.curChar >> 8; int n = m >> 6; long l1 = 1L << (m & 0x3F); int i1 = (this.curChar & 0xFF) >> 6; long l2 = 1L << (this.curChar & 0x3F); do { switch (this.jjstateSet[--j]) { case 0: case 11: if (!jjCanMove_1(m, n, i1, l1, l2)) break; if (k > 15) k = 15; jjCheckNAdd(11); break; case 6: if (jjCanMove_0(m, n, i1, l1, l2)) jjAddStates(10, 12); break; case 14: if (jjCanMove_0(m, n, i1, l1, l2)) jjAddStates(0, 2); break; case 19: if (jjCanMove_0(m, n, i1, l1, l2)) jjCheckNAddTwoStates(19, 20); break; case 21: case 22: if (jjCanMove_0(m, n, i1, l1, l2)) jjCheckNAddTwoStates(22, 20); break; } } while (j != i); } if (k != Integer.MAX_VALUE) { this.jjmatchedKind = k; this.jjmatchedPos = paramInt2; k = Integer.MAX_VALUE; } paramInt2++; if ((j = this.jjnewStateCnt) == (i = 36 - (this.jjnewStateCnt = i))) return paramInt2; try { this.curChar = this.input_stream.readChar(); } catch (IOException iOException) { return paramInt2; } } } private static final boolean jjCanMove_0(int paramInt1, int paramInt2, int paramInt3, long paramLong1, long paramLong2) { switch (paramInt1) { case 0: return ((jjbitVec2[paramInt3] & paramLong2) != 0L); } return ((jjbitVec0[paramInt2] & paramLong1) != 0L); } private static final boolean jjCanMove_1(int paramInt1, int paramInt2, int paramInt3, long paramLong1, long paramLong2) { switch (paramInt1) { case 0: return ((jjbitVec4[paramInt3] & paramLong2) != 0L); case 48: return ((jjbitVec5[paramInt3] & paramLong2) != 0L); case 49: return ((jjbitVec6[paramInt3] & paramLong2) != 0L); case 51: return ((jjbitVec7[paramInt3] & paramLong2) != 0L); case 61: return ((jjbitVec8[paramInt3] & paramLong2) != 0L); } return ((jjbitVec3[paramInt2] & paramLong1) != 0L); } public ParserTokenManager(JavaCharStream paramJavaCharStream) { this.input_stream = paramJavaCharStream; } public ParserTokenManager(JavaCharStream paramJavaCharStream, int paramInt) { this(paramJavaCharStream); SwitchTo(paramInt); } public void ReInit(JavaCharStream paramJavaCharStream) { this.jjmatchedPos = this.jjnewStateCnt = 0; this.curLexState = this.defaultLexState; this.input_stream = paramJavaCharStream; ReInitRounds(); } private final void ReInitRounds() { this.jjround = -2147483647; int i = 36; while (i-- > 0) this.jjrounds[i] = Integer.MIN_VALUE; } public void ReInit(JavaCharStream paramJavaCharStream, int paramInt) { ReInit(paramJavaCharStream); SwitchTo(paramInt); } public void SwitchTo(int paramInt) { if (paramInt >= 2 || paramInt < 0) throw new TokenMgrError("Error: Ignoring invalid lexical state : " + paramInt + ". State unchanged.", 2); this.curLexState = paramInt; } protected Token jjFillToken() { Token token = Token.newToken(this.jjmatchedKind); token.kind = this.jjmatchedKind; String str = jjstrLiteralImages[this.jjmatchedKind]; token.image = (str == null) ? this.input_stream.GetImage() : str; token.beginLine = this.input_stream.getBeginLine(); token.beginColumn = this.input_stream.getBeginColumn(); token.endLine = this.input_stream.getEndLine(); token.endColumn = this.input_stream.getEndColumn(); return token; } public Token getNextToken() { // Byte code: // 0: aconst_null // 1: astore_2 // 2: iconst_0 // 3: istore #4 // 5: aload_0 // 6: aload_0 // 7: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 10: invokevirtual BeginToken : ()C // 13: putfield curChar : C // 16: goto -> 33 // 19: astore #5 // 21: aload_0 // 22: iconst_0 // 23: putfield jjmatchedKind : I // 26: aload_0 // 27: invokevirtual jjFillToken : ()Lorg/nfunk/jep/Token; // 30: astore_3 // 31: aload_3 // 32: areturn // 33: aload_0 // 34: getfield curLexState : I // 37: lookupswitch default -> 209, 0 -> 64, 1 -> 138 // 64: aload_0 // 65: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 68: iconst_0 // 69: invokevirtual backup : (I)V // 72: aload_0 // 73: getfield curChar : C // 76: bipush #32 // 78: if_icmpgt -> 110 // 81: ldc2_w 4294977024 // 84: lconst_1 // 85: aload_0 // 86: getfield curChar : C // 89: lshl // 90: land // 91: lconst_0 // 92: lcmp // 93: ifeq -> 110 // 96: aload_0 // 97: aload_0 // 98: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 101: invokevirtual BeginToken : ()C // 104: putfield curChar : C // 107: goto -> 72 // 110: goto -> 118 // 113: astore #5 // 115: goto -> 5 // 118: aload_0 // 119: ldc 2147483647 // 121: putfield jjmatchedKind : I // 124: aload_0 // 125: iconst_0 // 126: putfield jjmatchedPos : I // 129: aload_0 // 130: invokespecial jjMoveStringLiteralDfa0_0 : ()I // 133: istore #4 // 135: goto -> 209 // 138: aload_0 // 139: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 142: iconst_0 // 143: invokevirtual backup : (I)V // 146: aload_0 // 147: getfield curChar : C // 150: bipush #32 // 152: if_icmpgt -> 184 // 155: ldc2_w 4294977024 // 158: lconst_1 // 159: aload_0 // 160: getfield curChar : C // 163: lshl // 164: land // 165: lconst_0 // 166: lcmp // 167: ifeq -> 184 // 170: aload_0 // 171: aload_0 // 172: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 175: invokevirtual BeginToken : ()C // 178: putfield curChar : C // 181: goto -> 146 // 184: goto -> 192 // 187: astore #5 // 189: goto -> 5 // 192: aload_0 // 193: ldc 2147483647 // 195: putfield jjmatchedKind : I // 198: aload_0 // 199: iconst_0 // 200: putfield jjmatchedPos : I // 203: aload_0 // 204: invokespecial jjMoveStringLiteralDfa0_1 : ()I // 207: istore #4 // 209: aload_0 // 210: getfield jjmatchedKind : I // 213: ldc 2147483647 // 215: if_icmpeq -> 329 // 218: aload_0 // 219: getfield jjmatchedPos : I // 222: iconst_1 // 223: iadd // 224: iload #4 // 226: if_icmpge -> 245 // 229: aload_0 // 230: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 233: iload #4 // 235: aload_0 // 236: getfield jjmatchedPos : I // 239: isub // 240: iconst_1 // 241: isub // 242: invokevirtual backup : (I)V // 245: getstatic org/nfunk/jep/ParserTokenManager.jjtoToken : [J // 248: aload_0 // 249: getfield jjmatchedKind : I // 252: bipush #6 // 254: ishr // 255: laload // 256: lconst_1 // 257: aload_0 // 258: getfield jjmatchedKind : I // 261: bipush #63 // 263: iand // 264: lshl // 265: land // 266: lconst_0 // 267: lcmp // 268: ifeq -> 302 // 271: aload_0 // 272: invokevirtual jjFillToken : ()Lorg/nfunk/jep/Token; // 275: astore_3 // 276: getstatic org/nfunk/jep/ParserTokenManager.jjnewLexState : [I // 279: aload_0 // 280: getfield jjmatchedKind : I // 283: iaload // 284: iconst_m1 // 285: if_icmpeq -> 300 // 288: aload_0 // 289: getstatic org/nfunk/jep/ParserTokenManager.jjnewLexState : [I // 292: aload_0 // 293: getfield jjmatchedKind : I // 296: iaload // 297: putfield curLexState : I // 300: aload_3 // 301: areturn // 302: getstatic org/nfunk/jep/ParserTokenManager.jjnewLexState : [I // 305: aload_0 // 306: getfield jjmatchedKind : I // 309: iaload // 310: iconst_m1 // 311: if_icmpeq -> 5 // 314: aload_0 // 315: getstatic org/nfunk/jep/ParserTokenManager.jjnewLexState : [I // 318: aload_0 // 319: getfield jjmatchedKind : I // 322: iaload // 323: putfield curLexState : I // 326: goto -> 5 // 329: aload_0 // 330: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 333: invokevirtual getEndLine : ()I // 336: istore #5 // 338: aload_0 // 339: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 342: invokevirtual getEndColumn : ()I // 345: istore #6 // 347: aconst_null // 348: astore #7 // 350: iconst_0 // 351: istore #8 // 353: aload_0 // 354: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 357: invokevirtual readChar : ()C // 360: pop // 361: aload_0 // 362: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 365: iconst_1 // 366: invokevirtual backup : (I)V // 369: goto -> 427 // 372: astore #9 // 374: iconst_1 // 375: istore #8 // 377: iload #4 // 379: iconst_1 // 380: if_icmpgt -> 388 // 383: ldc '' // 385: goto -> 395 // 388: aload_0 // 389: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 392: invokevirtual GetImage : ()Ljava/lang/String; // 395: astore #7 // 397: aload_0 // 398: getfield curChar : C // 401: bipush #10 // 403: if_icmpeq -> 415 // 406: aload_0 // 407: getfield curChar : C // 410: bipush #13 // 412: if_icmpne -> 424 // 415: iinc #5, 1 // 418: iconst_0 // 419: istore #6 // 421: goto -> 427 // 424: iinc #6, 1 // 427: iload #8 // 429: ifne -> 460 // 432: aload_0 // 433: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 436: iconst_1 // 437: invokevirtual backup : (I)V // 440: iload #4 // 442: iconst_1 // 443: if_icmpgt -> 451 // 446: ldc '' // 448: goto -> 458 // 451: aload_0 // 452: getfield input_stream : Lorg/nfunk/jep/JavaCharStream; // 455: invokevirtual GetImage : ()Ljava/lang/String; // 458: astore #7 // 460: new org/nfunk/jep/TokenMgrError // 463: dup // 464: iload #8 // 466: aload_0 // 467: getfield curLexState : I // 470: iload #5 // 472: iload #6 // 474: aload #7 // 476: aload_0 // 477: getfield curChar : C // 480: iconst_0 // 481: invokespecial : (ZIIILjava/lang/String;CI)V // 484: athrow // Exception table: // from to target type // 5 16 19 java/io/IOException // 64 110 113 java/io/IOException // 138 184 187 java/io/IOException // 353 369 372 java/io/IOException } }