solve-engine 1.1.0 → 1.2.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/dist/{EngineError-B61GS1jp.d.cts → EngineError-CNA_rHY-.d.cts} +6 -0
- package/dist/{EngineError-B61GS1jp.d.ts → EngineError-CNA_rHY-.d.ts} +6 -0
- package/dist/{Lexer-BOs7euZe.d.cts → Lexer-B4C1qHXu.d.cts} +1 -1
- package/dist/{Lexer-CSI_lwbW.d.ts → Lexer-DKMlj7Sy.d.ts} +1 -1
- package/dist/{PackageCompatibility-B-7rK1TD.d.cts → PackageCompatibility-B6NX9IaN.d.cts} +1 -1
- package/dist/{PackageCompatibility-Dh59eF-X.d.ts → PackageCompatibility-Ceg5XdAp.d.ts} +1 -1
- package/dist/{PackageRegistry-BHWJP83F.d.cts → PackageRegistry-DnJYVw9G.d.cts} +55 -8
- package/dist/{PackageRegistry-_8rDlvxI.d.ts → PackageRegistry-DrCPQNyy.d.ts} +55 -8
- package/dist/{Parselet-BBT8riYh.d.ts → Parselet-Bhf7d0_W.d.ts} +2 -2
- package/dist/{Parselet-BHcgK9S7.d.cts → Parselet-Cv7S7KRt.d.cts} +2 -2
- package/dist/{ScopeManager-CxA24W5n.d.ts → ScopeManager-Bzq87GfA.d.ts} +10 -3
- package/dist/{ScopeManager-8vf02dwj.d.cts → ScopeManager-DRDBVfan.d.cts} +10 -3
- package/dist/{Token-B1hdkedD.d.cts → Token-CbP_OutD.d.cts} +9 -0
- package/dist/{Token-B1hdkedD.d.ts → Token-CbP_OutD.d.ts} +9 -0
- package/dist/{TokenNormalizer-C6VzZgHa.d.ts → TokenNormalizer-DCWdZjGz.d.ts} +1 -1
- package/dist/{TokenNormalizer-DRc1Js1V.d.cts → TokenNormalizer-DnlL7_8c.d.cts} +1 -1
- package/dist/{VMCheckpoints-MK--EBH2.d.ts → VMCheckpoints-C6c17Hbo.d.ts} +2 -2
- package/dist/{VMCheckpoints-ELYqITdF.d.cts → VMCheckpoints-dZxSMGHG.d.cts} +2 -2
- package/dist/{Value-BUi1RA3S.d.cts → Value-DZNQ_PU7.d.cts} +32 -5
- package/dist/{Value-BUi1RA3S.d.ts → Value-DZNQ_PU7.d.ts} +32 -5
- package/dist/{WorkerError-_-RkoQ5P.d.ts → WorkerError-B7t7R2-m.d.ts} +1 -1
- package/dist/{WorkerError-gzmaopj2.d.cts → WorkerError-Djd7GGGa.d.cts} +1 -1
- package/dist/{chunk-SSV46KFA.cjs → chunk-4K5W7EH2.cjs} +6 -6
- package/dist/{chunk-SSV46KFA.cjs.map → chunk-4K5W7EH2.cjs.map} +1 -1
- package/dist/{chunk-267JPOTF.js → chunk-5EFKSKMA.js} +11 -4
- package/dist/chunk-5EFKSKMA.js.map +1 -0
- package/dist/{chunk-536WPM2V.cjs → chunk-7AXJNQMF.cjs} +17 -3
- package/dist/chunk-7AXJNQMF.cjs.map +1 -0
- package/dist/{chunk-GUG7SNSV.js → chunk-7JM3F4KL.js} +39 -8
- package/dist/chunk-7JM3F4KL.js.map +1 -0
- package/dist/{chunk-XJGJCF2R.cjs → chunk-7USV76HV.cjs} +6 -6
- package/dist/{chunk-XJGJCF2R.cjs.map → chunk-7USV76HV.cjs.map} +1 -1
- package/dist/{chunk-HIQ5HSZL.cjs → chunk-A2DZ5BEJ.cjs} +53 -46
- package/dist/{chunk-HIQ5HSZL.cjs.map → chunk-A2DZ5BEJ.cjs.map} +1 -1
- package/dist/{chunk-CKQMXMHR.cjs → chunk-AKNGX4TZ.cjs} +28 -11
- package/dist/chunk-AKNGX4TZ.cjs.map +1 -0
- package/dist/{chunk-I4GAWIPW.js → chunk-AOH6UR2L.js} +6 -6
- package/dist/{chunk-I4GAWIPW.js.map → chunk-AOH6UR2L.js.map} +1 -1
- package/dist/{chunk-MG6Q3DUO.cjs → chunk-BESTLPRK.cjs} +326 -214
- package/dist/chunk-BESTLPRK.cjs.map +1 -0
- package/dist/{chunk-Z7XGGLI2.js → chunk-BSPXMGIS.js} +3 -3
- package/dist/{chunk-Z7XGGLI2.js.map → chunk-BSPXMGIS.js.map} +1 -1
- package/dist/{chunk-SRGQ72IR.cjs → chunk-C2OMO3WN.cjs} +376 -370
- package/dist/chunk-C2OMO3WN.cjs.map +1 -0
- package/dist/{chunk-G7Z4HJQA.js → chunk-CSDQMDU2.js} +4 -4
- package/dist/{chunk-G7Z4HJQA.js.map → chunk-CSDQMDU2.js.map} +1 -1
- package/dist/{chunk-7KYSUDQO.js → chunk-F4UB4XIL.js} +4 -4
- package/dist/{chunk-7KYSUDQO.js.map → chunk-F4UB4XIL.js.map} +1 -1
- package/dist/{chunk-WXEHD6TT.js → chunk-FE4RC37D.js} +15 -9
- package/dist/chunk-FE4RC37D.js.map +1 -0
- package/dist/{chunk-7ZX6B7SY.cjs → chunk-FR7RNOPT.cjs} +637 -556
- package/dist/chunk-FR7RNOPT.cjs.map +1 -0
- package/dist/{chunk-QFTDTX6K.cjs → chunk-G2YPPLGX.cjs} +29 -2
- package/dist/chunk-G2YPPLGX.cjs.map +1 -0
- package/dist/{chunk-HVRVSI2Z.cjs → chunk-GDEU72RG.cjs} +86 -86
- package/dist/{chunk-HVRVSI2Z.cjs.map → chunk-GDEU72RG.cjs.map} +1 -1
- package/dist/{chunk-OTN6SZOD.cjs → chunk-HKTQCQ4Z.cjs} +860 -489
- package/dist/chunk-HKTQCQ4Z.cjs.map +1 -0
- package/dist/{chunk-XA4CKRML.cjs → chunk-HWHU642X.cjs} +2 -2
- package/dist/{chunk-XA4CKRML.cjs.map → chunk-HWHU642X.cjs.map} +1 -1
- package/dist/{chunk-C75AFGVD.cjs → chunk-ICEKS6YC.cjs} +11 -11
- package/dist/{chunk-C75AFGVD.cjs.map → chunk-ICEKS6YC.cjs.map} +1 -1
- package/dist/{chunk-JIPATHVY.js → chunk-IJGOFP2J.js} +138 -26
- package/dist/chunk-IJGOFP2J.js.map +1 -0
- package/dist/{chunk-ENKKJYD3.js → chunk-IQJGDZOP.js} +4 -4
- package/dist/{chunk-ENKKJYD3.js.map → chunk-IQJGDZOP.js.map} +1 -1
- package/dist/{chunk-2TZKENDH.cjs → chunk-IT74O4BE.cjs} +15 -7
- package/dist/chunk-IT74O4BE.cjs.map +1 -0
- package/dist/{chunk-ZVTWQLK4.cjs → chunk-KXDQKVNX.cjs} +10 -10
- package/dist/{chunk-ZVTWQLK4.cjs.map → chunk-KXDQKVNX.cjs.map} +1 -1
- package/dist/{chunk-JJIXHXFQ.js → chunk-L5YHV6BQ.js} +5 -5
- package/dist/{chunk-JJIXHXFQ.js.map → chunk-L5YHV6BQ.js.map} +1 -1
- package/dist/{chunk-ZXCESUJS.cjs → chunk-LO7HU5WB.cjs} +8 -8
- package/dist/{chunk-ZXCESUJS.cjs.map → chunk-LO7HU5WB.cjs.map} +1 -1
- package/dist/{chunk-UO6BUV6K.js → chunk-LSALB3IN.js} +17 -3
- package/dist/chunk-LSALB3IN.js.map +1 -0
- package/dist/{chunk-J45BCEZ4.cjs → chunk-MI7OTUHL.cjs} +27 -27
- package/dist/{chunk-J45BCEZ4.cjs.map → chunk-MI7OTUHL.cjs.map} +1 -1
- package/dist/{chunk-B4HBEFTB.cjs → chunk-MIGXCBXT.cjs} +8 -2
- package/dist/chunk-MIGXCBXT.cjs.map +1 -0
- package/dist/{chunk-ERCOHGXD.js → chunk-N7OA4WPJ.js} +8 -2
- package/dist/chunk-N7OA4WPJ.js.map +1 -0
- package/dist/{chunk-4D6NIHE2.js → chunk-NAWZATKT.js} +29 -2
- package/dist/chunk-NAWZATKT.js.map +1 -0
- package/dist/{chunk-GQMUHVE3.js → chunk-ORM7CHYZ.js} +36 -5
- package/dist/chunk-ORM7CHYZ.js.map +1 -0
- package/dist/{chunk-B7NLZMQ3.cjs → chunk-PCZVMMWU.cjs} +8 -8
- package/dist/{chunk-B7NLZMQ3.cjs.map → chunk-PCZVMMWU.cjs.map} +1 -1
- package/dist/{chunk-OADDUPT3.js → chunk-RNKDIXDV.js} +4 -4
- package/dist/{chunk-OADDUPT3.js.map → chunk-RNKDIXDV.js.map} +1 -1
- package/dist/{chunk-SNHVVOJK.cjs → chunk-TC6BTUSU.cjs} +55 -24
- package/dist/chunk-TC6BTUSU.cjs.map +1 -0
- package/dist/{chunk-RRLHC37V.js → chunk-TPOK3UNI.js} +387 -17
- package/dist/chunk-TPOK3UNI.js.map +1 -0
- package/dist/{chunk-CCBZZQAE.js → chunk-UF6JG5SG.js} +2 -2
- package/dist/{chunk-CCBZZQAE.js.map → chunk-UF6JG5SG.js.map} +1 -1
- package/dist/{chunk-NKW7LKYU.js → chunk-WMQRJTAO.js} +88 -7
- package/dist/chunk-WMQRJTAO.js.map +1 -0
- package/dist/{chunk-YTIYVHL7.cjs → chunk-YJHY7CMN.cjs} +108 -77
- package/dist/chunk-YJHY7CMN.cjs.map +1 -0
- package/dist/{chunk-3OWCDIPN.js → chunk-YNIWOYW6.js} +21 -4
- package/dist/chunk-YNIWOYW6.js.map +1 -0
- package/dist/{chunk-WWQEY7BV.js → chunk-ZN6YYPIW.js} +3 -3
- package/dist/{chunk-WWQEY7BV.js.map → chunk-ZN6YYPIW.js.map} +1 -1
- package/dist/{chunk-NNQ2TYDF.js → chunk-ZNFFTYWH.js} +11 -5
- package/dist/chunk-ZNFFTYWH.js.map +1 -0
- package/dist/constants.cjs +5 -5
- package/dist/constants.js +2 -2
- package/dist/engine.cjs +33 -33
- package/dist/engine.d.cts +27 -11
- package/dist/engine.d.ts +27 -11
- package/dist/engine.js +20 -20
- package/dist/errors.cjs +26 -26
- package/dist/errors.d.cts +3 -3
- package/dist/errors.d.ts +3 -3
- package/dist/errors.js +2 -2
- package/dist/format.cjs +7 -7
- package/dist/format.d.cts +1 -1
- package/dist/format.d.ts +1 -1
- package/dist/format.js +4 -4
- package/dist/index.cjs +48 -48
- package/dist/index.d.cts +11 -11
- package/dist/index.d.ts +11 -11
- package/dist/index.js +21 -21
- package/dist/language.cjs +7 -7
- package/dist/language.d.cts +10 -10
- package/dist/language.d.ts +10 -10
- package/dist/language.js +2 -2
- package/dist/lexer.cjs +16 -16
- package/dist/lexer.d.cts +3 -3
- package/dist/lexer.d.ts +3 -3
- package/dist/lexer.js +5 -5
- package/dist/normalizer.cjs +10 -10
- package/dist/normalizer.d.cts +3 -3
- package/dist/normalizer.d.ts +3 -3
- package/dist/normalizer.js +4 -4
- package/dist/packages.cjs +40 -36
- package/dist/packages.d.cts +37 -11
- package/dist/packages.d.ts +37 -11
- package/dist/packages.js +11 -11
- package/dist/parser.cjs +13 -13
- package/dist/parser.d.cts +4 -4
- package/dist/parser.d.ts +4 -4
- package/dist/parser.js +5 -5
- package/dist/{pipeline-CtfJtPQc.d.cts → pipeline-D-PS9gVw.d.ts} +3 -3
- package/dist/{pipeline-DCd5M6Gk.d.ts → pipeline-DtSBJ8TS.d.cts} +3 -3
- package/dist/resolvers.d.cts +2 -2
- package/dist/resolvers.d.ts +2 -2
- package/dist/testing.cjs +26 -26
- package/dist/testing.d.cts +10 -10
- package/dist/testing.d.ts +10 -10
- package/dist/testing.js +19 -19
- package/dist/uom.cjs +8 -8
- package/dist/uom.d.cts +2 -2
- package/dist/uom.d.ts +2 -2
- package/dist/uom.js +4 -4
- package/dist/vm.cjs +32 -32
- package/dist/vm.d.cts +7 -7
- package/dist/vm.d.ts +7 -7
- package/dist/vm.js +7 -7
- package/dist/worker.cjs +38 -38
- package/dist/worker.d.cts +10 -10
- package/dist/worker.d.ts +10 -10
- package/dist/worker.js +20 -20
- package/package.json +1 -1
- package/dist/chunk-267JPOTF.js.map +0 -1
- package/dist/chunk-2TZKENDH.cjs.map +0 -1
- package/dist/chunk-3OWCDIPN.js.map +0 -1
- package/dist/chunk-4D6NIHE2.js.map +0 -1
- package/dist/chunk-536WPM2V.cjs.map +0 -1
- package/dist/chunk-7ZX6B7SY.cjs.map +0 -1
- package/dist/chunk-B4HBEFTB.cjs.map +0 -1
- package/dist/chunk-CKQMXMHR.cjs.map +0 -1
- package/dist/chunk-ERCOHGXD.js.map +0 -1
- package/dist/chunk-GQMUHVE3.js.map +0 -1
- package/dist/chunk-GUG7SNSV.js.map +0 -1
- package/dist/chunk-JIPATHVY.js.map +0 -1
- package/dist/chunk-MG6Q3DUO.cjs.map +0 -1
- package/dist/chunk-NKW7LKYU.js.map +0 -1
- package/dist/chunk-NNQ2TYDF.js.map +0 -1
- package/dist/chunk-OTN6SZOD.cjs.map +0 -1
- package/dist/chunk-QFTDTX6K.cjs.map +0 -1
- package/dist/chunk-RRLHC37V.js.map +0 -1
- package/dist/chunk-SNHVVOJK.cjs.map +0 -1
- package/dist/chunk-SRGQ72IR.cjs.map +0 -1
- package/dist/chunk-UO6BUV6K.js.map +0 -1
- package/dist/chunk-WXEHD6TT.js.map +0 -1
- package/dist/chunk-YTIYVHL7.cjs.map +0 -1
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
'use strict';
|
|
2
2
|
|
|
3
|
-
var
|
|
3
|
+
var chunkG2YPPLGX_cjs = require('./chunk-G2YPPLGX.cjs');
|
|
4
4
|
var chunkOUHT5Z36_cjs = require('./chunk-OUHT5Z36.cjs');
|
|
5
5
|
var chunkAQNHHJMJ_cjs = require('./chunk-AQNHHJMJ.cjs');
|
|
6
|
-
var
|
|
6
|
+
var chunkMIGXCBXT_cjs = require('./chunk-MIGXCBXT.cjs');
|
|
7
7
|
|
|
8
8
|
// src/lexer/ExpressionLexer.ts
|
|
9
|
-
|
|
9
|
+
chunkG2YPPLGX_cjs.registerAllTokenTypes();
|
|
10
10
|
function buildCharClassTable() {
|
|
11
11
|
const table = new Uint8Array(128);
|
|
12
12
|
for (let i = 48; i <= 57; i++) table[i] = 2 /* DIGIT */;
|
|
@@ -85,8 +85,12 @@ var TWO_CHAR_OPS = {
|
|
|
85
85
|
// <=
|
|
86
86
|
38: { 38: "LOGICAL_AND" },
|
|
87
87
|
// &&
|
|
88
|
-
124: { 124: "LOGICAL_OR" }
|
|
88
|
+
124: { 124: "LOGICAL_OR" },
|
|
89
89
|
// ||
|
|
90
|
+
43: { 61: "PLUS_EQUALS" },
|
|
91
|
+
// += (compound assignment, running totals)
|
|
92
|
+
45: { 61: "MINUS_EQUALS" }
|
|
93
|
+
// -= (neither + nor - had a two-char op before)
|
|
90
94
|
// Note: ** is NOT a single token, the existing moo lexer emits two
|
|
91
95
|
// separate STAR tokens, and the parser consumes them that way.
|
|
92
96
|
// 42: { 42: 'EXPONENT' }, // **, disabled for moo compatibility
|
|
@@ -243,7 +247,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
243
247
|
if (m && typeof m[1] === "string") {
|
|
244
248
|
const value = m[1].trim();
|
|
245
249
|
if (value.length > 0) {
|
|
246
|
-
return new LexerToken(rule.tokenType,
|
|
250
|
+
return new LexerToken(rule.tokenType, chunkG2YPPLGX_cjs.tokenTypeId(rule.tokenType), value, value, 0, 0, this.line, 1);
|
|
247
251
|
}
|
|
248
252
|
}
|
|
249
253
|
}
|
|
@@ -273,7 +277,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
273
277
|
for (const [keyword, tokenType] of Object.entries(plugin.keywords)) {
|
|
274
278
|
const lower = keyword.toLowerCase();
|
|
275
279
|
if (this.keywordMap.has(lower)) {
|
|
276
|
-
throw
|
|
280
|
+
throw chunkMIGXCBXT_cjs.ErrorFactory.config(
|
|
277
281
|
"PLUGIN_KEYWORD_COLLISION",
|
|
278
282
|
`Plugin keyword "${keyword}" conflicts with built-in keyword (type: ${this.keywordMap.get(lower)}). Built-in keywords cannot be overridden.`,
|
|
279
283
|
{ keyword, builtinType: this.keywordMap.get(lower) }
|
|
@@ -291,28 +295,28 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
291
295
|
const second = chars.charCodeAt(1);
|
|
292
296
|
const builtInSecondMap = TWO_CHAR_OPS[first];
|
|
293
297
|
if (builtInSecondMap && builtInSecondMap[second] !== void 0) {
|
|
294
|
-
throw
|
|
298
|
+
throw chunkMIGXCBXT_cjs.ErrorFactory.config(
|
|
295
299
|
"PLUGIN_OPERATOR_COLLISION",
|
|
296
300
|
`Plugin operator "${chars}" conflicts with built-in operator (type: ${builtInSecondMap[second]}). Built-in operators cannot be overridden.`,
|
|
297
301
|
{ operator: chars, builtinType: builtInSecondMap[second] }
|
|
298
302
|
);
|
|
299
303
|
}
|
|
300
304
|
if (first === 60 && second === 60) {
|
|
301
|
-
throw
|
|
305
|
+
throw chunkMIGXCBXT_cjs.ErrorFactory.config(
|
|
302
306
|
"PLUGIN_OPERATOR_COLLISION",
|
|
303
307
|
`Plugin operator "${chars}" conflicts with built-in operator (type: LSHIFT). Built-in operators cannot be overridden.`,
|
|
304
308
|
{ operator: chars, builtinType: "LSHIFT" }
|
|
305
309
|
);
|
|
306
310
|
}
|
|
307
311
|
if (first === 62 && second === 62) {
|
|
308
|
-
throw
|
|
312
|
+
throw chunkMIGXCBXT_cjs.ErrorFactory.config(
|
|
309
313
|
"PLUGIN_OPERATOR_COLLISION",
|
|
310
314
|
`Plugin operator "${chars}" conflicts with built-in operator (type: RSHIFT). Built-in operators cannot be overridden.`,
|
|
311
315
|
{ operator: chars, builtinType: "RSHIFT" }
|
|
312
316
|
);
|
|
313
317
|
}
|
|
314
318
|
if (first === 47 && second === 47) {
|
|
315
|
-
throw
|
|
319
|
+
throw chunkMIGXCBXT_cjs.ErrorFactory.config(
|
|
316
320
|
"PLUGIN_OPERATOR_COLLISION",
|
|
317
321
|
`Plugin operator "${chars}" conflicts with built-in comment sequence. Comment sequences cannot be overridden.`,
|
|
318
322
|
{ operator: chars, builtinType: "COMMENT" }
|
|
@@ -330,7 +334,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
330
334
|
if (plugin.units) {
|
|
331
335
|
for (const unit of plugin.units) {
|
|
332
336
|
if (chunkAQNHHJMJ_cjs.knownUnits.has(unit)) {
|
|
333
|
-
throw
|
|
337
|
+
throw chunkMIGXCBXT_cjs.ErrorFactory.config(
|
|
334
338
|
"PLUGIN_UNIT_COLLISION",
|
|
335
339
|
`Plugin unit "${unit}" conflicts with a built-in unit. Built-in units cannot be overridden.`,
|
|
336
340
|
{ unit }
|
|
@@ -551,20 +555,20 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
551
555
|
switch (cc) {
|
|
552
556
|
case 2 /* DIGIT */:
|
|
553
557
|
case 4 /* DOT */:
|
|
554
|
-
yield new LexerToken("NUMBER",
|
|
558
|
+
yield new LexerToken("NUMBER", chunkG2YPPLGX_cjs.tokenTypeId("NUMBER"), this.input, this.input, 0, 0, 1, 1);
|
|
555
559
|
tokenIndex++;
|
|
556
560
|
break;
|
|
557
561
|
case 3 /* ALPHA */: {
|
|
558
562
|
const input2 = this.input;
|
|
559
563
|
const identLower = input2.toLowerCase();
|
|
560
564
|
if (this.mergedUnits.has(input2)) {
|
|
561
|
-
yield new LexerToken("UNIT",
|
|
565
|
+
yield new LexerToken("UNIT", chunkG2YPPLGX_cjs.tokenTypeId("UNIT"), input2, input2, 0, 0, 1, 1);
|
|
562
566
|
} else {
|
|
563
567
|
const kwType = this.mergedKeywords.get(identLower);
|
|
564
568
|
if (kwType) {
|
|
565
|
-
yield new LexerToken(kwType,
|
|
569
|
+
yield new LexerToken(kwType, chunkG2YPPLGX_cjs.tokenTypeId(kwType), input2, input2, 0, 0, 1, 1);
|
|
566
570
|
} else {
|
|
567
|
-
yield new LexerToken("IDENT",
|
|
571
|
+
yield new LexerToken("IDENT", chunkG2YPPLGX_cjs.tokenTypeId("IDENT"), input2, input2, 0, 0, 1, 1);
|
|
568
572
|
}
|
|
569
573
|
}
|
|
570
574
|
tokenIndex++;
|
|
@@ -573,7 +577,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
573
577
|
case 5 /* OPERATOR */: {
|
|
574
578
|
const opType = OP_MAP[c0];
|
|
575
579
|
if (opType) {
|
|
576
|
-
yield new LexerToken(opType,
|
|
580
|
+
yield new LexerToken(opType, chunkG2YPPLGX_cjs.tokenTypeId(opType), this.input, this.input, 0, 0, 1, 1);
|
|
577
581
|
tokenIndex++;
|
|
578
582
|
}
|
|
579
583
|
break;
|
|
@@ -589,64 +593,64 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
589
593
|
tokenIndex++;
|
|
590
594
|
break;
|
|
591
595
|
case 8 /* DOLLAR */:
|
|
592
|
-
yield new LexerToken("DOLLAR",
|
|
596
|
+
yield new LexerToken("DOLLAR", chunkG2YPPLGX_cjs.tokenTypeId("DOLLAR"), "$", "$", 0, 0, 1, 1);
|
|
593
597
|
tokenIndex++;
|
|
594
598
|
break;
|
|
595
599
|
case 11 /* BACKTICK */:
|
|
596
|
-
yield new LexerToken("BACKTICK_OPEN",
|
|
600
|
+
yield new LexerToken("BACKTICK_OPEN", chunkG2YPPLGX_cjs.tokenTypeId("BACKTICK_OPEN"), "`", "`", 0, 0, 1, 1);
|
|
597
601
|
tokenIndex++;
|
|
598
602
|
break;
|
|
599
603
|
default: {
|
|
600
604
|
if (isUnicodeSpace(c0)) ; else if (c0 === 215) {
|
|
601
|
-
yield new LexerToken("STAR",
|
|
605
|
+
yield new LexerToken("STAR", chunkG2YPPLGX_cjs.tokenTypeId("STAR"), "\xD7", "\xD7", 0, 0, 1, 1);
|
|
602
606
|
tokenIndex++;
|
|
603
607
|
} else if (c0 === 247) {
|
|
604
|
-
yield new LexerToken("SLASH",
|
|
608
|
+
yield new LexerToken("SLASH", chunkG2YPPLGX_cjs.tokenTypeId("SLASH"), "\xF7", "\xF7", 0, 0, 1, 1);
|
|
605
609
|
tokenIndex++;
|
|
606
610
|
} else if (c0 === 177) {
|
|
607
|
-
yield new LexerToken("PLUS_MINUS",
|
|
611
|
+
yield new LexerToken("PLUS_MINUS", chunkG2YPPLGX_cjs.tokenTypeId("PLUS_MINUS"), "\xB1", "\xB1", 0, 0, 1, 1);
|
|
608
612
|
tokenIndex++;
|
|
609
613
|
} else if (c0 === 8800) {
|
|
610
|
-
yield new LexerToken("NEQ",
|
|
614
|
+
yield new LexerToken("NEQ", chunkG2YPPLGX_cjs.tokenTypeId("NEQ"), "\u2260", "\u2260", 0, 0, 1, 1);
|
|
611
615
|
tokenIndex++;
|
|
612
616
|
} else if (c0 === 163) {
|
|
613
|
-
yield new LexerToken("POUND",
|
|
617
|
+
yield new LexerToken("POUND", chunkG2YPPLGX_cjs.tokenTypeId("POUND"), "\xA3", "\xA3", 0, 0, 1, 1);
|
|
614
618
|
tokenIndex++;
|
|
615
619
|
} else if (c0 === 8364) {
|
|
616
|
-
yield new LexerToken("EURO",
|
|
620
|
+
yield new LexerToken("EURO", chunkG2YPPLGX_cjs.tokenTypeId("EURO"), "\u20AC", "\u20AC", 0, 0, 1, 1);
|
|
617
621
|
tokenIndex++;
|
|
618
622
|
} else if (c0 === 165) {
|
|
619
|
-
yield new LexerToken("YEN",
|
|
623
|
+
yield new LexerToken("YEN", chunkG2YPPLGX_cjs.tokenTypeId("YEN"), "\xA5", "\xA5", 0, 0, 1, 1);
|
|
620
624
|
tokenIndex++;
|
|
621
625
|
} else if (c0 === 8381) {
|
|
622
|
-
yield new LexerToken("RUBLE",
|
|
626
|
+
yield new LexerToken("RUBLE", chunkG2YPPLGX_cjs.tokenTypeId("RUBLE"), "\u20BD", "\u20BD", 0, 0, 1, 1);
|
|
623
627
|
tokenIndex++;
|
|
624
628
|
} else if (c0 === 8361) {
|
|
625
|
-
yield new LexerToken("WON",
|
|
629
|
+
yield new LexerToken("WON", chunkG2YPPLGX_cjs.tokenTypeId("WON"), "\u20A9", "\u20A9", 0, 0, 1, 1);
|
|
626
630
|
tokenIndex++;
|
|
627
631
|
} else if (c0 === 8377) {
|
|
628
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
632
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20B9", "\u20B9", 0, 0, 1, 1);
|
|
629
633
|
tokenIndex++;
|
|
630
634
|
} else if (c0 === 8378) {
|
|
631
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
635
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20BA", "\u20BA", 0, 0, 1, 1);
|
|
632
636
|
tokenIndex++;
|
|
633
637
|
} else if (c0 === 8372) {
|
|
634
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
638
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20B4", "\u20B4", 0, 0, 1, 1);
|
|
635
639
|
tokenIndex++;
|
|
636
640
|
} else if (c0 === 8362) {
|
|
637
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
641
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20AA", "\u20AA", 0, 0, 1, 1);
|
|
638
642
|
tokenIndex++;
|
|
639
643
|
} else if (c0 === 8363) {
|
|
640
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
644
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20AB", "\u20AB", 0, 0, 1, 1);
|
|
641
645
|
tokenIndex++;
|
|
642
646
|
} else if (c0 === 8358) {
|
|
643
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
647
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20A6", "\u20A6", 0, 0, 1, 1);
|
|
644
648
|
tokenIndex++;
|
|
645
649
|
} else if (c0 === 8369) {
|
|
646
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
650
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20B1", "\u20B1", 0, 0, 1, 1);
|
|
647
651
|
tokenIndex++;
|
|
648
652
|
} else if (c0 >= 128) {
|
|
649
|
-
yield new LexerToken("IDENT",
|
|
653
|
+
yield new LexerToken("IDENT", chunkG2YPPLGX_cjs.tokenTypeId("IDENT"), this.input, this.input, 0, 0, 1, 1);
|
|
650
654
|
tokenIndex++;
|
|
651
655
|
}
|
|
652
656
|
break;
|
|
@@ -704,12 +708,12 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
704
708
|
yield this.tokenizeNumber();
|
|
705
709
|
} else {
|
|
706
710
|
const col = this.pos - this.lineStartPos + 1;
|
|
707
|
-
yield new LexerToken("DOT",
|
|
711
|
+
yield new LexerToken("DOT", chunkG2YPPLGX_cjs.tokenTypeId("DOT"), ".", ".", this.pos, 0, this.line, col);
|
|
708
712
|
this.pos++;
|
|
709
713
|
}
|
|
710
714
|
} else {
|
|
711
715
|
const col = this.pos - this.lineStartPos + 1;
|
|
712
|
-
yield new LexerToken("DOT",
|
|
716
|
+
yield new LexerToken("DOT", chunkG2YPPLGX_cjs.tokenTypeId("DOT"), ".", ".", this.pos, 0, this.line, col);
|
|
713
717
|
this.pos++;
|
|
714
718
|
}
|
|
715
719
|
tokenIndex++;
|
|
@@ -732,7 +736,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
732
736
|
// ── Dollar sign $ ─────────────────────────────────────────────
|
|
733
737
|
case 8 /* DOLLAR */: {
|
|
734
738
|
const col = this.pos - this.lineStartPos + 1;
|
|
735
|
-
yield new LexerToken("DOLLAR",
|
|
739
|
+
yield new LexerToken("DOLLAR", chunkG2YPPLGX_cjs.tokenTypeId("DOLLAR"), "$", "$", this.pos, 0, this.line, col);
|
|
736
740
|
this.pos++;
|
|
737
741
|
tokenIndex++;
|
|
738
742
|
break;
|
|
@@ -740,7 +744,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
740
744
|
// ── Backtick ` ───────────────────────────────────────────────
|
|
741
745
|
case 11 /* BACKTICK */: {
|
|
742
746
|
const col = this.pos - this.lineStartPos + 1;
|
|
743
|
-
yield new LexerToken("BACKTICK_OPEN",
|
|
747
|
+
yield new LexerToken("BACKTICK_OPEN", chunkG2YPPLGX_cjs.tokenTypeId("BACKTICK_OPEN"), "`", "`", this.pos, 0, this.line, col);
|
|
744
748
|
this.pos++;
|
|
745
749
|
if (openSpan) {
|
|
746
750
|
const span = openSpan;
|
|
@@ -767,67 +771,67 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
767
771
|
this.lineStartPos = this.pos;
|
|
768
772
|
}
|
|
769
773
|
} else if (c0 === 215) {
|
|
770
|
-
yield new LexerToken("STAR",
|
|
774
|
+
yield new LexerToken("STAR", chunkG2YPPLGX_cjs.tokenTypeId("STAR"), "\xD7", "\xD7", this.pos, 0, this.line, col);
|
|
771
775
|
this.pos++;
|
|
772
776
|
tokenIndex++;
|
|
773
777
|
} else if (c0 === 247) {
|
|
774
|
-
yield new LexerToken("SLASH",
|
|
778
|
+
yield new LexerToken("SLASH", chunkG2YPPLGX_cjs.tokenTypeId("SLASH"), "\xF7", "\xF7", this.pos, 0, this.line, col);
|
|
775
779
|
this.pos++;
|
|
776
780
|
tokenIndex++;
|
|
777
781
|
} else if (c0 === 177) {
|
|
778
|
-
yield new LexerToken("PLUS_MINUS",
|
|
782
|
+
yield new LexerToken("PLUS_MINUS", chunkG2YPPLGX_cjs.tokenTypeId("PLUS_MINUS"), "\xB1", "\xB1", this.pos, 0, this.line, col);
|
|
779
783
|
this.pos++;
|
|
780
784
|
tokenIndex++;
|
|
781
785
|
} else if (c0 === 8800) {
|
|
782
|
-
yield new LexerToken("NEQ",
|
|
786
|
+
yield new LexerToken("NEQ", chunkG2YPPLGX_cjs.tokenTypeId("NEQ"), "\u2260", "\u2260", this.pos, 0, this.line, col);
|
|
783
787
|
this.pos++;
|
|
784
788
|
tokenIndex++;
|
|
785
789
|
} else if (c0 === 163) {
|
|
786
|
-
yield new LexerToken("POUND",
|
|
790
|
+
yield new LexerToken("POUND", chunkG2YPPLGX_cjs.tokenTypeId("POUND"), "\xA3", "\xA3", this.pos, 0, this.line, col);
|
|
787
791
|
this.pos++;
|
|
788
792
|
tokenIndex++;
|
|
789
793
|
} else if (c0 === 8364) {
|
|
790
|
-
yield new LexerToken("EURO",
|
|
794
|
+
yield new LexerToken("EURO", chunkG2YPPLGX_cjs.tokenTypeId("EURO"), "\u20AC", "\u20AC", this.pos, 0, this.line, col);
|
|
791
795
|
this.pos++;
|
|
792
796
|
tokenIndex++;
|
|
793
797
|
} else if (c0 === 165) {
|
|
794
|
-
yield new LexerToken("YEN",
|
|
798
|
+
yield new LexerToken("YEN", chunkG2YPPLGX_cjs.tokenTypeId("YEN"), "\xA5", "\xA5", this.pos, 0, this.line, col);
|
|
795
799
|
this.pos++;
|
|
796
800
|
tokenIndex++;
|
|
797
801
|
} else if (c0 === 8381) {
|
|
798
|
-
yield new LexerToken("RUBLE",
|
|
802
|
+
yield new LexerToken("RUBLE", chunkG2YPPLGX_cjs.tokenTypeId("RUBLE"), "\u20BD", "\u20BD", this.pos, 0, this.line, col);
|
|
799
803
|
this.pos++;
|
|
800
804
|
tokenIndex++;
|
|
801
805
|
} else if (c0 === 8361) {
|
|
802
|
-
yield new LexerToken("WON",
|
|
806
|
+
yield new LexerToken("WON", chunkG2YPPLGX_cjs.tokenTypeId("WON"), "\u20A9", "\u20A9", this.pos, 0, this.line, col);
|
|
803
807
|
this.pos++;
|
|
804
808
|
tokenIndex++;
|
|
805
809
|
} else if (c0 === 8377) {
|
|
806
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
810
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20B9", "\u20B9", this.pos, 0, this.line, col);
|
|
807
811
|
this.pos++;
|
|
808
812
|
tokenIndex++;
|
|
809
813
|
} else if (c0 === 8378) {
|
|
810
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
814
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20BA", "\u20BA", this.pos, 0, this.line, col);
|
|
811
815
|
this.pos++;
|
|
812
816
|
tokenIndex++;
|
|
813
817
|
} else if (c0 === 8372) {
|
|
814
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
818
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20B4", "\u20B4", this.pos, 0, this.line, col);
|
|
815
819
|
this.pos++;
|
|
816
820
|
tokenIndex++;
|
|
817
821
|
} else if (c0 === 8362) {
|
|
818
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
822
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20AA", "\u20AA", this.pos, 0, this.line, col);
|
|
819
823
|
this.pos++;
|
|
820
824
|
tokenIndex++;
|
|
821
825
|
} else if (c0 === 8363) {
|
|
822
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
826
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20AB", "\u20AB", this.pos, 0, this.line, col);
|
|
823
827
|
this.pos++;
|
|
824
828
|
tokenIndex++;
|
|
825
829
|
} else if (c0 === 8358) {
|
|
826
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
830
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20A6", "\u20A6", this.pos, 0, this.line, col);
|
|
827
831
|
this.pos++;
|
|
828
832
|
tokenIndex++;
|
|
829
833
|
} else if (c0 === 8369) {
|
|
830
|
-
yield new LexerToken("CURRENCY_SYMBOL",
|
|
834
|
+
yield new LexerToken("CURRENCY_SYMBOL", chunkG2YPPLGX_cjs.tokenTypeId("CURRENCY_SYMBOL"), "\u20B1", "\u20B1", this.pos, 0, this.line, col);
|
|
831
835
|
this.pos++;
|
|
832
836
|
tokenIndex++;
|
|
833
837
|
} else if (c0 >= 128) {
|
|
@@ -868,7 +872,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
868
872
|
}
|
|
869
873
|
const text2 = input.slice(start, pos);
|
|
870
874
|
this.pos = pos;
|
|
871
|
-
return new LexerToken("NUMBER",
|
|
875
|
+
return new LexerToken("NUMBER", chunkG2YPPLGX_cjs.tokenTypeId("NUMBER"), text2, text2, start, 0, this.line, startCol);
|
|
872
876
|
}
|
|
873
877
|
if (next === 98 || next === 66) {
|
|
874
878
|
pos += 2;
|
|
@@ -877,7 +881,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
877
881
|
}
|
|
878
882
|
const text2 = input.slice(start, pos);
|
|
879
883
|
this.pos = pos;
|
|
880
|
-
return new LexerToken("NUMBER",
|
|
884
|
+
return new LexerToken("NUMBER", chunkG2YPPLGX_cjs.tokenTypeId("NUMBER"), text2, text2, start, 0, this.line, startCol);
|
|
881
885
|
}
|
|
882
886
|
if (next === 111 || next === 79) {
|
|
883
887
|
pos += 2;
|
|
@@ -886,7 +890,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
886
890
|
}
|
|
887
891
|
const text2 = input.slice(start, pos);
|
|
888
892
|
this.pos = pos;
|
|
889
|
-
return new LexerToken("NUMBER",
|
|
893
|
+
return new LexerToken("NUMBER", chunkG2YPPLGX_cjs.tokenTypeId("NUMBER"), text2, text2, start, 0, this.line, startCol);
|
|
890
894
|
}
|
|
891
895
|
}
|
|
892
896
|
let hasIntPart = false;
|
|
@@ -947,12 +951,12 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
947
951
|
pos++;
|
|
948
952
|
const text2 = input.slice(start, pos);
|
|
949
953
|
this.pos = pos;
|
|
950
|
-
return new LexerToken("BIGINT",
|
|
954
|
+
return new LexerToken("BIGINT", chunkG2YPPLGX_cjs.tokenTypeId("BIGINT"), text2, text2, start, 0, this.line, startCol);
|
|
951
955
|
}
|
|
952
956
|
}
|
|
953
957
|
const text = input.slice(start, pos);
|
|
954
958
|
this.pos = pos;
|
|
955
|
-
return new LexerToken("NUMBER",
|
|
959
|
+
return new LexerToken("NUMBER", chunkG2YPPLGX_cjs.tokenTypeId("NUMBER"), text, text, start, 0, this.line, startCol);
|
|
956
960
|
}
|
|
957
961
|
// ── Inline identifier / keyword tokenizer ──────────────────────────────
|
|
958
962
|
/**
|
|
@@ -984,22 +988,22 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
984
988
|
pos++;
|
|
985
989
|
this.pos = pos;
|
|
986
990
|
const fullText = input.slice(start, pos);
|
|
987
|
-
return new LexerToken("INLINE_SOLVE_START",
|
|
991
|
+
return new LexerToken("INLINE_SOLVE_START", chunkG2YPPLGX_cjs.tokenTypeId("INLINE_SOLVE_START"), fullText, fullText, start, 0, this.line, startCol);
|
|
988
992
|
}
|
|
989
993
|
const isKnownUnit = this.mergedUnits.has(identText);
|
|
990
994
|
if (isKnownUnit) {
|
|
991
995
|
if (!this.isFollowedByLParen(pos)) {
|
|
992
996
|
this.pos = pos;
|
|
993
|
-
return new LexerToken("UNIT",
|
|
997
|
+
return new LexerToken("UNIT", chunkG2YPPLGX_cjs.tokenTypeId("UNIT"), identText, identText, start, 0, this.line, startCol);
|
|
994
998
|
}
|
|
995
999
|
}
|
|
996
1000
|
const localeKwType = this.mergedKeywords.get(identLower);
|
|
997
1001
|
if (localeKwType) {
|
|
998
1002
|
this.pos = pos;
|
|
999
|
-
return new LexerToken(localeKwType,
|
|
1003
|
+
return new LexerToken(localeKwType, chunkG2YPPLGX_cjs.tokenTypeId(localeKwType), identText, identText, start, 0, this.line, startCol);
|
|
1000
1004
|
}
|
|
1001
1005
|
this.pos = pos;
|
|
1002
|
-
return new LexerToken("IDENT",
|
|
1006
|
+
return new LexerToken("IDENT", chunkG2YPPLGX_cjs.tokenTypeId("IDENT"), identText, identText, start, 0, this.line, startCol);
|
|
1003
1007
|
}
|
|
1004
1008
|
/**
|
|
1005
1009
|
* Peek past in-expression whitespace (space, tab) from `pos` to check
|
|
@@ -1072,7 +1076,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
1072
1076
|
if (twoCharType) {
|
|
1073
1077
|
const text2 = input.slice(pos, pos + 2);
|
|
1074
1078
|
this.pos = pos + 2;
|
|
1075
|
-
return new LexerToken(twoCharType,
|
|
1079
|
+
return new LexerToken(twoCharType, chunkG2YPPLGX_cjs.tokenTypeId(twoCharType), text2, text2, pos, 0, this.line, col);
|
|
1076
1080
|
}
|
|
1077
1081
|
}
|
|
1078
1082
|
if (c0 === 47 && c1 === 47) {
|
|
@@ -1084,19 +1088,19 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
1084
1088
|
}
|
|
1085
1089
|
const text2 = input.slice(pos, commentPos);
|
|
1086
1090
|
this.pos = commentPos;
|
|
1087
|
-
return new LexerToken("COMMENT",
|
|
1091
|
+
return new LexerToken("COMMENT", chunkG2YPPLGX_cjs.tokenTypeId("COMMENT"), text2, text2, pos, 0, this.line, col);
|
|
1088
1092
|
}
|
|
1089
1093
|
if (c0 === 60 && c1 === 60) {
|
|
1090
1094
|
this.pos = pos + 2;
|
|
1091
|
-
return new LexerToken("LSHIFT",
|
|
1095
|
+
return new LexerToken("LSHIFT", chunkG2YPPLGX_cjs.tokenTypeId("LSHIFT"), "<<", "<<", pos, 0, this.line, col);
|
|
1092
1096
|
}
|
|
1093
1097
|
if (c0 === 62 && c1 === 62) {
|
|
1094
1098
|
if (input.charCodeAt(pos + 2) === 62) {
|
|
1095
1099
|
this.pos = pos + 3;
|
|
1096
|
-
return new LexerToken("URSHIFT",
|
|
1100
|
+
return new LexerToken("URSHIFT", chunkG2YPPLGX_cjs.tokenTypeId("URSHIFT"), ">>>", ">>>", pos, 0, this.line, col);
|
|
1097
1101
|
}
|
|
1098
1102
|
this.pos = pos + 2;
|
|
1099
|
-
return new LexerToken("RSHIFT",
|
|
1103
|
+
return new LexerToken("RSHIFT", chunkG2YPPLGX_cjs.tokenTypeId("RSHIFT"), ">>", ">>", pos, 0, this.line, col);
|
|
1100
1104
|
}
|
|
1101
1105
|
if (this.hasPluginOps) {
|
|
1102
1106
|
const pluginInner = this.pluginOperators.get(c0);
|
|
@@ -1105,7 +1109,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
1105
1109
|
if (pluginType) {
|
|
1106
1110
|
const text2 = input.slice(pos, pos + 2);
|
|
1107
1111
|
this.pos = pos + 2;
|
|
1108
|
-
return new LexerToken(pluginType,
|
|
1112
|
+
return new LexerToken(pluginType, chunkG2YPPLGX_cjs.tokenTypeId(pluginType), text2, text2, pos, 0, this.line, col);
|
|
1109
1113
|
}
|
|
1110
1114
|
}
|
|
1111
1115
|
}
|
|
@@ -1120,7 +1124,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
1120
1124
|
}
|
|
1121
1125
|
const opType = OP_MAP[c0];
|
|
1122
1126
|
const text = input.charAt(pos);
|
|
1123
|
-
return new LexerToken(opType || "ERROR",
|
|
1127
|
+
return new LexerToken(opType || "ERROR", chunkG2YPPLGX_cjs.tokenTypeId(opType || "ERROR"), text, text, pos, 0, this.line, col);
|
|
1124
1128
|
}
|
|
1125
1129
|
// ── String literal tokenizer ──────────────────────────────────────────
|
|
1126
1130
|
/**
|
|
@@ -1156,7 +1160,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
1156
1160
|
const text = input.slice(start, pos);
|
|
1157
1161
|
const value = input.slice(start + 1, pos - 1);
|
|
1158
1162
|
this.pos = pos;
|
|
1159
|
-
return new LexerToken("STRING",
|
|
1163
|
+
return new LexerToken("STRING", chunkG2YPPLGX_cjs.tokenTypeId("STRING"), value, text, start, lineBreaks, this.line, startCol);
|
|
1160
1164
|
}
|
|
1161
1165
|
if (c0 === 92 && pos + 1 < len) {
|
|
1162
1166
|
pos += 2;
|
|
@@ -1170,7 +1174,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
1170
1174
|
pos++;
|
|
1171
1175
|
}
|
|
1172
1176
|
this.pos = pos;
|
|
1173
|
-
throw
|
|
1177
|
+
throw chunkMIGXCBXT_cjs.ErrorFactory.parsing(
|
|
1174
1178
|
"UNTERMINATED_STRING",
|
|
1175
1179
|
`Unterminated string literal: ${input.slice(start, pos)}`,
|
|
1176
1180
|
{ literal: input.slice(start, pos), offset: start }
|
|
@@ -1397,6 +1401,19 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
1397
1401
|
const idx = input.indexOf("s`", pos);
|
|
1398
1402
|
hasInline = idx !== -1 && idx < len;
|
|
1399
1403
|
}
|
|
1404
|
+
if (!hasInline) {
|
|
1405
|
+
let onlySkippable = true;
|
|
1406
|
+
for (let i = pos; i < len; i++) {
|
|
1407
|
+
const code = input.charCodeAt(i);
|
|
1408
|
+
if (code >= 128 || _ExpressionLexer.CHAR_CLASS[code] > 1 /* WHITESPACE */) {
|
|
1409
|
+
onlySkippable = false;
|
|
1410
|
+
break;
|
|
1411
|
+
}
|
|
1412
|
+
}
|
|
1413
|
+
if (onlySkippable) {
|
|
1414
|
+
return { type: "empty", skip: true, hasInlineSolve: false };
|
|
1415
|
+
}
|
|
1416
|
+
}
|
|
1400
1417
|
return { type: "expression", skip: false, hasInlineSolve: hasInline };
|
|
1401
1418
|
}
|
|
1402
1419
|
/**
|
|
@@ -1475,7 +1492,21 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
1475
1492
|
if (hexEnd !== -1) {
|
|
1476
1493
|
const text2 = input.slice(start, hexEnd);
|
|
1477
1494
|
this.pos = hexEnd;
|
|
1478
|
-
return new LexerToken("HEX_COLOUR",
|
|
1495
|
+
return new LexerToken("HEX_COLOUR", chunkG2YPPLGX_cjs.tokenTypeId("HEX_COLOUR"), text2, text2, start, 0, this.line, startCol);
|
|
1496
|
+
}
|
|
1497
|
+
const first = input.charCodeAt(start + 1);
|
|
1498
|
+
const isLetter = first >= 65 && first <= 90 || first >= 97 && first <= 122;
|
|
1499
|
+
if (isLetter) {
|
|
1500
|
+
let tagEnd = start + 2;
|
|
1501
|
+
while (tagEnd < len) {
|
|
1502
|
+
const c = input.charCodeAt(tagEnd);
|
|
1503
|
+
const isTagChar = c >= 48 && c <= 57 || c >= 65 && c <= 90 || c >= 97 && c <= 122 || c === 95 || c === 45;
|
|
1504
|
+
if (!isTagChar) break;
|
|
1505
|
+
tagEnd++;
|
|
1506
|
+
}
|
|
1507
|
+
const name = input.slice(start + 1, tagEnd);
|
|
1508
|
+
this.pos = tagEnd;
|
|
1509
|
+
return new LexerToken("TAG", chunkG2YPPLGX_cjs.tokenTypeId("TAG"), name, name, start, 0, this.line, startCol);
|
|
1479
1510
|
}
|
|
1480
1511
|
}
|
|
1481
1512
|
let pos = this.pos;
|
|
@@ -1491,7 +1522,7 @@ var _ExpressionLexer = class _ExpressionLexer {
|
|
|
1491
1522
|
}
|
|
1492
1523
|
const text = input.slice(start, pos);
|
|
1493
1524
|
this.pos = pos;
|
|
1494
|
-
return new LexerToken("COMMENT",
|
|
1525
|
+
return new LexerToken("COMMENT", chunkG2YPPLGX_cjs.tokenTypeId("COMMENT"), text, text, start, 0, this.line, startCol);
|
|
1495
1526
|
}
|
|
1496
1527
|
};
|
|
1497
1528
|
_ExpressionLexer.CHAR_CLASS = buildCharClassTable();
|
|
@@ -1499,5 +1530,5 @@ var ExpressionLexer = _ExpressionLexer;
|
|
|
1499
1530
|
|
|
1500
1531
|
exports.ExpressionLexer = ExpressionLexer;
|
|
1501
1532
|
exports.LexerToken = LexerToken;
|
|
1502
|
-
//# sourceMappingURL=chunk-
|
|
1503
|
-
//# sourceMappingURL=chunk-
|
|
1533
|
+
//# sourceMappingURL=chunk-YJHY7CMN.cjs.map
|
|
1534
|
+
//# sourceMappingURL=chunk-YJHY7CMN.cjs.map
|