parseman 0.50.0 → 0.50.3

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.
Files changed (55) hide show
  1. package/README.md +14 -10
  2. package/dist/analysis/diagnostics.js +455 -226
  3. package/dist/analysis/diagnostics.js.map +3 -3
  4. package/dist/cli/index.js +445 -191
  5. package/dist/cli/index.js.map +3 -3
  6. package/dist/combinators/choice.d.ts.map +1 -1
  7. package/dist/combinators/grammar.d.ts.map +1 -1
  8. package/dist/combinators/keywords.d.ts.map +1 -1
  9. package/dist/combinators/literal.d.ts.map +1 -1
  10. package/dist/combinators/map.d.ts.map +1 -1
  11. package/dist/combinators/ref.d.ts.map +1 -1
  12. package/dist/combinators/regex.d.ts.map +1 -1
  13. package/dist/combinators/repeat.d.ts.map +1 -1
  14. package/dist/combinators/scalar.d.ts +6 -0
  15. package/dist/combinators/scalar.d.ts.map +1 -0
  16. package/dist/combinators/sequence.d.ts.map +1 -1
  17. package/dist/combinators/trivia-skip.d.ts +2 -0
  18. package/dist/combinators/trivia-skip.d.ts.map +1 -1
  19. package/dist/compiler/token-capability.js +0 -3
  20. package/dist/compiler/token-capability.js.map +2 -2
  21. package/dist/index.js +446 -192
  22. package/dist/index.js.map +3 -3
  23. package/dist/language-service/index.js +68 -172
  24. package/dist/language-service/index.js.map +3 -3
  25. package/dist/parse-context.d.ts.map +1 -1
  26. package/dist/plugin/index.js +491 -306
  27. package/dist/plugin/index.js.map +3 -3
  28. package/dist/run/index.js +1 -0
  29. package/dist/run/index.js.map +1 -1
  30. package/dist/spec/index.js +399 -277
  31. package/dist/spec/index.js.map +3 -3
  32. package/dist/table/emit-assembly.d.ts.map +1 -1
  33. package/dist/table/encode.d.ts.map +1 -1
  34. package/dist/table/index.js +331 -188
  35. package/dist/table/index.js.map +3 -3
  36. package/dist/types.d.ts +8 -0
  37. package/dist/types.d.ts.map +1 -1
  38. package/dist/version.d.ts +1 -1
  39. package/package.json +4 -2
  40. package/src/combinators/choice.ts +34 -1
  41. package/src/combinators/grammar.ts +39 -0
  42. package/src/combinators/keywords.ts +14 -3
  43. package/src/combinators/literal.ts +26 -0
  44. package/src/combinators/map.ts +60 -0
  45. package/src/combinators/ref.ts +26 -7
  46. package/src/combinators/regex.ts +23 -0
  47. package/src/combinators/repeat.ts +109 -16
  48. package/src/combinators/scalar.ts +30 -0
  49. package/src/combinators/sequence.ts +76 -161
  50. package/src/combinators/trivia-skip.ts +14 -1
  51. package/src/parse-context.ts +1 -0
  52. package/src/table/emit-assembly.ts +39 -16
  53. package/src/table/encode.ts +30 -10
  54. package/src/types.ts +8 -0
  55. package/src/version.ts +1 -1
