@irrelon/battlescript 4.1.2 → 5.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/index.js +357 -278
- package/bin/index.js.map +1 -1
- package/dist/bin/functionality.cjs +357 -278
- package/dist/bin/functionality.cjs.map +1 -1
- package/dist/bin/functionality.mjs +357 -278
- package/dist/bin/functionality.mjs.map +1 -1
- package/dist/exports/typescript/enums/EnumNodeProp.d.ts +11 -7
- package/dist/exports/typescript/enums/EnumNodeProp.d.ts.map +1 -1
- package/dist/exports/typescript/enums/EnumOperator.d.ts +7 -4
- package/dist/exports/typescript/enums/EnumOperator.d.ts.map +1 -1
- package/dist/index.cjs +378 -285
- package/dist/index.cjs.map +1 -1
- package/dist/index.mjs +377 -286
- package/dist/index.mjs.map +1 -1
- package/dist/services/grammar/ts/language/BattleScriptLexer.d.ts.map +1 -1
- package/dist/services/miniAst/binaryTypeToByteSize.d.ts +1 -1
- package/dist/services/utils.d.ts +10 -0
- package/dist/services/utils.d.ts.map +1 -1
- package/dist/tests/ast/compoundAssignment.test.d.ts +2 -0
- package/dist/tests/ast/compoundAssignment.test.d.ts.map +1 -0
- package/dist/tests/ast/hex-literal.test.d.ts +2 -0
- package/dist/tests/ast/hex-literal.test.d.ts.map +1 -0
- package/dist/tests/ast/number-literal.test.d.ts +2 -0
- package/dist/tests/ast/number-literal.test.d.ts.map +1 -0
- package/dist/tsconfig.types.tsbuildinfo +1 -1
- package/dist/types/ast/nodes/AssignmentExpressionNode.d.ts +6 -0
- package/dist/types/ast/nodes/AssignmentExpressionNode.d.ts.map +1 -1
- package/dist/types/ast/nodes/ForwardStatementNode.d.ts +2 -0
- package/dist/types/ast/nodes/ForwardStatementNode.d.ts.map +1 -1
- package/dist/types/ast/nodes/LiteralIntNode.d.ts +10 -0
- package/dist/types/ast/nodes/LiteralIntNode.d.ts.map +1 -1
- package/dist/types/ast/nodes/OffsetStatementNode.d.ts +2 -0
- package/dist/types/ast/nodes/OffsetStatementNode.d.ts.map +1 -1
- package/dist/types/ast/nodes/OptimisedAssignmentExpressionNode.d.ts.map +1 -1
- package/dist/types/ast/nodes/ProtocolReadTypeNode.d.ts +2 -0
- package/dist/types/ast/nodes/ProtocolReadTypeNode.d.ts.map +1 -1
- package/dist/types/ast/nodes/ProtocolTypeNode.d.ts +2 -0
- package/dist/types/ast/nodes/ProtocolTypeNode.d.ts.map +1 -1
- package/dist/types/ast/nodes/RewindStatementNode.d.ts +2 -0
- package/dist/types/ast/nodes/RewindStatementNode.d.ts.map +1 -1
- package/dist/types/ast/nodes/RuleStatementNode.d.ts +4 -0
- package/dist/types/ast/nodes/RuleStatementNode.d.ts.map +1 -1
- package/dist/types/ast/operators/ArithmaticOperator.d.ts +1 -1
- package/dist/types/ast/operators/ArithmaticOperator.d.ts.map +1 -1
- package/dist/types/ast/operators/OtherOperator.d.ts +1 -1
- package/dist/types/ast/operators/OtherOperator.d.ts.map +1 -1
- package/package.json +1 -1
package/dist/index.cjs
CHANGED
|
@@ -23925,7 +23925,7 @@ BattleScriptLexer._SYMBOLIC_NAMES = [
|
|
|
23925
23925
|
];
|
|
23926
23926
|
BattleScriptLexer.VOCABULARY = new VocabularyImplExports.VocabularyImpl(BattleScriptLexer._LITERAL_NAMES, BattleScriptLexer._SYMBOLIC_NAMES, []);
|
|
23927
23927
|
BattleScriptLexer._serializedATNSegments = 2;
|
|
23928
|
-
BattleScriptLexer._serializedATNSegment0 = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x02r\
|
|
23928
|
+
BattleScriptLexer._serializedATNSegment0 = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u0607\uEA8B\uC241\x02r\u037F\b\x01" +
|
|
23929
23929
|
"\x04\x02\t\x02\x04\x03\t\x03\x04\x04\t\x04\x04\x05\t\x05\x04\x06\t\x06" +
|
|
23930
23930
|
"\x04\x07\t\x07\x04\b\t\b\x04\t\t\t\x04\n\t\n\x04\v\t\v\x04\f\t\f\x04\r" +
|
|
23931
23931
|
"\t\r\x04\x0E\t\x0E\x04\x0F\t\x0F\x04\x10\t\x10\x04\x11\t\x11\x04\x12\t" +
|
|
@@ -23981,77 +23981,78 @@ BattleScriptLexer._serializedATNSegment0 = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u
|
|
|
23981
23981
|
"A\x03A\x03A\x03B\x03B\x03B\x03B\x03C\x03C\x03C\x03C\x03C\x03D\x03D\x03" +
|
|
23982
23982
|
"D\x03D\x03D\x03D\x03E\x03E\x03E\x03E\x03E\x03E\x03E\x03F\x03F\x03F\x03" +
|
|
23983
23983
|
"F\x03F\x03G\x03G\x03G\x03G\x03G\x03H\x03H\x03H\x03H\x03H\x03I\x03I\x03" +
|
|
23984
|
-
"I\x03I\x03I\x03I\x03I\x03I\x03I\x03I\x03J\x06J\
|
|
23985
|
-
"\
|
|
23986
|
-
"\
|
|
23987
|
-
"\
|
|
23988
|
-
"\x05J\u02DF\nJ\
|
|
23989
|
-
"
|
|
23990
|
-
"
|
|
23991
|
-
"
|
|
23992
|
-
"
|
|
23993
|
-
"
|
|
23994
|
-
"
|
|
23995
|
-
"`\x03`\x03a\x03a\x03a\
|
|
23996
|
-
"
|
|
23997
|
-
"
|
|
23998
|
-
"
|
|
23999
|
-
"
|
|
24000
|
-
"\
|
|
24001
|
-
"\
|
|
24002
|
-
"\
|
|
24003
|
-
"\
|
|
24004
|
-
"
|
|
24005
|
-
"
|
|
24006
|
-
"
|
|
24007
|
-
"
|
|
24008
|
-
"
|
|
24009
|
-
"
|
|
24010
|
-
"
|
|
24011
|
-
"\x02
|
|
24012
|
-
"\
|
|
24013
|
-
"\
|
|
24014
|
-
"\x02
|
|
24015
|
-
"
|
|
24016
|
-
"\
|
|
24017
|
-
"\x02\x02\x02\
|
|
24018
|
-
"\x02\x02\x02\
|
|
24019
|
-
"\x02\x02\x02\
|
|
24020
|
-
"\x02\x02\x02\
|
|
24021
|
-
"\x02\x02
|
|
24022
|
-
"
|
|
24023
|
-
"\x02\x02\
|
|
24024
|
-
"\
|
|
24025
|
-
"\x02\x02\x02\
|
|
24026
|
-
"
|
|
24027
|
-
"
|
|
24028
|
-
"\
|
|
24029
|
-
"\x02
|
|
24030
|
-
"\x02\x02\
|
|
24031
|
-
"\
|
|
24032
|
-
"
|
|
24033
|
-
"\
|
|
24034
|
-
"\x02
|
|
24035
|
-
"\x02\
|
|
24036
|
-
"\x02\
|
|
24037
|
-
"\x02\
|
|
24038
|
-
"\x02\
|
|
24039
|
-
"\x02\
|
|
24040
|
-
"\x02\
|
|
24041
|
-
"\x02\
|
|
24042
|
-
"\x02\
|
|
24043
|
-
"\x02\
|
|
24044
|
-
"\x02\
|
|
24045
|
-
"\x02\
|
|
24046
|
-
"\x02\
|
|
24047
|
-
"\x02\
|
|
24048
|
-
"\x02\
|
|
24049
|
-
"\x02\
|
|
24050
|
-
"\x02\
|
|
24051
|
-
"\
|
|
24052
|
-
"\
|
|
24053
|
-
"\
|
|
24054
|
-
"\x02\
|
|
23984
|
+
"I\x03I\x03I\x03I\x03I\x03I\x03I\x03I\x03J\x03J\x03J\x06J\u02BB\nJ\rJ\x0E" +
|
|
23985
|
+
"J\u02BC\x03J\x06J\u02C0\nJ\rJ\x0EJ\u02C1\x03J\x03J\x06J\u02C6\nJ\rJ\x0E" +
|
|
23986
|
+
"J\u02C7\x05J\u02CA\nJ\x03J\x03J\x05J\u02CE\nJ\x03J\x06J\u02D1\nJ\rJ\x0E" +
|
|
23987
|
+
"J\u02D2\x05J\u02D5\nJ\x03J\x03J\x06J\u02D9\nJ\rJ\x0EJ\u02DA\x03J\x03J" +
|
|
23988
|
+
"\x05J\u02DF\nJ\x03J\x06J\u02E2\nJ\rJ\x0EJ\u02E3\x05J\u02E6\nJ\x05J\u02E8" +
|
|
23989
|
+
"\nJ\x03K\x03K\x03K\x03K\x03K\x03K\x03K\x03K\x03K\x05K\u02F3\nK\x03L\x03" +
|
|
23990
|
+
"L\x07L\u02F7\nL\fL\x0EL\u02FA\vL\x03L\x03L\x03M\x03M\x03M\x03M\x07M\u0302" +
|
|
23991
|
+
"\nM\fM\x0EM\u0305\vM\x03M\x03M\x03M\x03M\x07M\u030B\nM\fM\x0EM\u030E\v" +
|
|
23992
|
+
"M\x03M\x03M\x05M\u0312\nM\x03N\x03N\x03N\x03O\x03O\x03O\x03P\x03P\x03" +
|
|
23993
|
+
"P\x03Q\x03Q\x03R\x03R\x03S\x03S\x03T\x03T\x03U\x03U\x03V\x03V\x03W\x03" +
|
|
23994
|
+
"W\x03X\x03X\x03X\x03Y\x03Y\x03Y\x03Z\x03Z\x03Z\x03[\x03[\x03[\x03\\\x03" +
|
|
23995
|
+
"\\\x03]\x03]\x03]\x03^\x03^\x03^\x03_\x03_\x03`\x03`\x03a\x03a\x03a\x03" +
|
|
23996
|
+
"b\x03b\x03b\x03c\x03c\x03c\x03c\x03d\x03d\x03e\x03e\x03f\x03f\x03g\x03" +
|
|
23997
|
+
"g\x03h\x03h\x03i\x03i\x03j\x03j\x03k\x03k\x03l\x03l\x03m\x03m\x03m\x03" +
|
|
23998
|
+
"n\x03n\x03o\x03o\x03p\x03p\x07p\u0368\np\fp\x0Ep\u036B\vp\x03p\x06p\u036E" +
|
|
23999
|
+
"\np\rp\x0Ep\u036F\x03p\x06p\u0373\np\rp\x0Ep\u0374\x05p\u0377\np\x03q" +
|
|
24000
|
+
"\x06q\u037A\nq\rq\x0Eq\u037B\x03q\x03q\x03\u030C\x02\x02r\x03\x02\x03" +
|
|
24001
|
+
"\x05\x02\x04\x07\x02\x05\t\x02\x06\v\x02\x07\r\x02\b\x0F\x02\t\x11\x02" +
|
|
24002
|
+
"\n\x13\x02\v\x15\x02\f\x17\x02\r\x19\x02\x0E\x1B\x02\x0F\x1D\x02\x10\x1F" +
|
|
24003
|
+
"\x02\x11!\x02\x12#\x02\x13%\x02\x14\'\x02\x15)\x02\x16+\x02\x17-\x02\x18" +
|
|
24004
|
+
"/\x02\x191\x02\x1A3\x02\x1B5\x02\x1C7\x02\x1D9\x02\x1E;\x02\x1F=\x02 " +
|
|
24005
|
+
"?\x02!A\x02\"C\x02#E\x02$G\x02%I\x02&K\x02\'M\x02(O\x02)Q\x02*S\x02+U" +
|
|
24006
|
+
"\x02,W\x02-Y\x02.[\x02/]\x020_\x021a\x022c\x023e\x024g\x025i\x026k\x02" +
|
|
24007
|
+
"7m\x028o\x029q\x02:s\x02;u\x02<w\x02=y\x02>{\x02?}\x02@\x7F\x02A\x81\x02" +
|
|
24008
|
+
"B\x83\x02C\x85\x02D\x87\x02E\x89\x02F\x8B\x02G\x8D\x02H\x8F\x02I\x91\x02" +
|
|
24009
|
+
"J\x93\x02K\x95\x02L\x97\x02M\x99\x02N\x9B\x02O\x9D\x02P\x9F\x02Q\xA1\x02" +
|
|
24010
|
+
"R\xA3\x02S\xA5\x02T\xA7\x02U\xA9\x02V\xAB\x02W\xAD\x02X\xAF\x02Y\xB1\x02" +
|
|
24011
|
+
"Z\xB3\x02[\xB5\x02\\\xB7\x02]\xB9\x02^\xBB\x02_\xBD\x02`\xBF\x02a\xC1" +
|
|
24012
|
+
"\x02b\xC3\x02c\xC5\x02d\xC7\x02e\xC9\x02f\xCB\x02g\xCD\x02h\xCF\x02i\xD1" +
|
|
24013
|
+
"\x02j\xD3\x02k\xD5\x02l\xD7\x02m\xD9\x02n\xDB\x02o\xDD\x02p\xDF\x02q\xE1" +
|
|
24014
|
+
"\x02r\x03\x02\r\x04\x02ZZzz\x05\x022;CHch\x03\x022;\x04\x02GGgg\x04\x02" +
|
|
24015
|
+
"--//\x03\x02$$\x04\x02\f\f\x0F\x0F\x05\x02&&C\\c|\x07\x02&&2;C\\aac|\x03" +
|
|
24016
|
+
"\x02aa\x05\x02\v\f\x0F\x0F\"\"\x02\u0395\x02\x03\x03\x02\x02\x02\x02\x05" +
|
|
24017
|
+
"\x03\x02\x02\x02\x02\x07\x03\x02\x02\x02\x02\t\x03\x02\x02\x02\x02\v\x03" +
|
|
24018
|
+
"\x02\x02\x02\x02\r\x03\x02\x02\x02\x02\x0F\x03\x02\x02\x02\x02\x11\x03" +
|
|
24019
|
+
"\x02\x02\x02\x02\x13\x03\x02\x02\x02\x02\x15\x03\x02\x02\x02\x02\x17\x03" +
|
|
24020
|
+
"\x02\x02\x02\x02\x19\x03\x02\x02\x02\x02\x1B\x03\x02\x02\x02\x02\x1D\x03" +
|
|
24021
|
+
"\x02\x02\x02\x02\x1F\x03\x02\x02\x02\x02!\x03\x02\x02\x02\x02#\x03\x02" +
|
|
24022
|
+
"\x02\x02\x02%\x03\x02\x02\x02\x02\'\x03\x02\x02\x02\x02)\x03\x02\x02\x02" +
|
|
24023
|
+
"\x02+\x03\x02\x02\x02\x02-\x03\x02\x02\x02\x02/\x03\x02\x02\x02\x021\x03" +
|
|
24024
|
+
"\x02\x02\x02\x023\x03\x02\x02\x02\x025\x03\x02\x02\x02\x027\x03\x02\x02" +
|
|
24025
|
+
"\x02\x029\x03\x02\x02\x02\x02;\x03\x02\x02\x02\x02=\x03\x02\x02\x02\x02" +
|
|
24026
|
+
"?\x03\x02\x02\x02\x02A\x03\x02\x02\x02\x02C\x03\x02\x02\x02\x02E\x03\x02" +
|
|
24027
|
+
"\x02\x02\x02G\x03\x02\x02\x02\x02I\x03\x02\x02\x02\x02K\x03\x02\x02\x02" +
|
|
24028
|
+
"\x02M\x03\x02\x02\x02\x02O\x03\x02\x02\x02\x02Q\x03\x02\x02\x02\x02S\x03" +
|
|
24029
|
+
"\x02\x02\x02\x02U\x03\x02\x02\x02\x02W\x03\x02\x02\x02\x02Y\x03\x02\x02" +
|
|
24030
|
+
"\x02\x02[\x03\x02\x02\x02\x02]\x03\x02\x02\x02\x02_\x03\x02\x02\x02\x02" +
|
|
24031
|
+
"a\x03\x02\x02\x02\x02c\x03\x02\x02\x02\x02e\x03\x02\x02\x02\x02g\x03\x02" +
|
|
24032
|
+
"\x02\x02\x02i\x03\x02\x02\x02\x02k\x03\x02\x02\x02\x02m\x03\x02\x02\x02" +
|
|
24033
|
+
"\x02o\x03\x02\x02\x02\x02q\x03\x02\x02\x02\x02s\x03\x02\x02\x02\x02u\x03" +
|
|
24034
|
+
"\x02\x02\x02\x02w\x03\x02\x02\x02\x02y\x03\x02\x02\x02\x02{\x03\x02\x02" +
|
|
24035
|
+
"\x02\x02}\x03\x02\x02\x02\x02\x7F\x03\x02\x02\x02\x02\x81\x03\x02\x02" +
|
|
24036
|
+
"\x02\x02\x83\x03\x02\x02\x02\x02\x85\x03\x02\x02\x02\x02\x87\x03\x02\x02" +
|
|
24037
|
+
"\x02\x02\x89\x03\x02\x02\x02\x02\x8B\x03\x02\x02\x02\x02\x8D\x03\x02\x02" +
|
|
24038
|
+
"\x02\x02\x8F\x03\x02\x02\x02\x02\x91\x03\x02\x02\x02\x02\x93\x03\x02\x02" +
|
|
24039
|
+
"\x02\x02\x95\x03\x02\x02\x02\x02\x97\x03\x02\x02\x02\x02\x99\x03\x02\x02" +
|
|
24040
|
+
"\x02\x02\x9B\x03\x02\x02\x02\x02\x9D\x03\x02\x02\x02\x02\x9F\x03\x02\x02" +
|
|
24041
|
+
"\x02\x02\xA1\x03\x02\x02\x02\x02\xA3\x03\x02\x02\x02\x02\xA5\x03\x02\x02" +
|
|
24042
|
+
"\x02\x02\xA7\x03\x02\x02\x02\x02\xA9\x03\x02\x02\x02\x02\xAB\x03\x02\x02" +
|
|
24043
|
+
"\x02\x02\xAD\x03\x02\x02\x02\x02\xAF\x03\x02\x02\x02\x02\xB1\x03\x02\x02" +
|
|
24044
|
+
"\x02\x02\xB3\x03\x02\x02\x02\x02\xB5\x03\x02\x02\x02\x02\xB7\x03\x02\x02" +
|
|
24045
|
+
"\x02\x02\xB9\x03\x02\x02\x02\x02\xBB\x03\x02\x02\x02\x02\xBD\x03\x02\x02" +
|
|
24046
|
+
"\x02\x02\xBF\x03\x02\x02\x02\x02\xC1\x03\x02\x02\x02\x02\xC3\x03\x02\x02" +
|
|
24047
|
+
"\x02\x02\xC5\x03\x02\x02\x02\x02\xC7\x03\x02\x02\x02\x02\xC9\x03\x02\x02" +
|
|
24048
|
+
"\x02\x02\xCB\x03\x02\x02\x02\x02\xCD\x03\x02\x02\x02\x02\xCF\x03\x02\x02" +
|
|
24049
|
+
"\x02\x02\xD1\x03\x02\x02\x02\x02\xD3\x03\x02\x02\x02\x02\xD5\x03\x02\x02" +
|
|
24050
|
+
"\x02\x02\xD7\x03\x02\x02\x02\x02\xD9\x03\x02\x02\x02\x02\xDB\x03\x02\x02" +
|
|
24051
|
+
"\x02\x02\xDD\x03\x02\x02\x02\x02\xDF\x03\x02\x02\x02\x02\xE1\x03\x02\x02" +
|
|
24052
|
+
"\x02\x03\xE3\x03\x02\x02\x02\x05\xEC\x03\x02\x02\x02\x07\xF5\x03\x02\x02" +
|
|
24053
|
+
"\x02\t\xFC\x03\x02\x02\x02\v\u0101\x03\x02\x02\x02\r\u0109\x03\x02\x02" +
|
|
24054
|
+
"\x02\x0F\u0110\x03\x02\x02\x02\x11\u0118\x03\x02\x02\x02\x13\u011F\x03" +
|
|
24055
|
+
"\x02\x02\x02\x15\u0123\x03\x02\x02\x02\x17\u0128\x03\x02\x02\x02\x19\u0132" +
|
|
24055
24056
|
"\x03\x02\x02\x02\x1B\u013A\x03\x02\x02\x02\x1D\u0141\x03\x02\x02\x02\x1F" +
|
|
24056
24057
|
"\u0147\x03\x02\x02\x02!\u014F\x03\x02\x02\x02#\u0156\x03\x02\x02\x02%" +
|
|
24057
24058
|
"\u015F\x03\x02\x02\x02\'\u0169\x03\x02\x02\x02)\u0171\x03\x02\x02\x02" +
|
|
@@ -24072,21 +24073,21 @@ BattleScriptLexer._serializedATNSegment0 = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u
|
|
|
24072
24073
|
"\x7F\u027B\x03\x02\x02\x02\x81\u0281\x03\x02\x02\x02\x83\u0288\x03\x02" +
|
|
24073
24074
|
"\x02\x02\x85\u028C\x03\x02\x02\x02\x87\u0291\x03\x02\x02\x02\x89\u0297" +
|
|
24074
24075
|
"\x03\x02\x02\x02\x8B\u029E\x03\x02\x02\x02\x8D\u02A3\x03\x02\x02\x02\x8F" +
|
|
24075
|
-
"\u02A8\x03\x02\x02\x02\x91\u02AD\x03\x02\x02\x02\x93\
|
|
24076
|
-
"\x02\x95\
|
|
24077
|
-
"\x02\x02\x02\x9B\
|
|
24078
|
-
"\x03\x02\x02\x02\xA1\
|
|
24079
|
-
"\
|
|
24080
|
-
"\x02\xAB\
|
|
24081
|
-
"\x02\x02\x02\xB1\
|
|
24082
|
-
"\x03\x02\x02\x02\xB7\
|
|
24083
|
-
"\
|
|
24084
|
-
"\x02\xC1\
|
|
24085
|
-
"\x02\x02\x02\xC7\
|
|
24086
|
-
"\x03\x02\x02\x02\xCD\
|
|
24087
|
-
"\
|
|
24088
|
-
"\x02\xD7\
|
|
24089
|
-
"\x02\x02\x02\xDD\
|
|
24076
|
+
"\u02A8\x03\x02\x02\x02\x91\u02AD\x03\x02\x02\x02\x93\u02E7\x03\x02\x02" +
|
|
24077
|
+
"\x02\x95\u02F2\x03\x02\x02\x02\x97\u02F4\x03\x02\x02\x02\x99\u0311\x03" +
|
|
24078
|
+
"\x02\x02\x02\x9B\u0313\x03\x02\x02\x02\x9D\u0316\x03\x02\x02\x02\x9F\u0319" +
|
|
24079
|
+
"\x03\x02\x02\x02\xA1\u031C\x03\x02\x02\x02\xA3\u031E\x03\x02\x02\x02\xA5" +
|
|
24080
|
+
"\u0320\x03\x02\x02\x02\xA7\u0322\x03\x02\x02\x02\xA9\u0324\x03\x02\x02" +
|
|
24081
|
+
"\x02\xAB\u0326\x03\x02\x02\x02\xAD\u0328\x03\x02\x02\x02\xAF\u032A\x03" +
|
|
24082
|
+
"\x02\x02\x02\xB1\u032D\x03\x02\x02\x02\xB3\u0330\x03\x02\x02\x02\xB5\u0333" +
|
|
24083
|
+
"\x03\x02\x02\x02\xB7\u0336\x03\x02\x02\x02\xB9\u0338\x03\x02\x02\x02\xBB" +
|
|
24084
|
+
"\u033B\x03\x02\x02\x02\xBD\u033E\x03\x02\x02\x02\xBF\u0340\x03\x02\x02" +
|
|
24085
|
+
"\x02\xC1\u0342\x03\x02\x02\x02\xC3\u0345\x03\x02\x02\x02\xC5\u0348\x03" +
|
|
24086
|
+
"\x02\x02\x02\xC7\u034C\x03\x02\x02\x02\xC9\u034E\x03\x02\x02\x02\xCB\u0350" +
|
|
24087
|
+
"\x03\x02\x02\x02\xCD\u0352\x03\x02\x02\x02\xCF\u0354\x03\x02\x02\x02\xD1" +
|
|
24088
|
+
"\u0356\x03\x02\x02\x02\xD3\u0358\x03\x02\x02\x02\xD5\u035A\x03\x02\x02" +
|
|
24089
|
+
"\x02\xD7\u035C\x03\x02\x02\x02\xD9\u035E\x03\x02\x02\x02\xDB\u0361\x03" +
|
|
24090
|
+
"\x02\x02\x02\xDD\u0363\x03\x02\x02\x02\xDF\u0376\x03\x02\x02\x02\xE1\u0379" +
|
|
24090
24091
|
"\x03\x02\x02\x02\xE3\xE4\x07f\x02\x02\xE4\xE5\x07g\x02\x02\xE5\xE6\x07" +
|
|
24091
24092
|
"d\x02\x02\xE6\xE7\x07w\x02\x02\xE7\xE8\x07i\x02\x02\xE8\xE9\x07i\x02\x02" +
|
|
24092
24093
|
"\xE9\xEA\x07g\x02\x02\xEA\xEB\x07t\x02\x02\xEB\x04\x03\x02\x02\x02\xEC" +
|
|
@@ -24168,172 +24169,175 @@ BattleScriptLexer._serializedATNSegment0 = "\x03\uC91D\uCABA\u058D\uAFBA\u4F53\u
|
|
|
24168
24169
|
"\x07h\x02\x02\u01C4\u01C5\x07q\x02\x02\u01C5\u01C6\x07t\x02\x02\u01C6" +
|
|
24169
24170
|
"F\x03\x02\x02\x02\u01C7\u01C8\x07g\x02\x02\u01C8\u01C9\x07x\x02\x02\u01C9" +
|
|
24170
24171
|
"\u01CA\x07c\x02\x02\u01CA\u01CB\x07n\x02\x02\u01CB\u01CC\x07w\x02\x02" +
|
|
24171
|
-
"\u01CC\u01CD\x07c\x02\x02\u01CD
|
|
24172
|
-
|
|
24173
|
-
"\x02\x02\u01D2"
|
|
24174
|
-
|
|
24175
|
-
"\
|
|
24176
|
-
"\
|
|
24177
|
-
"\
|
|
24178
|
-
"
|
|
24179
|
-
"\
|
|
24180
|
-
"
|
|
24181
|
-
"\
|
|
24182
|
-
"\
|
|
24183
|
-
"\
|
|
24184
|
-
"\
|
|
24185
|
-
"\
|
|
24186
|
-
"\
|
|
24187
|
-
"\
|
|
24188
|
-
"
|
|
24189
|
-
"\
|
|
24190
|
-
"\
|
|
24191
|
-
"\
|
|
24192
|
-
"\
|
|
24193
|
-
"\x02\
|
|
24194
|
-
"\
|
|
24195
|
-
"
|
|
24196
|
-
"\
|
|
24197
|
-
"\
|
|
24198
|
-
"\
|
|
24199
|
-
"
|
|
24200
|
-
"\
|
|
24201
|
-
"\
|
|
24202
|
-
"\
|
|
24203
|
-
"\
|
|
24204
|
-
"\
|
|
24205
|
-
"
|
|
24206
|
-
"\
|
|
24207
|
-
"\
|
|
24208
|
-
"\
|
|
24209
|
-
"\
|
|
24210
|
-
"\
|
|
24211
|
-
"\
|
|
24212
|
-
"\
|
|
24213
|
-
"\
|
|
24214
|
-
"\
|
|
24215
|
-
"\
|
|
24216
|
-
"
|
|
24217
|
-
"\
|
|
24218
|
-
"\
|
|
24219
|
-
"\
|
|
24220
|
-
"\
|
|
24221
|
-
"\
|
|
24222
|
-
"\
|
|
24223
|
-
"\
|
|
24224
|
-
"
|
|
24225
|
-
"\
|
|
24226
|
-
"
|
|
24227
|
-
"\
|
|
24228
|
-
"\
|
|
24229
|
-
"\
|
|
24230
|
-
"
|
|
24231
|
-
"\
|
|
24232
|
-
"\
|
|
24233
|
-
"\
|
|
24234
|
-
"\
|
|
24235
|
-
"
|
|
24236
|
-
"\
|
|
24237
|
-
"\
|
|
24238
|
-
"\
|
|
24239
|
-
"\
|
|
24240
|
-
"
|
|
24241
|
-
"\
|
|
24242
|
-
"\
|
|
24243
|
-
"\
|
|
24244
|
-
"\
|
|
24245
|
-
"
|
|
24246
|
-
"\
|
|
24247
|
-
"\
|
|
24248
|
-
"\
|
|
24249
|
-
"\
|
|
24250
|
-
"
|
|
24251
|
-
"\
|
|
24252
|
-
"\
|
|
24253
|
-
"\
|
|
24254
|
-
"\
|
|
24255
|
-
"\x02\x02\x02\
|
|
24256
|
-
"\
|
|
24257
|
-
"\x02\x02\
|
|
24258
|
-
"\x03\x02\x02\x02\
|
|
24259
|
-
"\
|
|
24260
|
-
"\
|
|
24261
|
-
"\u02C6\
|
|
24262
|
-
"\x02\
|
|
24263
|
-
"\
|
|
24264
|
-
"\
|
|
24265
|
-
"\x02\x02\x02\
|
|
24266
|
-
"\
|
|
24267
|
-
"\
|
|
24268
|
-
"\x03\x02\x02\x02\
|
|
24269
|
-
"\
|
|
24270
|
-
"\
|
|
24271
|
-
"\
|
|
24272
|
-
"\
|
|
24273
|
-
"\
|
|
24274
|
-
"\
|
|
24275
|
-
"\x02\x02\x02\
|
|
24276
|
-
"\
|
|
24277
|
-
"\
|
|
24278
|
-
"\x02\
|
|
24279
|
-
"\
|
|
24280
|
-
"\
|
|
24281
|
-
"\
|
|
24282
|
-
"\
|
|
24283
|
-
"\u02F4\
|
|
24284
|
-
"\
|
|
24285
|
-
"\
|
|
24286
|
-
"\
|
|
24287
|
-
"\x02\
|
|
24288
|
-
"\
|
|
24289
|
-
"\
|
|
24290
|
-
"\
|
|
24291
|
-
"\u0307\
|
|
24292
|
-
"
|
|
24293
|
-
"\
|
|
24294
|
-
"\
|
|
24295
|
-
"\x02\
|
|
24296
|
-
"
|
|
24297
|
-
"\
|
|
24298
|
-
"\
|
|
24299
|
-
"\
|
|
24300
|
-
"
|
|
24301
|
-
"\
|
|
24302
|
-
"\
|
|
24303
|
-
"\
|
|
24304
|
-
"\x02\
|
|
24305
|
-
"
|
|
24306
|
-
"\x07
|
|
24307
|
-
"\
|
|
24308
|
-
"\
|
|
24309
|
-
"\x02\
|
|
24310
|
-
"\x02\x02\
|
|
24311
|
-
"\
|
|
24312
|
-
"\
|
|
24313
|
-
"\
|
|
24314
|
-
"\x02\
|
|
24315
|
-
"\x02\x02\
|
|
24316
|
-
"\
|
|
24317
|
-
"\
|
|
24318
|
-
"\x02\
|
|
24319
|
-
"\
|
|
24320
|
-
"\
|
|
24321
|
-
"\
|
|
24322
|
-
"\x02\x02\
|
|
24323
|
-
"\
|
|
24324
|
-
"\
|
|
24325
|
-
"\x02\x02\u0363\
|
|
24326
|
-
"\
|
|
24327
|
-
"\x02\u0368\
|
|
24328
|
-
"\x03\x02\x02\x02\u036A\
|
|
24329
|
-
"\
|
|
24330
|
-
"\x02\x02\
|
|
24331
|
-
"\
|
|
24332
|
-
"\
|
|
24333
|
-
"\
|
|
24334
|
-
"\
|
|
24335
|
-
"\
|
|
24336
|
-
"\
|
|
24172
|
+
"\u01CC\u01CD\x07c\x02\x02\u01CD";
|
|
24173
|
+
BattleScriptLexer._serializedATNSegment1 = "\u01CE\x07v\x02\x02\u01CE\u01CF\x07g\x02\x02\u01CFH\x03\x02\x02\x02\u01D0" +
|
|
24174
|
+
"\u01D1\x07e\x02\x02\u01D1\u01D2\x07c\x02\x02\u01D2\u01D3\x07u\x02\x02" +
|
|
24175
|
+
"\u01D3\u01D4\x07g\x02\x02\u01D4J\x03\x02\x02\x02\u01D5\u01D6\x07d\x02" +
|
|
24176
|
+
"\x02\u01D6\u01D7\x07t\x02\x02\u01D7\u01D8\x07g\x02\x02\u01D8\u01D9\x07" +
|
|
24177
|
+
"c\x02\x02\u01D9\u01DA\x07m\x02\x02\u01DAL\x03\x02\x02\x02\u01DB\u01DC" +
|
|
24178
|
+
"\x07e\x02\x02\u01DC\u01DD\x07q\x02\x02\u01DD\u01DE\x07p\x02\x02\u01DE" +
|
|
24179
|
+
"\u01DF\x07v\x02\x02\u01DF\u01E0\x07k\x02\x02\u01E0\u01E1\x07p\x02\x02" +
|
|
24180
|
+
"\u01E1\u01E2\x07w\x02\x02\u01E2\u01E3\x07g\x02\x02\u01E3N\x03\x02\x02" +
|
|
24181
|
+
"\x02\u01E4\u01E5\x07h\x02\x02\u01E5\u01E6\x07c\x02\x02\u01E6\u01E7\x07" +
|
|
24182
|
+
"n\x02\x02\u01E7\u01E8\x07n\x02\x02\u01E8\u01E9\x07d\x02\x02\u01E9\u01EA" +
|
|
24183
|
+
"\x07c\x02\x02\u01EA\u01EB\x07e\x02\x02\u01EB\u01EC\x07m\x02\x02\u01EC" +
|
|
24184
|
+
"P\x03\x02\x02\x02\u01ED\u01EE\x07e\x02\x02\u01EE\u01EF\x07c\x02\x02\u01EF" +
|
|
24185
|
+
"\u01F0\x07v\x02\x02\u01F0\u01F1\x07e\x02\x02\u01F1\u01F2\x07j\x02\x02" +
|
|
24186
|
+
"\u01F2R\x03\x02\x02\x02\u01F3\u01F4\x07c\x02\x02\u01F4\u01F5\x07u\x02" +
|
|
24187
|
+
"\x02\u01F5T\x03\x02\x02\x02\u01F6\u01F7\x07g\x02\x02\u01F7\u01F8\x07p" +
|
|
24188
|
+
"\x02\x02\u01F8\u01F9\x07w\x02\x02\u01F9\u01FA\x07o\x02\x02\u01FAV\x03" +
|
|
24189
|
+
"\x02\x02\x02\u01FB\u01FC\x07c\x02\x02\u01FC\u01FD\x07p\x02\x02\u01FD\u01FE" +
|
|
24190
|
+
"\x07{\x02\x02\u01FEX\x03\x02\x02\x02\u01FF\u0200\x07r\x02\x02\u0200\u0201" +
|
|
24191
|
+
"\x07t\x02\x02\u0201\u0202\x07q\x02\x02\u0202\u0203\x07v\x02\x02\u0203" +
|
|
24192
|
+
"\u0204\x07q\x02\x02\u0204\u0205\x07e\x02\x02\u0205\u0206\x07q\x02\x02" +
|
|
24193
|
+
"\u0206\u0207\x07n\x02\x02\u0207Z\x03\x02\x02\x02\u0208\u0209\x07f\x02" +
|
|
24194
|
+
"\x02\u0209\u020A\x07g\x02\x02\u020A\u020B\x07h\x02\x02\u020B\u020C\x07" +
|
|
24195
|
+
"k\x02\x02\u020C\u020D\x07p\x02\x02\u020D\u020E\x07g\x02\x02\u020E\\\x03" +
|
|
24196
|
+
"\x02\x02\x02\u020F\u0210\x07t\x02\x02\u0210\u0211\x07g\x02\x02\u0211\u0212" +
|
|
24197
|
+
"\x07s\x02\x02\u0212\u0213\x07w\x02\x02\u0213\u0214\x07k\x02\x02\u0214" +
|
|
24198
|
+
"\u0215\x07t\x02\x02\u0215\u0216\x07g\x02\x02\u0216^\x03\x02\x02\x02\u0217" +
|
|
24199
|
+
"\u0218\x07v\x02\x02\u0218\u0219\x07g\x02\x02\u0219\u021A\x07t\x02\x02" +
|
|
24200
|
+
"\u021A\u021B\x07o\x02\x02\u021B\u021C\x07k\x02\x02\u021C\u021D\x07p\x02" +
|
|
24201
|
+
"\x02\u021D\u021E\x07c\x02\x02\u021E\u021F\x07v\x02\x02\u021F\u0220\x07" +
|
|
24202
|
+
"g\x02\x02\u0220`\x03\x02\x02\x02\u0221\u0222\x07u\x02\x02\u0222\u0223" +
|
|
24203
|
+
"\x07v\x02\x02\u0223\u0224\x07g\x02\x02\u0224\u0225\x07r\x02\x02\u0225" +
|
|
24204
|
+
"b\x03\x02\x02\x02\u0226\u0227\x07f\x02\x02\u0227\u0228\x07g\x02\x02\u0228" +
|
|
24205
|
+
"\u0229\x07e\x02\x02\u0229\u022A\x07q\x02\x02\u022A\u022B\x07f\x02\x02" +
|
|
24206
|
+
"\u022B\u022C\x07g\x02\x02\u022Cd\x03\x02\x02\x02\u022D\u022E\x07g\x02" +
|
|
24207
|
+
"\x02\u022E\u022F\x07p\x02\x02\u022F\u0230\x07e\x02\x02\u0230\u0231\x07" +
|
|
24208
|
+
"q\x02\x02\u0231\u0232\x07f\x02\x02\u0232\u0233\x07g\x02\x02\u0233f\x03" +
|
|
24209
|
+
"\x02\x02\x02\u0234\u0235\x07g\x02\x02\u0235\u0236\x07p\x02\x02\u0236\u0237" +
|
|
24210
|
+
"\x07f\x02\x02\u0237h\x03\x02\x02\x02\u0238\u0239\x07h\x02\x02\u0239\u023A" +
|
|
24211
|
+
"\x07q\x02\x02\u023A\u023B\x07t\x02\x02\u023B\u023C\x07y\x02\x02\u023C" +
|
|
24212
|
+
"\u023D\x07c\x02\x02\u023D\u023E\x07t\x02\x02\u023E\u023F\x07f\x02\x02" +
|
|
24213
|
+
"\u023Fj\x03\x02\x02\x02\u0240\u0241\x07t\x02\x02\u0241\u0242\x07g\x02" +
|
|
24214
|
+
"\x02\u0242\u0243\x07y\x02\x02\u0243\u0244\x07k\x02\x02\u0244\u0245\x07" +
|
|
24215
|
+
"p\x02\x02\u0245\u0246\x07f\x02\x02\u0246l\x03\x02\x02\x02\u0247\u0248" +
|
|
24216
|
+
"\x07q\x02\x02\u0248\u0249\x07h\x02\x02\u0249\u024A\x07h\x02\x02\u024A" +
|
|
24217
|
+
"\u024B\x07u\x02\x02\u024B\u024C\x07g\x02\x02\u024C\u024D\x07v\x02\x02" +
|
|
24218
|
+
"\u024Dn\x03\x02\x02\x02\u024E\u024F\x07z\x02\x02\u024F\u0250\x07q\x02" +
|
|
24219
|
+
"\x02\u0250\u0251\x07t\x02\x02\u0251p\x03\x02\x02\x02\u0252\u0253\x07z" +
|
|
24220
|
+
"\x02\x02\u0253\u0254\x07p\x02\x02\u0254\u0255\x07q\x02\x02\u0255\u0256" +
|
|
24221
|
+
"\x07t\x02\x02\u0256r\x03\x02\x02\x02\u0257\u0258\x07d\x02\x02\u0258\u0259" +
|
|
24222
|
+
"\x07k\x02\x02\u0259\u025A\x07v\x02\x02\u025A\u025B\x07u\x02\x02\u025B" +
|
|
24223
|
+
"t\x03\x02\x02\x02\u025C\u025D\x07d\x02\x02\u025D\u025E\x07{\x02\x02\u025E" +
|
|
24224
|
+
"\u025F\x07v\x02\x02\u025F\u0260\x07g\x02\x02\u0260\u0261\x07u\x02\x02" +
|
|
24225
|
+
"\u0261v\x03\x02\x02\x02\u0262\u0263\x07t\x02\x02\u0263\u0264\x07w\x02" +
|
|
24226
|
+
"\x02\u0264\u0265\x07n\x02\x02\u0265\u0266\x07g\x02\x02\u0266x\x03\x02" +
|
|
24227
|
+
"\x02\x02\u0267\u0268\x07r\x02\x02\u0268\u0269\x07c\x02\x02\u0269\u026A" +
|
|
24228
|
+
"\x07t\x02\x02\u026A\u026B\x07k\x02\x02\u026B\u026C\x07v\x02\x02\u026C" +
|
|
24229
|
+
"\u026D\x07{\x02\x02\u026Dz\x03\x02\x02\x02\u026E\u026F\x07e\x02\x02\u026F" +
|
|
24230
|
+
"\u0270\x07q\x02\x02\u0270\u0271\x07p\x02\x02\u0271\u0272\x07u\x02\x02" +
|
|
24231
|
+
"\u0272\u0273\x07v\x02\x02\u0273|\x03\x02\x02\x02\u0274\u0275\x07q\x02" +
|
|
24232
|
+
"\x02\u0275\u0276\x07d\x02\x02\u0276\u0277\x07l\x02\x02\u0277\u0278\x07" +
|
|
24233
|
+
"g\x02\x02\u0278\u0279\x07e\x02\x02\u0279\u027A\x07v\x02\x02\u027A~\x03" +
|
|
24234
|
+
"\x02\x02\x02\u027B\u027C\x07c\x02\x02\u027C\u027D\x07t\x02\x02\u027D\u027E" +
|
|
24235
|
+
"\x07t\x02\x02\u027E\u027F\x07c\x02\x02\u027F\u0280\x07{\x02\x02\u0280" +
|
|
24236
|
+
"\x80\x03\x02\x02\x02\u0281\u0282\x07u\x02\x02\u0282\u0283\x07v\x02\x02" +
|
|
24237
|
+
"\u0283\u0284\x07t\x02\x02\u0284\u0285\x07k\x02\x02\u0285\u0286\x07p\x02" +
|
|
24238
|
+
"\x02\u0286\u0287\x07i\x02\x02\u0287\x82\x03\x02\x02\x02\u0288\u0289\x07" +
|
|
24239
|
+
"k\x02\x02\u0289\u028A\x07p\x02\x02\u028A\u028B\x07v\x02\x02\u028B\x84" +
|
|
24240
|
+
"\x03\x02\x02\x02\u028C\u028D\x07w\x02\x02\u028D\u028E\x07k\x02\x02\u028E" +
|
|
24241
|
+
"\u028F\x07p\x02\x02\u028F\u0290\x07v\x02\x02\u0290\x86\x03\x02\x02\x02" +
|
|
24242
|
+
"\u0291\u0292\x07h\x02\x02\u0292\u0293\x07n\x02\x02\u0293\u0294\x07q\x02" +
|
|
24243
|
+
"\x02\u0294\u0295\x07c\x02\x02\u0295\u0296\x07v\x02\x02\u0296\x88\x03\x02" +
|
|
24244
|
+
"\x02\x02\u0297\u0298\x07f\x02\x02\u0298\u0299\x07q\x02\x02\u0299\u029A" +
|
|
24245
|
+
"\x07w\x02\x02\u029A\u029B\x07d\x02\x02\u029B\u029C\x07n\x02\x02\u029C" +
|
|
24246
|
+
"\u029D\x07g\x02\x02\u029D\x8A\x03\x02\x02\x02\u029E\u029F\x07d\x02\x02" +
|
|
24247
|
+
"\u029F\u02A0\x07q\x02\x02\u02A0\u02A1\x07q\x02\x02\u02A1\u02A2\x07n\x02" +
|
|
24248
|
+
"\x02\u02A2\x8C\x03\x02\x02\x02\u02A3\u02A4\x07p\x02\x02\u02A4\u02A5\x07" +
|
|
24249
|
+
"w\x02\x02\u02A5\u02A6\x07n\x02\x02\u02A6\u02A7\x07n\x02\x02\u02A7\x8E" +
|
|
24250
|
+
"\x03\x02\x02\x02\u02A8\u02A9\x07x\x02\x02\u02A9\u02AA\x07q\x02\x02\u02AA" +
|
|
24251
|
+
"\u02AB\x07k\x02\x02\u02AB\u02AC\x07f\x02\x02\u02AC\x90\x03\x02\x02\x02" +
|
|
24252
|
+
"\u02AD\u02AE\x07w\x02\x02\u02AE\u02AF\x07p\x02\x02\u02AF\u02B0\x07f\x02" +
|
|
24253
|
+
"\x02\u02B0\u02B1\x07g\x02\x02\u02B1\u02B2\x07h\x02\x02\u02B2\u02B3\x07" +
|
|
24254
|
+
"k\x02\x02\u02B3\u02B4\x07p\x02\x02\u02B4\u02B5\x07g\x02\x02\u02B5\u02B6" +
|
|
24255
|
+
"\x07f\x02\x02\u02B6\x92\x03\x02\x02\x02\u02B7\u02B8\x072\x02\x02\u02B8" +
|
|
24256
|
+
"\u02BA\t\x02\x02\x02\u02B9\u02BB\t\x03\x02\x02\u02BA\u02B9\x03\x02\x02" +
|
|
24257
|
+
"\x02\u02BB\u02BC\x03\x02\x02\x02\u02BC\u02BA\x03\x02\x02\x02\u02BC\u02BD" +
|
|
24258
|
+
"\x03\x02\x02\x02\u02BD\u02E8\x03\x02\x02\x02\u02BE\u02C0\t\x04\x02\x02" +
|
|
24259
|
+
"\u02BF\u02BE\x03\x02\x02\x02\u02C0\u02C1\x03\x02\x02\x02\u02C1\u02BF\x03" +
|
|
24260
|
+
"\x02\x02\x02\u02C1\u02C2\x03\x02\x02\x02\u02C2\u02C9\x03\x02\x02\x02\u02C3" +
|
|
24261
|
+
"\u02C5\x070\x02\x02\u02C4\u02C6\t\x04\x02\x02\u02C5\u02C4\x03\x02\x02" +
|
|
24262
|
+
"\x02\u02C6\u02C7\x03\x02\x02\x02\u02C7\u02C5\x03\x02\x02\x02\u02C7\u02C8" +
|
|
24263
|
+
"\x03\x02\x02\x02\u02C8\u02CA\x03\x02\x02\x02\u02C9\u02C3\x03\x02\x02\x02" +
|
|
24264
|
+
"\u02C9\u02CA\x03\x02\x02\x02\u02CA\u02D4\x03\x02\x02\x02\u02CB\u02CD\t" +
|
|
24265
|
+
"\x05\x02\x02\u02CC\u02CE\t\x06\x02\x02\u02CD\u02CC\x03\x02\x02\x02\u02CD" +
|
|
24266
|
+
"\u02CE\x03\x02\x02\x02\u02CE\u02D0\x03\x02\x02\x02\u02CF\u02D1\t\x04\x02" +
|
|
24267
|
+
"\x02\u02D0\u02CF\x03\x02\x02\x02\u02D1\u02D2\x03\x02\x02\x02\u02D2\u02D0" +
|
|
24268
|
+
"\x03\x02\x02\x02\u02D2\u02D3\x03\x02\x02\x02\u02D3\u02D5\x03\x02\x02\x02" +
|
|
24269
|
+
"\u02D4\u02CB\x03\x02\x02\x02\u02D4\u02D5\x03\x02\x02\x02\u02D5\u02E8\x03" +
|
|
24270
|
+
"\x02\x02\x02\u02D6\u02D8\x070\x02\x02\u02D7\u02D9\t\x04\x02\x02\u02D8" +
|
|
24271
|
+
"\u02D7\x03\x02\x02\x02\u02D9\u02DA\x03\x02\x02\x02\u02DA\u02D8\x03\x02" +
|
|
24272
|
+
"\x02\x02\u02DA\u02DB\x03\x02\x02\x02\u02DB\u02E5\x03\x02\x02\x02\u02DC" +
|
|
24273
|
+
"\u02DE\t\x05\x02\x02\u02DD\u02DF\t\x06\x02\x02\u02DE\u02DD\x03\x02\x02" +
|
|
24274
|
+
"\x02\u02DE\u02DF\x03\x02\x02\x02\u02DF\u02E1\x03\x02\x02\x02\u02E0\u02E2" +
|
|
24275
|
+
"\t\x04\x02\x02\u02E1\u02E0\x03\x02\x02\x02\u02E2\u02E3\x03\x02\x02\x02" +
|
|
24276
|
+
"\u02E3\u02E1\x03\x02\x02\x02\u02E3\u02E4\x03\x02\x02\x02\u02E4\u02E6\x03" +
|
|
24277
|
+
"\x02\x02\x02\u02E5\u02DC\x03\x02\x02\x02\u02E5\u02E6\x03\x02\x02\x02\u02E6" +
|
|
24278
|
+
"\u02E8\x03\x02\x02\x02\u02E7\u02B7\x03\x02\x02\x02\u02E7\u02BF\x03\x02" +
|
|
24279
|
+
"\x02\x02\u02E7\u02D6\x03\x02\x02\x02\u02E8\x94\x03\x02\x02\x02\u02E9\u02EA" +
|
|
24280
|
+
"\x07v\x02\x02\u02EA\u02EB\x07t\x02\x02\u02EB\u02EC\x07w\x02\x02\u02EC" +
|
|
24281
|
+
"\u02F3\x07g\x02\x02\u02ED\u02EE\x07h\x02\x02\u02EE\u02EF\x07c\x02\x02" +
|
|
24282
|
+
"\u02EF\u02F0\x07n\x02\x02\u02F0\u02F1\x07u\x02\x02\u02F1\u02F3\x07g\x02" +
|
|
24283
|
+
"\x02\u02F2\u02E9\x03\x02\x02\x02\u02F2\u02ED\x03\x02\x02\x02\u02F3\x96" +
|
|
24284
|
+
"\x03\x02\x02\x02\u02F4\u02F8\x07$\x02\x02\u02F5\u02F7\n\x07\x02\x02\u02F6" +
|
|
24285
|
+
"\u02F5\x03\x02\x02\x02\u02F7\u02FA\x03\x02\x02\x02\u02F8\u02F6\x03\x02" +
|
|
24286
|
+
"\x02\x02\u02F8\u02F9\x03\x02\x02\x02\u02F9\u02FB\x03\x02\x02\x02\u02FA" +
|
|
24287
|
+
"\u02F8\x03\x02\x02\x02\u02FB\u02FC\x07$\x02\x02\u02FC\x98\x03\x02\x02" +
|
|
24288
|
+
"\x02\u02FD\u02FE\x071\x02\x02\u02FE\u02FF\x071\x02\x02\u02FF\u0303\x03" +
|
|
24289
|
+
"\x02\x02\x02\u0300\u0302\n\b\x02\x02\u0301\u0300\x03\x02\x02\x02\u0302" +
|
|
24290
|
+
"\u0305\x03\x02\x02\x02\u0303\u0301\x03\x02\x02\x02\u0303\u0304\x03\x02" +
|
|
24291
|
+
"\x02\x02\u0304\u0312\x03\x02\x02\x02\u0305\u0303\x03\x02\x02\x02\u0306" +
|
|
24292
|
+
"\u0307\x071\x02\x02\u0307\u0308\x07,\x02\x02\u0308\u030C\x03\x02\x02\x02" +
|
|
24293
|
+
"\u0309\u030B\v\x02\x02\x02\u030A\u0309\x03\x02\x02\x02\u030B\u030E\x03" +
|
|
24294
|
+
"\x02\x02\x02\u030C\u030D\x03\x02\x02\x02\u030C\u030A\x03\x02\x02\x02\u030D" +
|
|
24295
|
+
"\u030F\x03\x02\x02\x02\u030E\u030C\x03\x02\x02\x02\u030F\u0310\x07,\x02" +
|
|
24296
|
+
"\x02\u0310\u0312\x071\x02\x02\u0311\u02FD\x03\x02\x02\x02\u0311\u0306" +
|
|
24297
|
+
"\x03\x02\x02\x02\u0312\x9A\x03\x02\x02\x02\u0313\u0314\x07?\x02\x02\u0314" +
|
|
24298
|
+
"\u0315\x07@\x02\x02\u0315\x9C\x03\x02\x02\x02\u0316\u0317\x07-\x02\x02" +
|
|
24299
|
+
"\u0317\u0318\x07-\x02\x02\u0318\x9E\x03\x02\x02\x02\u0319\u031A\x07/\x02" +
|
|
24300
|
+
"\x02\u031A\u031B\x07/\x02\x02\u031B\xA0\x03\x02\x02\x02\u031C\u031D\x07" +
|
|
24301
|
+
"-\x02\x02\u031D\xA2\x03\x02\x02\x02\u031E\u031F\x07/\x02\x02\u031F\xA4" +
|
|
24302
|
+
"\x03\x02\x02\x02\u0320\u0321\x071\x02\x02\u0321\xA6\x03\x02\x02\x02\u0322" +
|
|
24303
|
+
"\u0323\x07,\x02\x02\u0323\xA8\x03\x02\x02\x02\u0324\u0325\x07\'\x02\x02" +
|
|
24304
|
+
"\u0325\xAA\x03\x02\x02\x02\u0326\u0327\x07A\x02\x02\u0327\xAC\x03\x02" +
|
|
24305
|
+
"\x02\x02\u0328\u0329\x07?\x02\x02\u0329\xAE\x03\x02\x02\x02\u032A\u032B" +
|
|
24306
|
+
"\x07-\x02\x02\u032B\u032C\x07?\x02\x02\u032C\xB0\x03\x02\x02\x02\u032D" +
|
|
24307
|
+
"\u032E\x07/\x02\x02\u032E\u032F\x07?\x02\x02\u032F\xB2\x03\x02\x02\x02" +
|
|
24308
|
+
"\u0330\u0331\x07(\x02\x02\u0331\u0332\x07(\x02\x02\u0332\xB4\x03\x02\x02" +
|
|
24309
|
+
"\x02\u0333\u0334\x07~\x02\x02\u0334\u0335\x07~\x02\x02\u0335\xB6\x03\x02" +
|
|
24310
|
+
"\x02\x02\u0336\u0337\x07#\x02\x02\u0337\xB8\x03\x02\x02\x02\u0338\u0339" +
|
|
24311
|
+
"\x07?\x02\x02\u0339\u033A\x07?\x02\x02\u033A\xBA\x03\x02\x02\x02\u033B" +
|
|
24312
|
+
"\u033C\x07#\x02\x02\u033C\u033D\x07?\x02\x02\u033D\xBC\x03\x02\x02\x02" +
|
|
24313
|
+
"\u033E\u033F\x07@\x02\x02\u033F\xBE\x03\x02\x02\x02\u0340\u0341\x07>\x02" +
|
|
24314
|
+
"\x02\u0341\xC0\x03\x02\x02\x02\u0342\u0343\x07@\x02\x02\u0343\u0344\x07" +
|
|
24315
|
+
"?\x02\x02\u0344\xC2\x03\x02\x02\x02\u0345\u0346\x07>\x02\x02\u0346\u0347" +
|
|
24316
|
+
"\x07?\x02\x02\u0347\xC4\x03\x02\x02\x02\u0348\u0349\x070\x02\x02\u0349" +
|
|
24317
|
+
"\u034A\x070\x02\x02\u034A\u034B\x070\x02\x02\u034B\xC6\x03\x02\x02\x02" +
|
|
24318
|
+
"\u034C\u034D\x070\x02\x02\u034D\xC8\x03\x02\x02\x02\u034E\u034F\x07.\x02" +
|
|
24319
|
+
"\x02\u034F\xCA\x03\x02\x02\x02\u0350\u0351\x07a\x02\x02\u0351\xCC\x03" +
|
|
24320
|
+
"\x02\x02\x02\u0352\u0353\x07*\x02\x02\u0353\xCE\x03\x02\x02\x02\u0354" +
|
|
24321
|
+
"\u0355\x07+\x02\x02\u0355\xD0\x03\x02\x02\x02\u0356\u0357\x07}\x02\x02" +
|
|
24322
|
+
"\u0357\xD2\x03\x02\x02\x02\u0358\u0359\x07\x7F\x02\x02\u0359\xD4\x03\x02" +
|
|
24323
|
+
"\x02\x02\u035A\u035B\x07]\x02\x02\u035B\xD6\x03\x02\x02\x02\u035C\u035D" +
|
|
24324
|
+
"\x07_\x02\x02\u035D\xD8\x03\x02\x02\x02\u035E\u035F\x07<\x02\x02\u035F" +
|
|
24325
|
+
"\u0360\x07<\x02\x02\u0360\xDA\x03\x02\x02\x02\u0361\u0362\x07=\x02\x02" +
|
|
24326
|
+
"\u0362\xDC\x03\x02\x02\x02\u0363\u0364\x07<\x02\x02\u0364\xDE\x03\x02" +
|
|
24327
|
+
"\x02\x02\u0365\u0369\t\t\x02\x02\u0366\u0368\t\n\x02\x02\u0367\u0366\x03" +
|
|
24328
|
+
"\x02\x02\x02\u0368\u036B\x03\x02\x02\x02\u0369\u0367\x03\x02\x02\x02\u0369" +
|
|
24329
|
+
"\u036A\x03\x02\x02\x02\u036A\u0377\x03\x02\x02\x02\u036B\u0369\x03\x02" +
|
|
24330
|
+
"\x02\x02\u036C\u036E\t\v\x02\x02\u036D\u036C\x03\x02\x02\x02\u036E\u036F" +
|
|
24331
|
+
"\x03\x02\x02\x02\u036F\u036D\x03\x02\x02\x02\u036F\u0370\x03\x02\x02\x02" +
|
|
24332
|
+
"\u0370\u0372\x03\x02\x02\x02\u0371\u0373\t\n\x02\x02\u0372\u0371\x03\x02" +
|
|
24333
|
+
"\x02\x02\u0373\u0374\x03\x02\x02\x02\u0374\u0372\x03\x02\x02\x02\u0374" +
|
|
24334
|
+
"\u0375\x03\x02\x02\x02\u0375\u0377\x03\x02\x02\x02\u0376\u0365\x03\x02" +
|
|
24335
|
+
"\x02\x02\u0376\u036D\x03\x02\x02\x02\u0377\xE0\x03\x02\x02\x02\u0378\u037A" +
|
|
24336
|
+
"\t\f\x02\x02\u0379\u0378\x03\x02\x02\x02\u037A\u037B\x03\x02\x02\x02\u037B" +
|
|
24337
|
+
"\u0379\x03\x02\x02\x02\u037B\u037C\x03\x02\x02\x02\u037C\u037D\x03\x02" +
|
|
24338
|
+
"\x02\x02\u037D\u037E\bq\x02\x02\u037E\xE2\x03\x02\x02\x02\x19\x02\u02BC" +
|
|
24339
|
+
"\u02C1\u02C7\u02C9\u02CD\u02D2\u02D4\u02DA\u02DE\u02E3\u02E5\u02E7\u02F2" +
|
|
24340
|
+
"\u02F8\u0303\u030C\u0311\u0369\u036F\u0374\u0376\u037B\x03\b\x02\x02";
|
|
24337
24341
|
BattleScriptLexer._serializedATN = UtilsExports.join([
|
|
24338
24342
|
BattleScriptLexer._serializedATNSegment0,
|
|
24339
24343
|
BattleScriptLexer._serializedATNSegment1,
|
|
@@ -24407,6 +24411,18 @@ const throwIfUndefined = (value, message) => {
|
|
|
24407
24411
|
}
|
|
24408
24412
|
return value;
|
|
24409
24413
|
};
|
|
24414
|
+
/**
|
|
24415
|
+
* Write a number held directly on a node back to source.
|
|
24416
|
+
*
|
|
24417
|
+
* Nodes such as `forward`/`offset`/`rewind`, `rule`, and the `uint<n>`/`bits<n>` widths store a
|
|
24418
|
+
* decoded number rather than a literal child, so each keeps a companion `<field>Raw` holding the
|
|
24419
|
+
* text it was written as - otherwise `forward 0x10;` would come back as `forward 16;`. The raw
|
|
24420
|
+
* text is a full-AST convenience and is not in the binary layout, so a node rebuilt from a binary
|
|
24421
|
+
* has no raw text and falls back to decimal.
|
|
24422
|
+
*/
|
|
24423
|
+
const numberToSourceCode = (value, raw) => {
|
|
24424
|
+
return raw ?? value.toString();
|
|
24425
|
+
};
|
|
24410
24426
|
const applyMetaDataToFunctionDeclarationNode = (node, meta) => {
|
|
24411
24427
|
return {
|
|
24412
24428
|
...node,
|
|
@@ -24486,6 +24502,18 @@ const AssignmentExpressionNodeLayout = [{
|
|
|
24486
24502
|
key: "right",
|
|
24487
24503
|
shape: [exports.EnumNodeLayoutEntry.LAYOUT_POINTER_NODE],
|
|
24488
24504
|
}];
|
|
24505
|
+
/**
|
|
24506
|
+
* The operator as written: `=`, `+=` or `-=`. The grammar gives all three the
|
|
24507
|
+
* same rule, so it is the token between the two expressions. It used to be
|
|
24508
|
+
* written as "=" whatever the source said, which turned `a += b` into `a = b`.
|
|
24509
|
+
*/
|
|
24510
|
+
const assignmentOperator = (ctx) => {
|
|
24511
|
+
if (ctx.PLUS_ASSIGN())
|
|
24512
|
+
return "+=";
|
|
24513
|
+
if (ctx.MINUS_ASSIGN())
|
|
24514
|
+
return "-=";
|
|
24515
|
+
return "=";
|
|
24516
|
+
};
|
|
24489
24517
|
const assignmentExpressionToAstNode = (instance, ctx) => {
|
|
24490
24518
|
// Check for optimisations
|
|
24491
24519
|
const canOptimise = isOptimisable(instance, ctx);
|
|
@@ -24493,7 +24521,7 @@ const assignmentExpressionToAstNode = (instance, ctx) => {
|
|
|
24493
24521
|
return {
|
|
24494
24522
|
kind: "OPTIMISED_ASSIGNMENT_EXPRESSION",
|
|
24495
24523
|
left: ctx.expression(0).text,
|
|
24496
|
-
operator:
|
|
24524
|
+
operator: assignmentOperator(ctx),
|
|
24497
24525
|
right: ctx.expression(1).text,
|
|
24498
24526
|
...instance.contextMetaData(ctx)
|
|
24499
24527
|
};
|
|
@@ -24501,7 +24529,7 @@ const assignmentExpressionToAstNode = (instance, ctx) => {
|
|
|
24501
24529
|
return {
|
|
24502
24530
|
kind: "ASSIGNMENT_EXPRESSION",
|
|
24503
24531
|
left: instance.visit(ctx.expression(0)),
|
|
24504
|
-
operator:
|
|
24532
|
+
operator: assignmentOperator(ctx),
|
|
24505
24533
|
right: instance.visit(ctx.expression(1)),
|
|
24506
24534
|
...instance.contextMetaData(ctx)
|
|
24507
24535
|
};
|
|
@@ -25479,24 +25507,48 @@ const LiteralIntNodeLayout = [{
|
|
|
25479
25507
|
key: "value",
|
|
25480
25508
|
shape: [exports.EnumNodeLayoutEntry.LAYOUT_RAW_INT],
|
|
25481
25509
|
}];
|
|
25510
|
+
/**
|
|
25511
|
+
* Decode the text of a NUMBER token to its numeric value.
|
|
25512
|
+
*
|
|
25513
|
+
* `Number()` rather than `JSON.parse()`, because the NUMBER rule accepts three forms JSON
|
|
25514
|
+
* rejects: hex (`0xFF`), a bare fraction (`.5`), and leading zeroes (`010`). Decoding those
|
|
25515
|
+
* with `JSON.parse` threw on source the parser had already accepted. Note that a leading zero
|
|
25516
|
+
* is not a base marker - BattleScript has no octal, so `010` is ten, and a C-style bitmask is
|
|
25517
|
+
* written `0x…`.
|
|
25518
|
+
*/
|
|
25519
|
+
const decodeNumberLiteral = (raw) => {
|
|
25520
|
+
const value = Number(raw);
|
|
25521
|
+
if (Number.isNaN(value)) {
|
|
25522
|
+
throw new Error(`Could not decode number literal "${raw}"`);
|
|
25523
|
+
}
|
|
25524
|
+
return value;
|
|
25525
|
+
};
|
|
25482
25526
|
// TODO: We don't currently have a way to distinguish between float and double
|
|
25483
25527
|
// and would need to add support at the grammar level to do so. I think adding
|
|
25484
25528
|
// support for 1.2453L with a capital L would be the best way to do this,
|
|
25485
25529
|
// defaulting to 32-bit floats when L is not present.
|
|
25486
25530
|
const numberLiteralToAstNode = (instance, ctx) => {
|
|
25531
|
+
// `raw` is kept verbatim so codegen writes the literal back exactly as it was authored -
|
|
25532
|
+
// a colour written as 0xFF0000 should not come back out as 16711680.
|
|
25487
25533
|
const raw = ctx.NUMBER().text;
|
|
25488
|
-
const
|
|
25489
|
-
|
|
25534
|
+
const value = decodeNumberLiteral(raw);
|
|
25535
|
+
// Int or float is decided by how the literal was written, not by its value:
|
|
25536
|
+
// `2.0` and `1e3` are floats the author spelled as floats, and deciding on
|
|
25537
|
+
// the value made `7 / 2.0` integer division in the interpreter. Hex is
|
|
25538
|
+
// always an int (its digits can include `e`).
|
|
25539
|
+
const isHex = /^0[xX]/.test(raw);
|
|
25540
|
+
const writtenAsFloat = !isHex && /[.eE]/.test(raw);
|
|
25541
|
+
if (!writtenAsFloat) {
|
|
25490
25542
|
return {
|
|
25491
25543
|
kind: `LITERAL_INT`,
|
|
25492
|
-
value
|
|
25544
|
+
value,
|
|
25493
25545
|
raw,
|
|
25494
25546
|
...instance.contextMetaData(ctx),
|
|
25495
25547
|
};
|
|
25496
25548
|
}
|
|
25497
25549
|
return {
|
|
25498
25550
|
kind: `LITERAL_FLOAT`,
|
|
25499
|
-
value
|
|
25551
|
+
value,
|
|
25500
25552
|
raw,
|
|
25501
25553
|
...instance.contextMetaData(ctx),
|
|
25502
25554
|
};
|
|
@@ -40270,7 +40322,7 @@ const optimisedAssignmentExpressionToAstNode = (instance, ctx) => {
|
|
|
40270
40322
|
return {
|
|
40271
40323
|
kind: "OPTIMISED_ASSIGNMENT_EXPRESSION",
|
|
40272
40324
|
left: ctx.expression(0).text,
|
|
40273
|
-
operator:
|
|
40325
|
+
operator: assignmentOperator(ctx),
|
|
40274
40326
|
right: ctx.expression(1).text,
|
|
40275
40327
|
...instance.contextMetaData(ctx)
|
|
40276
40328
|
};
|
|
@@ -40404,8 +40456,11 @@ const ProtocolTypeNodeLayout = [{
|
|
|
40404
40456
|
const protocolTypeToAstNode = (instance, ctx) => {
|
|
40405
40457
|
const numLiteralNode = ctx.numberLiteral();
|
|
40406
40458
|
let bitCount = 0;
|
|
40459
|
+
let bitCountRaw;
|
|
40407
40460
|
if (numLiteralNode) {
|
|
40408
|
-
|
|
40461
|
+
const literal = instance.visit(numLiteralNode);
|
|
40462
|
+
bitCount = literal.value;
|
|
40463
|
+
bitCountRaw = literal.raw;
|
|
40409
40464
|
}
|
|
40410
40465
|
let value = "";
|
|
40411
40466
|
if (ctx.TYPE_STRING()) {
|
|
@@ -40424,13 +40479,14 @@ const protocolTypeToAstNode = (instance, ctx) => {
|
|
|
40424
40479
|
kind: "PROTOCOL_TYPE",
|
|
40425
40480
|
value,
|
|
40426
40481
|
bits: bitCount,
|
|
40482
|
+
bitsRaw: bitCountRaw,
|
|
40427
40483
|
...instance.contextMetaData(ctx)
|
|
40428
40484
|
};
|
|
40429
40485
|
};
|
|
40430
40486
|
const protocolTypeFromAstNode = (instance, node, options = {}) => {
|
|
40431
40487
|
if (node.value === "string")
|
|
40432
40488
|
return instance.raw(`${node.value}`);
|
|
40433
|
-
return instance.raw(`${node.value}<${node.bits}>`);
|
|
40489
|
+
return instance.raw(`${node.value}<${numberToSourceCode(node.bits, node.bitsRaw)}>`);
|
|
40434
40490
|
};
|
|
40435
40491
|
|
|
40436
40492
|
const DefineStatementNodeLayout = [{
|
|
@@ -40651,20 +40707,26 @@ const RuleStatementNodeLayout = [{
|
|
|
40651
40707
|
shape: [exports.EnumNodeLayoutEntry.LAYOUT_RAW_INT]
|
|
40652
40708
|
}];
|
|
40653
40709
|
const ruleStatementToAstNode = (instance, ctx) => {
|
|
40710
|
+
const value = instance.visit(ctx.numberLiteral(0));
|
|
40711
|
+
const consequent = instance.visit(ctx.numberLiteral(1));
|
|
40712
|
+
const alternate = instance.visit(ctx.numberLiteral(2));
|
|
40654
40713
|
return {
|
|
40655
40714
|
kind: "RULE_STATEMENT",
|
|
40656
40715
|
type: instance.visit(ctx.protocolType()),
|
|
40657
40716
|
id: instance.visit(ctx.stringLiteral(0)).value,
|
|
40658
40717
|
inspect: instance.visit(ctx.stringLiteral(1)).value,
|
|
40659
40718
|
comparator: ctx.protocolComparator().text,
|
|
40660
|
-
value:
|
|
40661
|
-
consequent:
|
|
40662
|
-
alternate:
|
|
40719
|
+
value: value.value,
|
|
40720
|
+
consequent: consequent.value,
|
|
40721
|
+
alternate: alternate.value,
|
|
40722
|
+
valueRaw: value.raw,
|
|
40723
|
+
consequentRaw: consequent.raw,
|
|
40724
|
+
alternateRaw: alternate.raw,
|
|
40663
40725
|
...instance.contextMetaData(ctx)
|
|
40664
40726
|
};
|
|
40665
40727
|
};
|
|
40666
40728
|
const ruleStatementFromAstNode = (instance, node, options = {}) => {
|
|
40667
|
-
return instance.inline(instance.getTokenLiteralText(BattleScriptLexer.RULE), " ", instance.visit(node.type), " ", `"${node.id}"`, " ", instance.getTokenLiteralText(BattleScriptLexer.ASSIGN), " ", `"${node.inspect}"`, " ", node.comparator, " ", node.value.
|
|
40729
|
+
return instance.inline(instance.getTokenLiteralText(BattleScriptLexer.RULE), " ", instance.visit(node.type), " ", `"${node.id}"`, " ", instance.getTokenLiteralText(BattleScriptLexer.ASSIGN), " ", `"${node.inspect}"`, " ", node.comparator, " ", numberToSourceCode(node.value, node.valueRaw), " ", instance.getTokenLiteralText(BattleScriptLexer.QUESTION_MARK), " ", numberToSourceCode(node.consequent, node.consequentRaw), " ", instance.getTokenLiteralText(BattleScriptLexer.COLON), " ", numberToSourceCode(node.alternate, node.alternateRaw), ";", instance.newLine());
|
|
40668
40730
|
};
|
|
40669
40731
|
|
|
40670
40732
|
const ParityDeclarationNodeLayout = [{
|
|
@@ -40720,14 +40782,16 @@ const ForwardStatementNodeLayout = [{
|
|
|
40720
40782
|
shape: [exports.EnumNodeLayoutEntry.LAYOUT_RAW_INT]
|
|
40721
40783
|
}];
|
|
40722
40784
|
const forwardStatementToAstNode = (instance, ctx) => {
|
|
40785
|
+
const literal = instance.visit(ctx.numberLiteral());
|
|
40723
40786
|
return {
|
|
40724
40787
|
kind: "FORWARD_STATEMENT",
|
|
40725
|
-
value:
|
|
40788
|
+
value: literal.value,
|
|
40789
|
+
valueRaw: literal.raw,
|
|
40726
40790
|
...instance.contextMetaData(ctx)
|
|
40727
40791
|
};
|
|
40728
40792
|
};
|
|
40729
40793
|
const forwardStatementFromAstNode = (instance, node, options = {}) => {
|
|
40730
|
-
return instance.raw(instance.inline(`${instance.getTokenLiteralText(BattleScriptLexer.FORWARD)} `, node.value.
|
|
40794
|
+
return instance.raw(instance.inline(`${instance.getTokenLiteralText(BattleScriptLexer.FORWARD)} `, numberToSourceCode(node.value, node.valueRaw), ";", instance.newLine()));
|
|
40731
40795
|
};
|
|
40732
40796
|
|
|
40733
40797
|
const OffsetStatementNodeLayout = [{
|
|
@@ -40738,14 +40802,16 @@ const OffsetStatementNodeLayout = [{
|
|
|
40738
40802
|
shape: [exports.EnumNodeLayoutEntry.LAYOUT_RAW_INT]
|
|
40739
40803
|
}];
|
|
40740
40804
|
const offsetStatementToAstNode = (instance, ctx) => {
|
|
40805
|
+
const literal = instance.visit(ctx.numberLiteral());
|
|
40741
40806
|
return {
|
|
40742
40807
|
kind: "OFFSET_STATEMENT",
|
|
40743
|
-
value:
|
|
40808
|
+
value: literal.value,
|
|
40809
|
+
valueRaw: literal.raw,
|
|
40744
40810
|
...instance.contextMetaData(ctx)
|
|
40745
40811
|
};
|
|
40746
40812
|
};
|
|
40747
40813
|
const offsetStatementFromAstNode = (instance, node, options = {}) => {
|
|
40748
|
-
return instance.raw(instance.inline(`${instance.getTokenLiteralText(BattleScriptLexer.OFFSET)} `, node.value.
|
|
40814
|
+
return instance.raw(instance.inline(`${instance.getTokenLiteralText(BattleScriptLexer.OFFSET)} `, numberToSourceCode(node.value, node.valueRaw), ";", instance.newLine()));
|
|
40749
40815
|
};
|
|
40750
40816
|
|
|
40751
40817
|
const RewindStatementNodeLayout = [{
|
|
@@ -40756,14 +40822,16 @@ const RewindStatementNodeLayout = [{
|
|
|
40756
40822
|
shape: [exports.EnumNodeLayoutEntry.LAYOUT_RAW_INT]
|
|
40757
40823
|
}];
|
|
40758
40824
|
const rewindStatementToAstNode = (instance, ctx) => {
|
|
40825
|
+
const literal = instance.visit(ctx.numberLiteral());
|
|
40759
40826
|
return {
|
|
40760
40827
|
kind: "REWIND_STATEMENT",
|
|
40761
|
-
value:
|
|
40828
|
+
value: literal.value,
|
|
40829
|
+
valueRaw: literal.raw,
|
|
40762
40830
|
...instance.contextMetaData(ctx)
|
|
40763
40831
|
};
|
|
40764
40832
|
};
|
|
40765
40833
|
const rewindStatementFromAstNode = (instance, node, options = {}) => {
|
|
40766
|
-
return instance.raw(instance.inline(`${instance.getTokenLiteralText(BattleScriptLexer.REWIND)} `, node.value.
|
|
40834
|
+
return instance.raw(instance.inline(`${instance.getTokenLiteralText(BattleScriptLexer.REWIND)} `, numberToSourceCode(node.value, node.valueRaw), ";", instance.newLine()));
|
|
40767
40835
|
};
|
|
40768
40836
|
|
|
40769
40837
|
const ProtocolOpStatementNodeLayout = [{
|
|
@@ -40828,10 +40896,12 @@ const protocolReadTypeToAstNode = (instance, ctx) => {
|
|
|
40828
40896
|
else {
|
|
40829
40897
|
throw new Error(`Unknown PROTOCOL_READ_TYPE type: ${ctx.text}`);
|
|
40830
40898
|
}
|
|
40899
|
+
const literal = instance.visit(ctx.numberLiteral());
|
|
40831
40900
|
return {
|
|
40832
40901
|
kind: "PROTOCOL_READ_TYPE",
|
|
40833
40902
|
value,
|
|
40834
|
-
bits:
|
|
40903
|
+
bits: literal.value,
|
|
40904
|
+
bitsRaw: literal.raw,
|
|
40835
40905
|
...instance.contextMetaData(ctx)
|
|
40836
40906
|
};
|
|
40837
40907
|
};
|
|
@@ -40846,7 +40916,7 @@ const protocolReadTypeFromAstNode = (instance, node, options = {}) => {
|
|
|
40846
40916
|
else {
|
|
40847
40917
|
throw new Error(`Unknown PROTOCOL_READ_TYPE type (ReadDataType enum from dyna protocol repo): ${node.value}`);
|
|
40848
40918
|
}
|
|
40849
|
-
return instance.raw(`${value}<${node.bits}>`);
|
|
40919
|
+
return instance.raw(`${value}<${numberToSourceCode(node.bits, node.bitsRaw)}>`);
|
|
40850
40920
|
};
|
|
40851
40921
|
|
|
40852
40922
|
const StopStatementNodeLayout = [{
|
|
@@ -42462,10 +42532,13 @@ exports.EnumOperator = void 0;
|
|
|
42462
42532
|
EnumOperator[EnumOperator["OPERATOR_SUB"] = 13] = "OPERATOR_SUB";
|
|
42463
42533
|
EnumOperator[EnumOperator["OPERATOR_MUL"] = 14] = "OPERATOR_MUL";
|
|
42464
42534
|
EnumOperator[EnumOperator["OPERATOR_DIV"] = 15] = "OPERATOR_DIV";
|
|
42465
|
-
EnumOperator[EnumOperator["
|
|
42466
|
-
EnumOperator[EnumOperator["
|
|
42467
|
-
EnumOperator[EnumOperator["
|
|
42468
|
-
EnumOperator[EnumOperator["
|
|
42535
|
+
EnumOperator[EnumOperator["OPERATOR_MOD"] = 16] = "OPERATOR_MOD";
|
|
42536
|
+
EnumOperator[EnumOperator["OPERATOR_PERIOD"] = 17] = "OPERATOR_PERIOD";
|
|
42537
|
+
EnumOperator[EnumOperator["OPERATOR_NAMESPACE"] = 18] = "OPERATOR_NAMESPACE";
|
|
42538
|
+
EnumOperator[EnumOperator["OPERATOR_ASSIGN"] = 19] = "OPERATOR_ASSIGN";
|
|
42539
|
+
EnumOperator[EnumOperator["OPERATOR_ARROW"] = 20] = "OPERATOR_ARROW";
|
|
42540
|
+
EnumOperator[EnumOperator["OPERATOR_ADD_ASSIGN"] = 21] = "OPERATOR_ADD_ASSIGN";
|
|
42541
|
+
EnumOperator[EnumOperator["OPERATOR_SUB_ASSIGN"] = 22] = "OPERATOR_SUB_ASSIGN";
|
|
42469
42542
|
})(exports.EnumOperator || (exports.EnumOperator = {}));
|
|
42470
42543
|
function EnumOperatorToString(opTor) {
|
|
42471
42544
|
switch (opTor) {
|
|
@@ -42484,10 +42557,13 @@ function EnumOperatorToString(opTor) {
|
|
|
42484
42557
|
case exports.EnumOperator.OPERATOR_SUB: return "-";
|
|
42485
42558
|
case exports.EnumOperator.OPERATOR_MUL: return "*";
|
|
42486
42559
|
case exports.EnumOperator.OPERATOR_DIV: return "/";
|
|
42560
|
+
case exports.EnumOperator.OPERATOR_MOD: return "%";
|
|
42487
42561
|
case exports.EnumOperator.OPERATOR_PERIOD: return ".";
|
|
42488
42562
|
case exports.EnumOperator.OPERATOR_NAMESPACE: return "::";
|
|
42489
42563
|
case exports.EnumOperator.OPERATOR_ASSIGN: return "=";
|
|
42490
42564
|
case exports.EnumOperator.OPERATOR_ARROW: return "=>";
|
|
42565
|
+
case exports.EnumOperator.OPERATOR_ADD_ASSIGN: return "+=";
|
|
42566
|
+
case exports.EnumOperator.OPERATOR_SUB_ASSIGN: return "-=";
|
|
42491
42567
|
default: return "UNKNOWN";
|
|
42492
42568
|
}
|
|
42493
42569
|
}
|
|
@@ -42508,10 +42584,13 @@ function EnumOperatorFromString(opTor) {
|
|
|
42508
42584
|
case "-": return exports.EnumOperator.OPERATOR_SUB;
|
|
42509
42585
|
case "*": return exports.EnumOperator.OPERATOR_MUL;
|
|
42510
42586
|
case "/": return exports.EnumOperator.OPERATOR_DIV;
|
|
42587
|
+
case "%": return exports.EnumOperator.OPERATOR_MOD;
|
|
42511
42588
|
case ".": return exports.EnumOperator.OPERATOR_PERIOD;
|
|
42512
42589
|
case "::": return exports.EnumOperator.OPERATOR_NAMESPACE;
|
|
42513
42590
|
case "=": return exports.EnumOperator.OPERATOR_ASSIGN;
|
|
42514
42591
|
case "=>": return exports.EnumOperator.OPERATOR_ARROW;
|
|
42592
|
+
case "+=": return exports.EnumOperator.OPERATOR_ADD_ASSIGN;
|
|
42593
|
+
case "-=": return exports.EnumOperator.OPERATOR_SUB_ASSIGN;
|
|
42515
42594
|
default: return exports.EnumOperator.OPERATOR_UNKNOWN;
|
|
42516
42595
|
}
|
|
42517
42596
|
}
|
|
@@ -45170,13 +45249,17 @@ exports.EnumNodeProp = void 0;
|
|
|
45170
45249
|
EnumNodeProp[EnumNodeProp["PROP_LOCALIDENTIFIER"] = 53] = "PROP_LOCALIDENTIFIER";
|
|
45171
45250
|
EnumNodeProp[EnumNodeProp["PROP_TRANSPORT"] = 54] = "PROP_TRANSPORT";
|
|
45172
45251
|
EnumNodeProp[EnumNodeProp["PROP_BITS"] = 55] = "PROP_BITS";
|
|
45173
|
-
EnumNodeProp[EnumNodeProp["
|
|
45174
|
-
EnumNodeProp[EnumNodeProp["
|
|
45175
|
-
EnumNodeProp[EnumNodeProp["
|
|
45176
|
-
EnumNodeProp[EnumNodeProp["
|
|
45177
|
-
EnumNodeProp[EnumNodeProp["
|
|
45178
|
-
EnumNodeProp[EnumNodeProp["
|
|
45179
|
-
EnumNodeProp[EnumNodeProp["
|
|
45252
|
+
EnumNodeProp[EnumNodeProp["PROP_BITSRAW"] = 56] = "PROP_BITSRAW";
|
|
45253
|
+
EnumNodeProp[EnumNodeProp["PROP_COMPARATOR"] = 57] = "PROP_COMPARATOR";
|
|
45254
|
+
EnumNodeProp[EnumNodeProp["PROP_ISTERMINAL"] = 58] = "PROP_ISTERMINAL";
|
|
45255
|
+
EnumNodeProp[EnumNodeProp["PROP_MODE"] = 59] = "PROP_MODE";
|
|
45256
|
+
EnumNodeProp[EnumNodeProp["PROP_SUCCESS"] = 60] = "PROP_SUCCESS";
|
|
45257
|
+
EnumNodeProp[EnumNodeProp["PROP_INSPECT"] = 61] = "PROP_INSPECT";
|
|
45258
|
+
EnumNodeProp[EnumNodeProp["PROP_VALUERAW"] = 62] = "PROP_VALUERAW";
|
|
45259
|
+
EnumNodeProp[EnumNodeProp["PROP_CONSEQUENTRAW"] = 63] = "PROP_CONSEQUENTRAW";
|
|
45260
|
+
EnumNodeProp[EnumNodeProp["PROP_ALTERNATERAW"] = 64] = "PROP_ALTERNATERAW";
|
|
45261
|
+
EnumNodeProp[EnumNodeProp["PROP_OP"] = 65] = "PROP_OP";
|
|
45262
|
+
EnumNodeProp[EnumNodeProp["PROP_READTYPE"] = 66] = "PROP_READTYPE";
|
|
45180
45263
|
})(exports.EnumNodeProp || (exports.EnumNodeProp = {}));
|
|
45181
45264
|
function EnumNodePropToString(prop) {
|
|
45182
45265
|
switch (prop) {
|
|
@@ -45235,11 +45318,15 @@ function EnumNodePropToString(prop) {
|
|
|
45235
45318
|
case exports.EnumNodeProp.PROP_LOCALIDENTIFIER: return "localIdentifier";
|
|
45236
45319
|
case exports.EnumNodeProp.PROP_TRANSPORT: return "transport";
|
|
45237
45320
|
case exports.EnumNodeProp.PROP_BITS: return "bits";
|
|
45321
|
+
case exports.EnumNodeProp.PROP_BITSRAW: return "bitsRaw";
|
|
45238
45322
|
case exports.EnumNodeProp.PROP_COMPARATOR: return "comparator";
|
|
45239
45323
|
case exports.EnumNodeProp.PROP_ISTERMINAL: return "isTerminal";
|
|
45240
45324
|
case exports.EnumNodeProp.PROP_MODE: return "mode";
|
|
45241
45325
|
case exports.EnumNodeProp.PROP_SUCCESS: return "success";
|
|
45242
45326
|
case exports.EnumNodeProp.PROP_INSPECT: return "inspect";
|
|
45327
|
+
case exports.EnumNodeProp.PROP_VALUERAW: return "valueRaw";
|
|
45328
|
+
case exports.EnumNodeProp.PROP_CONSEQUENTRAW: return "consequentRaw";
|
|
45329
|
+
case exports.EnumNodeProp.PROP_ALTERNATERAW: return "alternateRaw";
|
|
45243
45330
|
case exports.EnumNodeProp.PROP_OP: return "op";
|
|
45244
45331
|
case exports.EnumNodeProp.PROP_READTYPE: return "readType";
|
|
45245
45332
|
default: return "unknown";
|
|
@@ -45302,11 +45389,15 @@ function EnumNodePropFromString(prop) {
|
|
|
45302
45389
|
case "localIdentifier": return exports.EnumNodeProp.PROP_LOCALIDENTIFIER;
|
|
45303
45390
|
case "transport": return exports.EnumNodeProp.PROP_TRANSPORT;
|
|
45304
45391
|
case "bits": return exports.EnumNodeProp.PROP_BITS;
|
|
45392
|
+
case "bitsRaw": return exports.EnumNodeProp.PROP_BITSRAW;
|
|
45305
45393
|
case "comparator": return exports.EnumNodeProp.PROP_COMPARATOR;
|
|
45306
45394
|
case "isTerminal": return exports.EnumNodeProp.PROP_ISTERMINAL;
|
|
45307
45395
|
case "mode": return exports.EnumNodeProp.PROP_MODE;
|
|
45308
45396
|
case "success": return exports.EnumNodeProp.PROP_SUCCESS;
|
|
45309
45397
|
case "inspect": return exports.EnumNodeProp.PROP_INSPECT;
|
|
45398
|
+
case "valueRaw": return exports.EnumNodeProp.PROP_VALUERAW;
|
|
45399
|
+
case "consequentRaw": return exports.EnumNodeProp.PROP_CONSEQUENTRAW;
|
|
45400
|
+
case "alternateRaw": return exports.EnumNodeProp.PROP_ALTERNATERAW;
|
|
45310
45401
|
case "op": return exports.EnumNodeProp.PROP_OP;
|
|
45311
45402
|
case "readType": return exports.EnumNodeProp.PROP_READTYPE;
|
|
45312
45403
|
default: return exports.EnumNodeProp.PROP_UNKNOWN;
|
|
@@ -45429,6 +45520,7 @@ exports.arrayExpressionFromAstNode = arrayExpressionFromAstNode;
|
|
|
45429
45520
|
exports.arrayExpressionInternalToAstNode = arrayExpressionInternalToAstNode;
|
|
45430
45521
|
exports.assignmentExpressionFromAstNode = assignmentExpressionFromAstNode;
|
|
45431
45522
|
exports.assignmentExpressionToAstNode = assignmentExpressionToAstNode;
|
|
45523
|
+
exports.assignmentOperator = assignmentOperator;
|
|
45432
45524
|
exports.assignmentPatternToAstNode = assignmentPatternToAstNode;
|
|
45433
45525
|
exports.binaryExpressionFromAstNode = binaryExpressionFromAstNode;
|
|
45434
45526
|
exports.binaryExpressionToAstNode = binaryExpressionToAstNode;
|
|
@@ -45458,6 +45550,7 @@ exports.dataTypeFromAstNode = dataTypeFromAstNode;
|
|
|
45458
45550
|
exports.dataTypeToAstNode = dataTypeToAstNode;
|
|
45459
45551
|
exports.debuggerStatementFromAstNode = debuggerStatementFromAstNode;
|
|
45460
45552
|
exports.debuggerStatementToAstNode = debuggerStatementToAstNode;
|
|
45553
|
+
exports.decodeNumberLiteral = decodeNumberLiteral;
|
|
45461
45554
|
exports.defineStatementFromAstNode = defineStatementFromAstNode;
|
|
45462
45555
|
exports.defineStatementToAstNode = defineStatementToAstNode;
|
|
45463
45556
|
exports.endStatementFromAstNode = endStatementFromAstNode;
|