private final int jjMoveNfa_1()

in ti/phase2/jars/core/src/java/org/apache/ti/script/el/parser/NetUIELParserTokenManager.java [311:613]


    private final int jjMoveNfa_1(int startState, int curPos) {
        int[] nextStates;
        int startsAt = 0;
        jjnewStateCnt = 33;
        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 33:
                            if ((0xffffffffffffdbffL & l) != 0L)
                                jjCheckNAddStates(0, 5);
                            if ((0xff000000000000L & l) != 0L)
                                jjCheckNAddStates(6, 11);
                            else if (curChar == 34) {
                                if (kind > 5)
                                    kind = 5;
                            }
                            if ((0xf000000000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 10;
                            break;
                        case 34:
                            if ((0xffffffffffffdbffL & l) != 0L)
                                jjCheckNAddStates(12, 17);
                            if ((0xff000000000000L & l) != 0L)
                                jjCheckNAddStates(18, 23);
                            else if (curChar == 39) {
                                if (kind > 5)
                                    kind = 5;
                            }
                            if ((0xf000000000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 25;
                            break;
                        case 0:
                            if ((0x3ff000000000000L & l) != 0L) {
                                if (kind > 12)
                                    kind = 12;
                                jjCheckNAdd(32);
                            } else if ((0x1800000000L & l) != 0L) {
                                if (kind > 8)
                                    kind = 8;
                                jjCheckNAdd(31);
                            } else if (curChar == 39)
                                jjCheckNAddStates(12, 17);
                            else if (curChar == 34)
                                jjCheckNAddStates(0, 5);
                            break;
                        case 1:
                            if ((0xffffffffffffdbffL & l) != 0L)
                                jjCheckNAddStates(0, 5);
                            break;
                        case 3:
                            if ((0x3ff000000000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 4;
                            break;
                        case 4:
                            if ((0x3ff000000000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 5;
                            break;
                        case 5:
                        case 8:
                            if ((0x3ff000000000000L & l) != 0L)
                                jjCheckNAdd(6);
                            break;
                        case 6:
                            if ((0x3ff000000000000L & l) != 0L)
                                jjCheckNAddStates(0, 5);
                            break;
                        case 9:
                            if ((0xf000000000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 10;
                            break;
                        case 10:
                            if ((0xff000000000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 11;
                            break;
                        case 11:
                            if ((0xff000000000000L & l) != 0L)
                                jjCheckNAddStates(0, 5);
                            break;
                        case 12:
                            if ((0xff000000000000L & l) != 0L)
                                jjCheckNAddStates(6, 11);
                            break;
                        case 13:
                            if (curChar == 34 && kind > 5)
                                kind = 5;
                            break;
                        case 14:
                            if ((0xff000000000000L & l) != 0L)
                                jjCheckNAddStates(24, 30);
                            break;
                        case 15:
                            if (curChar == 39)
                                jjCheckNAddStates(12, 17);
                            break;
                        case 16:
                            if ((0xffffffffffffdbffL & l) != 0L)
                                jjCheckNAddStates(12, 17);
                            break;
                        case 18:
                            if ((0x3ff000000000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 19;
                            break;
                        case 19:
                            if ((0x3ff000000000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 20;
                            break;
                        case 20:
                        case 23:
                            if ((0x3ff000000000000L & l) != 0L)
                                jjCheckNAdd(21);
                            break;
                        case 21:
                            if ((0x3ff000000000000L & l) != 0L)
                                jjCheckNAddStates(12, 17);
                            break;
                        case 24:
                            if ((0xf000000000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 25;
                            break;
                        case 25:
                            if ((0xff000000000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 26;
                            break;
                        case 26:
                            if ((0xff000000000000L & l) != 0L)
                                jjCheckNAddStates(12, 17);
                            break;
                        case 27:
                            if ((0xff000000000000L & l) != 0L)
                                jjCheckNAddStates(18, 23);
                            break;
                        case 28:
                            if (curChar == 39 && kind > 5)
                                kind = 5;
                            break;
                        case 29:
                            if ((0xff000000000000L & l) != 0L)
                                jjCheckNAddStates(31, 37);
                            break;
                        case 30:
                            if ((0x1800000000L & l) == 0L)
                                break;
                            if (kind > 8)
                                kind = 8;
                            jjCheckNAdd(31);
                            break;
                        case 31:
                            if ((0x3ff001000000000L & l) == 0L)
                                break;
                            if (kind > 8)
                                kind = 8;
                            jjCheckNAdd(31);
                            break;
                        case 32:
                            if ((0x3ff000000000000L & l) == 0L)
                                break;
                            if (kind > 12)
                                kind = 12;
                            jjCheckNAdd(32);
                            break;
                        default :
                            break;
                    }
                } while (i != startsAt);
            } else if (curChar < 128) {
                long l = 1L << (curChar & 077);
                MatchLoop: do {
                    switch (jjstateSet[--i]) {
                        case 33:
                            jjCheckNAddStates(0, 5);
                            if ((0x100000001000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 8;
                            else if ((0x20000000200000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 3;
                            break;
                        case 34:
                            jjCheckNAddStates(12, 17);
                            if ((0x100000001000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 23;
                            else if ((0x20000000200000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 18;
                            break;
                        case 0:
                        case 31:
                            if ((0x7fffffe87fffffeL & l) == 0L)
                                break;
                            if (kind > 8)
                                kind = 8;
                            jjCheckNAdd(31);
                            break;
                        case 1:
                            jjCheckNAddStates(0, 5);
                            break;
                        case 2:
                            if ((0x20000000200000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 3;
                            break;
                        case 3:
                            if ((0x7e0000007eL & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 4;
                            break;
                        case 4:
                            if ((0x7e0000007eL & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 5;
                            break;
                        case 5:
                        case 8:
                            if ((0x7e0000007eL & l) != 0L)
                                jjCheckNAdd(6);
                            break;
                        case 6:
                            if ((0x7e0000007eL & l) != 0L)
                                jjCheckNAddStates(0, 5);
                            break;
                        case 7:
                            if ((0x100000001000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 8;
                            break;
                        case 16:
                            jjCheckNAddStates(12, 17);
                            break;
                        case 17:
                            if ((0x20000000200000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 18;
                            break;
                        case 18:
                            if ((0x7e0000007eL & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 19;
                            break;
                        case 19:
                            if ((0x7e0000007eL & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 20;
                            break;
                        case 20:
                        case 23:
                            if ((0x7e0000007eL & l) != 0L)
                                jjCheckNAdd(21);
                            break;
                        case 21:
                            if ((0x7e0000007eL & l) != 0L)
                                jjCheckNAddStates(12, 17);
                            break;
                        case 22:
                            if ((0x100000001000000L & l) != 0L)
                                jjstateSet[jjnewStateCnt++] = 23;
                            break;
                        default :
                            break;
                    }
                } while (i != startsAt);
            } else {
                int hiByte = (int) (curChar >> 8);
                int i1 = hiByte >> 6;
                long l1 = 1L << (hiByte & 077);
                int i2 = (curChar & 0xff) >> 6;
                long l2 = 1L << (curChar & 077);
                MatchLoop: do {
                    switch (jjstateSet[--i]) {
                        case 33:
                        case 1:
                            if (jjCanMove_0(hiByte, i1, i2, l1, l2))
                                jjCheckNAddStates(0, 5);
                            break;
                        case 34:
                        case 16:
                            if (jjCanMove_0(hiByte, i1, i2, l1, l2))
                                jjCheckNAddStates(12, 17);
                            break;
                        case 0:
                        case 31:
                            if (!jjCanMove_1(hiByte, i1, i2, l1, l2))
                                break;
                            if (kind > 8)
                                kind = 8;
                            jjCheckNAdd(31);
                            break;
                        default :
                            break;
                    }
                } while (i != startsAt);
            }
            if (kind != 0x7fffffff) {
                jjmatchedKind = kind;
                jjmatchedPos = curPos;
                kind = 0x7fffffff;
            }
            ++curPos;
            if ((i = jjnewStateCnt) == (startsAt = 33 - (jjnewStateCnt = startsAt)))
                return curPos;
            try {
                curChar = input_stream.readChar();
            } catch (java.io.IOException e) {
                return curPos;
            }
        }
    }