@@ -46,7 +46,7 @@ function annotateSpanFromLineContext(span, ctx) {
46
46
  function cstCaptureActive(ctx) {
47
47
  return ctx._cstBuf !== void 0 || ctx._cstLeaves !== void 0;
48
48
  }
49
- function pushCstChild(ctx, built, rawEntry2) {
49
+ function pushCstChild(ctx, built, rawEntry) {
50
50
  const b = ctx._cstBuf;
51
51
  if (b) {
52
52
  if (b.rawOnly !== true) {
@@ -57,16 +57,16 @@ function pushCstChild(ctx, built, rawEntry2) {
57
57
  } else b.single = built;
58
58
  }
59
59
  if (b.noRaw === true) b.rawLen = (b.rawLen ?? 0) + 1;
60
- else if (b.raw) b.raw.push(rawEntry2);
60
+ else if (b.raw) b.raw.push(rawEntry);
61
61
  else if (b.rawSingle !== void 0) {
62
- b.raw = [b.rawSingle, rawEntry2];
62
+ b.raw = [b.rawSingle, rawEntry];
63
63
  b.rawSingle = void 0;
64
- } else b.rawSingle = rawEntry2;
64
+ } else b.rawSingle = rawEntry;
65
65
  return;
66
66
  }
67
67
  if (ctx._cstChildren) ctx._cstChildren.push(built);
68
68
  else if (ctx._cstLeaves) ctx._cstLeaves.push(built);
69
- if (ctx._cstRawChildren) ctx._cstRawChildren.push(rawEntry2);
69
+ if (ctx._cstRawChildren) ctx._cstRawChildren.push(rawEntry);
70
70
  }
71
71
 
72
72
  // src/recovery/scan.ts
@@ -180,6 +180,7 @@ function createParseContext() {
180
180
  _fe: void 0,
181
181
  _fx: void 0,
182
182
  _fc: void 0,
183
+ _sv: void 0,
183
184
  _probe: void 0,
184
185
  _cstChildren: void 0,
185
186
  _cstLeaves: void 0,
@@ -327,24 +328,24 @@ function buildRootTriviaIndex(log, labels) {
327
328
  },
328
329
  gapsWithKind(kind) {
329
330
  const kinds = typeof kind === "string" ? [kind] : kind;
330
- const matches2 = [];
331
+ const matches = [];
331
332
  for (let first = 0; first < length; ) {
332
333
  let last = first + 1;
333
334
  while (last < length && ownedRangeStart(last) === ownedRangeStart(first) && ownedRangeEnd(last) === ownedRangeEnd(first)) last++;
334
335
  let matched = false;
335
336
  for (let i = first; i < last && !matched; i++) {
336
- const label2 = labels[markerKind(i)];
337
+ const label = labels[markerKind(i)];
337
338
  for (const kind2 of kinds) {
338
- if (label2 === kind2) {
339
+ if (label === kind2) {
339
340
  matched = true;
340
341
  break;
341
342
  }
342
343
  }
343
344
  }
344
- if (matched) matches2.push(makeGap(first, last));
345
+ if (matched) matches.push(makeGap(first, last));
345
346
  first = last;
346
347
  }
347
- return matches2.length === 0 ? EMPTY_GAPS : matches2;
348
+ return matches.length === 0 ? EMPTY_GAPS : matches;
348
349
  }
349
350
  };
350
351
  }
@@ -476,9 +477,9 @@ function runOnce(entry, input, options) {
476
477
  throw new TypeError("run(): rootTrivia.select requires labeled grammar trivia.");
477
478
  }
478
479
  if (captureRootTrivia) {
479
- for (const label2 of rootTriviaSelection) {
480
- if (!triviaKindLabels.includes(label2)) {
481
- throw new TypeError(`run(): rootTrivia.select contains unknown trivia label ${JSON.stringify(label2)}.`);
480
+ for (const label of rootTriviaSelection) {
481
+ if (!triviaKindLabels.includes(label)) {
482
+ throw new TypeError(`run(): rootTrivia.select contains unknown trivia label ${JSON.stringify(label)}.`);
482
483
  }
483
484
  }
484
485
  }
@@ -570,111 +571,6 @@ function deeperFail(a, b) {
570
571
  return a.span.start >= b.span.start ? a : b;
571
572
  }
572
573
 
573
- // src/regex/classes.ts
574
- var META = new Set("()[]{}*+?|^$.".split(""));
575
-
576
- // src/table/ops.ts
577
- var OP_LIT = 1;
578
- var OP_RX = 2;
579
- var OP_SEQ = 3;
580
- var OP_SEQV = 4;
581
- var OP_CHOICE = 5;
582
- var OP_REP = 6;
583
- var OP_REPV = 7;
584
- var OP_OPT = 8;
585
- var OP_XFORM = 9;
586
- var OP_NODE = 10;
587
- var OP_RULE = 11;
588
- var OP_GATE = 12;
589
- var OP_NOT = 13;
590
- var OP_PEEK = 14;
591
- var OP_LEAF = 15;
592
- var OP_EMPTY = 16;
593
- var OP_LIT_TRACK = 17;
594
- var OP_RX_TRACK = 18;
595
- var OP_NODE_TRACK = 19;
596
- var OP_SCOPE = 20;
597
- var OP_EXPECT = 21;
598
- var OP_SEQX = 22;
599
- var OP_SCAN = 23;
600
- var OP_FIELD = 24;
601
- var OP_LIT_CI = 27;
602
- var OP_LIT_CI_TRACK = 28;
603
- var OP_TOKEN = 29;
604
- var OP_SCOPE_CAP = 30;
605
- var OP_WITHCTX = 31;
606
- var OP_GUARD = 32;
607
- var OP_ADJ = 33;
608
- var OP_GREEDY = 34;
609
- var OP_REJECT = 35;
610
- var OP_ARMGATE = 36;
611
- var OP_LIVE = 37;
612
- var OP_ATTEMPT = 38;
613
- var OP_LABEL = 39;
614
- var OP_COV = 40;
615
- var OP_SCOPE_PLAIN = 41;
616
- var OP_LEX_BODY = 42;
617
- var OP_LEX_PROGRAM = 43;
618
- var OP_DISPATCH = 25;
619
- var OP_ROUTED = 26;
620
- var OP_NAMES = {
621
- [OP_LIT]: "LIT",
622
- [OP_RX]: "RX",
623
- [OP_SEQ]: "SEQ",
624
- [OP_SEQV]: "SEQV",
625
- [OP_CHOICE]: "CHOICE",
626
- [OP_REP]: "REP",
627
- [OP_REPV]: "REPV",
628
- [OP_OPT]: "OPT",
629
- [OP_XFORM]: "XFORM",
630
- [OP_NODE]: "NODE",
631
- [OP_RULE]: "RULE",
632
- [OP_GATE]: "GATE",
633
- [OP_NOT]: "NOT",
634
- [OP_PEEK]: "PEEK",
635
- [OP_LEAF]: "LEAF",
636
- [OP_EMPTY]: "EMPTY",
637
- [OP_LIT_TRACK]: "LIT_TRACK",
638
- [OP_RX_TRACK]: "RX_TRACK",
639
- [OP_NODE_TRACK]: "NODE_TRACK",
640
- [OP_SCOPE]: "SCOPE",
641
- [OP_EXPECT]: "EXPECT",
642
- [OP_SEQX]: "SEQX",
643
- [OP_SCAN]: "SCAN",
644
- [OP_FIELD]: "FIELD",
645
- [OP_LIT_CI]: "LIT_CI",
646
- [OP_LIT_CI_TRACK]: "LIT_CI_TRACK",
647
- [OP_DISPATCH]: "DISPATCH",
648
- [OP_ROUTED]: "ROUTED",
649
- [OP_TOKEN]: "TOKEN",
650
- [OP_SCOPE_CAP]: "SCOPE_CAP",
651
- [OP_WITHCTX]: "WITHCTX",
652
- [OP_GUARD]: "GUARD",
653
- [OP_ADJ]: "ADJ",
654
- [OP_GREEDY]: "GREEDY",
655
- [OP_REJECT]: "REJECT",
656
- [OP_ARMGATE]: "ARMGATE",
657
- [OP_LIVE]: "LIVE",
658
- [OP_ATTEMPT]: "ATTEMPT",
659
- [OP_LABEL]: "LABEL",
660
- [OP_COV]: "COV",
661
- [OP_SCOPE_PLAIN]: "SCOPE_PLAIN",
662
- [OP_LEX_BODY]: "LEX_BODY",
663
- [OP_LEX_PROGRAM]: "LEX_PROGRAM"
664
- };
665
-
666
- // src/table/scan-shapes.ts
667
- var META2 = new Set("()[]{}*+?|^$.".split(""));
668
-
669
- // src/table/assemble.ts
670
- var EMIT_ENABLED = globalThis.process?.env?.PM_TABLE_EMIT !== "0";
671
- var EMPTY_TL = Object.freeze([]);
672
- var EMPTY_SENTS = Object.freeze([]);
673
-
674
- // src/analysis/duplication.ts
675
- var WORD_RE_SRC = "-?[A-Za-z][A-Za-z0-9_-]*";
676
- var WORDS_RE = new RegExp(`^${WORD_RE_SRC}(?:\\|${WORD_RE_SRC})*$`);
677
-
678
574
  // src/compiler/linker.ts
679
575
  function normalizeCstCollapse(collapse) {
680
576
  if (collapse === true) return () => true;
@@ -708,32 +604,32 @@ function fusedHostElidedOf(registry) {
708
604
  }
709
605
 
710
606
  // src/cst/relative-spans.ts
711
- function relativizeCST(node2, parentBase = 0) {
712
- const span = { start: node2.span.start - parentBase, end: node2.span.end - parentBase };
713
- if (node2.children) {
714
- const base = node2.span.start;
715
- return { ...node2, span, children: node2.children.map((c) => relativizeCST(c, base)) };
607
+ function relativizeCST(node, parentBase = 0) {
608
+ const span = { start: node.span.start - parentBase, end: node.span.end - parentBase };
609
+ if (node.children) {
610
+ const base = node.span.start;
611
+ return { ...node, span, children: node.children.map((c) => relativizeCST(c, base)) };
716
612
  }
717
- return { ...node2, span };
613
+ return { ...node, span };
718
614
  }
719
- function absolutizeCST(node2, parentBase = 0) {
720
- const start = parentBase + node2.span.start;
721
- const span = { start, end: parentBase + node2.span.end };
722
- if (node2.children) {
723
- return { ...node2, span, children: node2.children.map((c) => absolutizeCST(c, start)) };
615
+ function absolutizeCST(node, parentBase = 0) {
616
+ const start = parentBase + node.span.start;
617
+ const span = { start, end: parentBase + node.span.end };
618
+ if (node.children) {
619
+ return { ...node, span, children: node.children.map((c) => absolutizeCST(c, start)) };
724
620
  }
725
- return { ...node2, span };
621
+ return { ...node, span };
726
622
  }
727
623
  function absoluteSpanCST(root, path) {
728
624
  let base = 0;
729
- let node2 = root;
625
+ let node = root;
730
626
  for (const idx of path) {
731
- base += node2.span.start;
732
- const child = node2.children?.[idx];
627
+ base += node.span.start;
628
+ const child = node.children?.[idx];
733
629
  if (!child) throw new RangeError(`absoluteSpanCST: no child ${idx} on path ${path.join(".")}`);
734
- node2 = child;
630
+ node = child;
735
631
  }
736
- return { start: base + node2.span.start, end: base + node2.span.end };
632
+ return { start: base + node.span.start, end: base + node.span.end };
737
633
  }
738
634
 
739
635
  // src/functional/doc.ts
@@ -747,8 +643,8 @@ function asRuleFn(entry) {
747
643
  function defOf(entry) {
748
644
  return typeof entry === "object" && entry !== null && "_def" in entry ? entry._def : void 0;
749
645
  }
750
- function literalTextOf(parser2, depth = 0) {
751
- const def = defOf(parser2);
646
+ function literalTextOf(parser, depth = 0) {
647
+ const def = defOf(parser);
752
648
  if (!def || depth > 24) return null;
753
649
  const d = def;
754
650
  switch (d.tag) {
@@ -831,9 +727,9 @@ var REENTRY_MAX_SPAN_FRACTION = 0.5;
831
727
  function isNode(x) {
832
728
  return typeof x === "object" && x !== null && x._tag === "node";
833
729
  }
834
- function findContaining(node2, nodeAbsStart, pos, path = []) {
835
- for (let i = 0; i < node2.children.length; i++) {
836
- const child = node2.children[i];
730
+ function findContaining(node, nodeAbsStart, pos, path = []) {
731
+ for (let i = 0; i < node.children.length; i++) {
732
+ const child = node.children[i];
837
733
  if (!isNode(child)) continue;
838
734
  const childAbsStart = nodeAbsStart + child.span.start;
839
735
  const childAbsEnd = nodeAbsStart + child.span.end;
@@ -862,8 +758,8 @@ function replaceAtPath(rebuild, root, path, newNode) {
862
758
  newChildren[idx] = rest.length === 0 ? newNode : replaceAtPath(rebuild, root.children[idx], rest, newNode);
863
759
  return rebuild(root, newChildren);
864
760
  }
865
- function defaultRebuild(node2, children) {
866
- return { ...node2, children };
761
+ function defaultRebuild(node, children) {
762
+ return { ...node, children };
867
763
  }
868
764
  function shiftRelStart(child, delta) {
869
765
  const c = child;
@@ -1081,10 +977,10 @@ var ParseDocImpl = class _ParseDocImpl {
1081
977
  * unconsumedFrom re-derives trailing junk over the new input).
1082
978
  */
1083
979
  wrapReuse(newTree, newInput) {
1084
- const trivia2 = triviaOf(this._registry[this._rootRule], this._opts);
980
+ const trivia = triviaOf(this._registry[this._rootRule], this._opts);
1085
981
  const end = newTree.span.end;
1086
982
  const errors = collectEmbeddedErrors(newTree, 0, []);
1087
- const unconsumedFrom = unconsumedAfter(end, newInput, trivia2);
983
+ const unconsumedFrom = unconsumedAfter(end, newInput, trivia);
1088
984
  return new _ParseDocImpl(this._registry, this._rootRule, this._opts, { rel: newTree }, errors, unconsumedFrom, newInput);
1089
985
  }
1090
986
  edit(from, to, replacement) {
@@ -1102,20 +998,20 @@ var ParseDocImpl = class _ParseDocImpl {
1102
998
  candidates.push({ node: ancestors[i + 1], path: [...pathCopy] });
1103
999
  }
1104
1000
  const rebuild = this._opts.rebuild ?? defaultRebuild;
1105
- for (const { node: node2, path } of candidates) {
1001
+ for (const { node, path } of candidates) {
1106
1002
  const { start: absStart, end: absEnd } = absoluteSpanCST(root, path);
1107
1003
  if (absEnd - absStart > this.input.length * REENTRY_MAX_SPAN_FRACTION) break;
1108
- const ruleFn = this._fns[node2.type];
1004
+ const ruleFn = this._fns[node.type];
1109
1005
  if (!ruleFn) continue;
1110
1006
  if (!(absStart <= from && to <= absEnd)) continue;
1111
- const ctx = mkCtx(node2.state, this._opts.build, !!this._opts.tolerant);
1007
+ const ctx = mkCtx(node.state, this._opts.build, !!this._opts.tolerant);
1112
1008
  const r = ruleFn(newInput, absStart, ctx);
1113
1009
  if (!r.ok) continue;
1114
1010
  if (r.span.end !== absEnd + delta) continue;
1115
- if (!boundaryIsSafe(ruleFn, newInput, absStart, absEnd + delta, node2.state, this._opts.build, r, !!this._opts.tolerant)) {
1011
+ if (!boundaryIsSafe(ruleFn, newInput, absStart, absEnd + delta, node.state, this._opts.build, r, !!this._opts.tolerant)) {
1116
1012
  continue;
1117
1013
  }
1118
- const parentBase = absStart - node2.span.start;
1014
+ const parentBase = absStart - node.span.start;
1119
1015
  const newRel = relativizeCST(r.value, parentBase);
1120
1016
  if (delta === 0) {
1121
1017
  const newTree2 = replaceAtPath(rebuild, root, path, newRel);
@@ -1127,12 +1023,12 @@ var ParseDocImpl = class _ParseDocImpl {
1127
1023
  }
1128
1024
  if (this._opts.structuralReuse && delta !== 0 && !this._opts.rebuild) {
1129
1025
  const spliceCandidates = [...candidates, { node: root, path: [] }];
1130
- for (const { node: node2, path } of spliceCandidates) {
1131
- const rep = this._reps.get(node2.type);
1026
+ for (const { node, path } of spliceCandidates) {
1027
+ const rep = this._reps.get(node.type);
1132
1028
  if (!rep) continue;
1133
1029
  const { start: cStart, end: cEnd } = absoluteSpanCST(root, path);
1134
1030
  if (!(cStart <= from && to <= cEnd)) continue;
1135
- const spliced = tryListSplice(root, path, node2, cStart, newInput, from, to, delta, rep, this._fns, this._opts.build, !!this._opts.tolerant);
1031
+ const spliced = tryListSplice(root, path, node, cStart, newInput, from, to, delta, rep, this._fns, this._opts.build, !!this._opts.tolerant);
1136
1032
  if (spliced) return this.wrapReuse(spliced, newInput);
1137
1033
  }
1138
1034
  }
@@ -1145,16 +1041,16 @@ function triviaOf(entry, opts) {
1145
1041
  const meta = entry._meta;
1146
1042
  return meta ? meta.grammarTrivia : void 0;
1147
1043
  }
1148
- function unconsumedAfter(end, input, trivia2) {
1044
+ function unconsumedAfter(end, input, trivia) {
1149
1045
  let pos = end;
1150
- if (trivia2 && pos < input.length) {
1151
- const t = trivia2.parse(input, pos, createParseContext());
1046
+ if (trivia && pos < input.length) {
1047
+ const t = trivia.parse(input, pos, createParseContext());
1152
1048
  if (t.ok && t.span.end > pos) pos = t.span.end;
1153
1049
  }
1154
1050
  return pos < input.length ? pos : null;
1155
1051
  }
1156
- function collectEmbeddedErrors(node2, base, out) {
1157
- const c = node2;
1052
+ function collectEmbeddedErrors(node, base, out) {
1053
+ const c = node;
1158
1054
  if (!c || typeof c !== "object" || !c.span) return out;
1159
1055
  const start = base + c.span.start;
1160
1056
  if (c._tag === "parseError") {
@@ -1182,9 +1078,9 @@ function parseDoc(registry, rootRule, input, opts = {}) {
1182
1078
  // src/language-service/index.ts
1183
1079
  var errorMessage = (expected) => expected.length ? `Unexpected input; expected ${expected.join(" or ")}` : "Unexpected input";
1184
1080
  function visitTree(root, enter) {
1185
- const go = (node2) => {
1186
- enter(node2);
1187
- const children = node2.children;
1081
+ const go = (node) => {
1082
+ enter(node);
1083
+ const children = node.children;
1188
1084
  if (Array.isArray(children)) for (const child of children) go(child);
1189
1085
  };
1190
1086
  go(root);
@@ -1207,15 +1103,15 @@ function mergeDiagnostics(tree, flat, unconsumedFrom, inputLength, config) {
1207
1103
  }
1208
1104
  function diagnoseTree(root, config) {
1209
1105
  const out = [];
1210
- const rules2 = config.diagnostics;
1211
- visitTree(root, (node2) => {
1212
- if (node2._tag === "parseError") {
1213
- out.push({ severity: "error", message: errorMessage(node2.expected ?? []), span: node2.span });
1106
+ const rules = config.diagnostics;
1107
+ visitTree(root, (node) => {
1108
+ if (node._tag === "parseError") {
1109
+ out.push({ severity: "error", message: errorMessage(node.expected ?? []), span: node.span });
1214
1110
  return;
1215
1111
  }
1216
- const h = rules2 && node2.type !== void 0 ? rules2[node2.type] : void 0;
1112
+ const h = rules && node.type !== void 0 ? rules[node.type] : void 0;
1217
1113
  if (h) {
1218
- const d = h(node2);
1114
+ const d = h(node);
1219
1115
  if (d) out.push(...Array.isArray(d) ? d : [d]);
1220
1116
  }
1221
1117
  });
@@ -1227,14 +1123,14 @@ function languageService(grammar, config = {}) {
1227
1123
  const registry = asReg ? grammar.rules : void 0;
1228
1124
  const root = asReg ? grammar.root : void 0;
1229
1125
  const entry = asReg ? registry[root] : grammar;
1230
- const trivia2 = typeof entry !== "function" ? entry._meta.grammarTrivia : void 0;
1231
- const parseTolerant = (src) => run(entry, src, { tolerant: true, build, ...trivia2 !== void 0 ? { trivia: trivia2 } : {} });
1126
+ const trivia = typeof entry !== "function" ? entry._meta.grammarTrivia : void 0;
1127
+ const parseTolerant = (src) => run(entry, src, { tolerant: true, build, ...trivia !== void 0 ? { trivia } : {} });
1232
1128
  const complete = (input, offset, treeForCursor) => {
1233
1129
  const expected = completionsAt(entry, input, offset, { tolerant: true });
1234
1130
  const rule = ruleAtCursor(treeForCursor, offset);
1235
1131
  const handler = rule !== null ? config.complete?.[rule] : void 0;
1236
1132
  if (handler) return handler({ rule, expected, offset });
1237
- return expected.map((label2) => ({ label: label2 }));
1133
+ return expected.map((label) => ({ label }));
1238
1134
  };
1239
1135
  return {
1240
1136
  parse(src, opts) {
@@ -1274,9 +1170,9 @@ function languageService(grammar, config = {}) {
1274
1170
  function ruleAtCursor(root, offset) {
1275
1171
  if (!root || typeof root !== "object") return null;
1276
1172
  let best = null;
1277
- visitTree(root, (node2) => {
1278
- const s = node2.span;
1279
- if (s && s.start <= offset && offset <= s.end && node2.type !== void 0) best = node2.type;
1173
+ visitTree(root, (node) => {
1174
+ const s = node.span;
1175
+ if (s && s.start <= offset && offset <= s.end && node.type !== void 0) best = node.type;
1280
1176
  });
1281
1177
  return best;
1282
1178
  }
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "version": 3,
3
- "sources": ["../../src/line-index.ts", "../../src/cst/capture-buffer.ts", "../../src/recovery/scan.ts", "../../src/parse-context.ts", "../../src/cst/trivia-entries.ts", "../../src/cst/host-mode.ts", "../../src/functional/run.ts", "../../src/combinators/completions.ts", "../../src/regex/classes.ts", "../../src/table/ops.ts", "../../src/table/scan-shapes.ts", "../../src/table/assemble.ts", "../../src/analysis/duplication.ts", "../../src/compiler/linker.ts", "../../src/cst/relative-spans.ts", "../../src/functional/doc.ts", "../../src/language-service/index.ts"],
4
- "mappings": "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",
5
- "names": ["rawEntry", "matches", "label", "kind", "label", "META", "children", "span", "rawChildren", "triviaLog", "state", "node", "parser", "node", "trivia", "newTree", "trivia", "node", "node", "rules", "trivia", "label"]
3
+ "sources": ["../../src/line-index.ts", "../../src/cst/capture-buffer.ts", "../../src/recovery/scan.ts", "../../src/parse-context.ts", "../../src/cst/trivia-entries.ts", "../../src/cst/host-mode.ts", "../../src/functional/run.ts", "../../src/combinators/completions.ts", "../../src/compiler/linker.ts", "../../src/cst/relative-spans.ts", "../../src/functional/doc.ts", "../../src/language-service/index.ts"],
4
+ "mappings": "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",
5
+ "names": ["kind", "children", "span", "rawChildren", "triviaLog", "state", "newTree"]
6
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"parse-context.d.ts","sourceRoot":"","sources":["../src/parse-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,kBAAkB,IAAI,YAAY,CAoCjD;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,YAAY,CAK5F"}
1
+ {"version":3,"file":"parse-context.d.ts","sourceRoot":"","sources":["../src/parse-context.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAY,CAAA;AAE9C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,kBAAkB,IAAI,YAAY,CAqCjD;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,YAAY,CAK5F"}