commonMain.org.luaj.vm2.parser.LuaParserTokenManager.kt Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of luak Show documentation
Show all versions of luak Show documentation
Multiplatform Kotlin LuaJ port (LUA interpreter)
/* Generated By:JavaCC: Do not edit this line. LuaParserTokenManager.java */
package org.luaj.vm2.parser
import org.luaj.vm2.internal.*
import org.luaj.vm2.io.*
/** Token Manager. */
class LuaParserTokenManager
/** Constructor. */
(protected var input_stream: SimpleCharStream) : LuaParserConstants {
/** Debug output. */
@kotlin.jvm.JvmField
var debugStream: LuaWriter = JSystem.out
private val jjrounds = IntArray(66)
private val jjstateSet = IntArray(132)
private val jjimage = StringBuilder()
private var image: StringBuilder? = jjimage
private var jjimageLen: Int = 0
private val lengthOfMatch: Int = 0
protected var curChar: Char = ' '
internal var curLexState = 0
internal var defaultLexState = 0
internal var jjnewStateCnt: Int = 0
internal var jjround: Int = 0
internal var jjmatchedPos: Int = 0
internal var jjmatchedKind: Int = 0
/** Get the next Token. */
val nextToken: Token
get() {
var specialToken: Token? = null
var matchedToken: Token
var curPos = 0
EOFLoop@ while (true) {
try {
curChar = input_stream.BeginToken()
} catch (e: IOException) {
jjmatchedKind = 0
matchedToken = jjFillToken()
matchedToken.specialToken = specialToken
return matchedToken
}
image = jjimage
image!!.clear()
jjimageLen = 0
while (true) {
when (curLexState) {
0 -> {
try {
input_stream.backup(0)
while (curChar.toInt() <= 32 && 0x100003600L and (1L shl curChar.toInt()) != 0L)
curChar = input_stream.BeginToken()
} catch (e1: IOException) {
continue@EOFLoop
}
jjmatchedKind = 0x7fffffff
jjmatchedPos = 0
curPos = jjMoveStringLiteralDfa0_0()
}
1 -> {
jjmatchedKind = 17
jjmatchedPos = -1
curPos = 0
curPos = jjMoveStringLiteralDfa0_1()
}
2 -> {
jjmatchedKind = 0x7fffffff
jjmatchedPos = 0
curPos = jjMoveStringLiteralDfa0_2()
if (jjmatchedPos == 0 && jjmatchedKind > 28) {
jjmatchedKind = 28
}
}
3 -> {
jjmatchedKind = 0x7fffffff
jjmatchedPos = 0
curPos = jjMoveStringLiteralDfa0_3()
if (jjmatchedPos == 0 && jjmatchedKind > 28) {
jjmatchedKind = 28
}
}
4 -> {
jjmatchedKind = 0x7fffffff
jjmatchedPos = 0
curPos = jjMoveStringLiteralDfa0_4()
if (jjmatchedPos == 0 && jjmatchedKind > 28) {
jjmatchedKind = 28
}
}
5 -> {
jjmatchedKind = 0x7fffffff
jjmatchedPos = 0
curPos = jjMoveStringLiteralDfa0_5()
if (jjmatchedPos == 0 && jjmatchedKind > 28) {
jjmatchedKind = 28
}
}
6 -> {
jjmatchedKind = 0x7fffffff
jjmatchedPos = 0
curPos = jjMoveStringLiteralDfa0_6()
if (jjmatchedPos == 0 && jjmatchedKind > 28) {
jjmatchedKind = 28
}
}
7 -> {
jjmatchedKind = 0x7fffffff
jjmatchedPos = 0
curPos = jjMoveStringLiteralDfa0_7()
if (jjmatchedPos == 0 && jjmatchedKind > 28) {
jjmatchedKind = 28
}
}
8 -> {
jjmatchedKind = 0x7fffffff
jjmatchedPos = 0
curPos = jjMoveStringLiteralDfa0_8()
if (jjmatchedPos == 0 && jjmatchedKind > 28) {
jjmatchedKind = 28
}
}
9 -> {
jjmatchedKind = 0x7fffffff
jjmatchedPos = 0
curPos = jjMoveStringLiteralDfa0_9()
if (jjmatchedPos == 0 && jjmatchedKind > 28) {
jjmatchedKind = 28
}
}
10 -> {
jjmatchedKind = 0x7fffffff
jjmatchedPos = 0
curPos = jjMoveStringLiteralDfa0_10()
if (jjmatchedPos == 0 && jjmatchedKind > 28) {
jjmatchedKind = 28
}
}
11 -> {
jjmatchedKind = 0x7fffffff
jjmatchedPos = 0
curPos = jjMoveStringLiteralDfa0_11()
if (jjmatchedPos == 0 && jjmatchedKind > 28) {
jjmatchedKind = 28
}
}
}
if (jjmatchedKind != 0x7fffffff) {
if (jjmatchedPos + 1 < curPos)
input_stream.backup(curPos - jjmatchedPos - 1)
if (jjtoToken[jjmatchedKind shr 6] and (1L shl (jjmatchedKind and 63)) != 0L) {
matchedToken = jjFillToken()
matchedToken.specialToken = specialToken
if (jjnewLexState[jjmatchedKind] != -1)
curLexState = jjnewLexState[jjmatchedKind]
return matchedToken
} else if (jjtoSkip[jjmatchedKind shr 6] and (1L shl (jjmatchedKind and 63)) != 0L) {
if (jjtoSpecial[jjmatchedKind shr 6] and (1L shl (jjmatchedKind and 63)) != 0L) {
matchedToken = jjFillToken()
if (specialToken == null)
specialToken = matchedToken
else {
matchedToken.specialToken = specialToken
specialToken = (run { specialToken!!.next = matchedToken; matchedToken })
}
SkipLexicalActions(matchedToken)
} else
SkipLexicalActions(null)
if (jjnewLexState[jjmatchedKind] != -1)
curLexState = jjnewLexState[jjmatchedKind]
continue@EOFLoop
}
jjimageLen += jjmatchedPos + 1
if (jjnewLexState[jjmatchedKind] != -1)
curLexState = jjnewLexState[jjmatchedKind]
curPos = 0
jjmatchedKind = 0x7fffffff
try {
curChar = input_stream.readChar()
continue
} catch (e1: IOException) {
}
}
var error_line = input_stream.endLine
var error_column = input_stream.endColumn
var error_after: String? = null
var EOFSeen = false
try {
input_stream.readChar()
input_stream.backup(1)
} catch (e1: IOException) {
EOFSeen = true
error_after = if (curPos <= 1) "" else input_stream.GetImage()
if (curChar == '\n' || curChar == '\r') {
error_line++
error_column = 0
} else
error_column++
}
if (!EOFSeen) {
input_stream.backup(1)
error_after = if (curPos <= 1) "" else input_stream.GetImage()
}
throw TokenMgrError(
EOFSeen,
curLexState,
error_line,
error_column,
error_after!!,
curChar,
TokenMgrError.LEXICAL_ERROR
)
}
}
}
/** Set debug output. */
fun setDebugStream(ds: LuaWriter) {
debugStream = ds
}
private fun jjStopAtPos(pos: Int, kind: Int): Int {
jjmatchedKind = kind
jjmatchedPos = pos
return pos + 1
}
private fun jjMoveStringLiteralDfa0_2(): Int {
when (curChar.toInt()) {
93 -> return jjMoveStringLiteralDfa1_2(0x40000L)
else -> return 1
}
}
private fun jjMoveStringLiteralDfa1_2(active0: Long): Int {
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 1
}
when (curChar.toInt()) {
93 -> if (active0 and 0x40000L != 0L)
return jjStopAtPos(1, 18)
else -> return 2
}
return 2
}
private fun jjMoveStringLiteralDfa0_11(): Int {
return jjMoveNfa_11(6, 0)
}
private fun jjMoveNfa_11(startState: Int, curPos: Int): Int {
var curPos = curPos
var startsAt = 0
jjnewStateCnt = 7
var i = 1
jjstateSet[0] = startState
var kind = 0x7fffffff
while (true) {
if (++jjround == 0x7fffffff)
ReInitRounds()
if (curChar.toInt() < 64) {
val l = 1L shl curChar.toInt()
do {
when (jjstateSet[--i]) {
0, 1 -> if (curChar.toInt() == 61)
jjCheckNAddTwoStates(1, 2)
3 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 0
4 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 3
5 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 4
else -> {
}
}
} while (i != startsAt)
} else if (curChar.toInt() < 128) {
val l = 1L shl (curChar.toInt() and 63)
do {
when (jjstateSet[--i]) {
2 -> if (curChar.toInt() == 93 && kind > 27)
kind = 27
6 -> if (curChar.toInt() == 93)
jjstateSet[jjnewStateCnt++] = 5
else -> {
}
}
} while (i != startsAt)
} else {
val hiByte = curChar.toInt() shr 8
val i1 = hiByte shr 6
val l1 = 1L shl (hiByte and 63)
val i2 = curChar.toInt() and 0xff shr 6
val l2 = 1L shl (curChar.toInt() and 63)
do {
when (jjstateSet[--i]) {
else -> {
}
}
} while (i != startsAt)
}
if (kind != 0x7fffffff) {
jjmatchedKind = kind
jjmatchedPos = curPos
kind = 0x7fffffff
}
++curPos
if ((run { i = jjnewStateCnt; i }) == (run { startsAt = 7 - (run { jjnewStateCnt = startsAt; startsAt }); startsAt }))
return curPos
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return curPos
}
}
}
private fun jjMoveStringLiteralDfa0_10(): Int {
when (curChar.toInt()) {
93 -> return jjMoveStringLiteralDfa1_10(0x4000000L)
else -> return 1
}
}
private fun jjMoveStringLiteralDfa1_10(active0: Long): Int {
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 1
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa2_10(active0, 0x4000000L)
else -> return 2
}
}
private fun jjMoveStringLiteralDfa2_10(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return 2
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 2
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa3_10(active0, 0x4000000L)
else -> return 3
}
}
private fun jjMoveStringLiteralDfa3_10(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return 3
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 3
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa4_10(active0, 0x4000000L)
else -> return 4
}
}
private fun jjMoveStringLiteralDfa4_10(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if (active0 == 0L)
return 4
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 4
}
when (curChar.toInt()) {
93 -> if (active0 and 0x4000000L != 0L)
return jjStopAtPos(4, 26)
else -> return 5
}
return 5
}
private fun jjMoveStringLiteralDfa0_9(): Int {
when (curChar.toInt()) {
93 -> return jjMoveStringLiteralDfa1_9(0x2000000L)
else -> return 1
}
}
private fun jjMoveStringLiteralDfa1_9(active0: Long): Int {
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 1
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa2_9(active0, 0x2000000L)
else -> return 2
}
}
private fun jjMoveStringLiteralDfa2_9(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return 2
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 2
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa3_9(active0, 0x2000000L)
else -> return 3
}
}
private fun jjMoveStringLiteralDfa3_9(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return 3
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 3
}
when (curChar.toInt()) {
93 -> if (active0 and 0x2000000L != 0L)
return jjStopAtPos(3, 25)
else -> return 4
}
return 4
}
private fun jjMoveStringLiteralDfa0_8(): Int {
when (curChar.toInt()) {
93 -> return jjMoveStringLiteralDfa1_8(0x1000000L)
else -> return 1
}
}
private fun jjMoveStringLiteralDfa1_8(active0: Long): Int {
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 1
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa2_8(active0, 0x1000000L)
else -> return 2
}
}
private fun jjMoveStringLiteralDfa2_8(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return 2
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 2
}
when (curChar.toInt()) {
93 -> if (active0 and 0x1000000L != 0L)
return jjStopAtPos(2, 24)
else -> return 3
}
return 3
}
private fun jjMoveStringLiteralDfa0_7(): Int {
when (curChar.toInt()) {
93 -> return jjMoveStringLiteralDfa1_7(0x800000L)
else -> return 1
}
}
private fun jjMoveStringLiteralDfa1_7(active0: Long): Int {
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 1
}
when (curChar.toInt()) {
93 -> if (active0 and 0x800000L != 0L)
return jjStopAtPos(1, 23)
else -> return 2
}
return 2
}
private fun jjStopStringLiteralDfa_0(pos: Int, active0: Long, active1: Long): Int {
when (pos) {
0 -> {
if (active0 and 0x7800L != 0L || active1 and 0x2000L != 0L)
return 14
if (active1 and 0x1008200L != 0L)
return 31
if (active0 and 0x7ffffe0000000L != 0L) {
jjmatchedKind = 51
return 17
}
return if (active0 and 0x103c0L != 0L || active1 and 0x80000L != 0L) 7 else -1
}
1 -> {
if (active0 and 0x103c0L != 0L)
return 6
if (active0 and 0x7000L != 0L)
return 13
if (active0 and 0x118080000000L != 0L)
return 17
if (active0 and 0x7ee7f60000000L != 0L) {
if (jjmatchedPos != 1) {
jjmatchedKind = 51
jjmatchedPos = 1
}
return 17
}
return -1
}
2 -> {
if (active0 and 0x7e26b40000000L != 0L) {
jjmatchedKind = 51
jjmatchedPos = 2
return 17
}
if (active0 and 0x6000L != 0L)
return 12
if (active0 and 0x3c0L != 0L)
return 5
return if (active0 and 0xc1420000000L != 0L) 17 else -1
}
3 -> {
if (active0 and 0x380L != 0L)
return 4
if (active0 and 0x6622840000000L != 0L) {
if (jjmatchedPos != 3) {
jjmatchedKind = 51
jjmatchedPos = 3
}
return 17
}
if (active0 and 0x1804300000000L != 0L)
return 17
return if (active0 and 0x4000L != 0L) 9 else -1
}
4 -> {
if (active0 and 0x602200000000L != 0L) {
jjmatchedKind = 51
jjmatchedPos = 4
return 17
}
if (active0 and 0x300L != 0L)
return 3
return if (active0 and 0x6020840000000L != 0L) 17 else -1
}
5 -> {
if (active0 and 0x200L != 0L)
return 0
if (active0 and 0x600200000000L != 0L)
return 17
if (active0 and 0x2000000000L != 0L) {
jjmatchedKind = 51
jjmatchedPos = 5
return 17
}
return -1
}
6 -> {
if (active0 and 0x2000000000L != 0L) {
jjmatchedKind = 51
jjmatchedPos = 6
return 17
}
return -1
}
else -> return -1
}
}
private fun jjStartNfa_0(pos: Int, active0: Long, active1: Long): Int {
return jjMoveNfa_0(jjStopStringLiteralDfa_0(pos, active0, active1), pos + 1)
}
private fun jjMoveStringLiteralDfa0_0(): Int {
when (curChar.toInt()) {
35 -> return jjStopAtPos(0, 69)
37 -> return jjStopAtPos(0, 87)
40 -> return jjStopAtPos(0, 75)
41 -> return jjStopAtPos(0, 76)
42 -> return jjStopAtPos(0, 84)
43 -> return jjStopAtPos(0, 82)
44 -> return jjStopAtPos(0, 72)
45 -> {
jjmatchedKind = 83
return jjMoveStringLiteralDfa1_0(0x103c0L, 0x0L)
}
46 -> {
jjmatchedKind = 73
return jjMoveStringLiteralDfa1_0(0x0L, 0x1008000L)
}
47 -> return jjStopAtPos(0, 85)
58 -> {
jjmatchedKind = 74
return jjMoveStringLiteralDfa1_0(0x0L, 0x2L)
}
59 -> return jjStopAtPos(0, 70)
60 -> {
jjmatchedKind = 89
return jjMoveStringLiteralDfa1_0(0x0L, 0x4000000L)
}
61 -> {
jjmatchedKind = 71
return jjMoveStringLiteralDfa1_0(0x0L, 0x20000000L)
}
62 -> {
jjmatchedKind = 91
return jjMoveStringLiteralDfa1_0(0x0L, 0x10000000L)
}
91 -> {
jjmatchedKind = 77
return jjMoveStringLiteralDfa1_0(0x7800L, 0x0L)
}
93 -> return jjStopAtPos(0, 78)
94 -> return jjStopAtPos(0, 86)
97 -> return jjMoveStringLiteralDfa1_0(0x20000000L, 0x0L)
98 -> return jjMoveStringLiteralDfa1_0(0x40000000L, 0x0L)
100 -> return jjMoveStringLiteralDfa1_0(0x80000000L, 0x0L)
101 -> return jjMoveStringLiteralDfa1_0(0x700000000L, 0x0L)
102 -> return jjMoveStringLiteralDfa1_0(0x3800000000L, 0x0L)
103 -> return jjMoveStringLiteralDfa1_0(0x4000000000L, 0x0L)
105 -> return jjMoveStringLiteralDfa1_0(0x18000000000L, 0x0L)
108 -> return jjMoveStringLiteralDfa1_0(0x20000000000L, 0x0L)
110 -> return jjMoveStringLiteralDfa1_0(0xc0000000000L, 0x0L)
111 -> return jjMoveStringLiteralDfa1_0(0x100000000000L, 0x0L)
114 -> return jjMoveStringLiteralDfa1_0(0x600000000000L, 0x0L)
116 -> return jjMoveStringLiteralDfa1_0(0x1800000000000L, 0x0L)
117 -> return jjMoveStringLiteralDfa1_0(0x2000000000000L, 0x0L)
119 -> return jjMoveStringLiteralDfa1_0(0x4000000000000L, 0x0L)
123 -> return jjStopAtPos(0, 80)
125 -> return jjStopAtPos(0, 81)
126 -> return jjMoveStringLiteralDfa1_0(0x0L, 0x40000000L)
else -> return jjMoveNfa_0(8, 0)
}
}
private fun jjMoveStringLiteralDfa1_0(active0: Long, active1: Long): Int {
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
jjStopStringLiteralDfa_0(0, active0, active1)
return 1
}
when (curChar.toInt()) {
45 -> {
if (active0 and 0x10000L != 0L) {
jjmatchedKind = 16
jjmatchedPos = 1
}
return jjMoveStringLiteralDfa2_0(active0, 0x3c0L, active1, 0L)
}
46 -> {
if (active1 and 0x1000000L != 0L) {
jjmatchedKind = 88
jjmatchedPos = 1
}
return jjMoveStringLiteralDfa2_0(active0, 0L, active1, 0x8000L)
}
58 -> if (active1 and 0x2L != 0L)
return jjStopAtPos(1, 65)
61 -> {
if (active1 and 0x4000000L != 0L)
return jjStopAtPos(1, 90)
else if (active1 and 0x10000000L != 0L)
return jjStopAtPos(1, 92)
else if (active1 and 0x20000000L != 0L)
return jjStopAtPos(1, 93)
else if (active1 and 0x40000000L != 0L)
return jjStopAtPos(1, 94)
return jjMoveStringLiteralDfa2_0(active0, 0x7000L, active1, 0L)
}
91 -> if (active0 and 0x800L != 0L)
return jjStopAtPos(1, 11)
97 -> return jjMoveStringLiteralDfa2_0(active0, 0x800000000L, active1, 0L)
101 -> return jjMoveStringLiteralDfa2_0(active0, 0x600000000000L, active1, 0L)
102 -> if (active0 and 0x8000000000L != 0L)
return jjStartNfaWithStates_0(1, 39, 17)
104 -> return jjMoveStringLiteralDfa2_0(active0, 0x4800000000000L, active1, 0L)
105 -> return jjMoveStringLiteralDfa2_0(active0, 0x40000000000L, active1, 0L)
108 -> return jjMoveStringLiteralDfa2_0(active0, 0x300000000L, active1, 0L)
110 -> {
return if (active0 and 0x10000000000L != 0L) jjStartNfaWithStates_0(
1,
40,
17
) else jjMoveStringLiteralDfa2_0(
active0,
0x2000420000000L,
active1,
0L
)
}
111 -> {
return if (active0 and 0x80000000L != 0L) jjStartNfaWithStates_0(
1,
31,
17
) else jjMoveStringLiteralDfa2_0(active0, 0xa5000000000L, active1, 0L)
}
114 -> {
return if (active0 and 0x100000000000L != 0L) jjStartNfaWithStates_0(
1,
44,
17
) else jjMoveStringLiteralDfa2_0(
active0,
0x1000040000000L,
active1,
0L
)
}
117 -> return jjMoveStringLiteralDfa2_0(active0, 0x2000000000L, active1, 0L)
else -> {
}
}
return jjStartNfa_0(0, active0, active1)
}
private fun jjMoveStringLiteralDfa2_0(old0: Long, active0: Long, old1: Long, active1: Long): Int {
var active0 = active0
var active1 = active1
if ((run { active0 = active0 and old0; active0 }) or (run { active1 = active1 and old1; active1 }) == 0L)
return jjStartNfa_0(0, old0, old1)
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
jjStopStringLiteralDfa_0(1, active0, active1)
return 2
}
when (curChar.toInt()) {
46 -> if (active1 and 0x8000L != 0L)
return jjStopAtPos(2, 79)
61 -> return jjMoveStringLiteralDfa3_0(active0, 0x6000L, active1, 0L)
91 -> {
return if (active0 and 0x1000L != 0L) jjStopAtPos(2, 12) else jjMoveStringLiteralDfa3_0(
active0,
0x3c0L,
active1,
0L
)
}
99 -> return jjMoveStringLiteralDfa3_0(active0, 0x20000000000L, active1, 0L)
100 -> if (active0 and 0x20000000L != 0L)
return jjStartNfaWithStates_0(2, 29, 17)
else if (active0 and 0x400000000L != 0L)
return jjStartNfaWithStates_0(2, 34, 17)
101 -> return jjMoveStringLiteralDfa3_0(active0, 0x800040000000L, active1, 0L)
105 -> return jjMoveStringLiteralDfa3_0(active0, 0x4000000000000L, active1, 0L)
108 -> {
return if (active0 and 0x40000000000L != 0L) jjStartNfaWithStates_0(
2,
42,
17
) else jjMoveStringLiteralDfa3_0(
active0,
0x800000000L,
active1,
0L
)
}
110 -> return jjMoveStringLiteralDfa3_0(active0, 0x2000000000L, active1, 0L)
112 -> return jjMoveStringLiteralDfa3_0(active0, 0x400000000000L, active1, 0L)
114 -> if (active0 and 0x1000000000L != 0L)
return jjStartNfaWithStates_0(2, 36, 17)
115 -> return jjMoveStringLiteralDfa3_0(active0, 0x300000000L, active1, 0L)
116 -> {
return if (active0 and 0x80000000000L != 0L) jjStartNfaWithStates_0(
2,
43,
17
) else jjMoveStringLiteralDfa3_0(active0, 0x2204000000000L, active1, 0L)
}
117 -> return jjMoveStringLiteralDfa3_0(active0, 0x1000000000000L, active1, 0L)
else -> {
}
}
return jjStartNfa_0(1, active0, active1)
}
private fun jjMoveStringLiteralDfa3_0(old0: Long, active0: Long, old1: Long, active1: Long): Int {
var active0 = active0
var active1 = active1
if ((run { active0 = active0 and old0; active0 }) or (run { active1 = active1 and old1; active1 }) == 0L)
return jjStartNfa_0(1, old0, old1)
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
jjStopStringLiteralDfa_0(2, active0, 0L)
return 3
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa4_0(active0, 0x4380L)
91 -> if (active0 and 0x40L != 0L)
return jjStopAtPos(3, 6)
else if (active0 and 0x2000L != 0L)
return jjStopAtPos(3, 13)
97 -> return jjMoveStringLiteralDfa4_0(active0, 0x20040000000L)
99 -> return jjMoveStringLiteralDfa4_0(active0, 0x2000000000L)
101 -> {
if (active0 and 0x100000000L != 0L) {
jjmatchedKind = 32
jjmatchedPos = 3
} else if (active0 and 0x1000000000000L != 0L)
return jjStartNfaWithStates_0(3, 48, 17)
return jjMoveStringLiteralDfa4_0(active0, 0x400200000000L)
}
105 -> return jjMoveStringLiteralDfa4_0(active0, 0x2000000000000L)
108 -> return jjMoveStringLiteralDfa4_0(active0, 0x4000000000000L)
110 -> if (active0 and 0x800000000000L != 0L)
return jjStartNfaWithStates_0(3, 47, 17)
111 -> if (active0 and 0x4000000000L != 0L)
return jjStartNfaWithStates_0(3, 38, 17)
115 -> return jjMoveStringLiteralDfa4_0(active0, 0x800000000L)
117 -> return jjMoveStringLiteralDfa4_0(active0, 0x200000000000L)
else -> {
}
}
return jjStartNfa_0(2, active0, 0L)
}
private fun jjMoveStringLiteralDfa4_0(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return jjStartNfa_0(2, old0, 0L)
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
jjStopStringLiteralDfa_0(3, active0, 0L)
return 4
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa5_0(active0, 0x300L)
91 -> if (active0 and 0x80L != 0L)
return jjStopAtPos(4, 7)
else if (active0 and 0x4000L != 0L)
return jjStopAtPos(4, 14)
97 -> return jjMoveStringLiteralDfa5_0(active0, 0x400000000000L)
101 -> if (active0 and 0x800000000L != 0L)
return jjStartNfaWithStates_0(4, 35, 17)
else if (active0 and 0x4000000000000L != 0L)
return jjStartNfaWithStates_0(4, 50, 17)
105 -> return jjMoveStringLiteralDfa5_0(active0, 0x200000000L)
107 -> if (active0 and 0x40000000L != 0L)
return jjStartNfaWithStates_0(4, 30, 17)
108 -> if (active0 and 0x20000000000L != 0L)
return jjStartNfaWithStates_0(4, 41, 17)
else if (active0 and 0x2000000000000L != 0L)
return jjStartNfaWithStates_0(4, 49, 17)
114 -> return jjMoveStringLiteralDfa5_0(active0, 0x200000000000L)
116 -> return jjMoveStringLiteralDfa5_0(active0, 0x2000000000L)
else -> {
}
}
return jjStartNfa_0(3, active0, 0L)
}
private fun jjMoveStringLiteralDfa5_0(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return jjStartNfa_0(3, old0, 0L)
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
jjStopStringLiteralDfa_0(4, active0, 0L)
return 5
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa6_0(active0, 0x200L)
91 -> if (active0 and 0x100L != 0L)
return jjStopAtPos(5, 8)
102 -> if (active0 and 0x200000000L != 0L)
return jjStartNfaWithStates_0(5, 33, 17)
105 -> return jjMoveStringLiteralDfa6_0(active0, 0x2000000000L)
110 -> if (active0 and 0x200000000000L != 0L)
return jjStartNfaWithStates_0(5, 45, 17)
116 -> if (active0 and 0x400000000000L != 0L)
return jjStartNfaWithStates_0(5, 46, 17)
else -> {
}
}
return jjStartNfa_0(4, active0, 0L)
}
private fun jjMoveStringLiteralDfa6_0(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return jjStartNfa_0(4, old0, 0L)
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
jjStopStringLiteralDfa_0(5, active0, 0L)
return 6
}
when (curChar.toInt()) {
91 -> if (active0 and 0x200L != 0L)
return jjStopAtPos(6, 9)
111 -> return jjMoveStringLiteralDfa7_0(active0, 0x2000000000L)
else -> {
}
}
return jjStartNfa_0(5, active0, 0L)
}
private fun jjMoveStringLiteralDfa7_0(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return jjStartNfa_0(5, old0, 0L)
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
jjStopStringLiteralDfa_0(6, active0, 0L)
return 7
}
when (curChar.toInt()) {
110 -> if (active0 and 0x2000000000L != 0L)
return jjStartNfaWithStates_0(7, 37, 17)
else -> {
}
}
return jjStartNfa_0(6, active0, 0L)
}
private fun jjStartNfaWithStates_0(pos: Int, kind: Int, state: Int): Int {
jjmatchedKind = kind
jjmatchedPos = pos
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return pos + 1
}
return jjMoveNfa_0(state, pos + 1)
}
private fun jjMoveNfa_0(startState: Int, curPos: Int): Int {
var curPos = curPos
var startsAt = 0
jjnewStateCnt = 66
var i = 1
jjstateSet[0] = startState
var kind = 0x7fffffff
while (true) {
if (++jjround == 0x7fffffff)
ReInitRounds()
if (curChar.toInt() < 64) {
val l = 1L shl curChar.toInt()
do {
when (jjstateSet[--i]) {
8 -> {
when {
0x3ff000000000000L and l != 0L -> {
if (kind > 52)
kind = 52
jjCheckNAddStates(0, 3)
}
curChar.toInt() == 39 -> jjCheckNAddStates(4, 6)
curChar.toInt() == 34 -> jjCheckNAddStates(7, 9)
curChar.toInt() == 46 -> jjCheckNAdd(31)
curChar.toInt() == 45 -> jjstateSet[jjnewStateCnt++] = 7
}
if (curChar.toInt() == 48)
jjstateSet[jjnewStateCnt++] = 19
}
0, 1 -> if (curChar.toInt() == 61)
jjCheckNAddTwoStates(1, 2)
3 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 0
4 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 3
5 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 4
7 -> if (curChar.toInt() == 45)
jjstateSet[jjnewStateCnt++] = 6
9, 10 -> if (curChar.toInt() == 61)
jjCheckNAddTwoStates(10, 11)
12 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 9
13 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 12
14 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 13
17 -> {
if (0x3ff000000000000L and l == 0L) {
} else {
if (kind > 51)
kind = 51
jjstateSet[jjnewStateCnt++] = 17
}
}
18 -> if (curChar.toInt() == 48)
jjstateSet[jjnewStateCnt++] = 19
20 -> if (curChar.toInt() == 46)
jjCheckNAdd(21)
21 -> {
if (0x3ff000000000000L and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddTwoStates(21, 22)
}
}
23 -> if (0x280000000000L and l != 0L)
jjCheckNAdd(24)
24 -> {
if (0x3ff000000000000L and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAdd(24)
}
}
25 -> {
if (0x3ff000000000000L and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddStates(10, 13)
}
}
26 -> if (0x3ff000000000000L and l != 0L)
jjCheckNAddTwoStates(26, 27)
27 -> {
if (curChar.toInt() != 46) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddTwoStates(28, 22)
}
}
28 -> {
if (0x3ff000000000000L and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddTwoStates(28, 22)
}
}
29 -> {
if (0x3ff000000000000L and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddTwoStates(29, 22)
}
}
30 -> if (curChar.toInt() == 46)
jjCheckNAdd(31)
31 -> {
if (0x3ff000000000000L and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddTwoStates(31, 32)
}
}
33 -> if (0x280000000000L and l != 0L)
jjCheckNAdd(34)
34 -> {
if (0x3ff000000000000L and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAdd(34)
}
}
35 -> if (curChar.toInt() == 34)
jjCheckNAddStates(7, 9)
36 -> if (-0x400000001L and l != 0L)
jjCheckNAddStates(7, 9)
37 -> if (curChar.toInt() == 34 && kind > 61)
kind = 61
39 -> jjCheckNAddStates(7, 9)
41 -> if (0x3ff000000000000L and l != 0L)
jjstateSet[jjnewStateCnt++] = 42
42 -> if (0x3ff000000000000L and l != 0L)
jjstateSet[jjnewStateCnt++] = 43
43 -> if (0x3ff000000000000L and l != 0L)
jjstateSet[jjnewStateCnt++] = 44
44, 47 -> if (0x3ff000000000000L and l != 0L)
jjCheckNAddStates(7, 9)
45 -> if (0x3ff000000000000L and l != 0L)
jjCheckNAddStates(14, 17)
46 -> if (0x3ff000000000000L and l != 0L)
jjCheckNAddStates(18, 21)
48 -> if (curChar.toInt() == 39)
jjCheckNAddStates(4, 6)
49 -> if (-0x8000000001L and l != 0L)
jjCheckNAddStates(4, 6)
50 -> if (curChar.toInt() == 39 && kind > 62)
kind = 62
52 -> jjCheckNAddStates(4, 6)
54 -> if (0x3ff000000000000L and l != 0L)
jjstateSet[jjnewStateCnt++] = 55
55 -> if (0x3ff000000000000L and l != 0L)
jjstateSet[jjnewStateCnt++] = 56
56 -> if (0x3ff000000000000L and l != 0L)
jjstateSet[jjnewStateCnt++] = 57
57, 60 -> if (0x3ff000000000000L and l != 0L)
jjCheckNAddStates(4, 6)
58 -> if (0x3ff000000000000L and l != 0L)
jjCheckNAddStates(22, 25)
59 -> if (0x3ff000000000000L and l != 0L)
jjCheckNAddStates(26, 29)
61 -> {
if (0x3ff000000000000L and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddStates(0, 3)
}
}
62 -> if (0x3ff000000000000L and l != 0L)
jjCheckNAddTwoStates(62, 63)
63 -> {
if (curChar.toInt() != 46) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddTwoStates(64, 32)
}
}
64 -> {
if (0x3ff000000000000L and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddTwoStates(64, 32)
}
}
65 -> {
if (0x3ff000000000000L and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddTwoStates(65, 32)
}
}
else -> {
}
}
} while (i != startsAt)
} else if (curChar.toInt() < 128) {
val l = 1L shl (curChar.toInt() and 63)
do {
when (jjstateSet[--i]) {
8 -> if (0x7fffffe87fffffeL and l != 0L) {
if (kind > 51)
kind = 51
jjCheckNAdd(17)
} else if (curChar.toInt() == 91)
jjstateSet[jjnewStateCnt++] = 14
2 -> if (curChar.toInt() == 91 && kind > 10)
kind = 10
6 -> if (curChar.toInt() == 91)
jjstateSet[jjnewStateCnt++] = 5
11 -> if (curChar.toInt() == 91 && kind > 15)
kind = 15
15 -> if (curChar.toInt() == 91)
jjstateSet[jjnewStateCnt++] = 14
16, 17 -> {
if (0x7fffffe87fffffeL and l == 0L) Unit else {
if (kind > 51)
kind = 51
jjCheckNAdd(17)
}
}
19 -> if (0x100000001000000L and l != 0L)
jjAddStates(30, 31)
21 -> {
if (0x7e0000007eL and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddTwoStates(21, 22)
}
}
22 -> if (0x1002000010020L and l != 0L)
jjAddStates(32, 33)
25 -> {
if (0x7e0000007eL and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddStates(10, 13)
}
}
26 -> if (0x7e0000007eL and l != 0L)
jjCheckNAddTwoStates(26, 27)
28 -> {
if (0x7e0000007eL and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddTwoStates(28, 22)
}
}
29 -> {
if (0x7e0000007eL and l == 0L) Unit else {
if (kind > 52)
kind = 52
jjCheckNAddTwoStates(29, 22)
}
}
32 -> if (0x2000000020L and l != 0L)
jjAddStates(34, 35)
36 -> if (-0x10000001L and l != 0L)
jjCheckNAddStates(7, 9)
38 -> if (curChar.toInt() == 92)
jjAddStates(36, 38)
39 -> jjCheckNAddStates(7, 9)
40 -> if (curChar.toInt() == 117)
jjstateSet[jjnewStateCnt++] = 41
41 -> if (0x7e0000007eL and l != 0L)
jjstateSet[jjnewStateCnt++] = 42
42 -> if (0x7e0000007eL and l != 0L)
jjstateSet[jjnewStateCnt++] = 43
43 -> if (0x7e0000007eL and l != 0L)
jjstateSet[jjnewStateCnt++] = 44
44 -> if (0x7e0000007eL and l != 0L)
jjCheckNAddStates(7, 9)
49 -> if (-0x10000001L and l != 0L)
jjCheckNAddStates(4, 6)
51 -> if (curChar.toInt() == 92)
jjAddStates(39, 41)
52 -> jjCheckNAddStates(4, 6)
53 -> if (curChar.toInt() == 117)
jjstateSet[jjnewStateCnt++] = 54
54 -> if (0x7e0000007eL and l != 0L)
jjstateSet[jjnewStateCnt++] = 55
55 -> if (0x7e0000007eL and l != 0L)
jjstateSet[jjnewStateCnt++] = 56
56 -> if (0x7e0000007eL and l != 0L)
jjstateSet[jjnewStateCnt++] = 57
57 -> if (0x7e0000007eL and l != 0L)
jjCheckNAddStates(4, 6)
else -> {
}
}
} while (i != startsAt)
} else {
val hiByte = curChar.toInt() shr 8
val i1 = hiByte shr 6
val l1 = 1L shl (hiByte and 63)
val i2 = curChar.toInt() and 0xff shr 6
val l2 = 1L shl (curChar.toInt() and 63)
do {
when (jjstateSet[--i]) {
36, 39 -> if (jjCanMove_0(hiByte, i1, i2, l1, l2))
jjCheckNAddStates(7, 9)
49, 52 -> if (jjCanMove_0(hiByte, i1, i2, l1, l2))
jjCheckNAddStates(4, 6)
else -> {
}
}
} while (i != startsAt)
}
if (kind != 0x7fffffff) {
jjmatchedKind = kind
jjmatchedPos = curPos
kind = 0x7fffffff
}
++curPos
if ((run { i = jjnewStateCnt; i }) == (run { startsAt = 66 - (run { jjnewStateCnt = startsAt; jjnewStateCnt }); startsAt }))
return curPos
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return curPos
}
}
}
private fun jjMoveStringLiteralDfa0_1(): Int {
return jjMoveNfa_1(4, 0)
}
private fun jjMoveNfa_1(startState: Int, curPos: Int): Int {
var curPos = curPos
var startsAt = 0
jjnewStateCnt = 4
var i = 1
jjstateSet[0] = startState
var kind = 0x7fffffff
while (true) {
if (++jjround == 0x7fffffff)
ReInitRounds()
if (curChar.toInt() < 64) {
val l = 1L shl curChar.toInt()
do {
when (jjstateSet[--i]) {
4 -> {
if (-0x2401L and l != 0L) {
if (kind > 17)
kind = 17
jjCheckNAddStates(42, 44)
} else if (0x2400L and l != 0L) {
if (kind > 17)
kind = 17
}
if (curChar.toInt() == 13)
jjstateSet[jjnewStateCnt++] = 2
}
0 -> {
if (-0x2401L and l == 0L) Unit else {
kind = 17
jjCheckNAddStates(42, 44)
}
}
1 -> if (0x2400L and l != 0L && kind > 17)
kind = 17
2 -> if (curChar.toInt() == 10 && kind > 17)
kind = 17
3 -> if (curChar.toInt() == 13)
jjstateSet[jjnewStateCnt++] = 2
else -> {
}
}
} while (i != startsAt)
} else if (curChar.toInt() < 128) {
val l = 1L shl (curChar.toInt() and 63)
do {
when (jjstateSet[--i]) {
4, 0 -> {
kind = 17
jjCheckNAddStates(42, 44)
}
else -> {
}
}
} while (i != startsAt)
} else {
val hiByte = curChar.toInt() shr 8
val i1 = hiByte shr 6
val l1 = 1L shl (hiByte and 63)
val i2 = curChar.toInt() and 0xff shr 6
val l2 = 1L shl (curChar.toInt() and 63)
do {
when (jjstateSet[--i]) {
4, 0 -> {
if (!jjCanMove_0(hiByte, i1, i2, l1, l2)) Unit else {
if (kind > 17)
kind = 17
jjCheckNAddStates(42, 44)
}
}
else -> {
}
}
} while (i != startsAt)
}
if (kind != 0x7fffffff) {
jjmatchedKind = kind
jjmatchedPos = curPos
kind = 0x7fffffff
}
++curPos
if ((run { i = jjnewStateCnt; i }) == (run { startsAt = 4 - (run { jjnewStateCnt = startsAt; jjnewStateCnt }); startsAt }))
return curPos
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return curPos
}
}
}
private fun jjMoveStringLiteralDfa0_6(): Int {
return jjMoveNfa_6(6, 0)
}
private fun jjMoveNfa_6(startState: Int, curPos: Int): Int {
var curPos = curPos
var startsAt = 0
jjnewStateCnt = 7
var i = 1
jjstateSet[0] = startState
var kind = 0x7fffffff
while (true) {
if (++jjround == 0x7fffffff)
ReInitRounds()
if (curChar.toInt() < 64) {
val l = 1L shl curChar.toInt()
do {
when (jjstateSet[--i]) {
0, 1 -> if (curChar.toInt() == 61)
jjCheckNAddTwoStates(1, 2)
3 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 0
4 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 3
5 -> if (curChar.toInt() == 61)
jjstateSet[jjnewStateCnt++] = 4
else -> {
}
}
} while (i != startsAt)
} else if (curChar.toInt() < 128) {
val l = 1L shl (curChar.toInt() and 63)
do {
when (jjstateSet[--i]) {
2 -> if (curChar.toInt() == 93 && kind > 22)
kind = 22
6 -> if (curChar.toInt() == 93)
jjstateSet[jjnewStateCnt++] = 5
else -> {
}
}
} while (i != startsAt)
} else {
val hiByte = curChar.toInt() shr 8
val i1 = hiByte shr 6
val l1 = 1L shl (hiByte and 63)
val i2 = curChar.toInt() and 0xff shr 6
val l2 = 1L shl (curChar.toInt() and 63)
do {
when (jjstateSet[--i]) {
else -> {
}
}
} while (i != startsAt)
}
if (kind != 0x7fffffff) {
jjmatchedKind = kind
jjmatchedPos = curPos
kind = 0x7fffffff
}
++curPos
if ((run { i = jjnewStateCnt; i }) == (run { startsAt = 7 - (run { jjnewStateCnt = startsAt; jjnewStateCnt }); startsAt }))
return curPos
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return curPos
}
}
}
private fun jjMoveStringLiteralDfa0_5(): Int {
when (curChar.toInt()) {
93 -> return jjMoveStringLiteralDfa1_5(0x200000L)
else -> return 1
}
}
private fun jjMoveStringLiteralDfa1_5(active0: Long): Int {
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 1
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa2_5(active0, 0x200000L)
else -> return 2
}
}
private fun jjMoveStringLiteralDfa2_5(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return 2
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 2
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa3_5(active0, 0x200000L)
else -> return 3
}
}
private fun jjMoveStringLiteralDfa3_5(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return 3
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 3
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa4_5(active0, 0x200000L)
else -> return 4
}
}
private fun jjMoveStringLiteralDfa4_5(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return 4
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 4
}
when (curChar.toInt()) {
93 -> if (active0 and 0x200000L != 0L)
return jjStopAtPos(4, 21)
else -> return 5
}
return 5
}
private fun jjMoveStringLiteralDfa0_4(): Int {
when (curChar.toInt()) {
93 -> return jjMoveStringLiteralDfa1_4(0x100000L)
else -> return 1
}
}
private fun jjMoveStringLiteralDfa1_4(active0: Long): Int {
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 1
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa2_4(active0, 0x100000L)
else -> return 2
}
}
private fun jjMoveStringLiteralDfa2_4(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return 2
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 2
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa3_4(active0, 0x100000L)
else -> return 3
}
}
private fun jjMoveStringLiteralDfa3_4(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if ((active0) == 0L)
return 3
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 3
}
when (curChar.toInt()) {
93 -> if (active0 and 0x100000L != 0L)
return jjStopAtPos(3, 20)
else -> return 4
}
return 4
}
private fun jjMoveStringLiteralDfa0_3(): Int {
when (curChar.toInt()) {
93 -> return jjMoveStringLiteralDfa1_3(0x80000L)
else -> return 1
}
}
private fun jjMoveStringLiteralDfa1_3(active0: Long): Int {
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 1
}
when (curChar.toInt()) {
61 -> return jjMoveStringLiteralDfa2_3(active0, 0x80000L)
else -> return 2
}
}
private fun jjMoveStringLiteralDfa2_3(old0: Long, active0: Long): Int {
var active0 = active0
active0 = active0 and old0
if (active0 == 0L)
return 2
try {
curChar = input_stream.readChar()
} catch (e: IOException) {
return 2
}
when (curChar.toInt()) {
93 -> if (active0 and 0x80000L != 0L)
return jjStopAtPos(2, 19)
else -> return 3
}
return 3
}
init {
if (SimpleCharStream.staticFlag)
throw Error("ERROR: Cannot use a static CharStream class with a non-static lexical analyzer.")
}
/** Constructor. */
constructor(stream: SimpleCharStream, lexState: Int) : this(stream) {
SwitchTo(lexState)
}
/** Reinitialise parser. */
fun ReInit(stream: SimpleCharStream) {
jjnewStateCnt = 0
jjmatchedPos = jjnewStateCnt
curLexState = defaultLexState
input_stream = stream
ReInitRounds()
}
private fun ReInitRounds() {
var i: Int
jjround = -0x7fffffff
i = 66
while (i-- > 0)
jjrounds[i] = -0x80000000
}
/** Reinitialise parser. */
fun ReInit(stream: SimpleCharStream, lexState: Int) {
ReInit(stream)
SwitchTo(lexState)
}
/** Switch to specified lex state. */
fun SwitchTo(lexState: Int) {
if (lexState >= 12 || lexState < 0)
throw TokenMgrError(
"Error: Ignoring invalid lexical state : $lexState. State unchanged.",
TokenMgrError.INVALID_LEXICAL_STATE
)
else
curLexState = lexState
}
protected fun jjFillToken(): Token {
val t: Token
val curTokenImage: String
val beginLine: Int
val endLine: Int
val beginColumn: Int
val endColumn: Int
if (jjmatchedPos < 0) {
if (image == null)
curTokenImage = ""
else
curTokenImage = image!!.toString()
endLine = input_stream.beginLine
beginLine = endLine
endColumn = input_stream.beginColumn
beginColumn = endColumn
} else {
val im = jjstrLiteralImages[jjmatchedKind]
curTokenImage = im ?: input_stream.GetImage()
beginLine = input_stream.beginLine
beginColumn = input_stream.beginColumn
endLine = input_stream.endLine
endColumn = input_stream.endColumn
}
t = Token.newToken(jjmatchedKind, curTokenImage)
t.beginLine = beginLine
t.endLine = endLine
t.beginColumn = beginColumn
t.endColumn = endColumn
return t
}
internal fun SkipLexicalActions(matchedToken: Token?) {
when (jjmatchedKind) {
else -> {
}
}
}
private fun jjCheckNAdd(state: Int) {
if (jjrounds[state] != jjround) {
jjstateSet[jjnewStateCnt++] = state
jjrounds[state] = jjround
}
}
private fun jjAddStates(start: Int, end: Int) {
var start = start
do {
jjstateSet[jjnewStateCnt++] = jjnextStates[start]
} while (start++ != end)
}
private fun jjCheckNAddTwoStates(state1: Int, state2: Int) {
jjCheckNAdd(state1)
jjCheckNAdd(state2)
}
private fun jjCheckNAddStates(start: Int, end: Int) {
var start = start
do {
jjCheckNAdd(jjnextStates[start])
} while (start++ != end)
}
companion object {
internal val jjbitVec0 = longArrayOf(-0x2L, -0x1L, -0x1L, -0x1L)
internal val jjbitVec2 = longArrayOf(0x0L, 0x0L, -0x1L, -0x1L)
internal val jjnextStates = intArrayOf(
62,
63,
65,
32,
49,
50,
51,
36,
37,
38,
26,
27,
29,
22,
36,
37,
38,
46,
36,
47,
37,
38,
49,
50,
51,
59,
49,
60,
50,
51,
20,
25,
23,
24,
33,
34,
39,
40,
45,
52,
53,
58,
0,
1,
3
)
private fun jjCanMove_0(hiByte: Int, i1: Int, i2: Int, l1: Long, l2: Long): Boolean {
when (hiByte) {
0 -> return jjbitVec2[i2] and l2 != 0L
else -> {
return if (jjbitVec0[i1] and l1 != 0L) true else false
}
}
}
/** Token literal values. */
val jjstrLiteralImages = arrayOf(
"",
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"\u0061\u006e\u0064",
"\u0062\u0072\u0065\u0061\u006b",
"\u0064\u006f",
"\u0065\u006c\u0073\u0065",
"\u0065\u006c\u0073\u0065\u0069\u0066",
"\u0065\u006e\u0064",
"\u0066\u0061\u006c\u0073\u0065",
"\u0066\u006f\u0072",
"\u0066\u0075\u006e\u0063\u0074\u0069\u006f\u006e",
"\u0067\u006f\u0074\u006f",
"\u0069\u0066",
"\u0069\u006e",
"\u006c\u006f\u0063\u0061\u006c",
"\u006e\u0069\u006c",
"\u006e\u006f\u0074",
"\u006f\u0072",
"\u0072\u0065\u0074\u0075\u0072\u006e",
"\u0072\u0065\u0070\u0065\u0061\u0074",
"\u0074\u0068\u0065\u006e",
"\u0074\u0072\u0075\u0065",
"\u0075\u006e\u0074\u0069\u006c",
"\u0077\u0068\u0069\u006c\u0065",
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
null,
"\u003a\u003a",
null,
null,
null,
"\u0023",
"\u003b",
"\u003d",
"\u002c",
"\u002e",
"\u003a",
"\u0028",
"\u0029",
"\u005b",
"\u005d",
"\u002e\u002e\u002e",
"\u007b",
"\u007d",
"\u002b",
"\u002d",
"\u002a",
"\u002f",
"\u005e",
"\u0025",
"\u002e\u002e",
"\u003c",
"\u003c\u003d",
"\u003e",
"\u003e\u003d",
"\u003d\u003d",
"\u007e\u003d"
)
/** Lexer state names. */
val lexStateNames = arrayOf(
"DEFAULT",
"IN_COMMENT",
"IN_LC0",
"IN_LC1",
"IN_LC2",
"IN_LC3",
"IN_LCN",
"IN_LS0",
"IN_LS1",
"IN_LS2",
"IN_LS3",
"IN_LSN"
)
/** Lex State array. */
val jjnewLexState = intArrayOf(
-1,
-1,
-1,
-1,
-1,
-1,
2,
3,
4,
5,
6,
7,
8,
9,
10,
11,
1,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
0,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1,
-1
)
internal val jjtoToken = longArrayOf(0x601fffffef800001L, 0x7fffffe2L)
internal val jjtoSkip = longArrayOf(0x7e003eL, 0x0L)
internal val jjtoSpecial = longArrayOf(0x7e0000L, 0x0L)
internal val jjtoMore = longArrayOf(0x1001ffc0L, 0x0L)
}
}