parseman 0.48.0 → 0.49.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/analysis/diagnostics.js +158 -51
- package/dist/analysis/diagnostics.js.map +2 -2
- package/dist/cli/index.js +160 -52
- package/dist/cli/index.js.map +2 -2
- package/dist/combinators/choice.d.ts.map +1 -1
- package/dist/compiler/ir-serialize.d.ts.map +1 -1
- package/dist/compiler/linker.d.ts.map +1 -1
- package/dist/index.js +169 -55
- package/dist/index.js.map +2 -2
- package/dist/language-service/index.js.map +1 -1
- package/dist/plugin/direct-builder-static.d.ts +20 -0
- package/dist/plugin/direct-builder-static.d.ts.map +1 -1
- package/dist/plugin/evaluator.d.ts +13 -0
- package/dist/plugin/evaluator.d.ts.map +1 -1
- package/dist/plugin/index.d.ts.map +1 -1
- package/dist/plugin/index.js +365 -71
- package/dist/plugin/index.js.map +2 -2
- package/dist/spec/index.js +12 -2
- package/dist/spec/index.js.map +2 -2
- package/dist/table/assemble.d.ts.map +1 -1
- package/dist/table/emit-assembly.d.ts.map +1 -1
- package/dist/table/encode.d.ts.map +1 -1
- package/dist/table/exec.d.ts.map +1 -1
- package/dist/table/index.js +158 -51
- package/dist/table/index.js.map +1 -1
- package/dist/table/lex-program.d.ts.map +1 -1
- package/dist/table/ops.d.ts +4 -4
- package/dist/types.d.ts +6 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/version.d.ts +1 -1
- package/package.json +1 -1
- package/src/combinators/choice.ts +10 -1
- package/src/compiler/ir-serialize.ts +15 -3
- package/src/compiler/linker.ts +14 -1
- package/src/plugin/direct-builder-static.ts +116 -12
- package/src/plugin/evaluator.ts +50 -2
- package/src/plugin/index.ts +140 -1
- package/src/table/assemble.ts +82 -59
- package/src/table/emit-assembly.ts +10 -5
- package/src/table/encode.ts +6 -10
- package/src/table/exec.ts +13 -18
- package/src/table/lex-program.ts +15 -6
- package/src/table/ops.ts +4 -4
- package/src/types.ts +1 -1
- package/src/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"assemble.d.ts","sourceRoot":"","sources":["../../src/table/assemble.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgEG;AACH,OAAO,KAAK,EAAE,UAAU,EAAsB,YAAY,EAA0B,MAAM,aAAa,CAAA;AAyCvG;;;;;;;;;;;;;GAaG;AACH,OAAO,EAGL,KAAK,cAAc,EAAsB,KAAK,aAAa,EAC1C,KAAK,YAAY,EAAE,KAAK,SAAS,EACnD,MAAM,cAAc,CAAA;AA2ErB;;;;;;;;;;;;;GAaG;AACH,KAAK,KAAK,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,KAAK,OAAO,CAAA;AA+CvE;;;;;;;;GAQG;AACH,MAAM,MAAM,MAAM,GAAG;IACnB,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;IACzB;;;;OAIG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,CAAA;IACpC;;;;;OAKG;IACH,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,KAAK,OAAO,CAAC,GAAG,SAAS,CAAA;IACpE,+EAA+E;IAC/E,QAAQ,CAAC,UAAU,EAAE,OAAO,CAAA;IAC5B;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B;;;;;;;;;;;;;;;;;OAiBG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;IAC1B;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAA;CACxB,CAAA;AAiBD,+CAA+C;AAC/C,wBAAgB,MAAM,CAAC,CAAC,EAAE,MAAM,GAAG,MAAM,CAExC;AAED,MAAM,MAAM,QAAQ,GAAG;IACrB,qDAAqD;IACrD,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;IAChD,QAAQ,CAAC,GAAG,EAAE,MAAM,MAAM,CAAA;IAC1B;;;;OAIG;IACH,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,EAAE,YAAY,KAAK,IAAI,CAAA;IAC3C,4EAA4E;IAC5E,QAAQ,CAAC,MAAM,EAAE,MAAM,IAAI,CAAA;IAC3B,QAAQ,CAAC,QAAQ,EAAE,SAAS,CAAC,SAAS,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,CAAA;IAC9D;;;;OAIG;IACH,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC,MAAM,CAAC,CAAA;IACrC;;;;;;;;OAQG;IACH,QAAQ,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,CAAA;CACzC,CAAA;AAED;;;;;GAKG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,MAAM,GAAG,QAAQ,
|
|
1
|
+
{"version":3,"file":"assemble.d.ts","sourceRoot":"","sources":["../../src/table/assemble.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emit-assembly.d.ts","sourceRoot":"","sources":["../../src/table/emit-assembly.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"emit-assembly.d.ts","sourceRoot":"","sources":["../../src/table/emit-assembly.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../src/table/encode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,UAAU,EAAuB,MAAM,aAAa,CAAA;AAuBhF,OAAO,KAAK,EAAmE,YAAY,EAAc,MAAM,cAAc,CAAA;AAS7H,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AA0B9E,8EAA8E;AAC9E,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,YAAY,GAAG,EAAE,MAAM,EAAqE;CAC7F;AAED,8EAA8E;AAC9E,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,GAAG,KAAK,CAAA;IACjC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAA;CACxC,CAAA;
|
|
1
|
+
{"version":3,"file":"encode.d.ts","sourceRoot":"","sources":["../../src/table/encode.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,UAAU,EAAuB,MAAM,aAAa,CAAA;AAuBhF,OAAO,KAAK,EAAmE,YAAY,EAAc,MAAM,cAAc,CAAA;AAS7H,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAA;AA0B9E,8EAA8E;AAC9E,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAA;IACpB,YAAY,GAAG,EAAE,MAAM,EAAqE;CAC7F;AAED,8EAA8E;AAC9E,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,KAAK,GAAG,KAAK,CAAA;IACjC,QAAQ,CAAC,UAAU,CAAC,EAAE,OAAO,CAAA;IAC7B;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;IAC3B;;;;;;;;;;;;;OAaG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,mBAAmB,CAAA;CACxC,CAAA;AA0jDD,wBAAgB,WAAW,CACzB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,EAC5C,QAAQ,GAAE,aAAkB,GAC3B,YAAY,CAEd;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,CAAC,CAAC,EAC5C,QAAQ,GAAE,aAAkB,GAC3B;IAAE,IAAI,EAAE,YAAY,CAAC;IAAC,MAAM,EAAE,CAAC,MAAM,GAAG,IAAI,CAAC,EAAE,CAAA;CAAE,CAgCnD"}
|
package/dist/table/exec.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../../src/table/exec.ts"],"names":[],"mappings":"AA6CA,OAAO,EAEL,KAAK,cAAc,EACF,KAAK,YAAY,EAAE,KAAK,SAAS,EACnD,MAAM,cAAc,CAAA;AA0BrB;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,EAAE;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,UAAU,CAAA;IAChB,+EAA+E;IAC/E,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;IAChC;;;;;;;;;;;OAWG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,sFAAsF;IACtF,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,qFAAqF;IACrF,YAAY,EAAE,MAAM,CAAA;CAC+H,CAAA;AAUrJ,wBAAgB,kBAAkB,IAAI,IAAI,CASzC;
|
|
1
|
+
{"version":3,"file":"exec.d.ts","sourceRoot":"","sources":["../../src/table/exec.ts"],"names":[],"mappings":"AA6CA,OAAO,EAEL,KAAK,cAAc,EACF,KAAK,YAAY,EAAE,KAAK,SAAS,EACnD,MAAM,cAAc,CAAA;AA0BrB;;;;;;;;GAQG;AACH,eAAO,MAAM,aAAa,EAAE;IAC1B,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,UAAU,CAAA;IAChB,+EAA+E;IAC/E,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAA;IAChC;;;;;;;;;;;OAWG;IACH,cAAc,EAAE,MAAM,CAAA;IACtB,YAAY,EAAE,MAAM,CAAA;IACpB,sFAAsF;IACtF,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,qFAAqF;IACrF,YAAY,EAAE,MAAM,CAAA;CAC+H,CAAA;AAUrJ,wBAAgB,kBAAkB,IAAI,IAAI,CASzC;AA4jDD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,SAAS,CACvB,MAAM,EAAE,YAAY,GAAG,cAAc;AACrC;;;;;;;;GAQG;AACH,IAAI,GAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAO,EACjC,gBAAgB,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM,GACvD,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CA8B3B"}
|
package/dist/table/index.js
CHANGED
|
@@ -2729,6 +2729,7 @@ function choice(...args) {
|
|
|
2729
2729
|
},
|
|
2730
2730
|
parse(input, pos, ctx) {
|
|
2731
2731
|
const expected = [];
|
|
2732
|
+
let expectedAt = pos;
|
|
2732
2733
|
if (disjoint) {
|
|
2733
2734
|
const code = pos < input.length ? input.codePointAt(pos) : -1;
|
|
2734
2735
|
let idx = code >= 0 && code < 128 ? asciiDispatch[code] : -1;
|
|
@@ -2786,7 +2787,12 @@ function choice(...args) {
|
|
|
2786
2787
|
const result = parsers[i].parse(input, pos, ctx);
|
|
2787
2788
|
if (!result.ok) {
|
|
2788
2789
|
rollbackTrivia(ctx, mark);
|
|
2789
|
-
|
|
2790
|
+
const at = result.span.start;
|
|
2791
|
+
if (at > expectedAt) {
|
|
2792
|
+
expectedAt = at;
|
|
2793
|
+
expected.length = 0;
|
|
2794
|
+
}
|
|
2795
|
+
if (at === expectedAt) expected.push(...result.expected);
|
|
2790
2796
|
if (result.committed) return { ok: false, expected, span: result.span, committed: true };
|
|
2791
2797
|
continue;
|
|
2792
2798
|
}
|
|
@@ -2797,6 +2803,9 @@ function choice(...args) {
|
|
|
2797
2803
|
}
|
|
2798
2804
|
return result;
|
|
2799
2805
|
}
|
|
2806
|
+
if (expected.length === 0) {
|
|
2807
|
+
for (const parser of parsers) expected.push(...deriveExpected(parser));
|
|
2808
|
+
}
|
|
2800
2809
|
return { ok: false, expected, span: { start: pos, end: pos } };
|
|
2801
2810
|
}
|
|
2802
2811
|
};
|
|
@@ -4114,24 +4123,43 @@ function choiceNode(arms, classes, armExpected, choiceExpected) {
|
|
|
4114
4123
|
};
|
|
4115
4124
|
for (let i = arms.length - 1; i >= 0; i--) {
|
|
4116
4125
|
const arm = arms[i], cls = classes[i], staticExpected = armExpected[i], next = tail;
|
|
4117
|
-
tail = (input, pos, ctx, lead2, acc) => {
|
|
4126
|
+
tail = (input, pos, ctx, lead2, acc, best) => {
|
|
4118
4127
|
if (cls !== void 0 && !classHas(cls, lead2)) {
|
|
4119
|
-
return next(
|
|
4128
|
+
return next(
|
|
4129
|
+
input,
|
|
4130
|
+
pos,
|
|
4131
|
+
ctx,
|
|
4132
|
+
lead2,
|
|
4133
|
+
best === pos ? appendExpected(acc, staticExpected) : acc,
|
|
4134
|
+
best
|
|
4135
|
+
);
|
|
4120
4136
|
}
|
|
4121
4137
|
ctx._fc = false;
|
|
4122
4138
|
const end = arm.run(input, pos, ctx);
|
|
4123
4139
|
if (end >= 0) return end;
|
|
4124
|
-
const
|
|
4140
|
+
const at = ctx._fe ?? pos;
|
|
4141
|
+
if (at > best) {
|
|
4142
|
+
best = at;
|
|
4143
|
+
acc = void 0;
|
|
4144
|
+
}
|
|
4145
|
+
const nextAcc = at === best ? appendExpected(acc, ctx._fx) : acc;
|
|
4125
4146
|
if (committed(ctx)) {
|
|
4126
4147
|
if (nextAcc !== void 0) ctx._fx = nextAcc;
|
|
4127
4148
|
return -1;
|
|
4128
4149
|
}
|
|
4129
|
-
return next(input, pos, ctx, lead2, nextAcc);
|
|
4150
|
+
return next(input, pos, ctx, lead2, nextAcc, best);
|
|
4130
4151
|
};
|
|
4131
4152
|
}
|
|
4132
4153
|
return {
|
|
4133
4154
|
match: matchTail,
|
|
4134
|
-
run: (input, pos, ctx) => tail(
|
|
4155
|
+
run: (input, pos, ctx) => tail(
|
|
4156
|
+
input,
|
|
4157
|
+
pos,
|
|
4158
|
+
ctx,
|
|
4159
|
+
pos < input.length ? input.codePointAt(pos) : -1,
|
|
4160
|
+
void 0,
|
|
4161
|
+
pos
|
|
4162
|
+
)
|
|
4135
4163
|
};
|
|
4136
4164
|
}
|
|
4137
4165
|
function notNode(body, failure) {
|
|
@@ -6797,9 +6825,11 @@ ${catchCases}
|
|
|
6797
6825
|
ctx._fc=false
|
|
6798
6826
|
{const v=${arm}(input,pos,ctx)
|
|
6799
6827
|
if(v!==FAIL)return v}
|
|
6800
|
-
acc=${catchName}(${i},prev,acc)
|
|
6828
|
+
if(best===pos)acc=${catchName}(${i},prev,acc)
|
|
6801
6829
|
prev=${i + 1}
|
|
6802
|
-
|
|
6830
|
+
{const at=ctx._fe??pos
|
|
6831
|
+
if(at>best){best=at;acc=undefined}
|
|
6832
|
+
if(at===best)acc=_accSet(ctx._fx,acc)}
|
|
6803
6833
|
if(ctx._fc===true){if(acc!==undefined)ctx._fx=acc;return FAIL}
|
|
6804
6834
|
${emitRollback(p, L.buf, sinks)}
|
|
6805
6835
|
}`;
|
|
@@ -6808,19 +6838,22 @@ ${emitRollback(p, L.buf, sinks)}
|
|
|
6808
6838
|
ctx._fc=false
|
|
6809
6839
|
{const v=${arm}(input,pos,ctx)
|
|
6810
6840
|
if(v!==FAIL)return v}
|
|
6811
|
-
|
|
6841
|
+
{const at=ctx._fe??pos
|
|
6842
|
+
if(at>best){best=at;acc=undefined}
|
|
6843
|
+
if(at===best)acc=_accSet(ctx._fx,acc)}
|
|
6812
6844
|
if(ctx._fc===true){if(acc!==undefined)ctx._fx=acc;return FAIL}
|
|
6813
6845
|
${emitRollback(p, L.buf, sinks)}
|
|
6814
|
-
}else acc=_accSet(${expected[i]},acc)`).join("\n");
|
|
6846
|
+
}else if(best===pos)acc=_accSet(${expected[i]},acc)`).join("\n");
|
|
6815
6847
|
return `${head}
|
|
6816
6848
|
const c=lead(input,pos)
|
|
6817
6849
|
${emitMark(p, L.buf, sinks)}
|
|
6818
6850
|
let acc
|
|
6851
|
+
let best=pos
|
|
6819
6852
|
${maskable ? `if(c<128){
|
|
6820
6853
|
const bits=${maskName}[c<0?128:c]
|
|
6821
6854
|
let prev=0
|
|
6822
6855
|
${maskArms}
|
|
6823
|
-
acc=${catchName}(${n},prev,acc)
|
|
6856
|
+
if(best===pos)acc=${catchName}(${n},prev,acc)
|
|
6824
6857
|
ctx._fe=pos;ctx._fx=acc??${choiceFx}
|
|
6825
6858
|
return FAIL
|
|
6826
6859
|
}
|
|
@@ -7825,14 +7858,19 @@ function assemble(t, prog, cfg) {
|
|
|
7825
7858
|
};
|
|
7826
7859
|
}
|
|
7827
7860
|
function maskedChoiceBlock(start, a0, a1, a2, a3, through, next, total, choiceFx) {
|
|
7828
|
-
return (input, pos, ctx, bits, need, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot, acc, prev) => {
|
|
7861
|
+
return (input, pos, ctx, bits, need, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot, acc, prev, best) => {
|
|
7829
7862
|
if ((bits & 1 << start) !== 0) {
|
|
7830
7863
|
ctx._fc = false;
|
|
7831
7864
|
const v = a0(input, pos, ctx);
|
|
7832
7865
|
if (v !== FAIL) return v;
|
|
7833
|
-
acc = through(start, prev, acc);
|
|
7866
|
+
if (best === pos) acc = through(start, prev, acc);
|
|
7834
7867
|
prev = start + 1;
|
|
7835
|
-
|
|
7868
|
+
const at = ctx._fe ?? pos;
|
|
7869
|
+
if (at > best) {
|
|
7870
|
+
best = at;
|
|
7871
|
+
acc = void 0;
|
|
7872
|
+
}
|
|
7873
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
7836
7874
|
if (committed3(ctx)) {
|
|
7837
7875
|
if (acc !== void 0) ctx._fx = acc;
|
|
7838
7876
|
return FAIL;
|
|
@@ -7843,9 +7881,14 @@ function assemble(t, prog, cfg) {
|
|
|
7843
7881
|
ctx._fc = false;
|
|
7844
7882
|
const v = a1(input, pos, ctx);
|
|
7845
7883
|
if (v !== FAIL) return v;
|
|
7846
|
-
acc = through(start + 1, prev, acc);
|
|
7884
|
+
if (best === pos) acc = through(start + 1, prev, acc);
|
|
7847
7885
|
prev = start + 2;
|
|
7848
|
-
|
|
7886
|
+
const at = ctx._fe ?? pos;
|
|
7887
|
+
if (at > best) {
|
|
7888
|
+
best = at;
|
|
7889
|
+
acc = void 0;
|
|
7890
|
+
}
|
|
7891
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
7849
7892
|
if (committed3(ctx)) {
|
|
7850
7893
|
if (acc !== void 0) ctx._fx = acc;
|
|
7851
7894
|
return FAIL;
|
|
@@ -7856,9 +7899,14 @@ function assemble(t, prog, cfg) {
|
|
|
7856
7899
|
ctx._fc = false;
|
|
7857
7900
|
const v = a2(input, pos, ctx);
|
|
7858
7901
|
if (v !== FAIL) return v;
|
|
7859
|
-
acc = through(start + 2, prev, acc);
|
|
7902
|
+
if (best === pos) acc = through(start + 2, prev, acc);
|
|
7860
7903
|
prev = start + 3;
|
|
7861
|
-
|
|
7904
|
+
const at = ctx._fe ?? pos;
|
|
7905
|
+
if (at > best) {
|
|
7906
|
+
best = at;
|
|
7907
|
+
acc = void 0;
|
|
7908
|
+
}
|
|
7909
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
7862
7910
|
if (committed3(ctx)) {
|
|
7863
7911
|
if (acc !== void 0) ctx._fx = acc;
|
|
7864
7912
|
return FAIL;
|
|
@@ -7869,9 +7917,14 @@ function assemble(t, prog, cfg) {
|
|
|
7869
7917
|
ctx._fc = false;
|
|
7870
7918
|
const v = a3(input, pos, ctx);
|
|
7871
7919
|
if (v !== FAIL) return v;
|
|
7872
|
-
acc = through(start + 3, prev, acc);
|
|
7920
|
+
if (best === pos) acc = through(start + 3, prev, acc);
|
|
7873
7921
|
prev = start + 4;
|
|
7874
|
-
|
|
7922
|
+
const at = ctx._fe ?? pos;
|
|
7923
|
+
if (at > best) {
|
|
7924
|
+
best = at;
|
|
7925
|
+
acc = void 0;
|
|
7926
|
+
}
|
|
7927
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
7875
7928
|
if (committed3(ctx)) {
|
|
7876
7929
|
if (acc !== void 0) ctx._fx = acc;
|
|
7877
7930
|
return FAIL;
|
|
@@ -7879,23 +7932,28 @@ function assemble(t, prog, cfg) {
|
|
|
7879
7932
|
if (need) rollbackTriviaAt(ctx, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot);
|
|
7880
7933
|
}
|
|
7881
7934
|
if (next !== void 0) {
|
|
7882
|
-
return next(input, pos, ctx, bits, need, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot, acc, prev);
|
|
7935
|
+
return next(input, pos, ctx, bits, need, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot, acc, prev, best);
|
|
7883
7936
|
}
|
|
7884
|
-
acc = through(total, prev, acc);
|
|
7937
|
+
if (best === pos) acc = through(total, prev, acc);
|
|
7885
7938
|
ctx._fe = pos;
|
|
7886
7939
|
ctx._fx = acc ?? choiceFx;
|
|
7887
7940
|
return FAIL;
|
|
7888
7941
|
};
|
|
7889
7942
|
}
|
|
7890
7943
|
function generalChoiceBlock(start, a0, a1, a2, a3, g0, g1, g2, g3, through, next, total, choiceFx) {
|
|
7891
|
-
return (input, pos, ctx, c, need, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot, acc, prev) => {
|
|
7944
|
+
return (input, pos, ctx, c, need, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot, acc, prev, best) => {
|
|
7892
7945
|
if (g0 === null || classHas2(g0, c)) {
|
|
7893
7946
|
ctx._fc = false;
|
|
7894
7947
|
const v = a0(input, pos, ctx);
|
|
7895
7948
|
if (v !== FAIL) return v;
|
|
7896
|
-
acc = through(start, prev, acc);
|
|
7949
|
+
if (best === pos) acc = through(start, prev, acc);
|
|
7897
7950
|
prev = start + 1;
|
|
7898
|
-
|
|
7951
|
+
const at = ctx._fe ?? pos;
|
|
7952
|
+
if (at > best) {
|
|
7953
|
+
best = at;
|
|
7954
|
+
acc = void 0;
|
|
7955
|
+
}
|
|
7956
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
7899
7957
|
if (committed3(ctx)) {
|
|
7900
7958
|
if (acc !== void 0) ctx._fx = acc;
|
|
7901
7959
|
return FAIL;
|
|
@@ -7906,9 +7964,14 @@ function assemble(t, prog, cfg) {
|
|
|
7906
7964
|
ctx._fc = false;
|
|
7907
7965
|
const v = a1(input, pos, ctx);
|
|
7908
7966
|
if (v !== FAIL) return v;
|
|
7909
|
-
acc = through(start + 1, prev, acc);
|
|
7967
|
+
if (best === pos) acc = through(start + 1, prev, acc);
|
|
7910
7968
|
prev = start + 2;
|
|
7911
|
-
|
|
7969
|
+
const at = ctx._fe ?? pos;
|
|
7970
|
+
if (at > best) {
|
|
7971
|
+
best = at;
|
|
7972
|
+
acc = void 0;
|
|
7973
|
+
}
|
|
7974
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
7912
7975
|
if (committed3(ctx)) {
|
|
7913
7976
|
if (acc !== void 0) ctx._fx = acc;
|
|
7914
7977
|
return FAIL;
|
|
@@ -7919,9 +7982,14 @@ function assemble(t, prog, cfg) {
|
|
|
7919
7982
|
ctx._fc = false;
|
|
7920
7983
|
const v = a2(input, pos, ctx);
|
|
7921
7984
|
if (v !== FAIL) return v;
|
|
7922
|
-
acc = through(start + 2, prev, acc);
|
|
7985
|
+
if (best === pos) acc = through(start + 2, prev, acc);
|
|
7923
7986
|
prev = start + 3;
|
|
7924
|
-
|
|
7987
|
+
const at = ctx._fe ?? pos;
|
|
7988
|
+
if (at > best) {
|
|
7989
|
+
best = at;
|
|
7990
|
+
acc = void 0;
|
|
7991
|
+
}
|
|
7992
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
7925
7993
|
if (committed3(ctx)) {
|
|
7926
7994
|
if (acc !== void 0) ctx._fx = acc;
|
|
7927
7995
|
return FAIL;
|
|
@@ -7932,9 +8000,14 @@ function assemble(t, prog, cfg) {
|
|
|
7932
8000
|
ctx._fc = false;
|
|
7933
8001
|
const v = a3(input, pos, ctx);
|
|
7934
8002
|
if (v !== FAIL) return v;
|
|
7935
|
-
acc = through(start + 3, prev, acc);
|
|
8003
|
+
if (best === pos) acc = through(start + 3, prev, acc);
|
|
7936
8004
|
prev = start + 4;
|
|
7937
|
-
|
|
8005
|
+
const at = ctx._fe ?? pos;
|
|
8006
|
+
if (at > best) {
|
|
8007
|
+
best = at;
|
|
8008
|
+
acc = void 0;
|
|
8009
|
+
}
|
|
8010
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
7938
8011
|
if (committed3(ctx)) {
|
|
7939
8012
|
if (acc !== void 0) ctx._fx = acc;
|
|
7940
8013
|
return FAIL;
|
|
@@ -7942,9 +8015,9 @@ function assemble(t, prog, cfg) {
|
|
|
7942
8015
|
if (need) rollbackTriviaAt(ctx, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot);
|
|
7943
8016
|
}
|
|
7944
8017
|
if (next !== void 0) {
|
|
7945
|
-
return next(input, pos, ctx, c, need, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot, acc, prev);
|
|
8018
|
+
return next(input, pos, ctx, c, need, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot, acc, prev, best);
|
|
7946
8019
|
}
|
|
7947
|
-
acc = through(total, prev, acc);
|
|
8020
|
+
if (best === pos) acc = through(total, prev, acc);
|
|
7948
8021
|
ctx._fe = pos;
|
|
7949
8022
|
ctx._fx = acc ?? choiceFx;
|
|
7950
8023
|
return FAIL;
|
|
@@ -9300,6 +9373,7 @@ function assemble(t, prog, cfg) {
|
|
|
9300
9373
|
const mLog = need ? ctx._triviaLog?.length ?? 0 : 0;
|
|
9301
9374
|
const mRoot = need ? ctx._rootTriviaLog?.length ?? 0 : 0;
|
|
9302
9375
|
let acc;
|
|
9376
|
+
let best = pos;
|
|
9303
9377
|
if (c < 128) {
|
|
9304
9378
|
const bits = mask[c < 0 ? 128 : c];
|
|
9305
9379
|
let prev = 0;
|
|
@@ -9308,7 +9382,12 @@ function assemble(t, prog, cfg) {
|
|
|
9308
9382
|
const v = a0(input, pos, ctx);
|
|
9309
9383
|
if (v !== FAIL) return v;
|
|
9310
9384
|
prev = 1;
|
|
9311
|
-
|
|
9385
|
+
const at = ctx._fe ?? pos;
|
|
9386
|
+
if (at > best) {
|
|
9387
|
+
best = at;
|
|
9388
|
+
acc = void 0;
|
|
9389
|
+
}
|
|
9390
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
9312
9391
|
if (committed3(ctx)) {
|
|
9313
9392
|
if (acc !== void 0) ctx._fx = acc;
|
|
9314
9393
|
return FAIL;
|
|
@@ -9319,9 +9398,14 @@ function assemble(t, prog, cfg) {
|
|
|
9319
9398
|
ctx._fc = false;
|
|
9320
9399
|
const v = a1(input, pos, ctx);
|
|
9321
9400
|
if (v !== FAIL) return v;
|
|
9322
|
-
if (prev < 1) acc = accSet(e0, acc);
|
|
9401
|
+
if (best === pos && prev < 1) acc = accSet(e0, acc);
|
|
9323
9402
|
prev = 2;
|
|
9324
|
-
|
|
9403
|
+
const at = ctx._fe ?? pos;
|
|
9404
|
+
if (at > best) {
|
|
9405
|
+
best = at;
|
|
9406
|
+
acc = void 0;
|
|
9407
|
+
}
|
|
9408
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
9325
9409
|
if (committed3(ctx)) {
|
|
9326
9410
|
if (acc !== void 0) ctx._fx = acc;
|
|
9327
9411
|
return FAIL;
|
|
@@ -9332,19 +9416,24 @@ function assemble(t, prog, cfg) {
|
|
|
9332
9416
|
ctx._fc = false;
|
|
9333
9417
|
const v = a2(input, pos, ctx);
|
|
9334
9418
|
if (v !== FAIL) return v;
|
|
9335
|
-
if (prev < 1) acc = accSet(e0, acc);
|
|
9336
|
-
if (prev < 2) acc = accSet(e1, acc);
|
|
9419
|
+
if (best === pos && prev < 1) acc = accSet(e0, acc);
|
|
9420
|
+
if (best === pos && prev < 2) acc = accSet(e1, acc);
|
|
9337
9421
|
prev = 3;
|
|
9338
|
-
|
|
9422
|
+
const at = ctx._fe ?? pos;
|
|
9423
|
+
if (at > best) {
|
|
9424
|
+
best = at;
|
|
9425
|
+
acc = void 0;
|
|
9426
|
+
}
|
|
9427
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
9339
9428
|
if (committed3(ctx)) {
|
|
9340
9429
|
if (acc !== void 0) ctx._fx = acc;
|
|
9341
9430
|
return FAIL;
|
|
9342
9431
|
}
|
|
9343
9432
|
if (need) rollbackTriviaAt(ctx, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot);
|
|
9344
9433
|
}
|
|
9345
|
-
if (prev < 1) acc = accSet(e0, acc);
|
|
9346
|
-
if (prev < 2) acc = accSet(e1, acc);
|
|
9347
|
-
if (n === 3 && prev < 3) acc = accSet(e2, acc);
|
|
9434
|
+
if (best === pos && prev < 1) acc = accSet(e0, acc);
|
|
9435
|
+
if (best === pos && prev < 2) acc = accSet(e1, acc);
|
|
9436
|
+
if (best === pos && n === 3 && prev < 3) acc = accSet(e2, acc);
|
|
9348
9437
|
ctx._fe = pos;
|
|
9349
9438
|
ctx._fx = acc ?? choiceFx;
|
|
9350
9439
|
return FAIL;
|
|
@@ -9353,36 +9442,51 @@ function assemble(t, prog, cfg) {
|
|
|
9353
9442
|
ctx._fc = false;
|
|
9354
9443
|
const v = a0(input, pos, ctx);
|
|
9355
9444
|
if (v !== FAIL) return v;
|
|
9356
|
-
|
|
9445
|
+
const at = ctx._fe ?? pos;
|
|
9446
|
+
if (at > best) {
|
|
9447
|
+
best = at;
|
|
9448
|
+
acc = void 0;
|
|
9449
|
+
}
|
|
9450
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
9357
9451
|
if (committed3(ctx)) {
|
|
9358
9452
|
if (acc !== void 0) ctx._fx = acc;
|
|
9359
9453
|
return FAIL;
|
|
9360
9454
|
}
|
|
9361
9455
|
if (need) rollbackTriviaAt(ctx, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot);
|
|
9362
|
-
} else acc = accSet(e0, acc);
|
|
9456
|
+
} else if (best === pos) acc = accSet(e0, acc);
|
|
9363
9457
|
if (g1 === null || classHas2(g1, c)) {
|
|
9364
9458
|
ctx._fc = false;
|
|
9365
9459
|
const v = a1(input, pos, ctx);
|
|
9366
9460
|
if (v !== FAIL) return v;
|
|
9367
|
-
|
|
9461
|
+
const at = ctx._fe ?? pos;
|
|
9462
|
+
if (at > best) {
|
|
9463
|
+
best = at;
|
|
9464
|
+
acc = void 0;
|
|
9465
|
+
}
|
|
9466
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
9368
9467
|
if (committed3(ctx)) {
|
|
9369
9468
|
if (acc !== void 0) ctx._fx = acc;
|
|
9370
9469
|
return FAIL;
|
|
9371
9470
|
}
|
|
9372
9471
|
if (need) rollbackTriviaAt(ctx, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot);
|
|
9373
|
-
} else acc = accSet(e1, acc);
|
|
9472
|
+
} else if (best === pos) acc = accSet(e1, acc);
|
|
9374
9473
|
if (n === 3) {
|
|
9375
9474
|
if (g2 === null || classHas2(g2, c)) {
|
|
9376
9475
|
ctx._fc = false;
|
|
9377
9476
|
const v = a2(input, pos, ctx);
|
|
9378
9477
|
if (v !== FAIL) return v;
|
|
9379
|
-
|
|
9478
|
+
const at = ctx._fe ?? pos;
|
|
9479
|
+
if (at > best) {
|
|
9480
|
+
best = at;
|
|
9481
|
+
acc = void 0;
|
|
9482
|
+
}
|
|
9483
|
+
if (at === best) acc = accSet(ctx._fx, acc);
|
|
9380
9484
|
if (committed3(ctx)) {
|
|
9381
9485
|
if (acc !== void 0) ctx._fx = acc;
|
|
9382
9486
|
return FAIL;
|
|
9383
9487
|
}
|
|
9384
9488
|
if (need) rollbackTriviaAt(ctx, mRaw, mTl, mLv, mFl, mEr, mLog, mRoot);
|
|
9385
|
-
} else acc = accSet(e2, acc);
|
|
9489
|
+
} else if (best === pos) acc = accSet(e2, acc);
|
|
9386
9490
|
}
|
|
9387
9491
|
ctx._fe = pos;
|
|
9388
9492
|
ctx._fx = acc ?? choiceFx;
|
|
@@ -9480,7 +9584,8 @@ function assemble(t, prog, cfg) {
|
|
|
9480
9584
|
mLog,
|
|
9481
9585
|
mRoot,
|
|
9482
9586
|
void 0,
|
|
9483
|
-
0
|
|
9587
|
+
0,
|
|
9588
|
+
pos
|
|
9484
9589
|
);
|
|
9485
9590
|
}
|
|
9486
9591
|
return general(
|
|
@@ -9497,7 +9602,8 @@ function assemble(t, prog, cfg) {
|
|
|
9497
9602
|
mLog,
|
|
9498
9603
|
mRoot,
|
|
9499
9604
|
void 0,
|
|
9500
|
-
0
|
|
9605
|
+
0,
|
|
9606
|
+
pos
|
|
9501
9607
|
);
|
|
9502
9608
|
};
|
|
9503
9609
|
}
|
|
@@ -9525,7 +9631,8 @@ function assemble(t, prog, cfg) {
|
|
|
9525
9631
|
mLog,
|
|
9526
9632
|
mRoot,
|
|
9527
9633
|
void 0,
|
|
9528
|
-
0
|
|
9634
|
+
0,
|
|
9635
|
+
pos
|
|
9529
9636
|
);
|
|
9530
9637
|
};
|
|
9531
9638
|
}
|