@danielx/civet 0.6.58 → 0.6.60

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/browser.js CHANGED
@@ -1166,10 +1166,9 @@ ${input.slice(result.pos)}
1166
1166
  }
1167
1167
  return;
1168
1168
  case "CaseBlock":
1169
- node.clauses.forEach((clause) => {
1170
- insertPush:
1171
- insertPush(clause, ref);
1172
- });
1169
+ node.clauses.forEach((clause) => ({
1170
+ insertPush: insertPush(clause, ref)
1171
+ }));
1173
1172
  return;
1174
1173
  case "WhenClause":
1175
1174
  insertPush(node.block, ref);
@@ -1595,7 +1594,9 @@ ${input.slice(result.pos)}
1595
1594
  }
1596
1595
  return;
1597
1596
  case "WhenClause":
1598
- node.children.splice(node.children.indexOf(node.break), 1);
1597
+ if (node.break) {
1598
+ node.children.splice(node.children.indexOf(node.break), 1);
1599
+ }
1599
1600
  if (node.block.expressions.length) {
1600
1601
  insertReturn(node.block);
1601
1602
  } else {
@@ -1725,6 +1726,14 @@ ${input.slice(result.pos)}
1725
1726
  return node.every(isWhitespaceOrEmpty);
1726
1727
  return;
1727
1728
  }
1729
+ function isExit(node) {
1730
+ return [
1731
+ "ReturnStatement",
1732
+ "ThrowStatement",
1733
+ "BreakStatement",
1734
+ "ContinueStatement"
1735
+ ].includes(node?.type);
1736
+ }
1728
1737
  function gatherRecursiveWithinFunction(node, predicate) {
1729
1738
  return gatherRecursive(node, predicate, isFunction);
1730
1739
  }
@@ -1917,7 +1926,9 @@ ${input.slice(result.pos)}
1917
1926
  break;
1918
1927
  }
1919
1928
  default:
1920
- throw new Error(`for item, index must use 'of' or 'in' instead of '${inOf.token}'`);
1929
+ (() => {
1930
+ throw new Error(`for item, index must use 'of' or 'in' instead of '${inOf.token}'`);
1931
+ })();
1921
1932
  }
1922
1933
  return {
1923
1934
  declaration,
@@ -1989,14 +2000,13 @@ ${input.slice(result.pos)}
1989
2000
  return;
1990
2001
  }
1991
2002
  if (opts?.injectParamProps && n.type === "Parameter" && n.accessModifier) {
1992
- n.names.forEach((id) => {
1993
- push:
1994
- thisAssignments2.push({
1995
- type: "AssignmentExpression",
1996
- children: [`this.${id} = `, id],
1997
- js: true
1998
- });
1999
- });
2003
+ n.names.forEach((id) => ({
2004
+ push: thisAssignments2.push({
2005
+ type: "AssignmentExpression",
2006
+ children: [`this.${id} = `, id],
2007
+ js: true
2008
+ })
2009
+ }));
2000
2010
  return;
2001
2011
  }
2002
2012
  const { blockPrefix } = n;
@@ -2197,7 +2207,9 @@ ${input.slice(result.pos)}
2197
2207
  }
2198
2208
  break;
2199
2209
  default:
2200
- throw new Error(`invalid object literal type in JSX attribute: ${part.type}`);
2210
+ (() => {
2211
+ throw new Error(`invalid object literal type in JSX attribute: ${part.type}`);
2212
+ })();
2201
2213
  }
2202
2214
  }
2203
2215
  if (rest.length) {
@@ -2415,9 +2427,7 @@ ${input.slice(result.pos)}
2415
2427
  case "IterationStatement": {
2416
2428
  const { children, block } = s;
2417
2429
  const newBlock = blockWithPrefix(condition.expression.blockPrefix, block);
2418
- s.children = children.map(function(c) {
2419
- return c.type === "BlockStatement" ? newBlock : c;
2420
- });
2430
+ s.children = children.map((c) => c?.type === "BlockStatement" ? newBlock : c);
2421
2431
  updateParentPointers(newBlock, s);
2422
2432
  break;
2423
2433
  }
@@ -2654,24 +2664,20 @@ ${input.slice(result.pos)}
2654
2664
  }
2655
2665
  function insertSemicolon(statements) {
2656
2666
  const l = statements.length;
2657
- statements.forEach(function(s, i) {
2667
+ for (let i4 = 0, len4 = statements.length; i4 < len4; i4++) {
2668
+ const i = i4;
2669
+ const s = statements[i4];
2658
2670
  if (i < l - 1) {
2659
2671
  if (needsPrecedingSemicolon(statements[i + 1])) {
2660
2672
  const delim = s[2];
2661
2673
  if (!delim) {
2662
- return s[2] = ";";
2674
+ s[2] = ";";
2663
2675
  } else if (typeof delim === "string" && !delim.match(/;/)) {
2664
- return s[2] = `;${delim}`;
2676
+ s[2] = `;${delim}`;
2665
2677
  }
2666
- ;
2667
- return;
2668
2678
  }
2669
- ;
2670
- return;
2671
2679
  }
2672
- ;
2673
- return;
2674
- });
2680
+ }
2675
2681
  }
2676
2682
  function needsPrecedingSemicolon(exp) {
2677
2683
  let following;
@@ -2691,7 +2697,8 @@ ${input.slice(result.pos)}
2691
2697
  case "ArrayExpression":
2692
2698
  case "ArrowFunction":
2693
2699
  case "TemplateLiteral":
2694
- case "RegularExpressionLiteral": {
2700
+ case "RegularExpressionLiteral":
2701
+ case "RangeExpression": {
2695
2702
  return true;
2696
2703
  }
2697
2704
  case "AssignmentExpression": {
@@ -2725,7 +2732,9 @@ ${input.slice(result.pos)}
2725
2732
  case "IfStatement":
2726
2733
  return expressionizeIfClause(post[1], exp);
2727
2734
  default:
2728
- throw new Error("Unknown postfix statement");
2735
+ (() => {
2736
+ throw new Error("Unknown postfix statement");
2737
+ })();
2729
2738
  }
2730
2739
  }
2731
2740
  function getPatternConditions(pattern, ref, conditions) {
@@ -2942,10 +2951,9 @@ ${input.slice(result.pos)}
2942
2951
  pos: 0,
2943
2952
  input: key
2944
2953
  })) {
2945
- shared.forEach((p) => {
2946
- aliasBinding:
2947
- aliasBinding(p, makeRef(`_${key}`, key));
2948
- });
2954
+ shared.forEach((p) => ({
2955
+ aliasBinding: aliasBinding(p, makeRef(`_${key}`, key))
2956
+ }));
2949
2957
  return;
2950
2958
  }
2951
2959
  if (shared.length === 1)
@@ -2965,6 +2973,15 @@ ${input.slice(result.pos)}
2965
2973
  gatherRecursiveAll(statements, (n) => n.type === "SwitchStatement").forEach((s) => {
2966
2974
  const { caseBlock } = s;
2967
2975
  const { clauses } = caseBlock;
2976
+ for (const c of clauses) {
2977
+ if (c.type === "WhenClause" && c.break) {
2978
+ const last = c.block?.expressions?.at(-1)?.[1];
2979
+ if (isExit(last)) {
2980
+ c.children.splice(c.children.indexOf(c.break), 1);
2981
+ c.break = void 0;
2982
+ }
2983
+ }
2984
+ }
2968
2985
  let errors = false;
2969
2986
  let isPattern = false;
2970
2987
  if (clauses.some((c) => c.type === "PatternClause")) {
@@ -3593,20 +3610,29 @@ ${input.slice(result.pos)}
3593
3610
  };
3594
3611
  }
3595
3612
  function replaceNodes(root, predicate, replacer) {
3596
- if (root == null)
3613
+ if (!(root != null)) {
3597
3614
  return root;
3615
+ }
3598
3616
  const array = Array.isArray(root) ? root : root.children;
3599
- if (!array)
3600
- return root;
3601
- array.forEach((node, i) => {
3602
- if (node == null)
3617
+ if (!array) {
3618
+ if (predicate(root)) {
3619
+ return replacer(root, root);
3620
+ } else {
3621
+ return root;
3622
+ }
3623
+ }
3624
+ for (let i5 = 0, len5 = array.length; i5 < len5; i5++) {
3625
+ const i = i5;
3626
+ const node = array[i5];
3627
+ if (!(node != null)) {
3603
3628
  return;
3629
+ }
3604
3630
  if (predicate(node)) {
3605
- return array[i] = replacer(node, root);
3631
+ array[i] = replacer(node, root);
3606
3632
  } else {
3607
- return replaceNodes(node, predicate, replacer);
3633
+ replaceNodes(node, predicate, replacer);
3608
3634
  }
3609
- });
3635
+ }
3610
3636
  return root;
3611
3637
  }
3612
3638
  function skipIfOnlyWS(target) {
@@ -3672,7 +3698,9 @@ ${input.slice(result.pos)}
3672
3698
  }
3673
3699
  break;
3674
3700
  default:
3675
- throw new Error(`unknown child in JSXFragment: ${JSON.stringify(child)}`);
3701
+ (() => {
3702
+ throw new Error(`unknown child in JSXFragment: ${JSON.stringify(child)}`);
3703
+ })();
3676
3704
  }
3677
3705
  lastType = child.type;
3678
3706
  }
@@ -3990,7 +4018,6 @@ ${input.slice(result.pos)}
3990
4018
  OperatorSignature,
3991
4019
  AmpersandBlockRHS,
3992
4020
  AmpersandBlockRHSBody,
3993
- AmpersandUnaryPrefix,
3994
4021
  ThinArrowFunction,
3995
4022
  Arrow,
3996
4023
  ExplicitBlock,
@@ -4549,213 +4576,214 @@ ${input.slice(result.pos)}
4549
4576
  var $L2 = $L("/ ");
4550
4577
  var $L3 = $L("=");
4551
4578
  var $L4 = $L("(");
4552
- var $L5 = $L("?");
4553
- var $L6 = $L(".");
4554
- var $L7 = $L("++");
4555
- var $L8 = $L("--");
4556
- var $L9 = $L("=>");
4557
- var $L10 = $L("\u21D2");
4558
- var $L11 = $L(":");
4559
- var $L12 = $L(" ");
4560
- var $L13 = $L("<");
4561
- var $L14 = $L("implements");
4562
- var $L15 = $L("<:");
4563
- var $L16 = $L("import");
4564
- var $L17 = $L("!");
4565
- var $L18 = $L("^");
4566
- var $L19 = $L("-");
4567
- var $L20 = $L("import.meta");
4568
- var $L21 = $L("return.value");
4569
- var $L22 = $L(",");
4570
- var $L23 = $L("(&)");
4571
- var $L24 = $L("->");
4572
- var $L25 = $L("\u2192");
4573
- var $L26 = $L("}");
4574
- var $L27 = $L("null");
4575
- var $L28 = $L("true");
4576
- var $L29 = $L("false");
4577
- var $L30 = $L("yes");
4578
- var $L31 = $L("on");
4579
- var $L32 = $L("no");
4580
- var $L33 = $L("off");
4581
- var $L34 = $L(">");
4582
- var $L35 = $L("]");
4583
- var $L36 = $L("**=");
4584
- var $L37 = $L("*=");
4585
- var $L38 = $L("/=");
4586
- var $L39 = $L("%=");
4587
- var $L40 = $L("+=");
4588
- var $L41 = $L("-=");
4589
- var $L42 = $L("<<=");
4590
- var $L43 = $L(">>>=");
4591
- var $L44 = $L(">>=");
4592
- var $L45 = $L("&&=");
4593
- var $L46 = $L("&=");
4594
- var $L47 = $L("^=");
4595
- var $L48 = $L("||=");
4596
- var $L49 = $L("|=");
4597
- var $L50 = $L("??=");
4598
- var $L51 = $L("?=");
4599
- var $L52 = $L("and=");
4600
- var $L53 = $L("or=");
4601
- var $L54 = $L("**");
4602
- var $L55 = $L("*");
4603
- var $L56 = $L("/");
4604
- var $L57 = $L("%%");
4605
- var $L58 = $L("%");
4606
- var $L59 = $L("+");
4607
- var $L60 = $L("<=");
4608
- var $L61 = $L("\u2264");
4609
- var $L62 = $L(">=");
4610
- var $L63 = $L("\u2265");
4611
- var $L64 = $L("<?");
4612
- var $L65 = $L("!<?");
4613
- var $L66 = $L("<<");
4614
- var $L67 = $L("\xAB");
4615
- var $L68 = $L(">>>");
4616
- var $L69 = $L("\u22D9");
4617
- var $L70 = $L(">>");
4618
- var $L71 = $L("\xBB");
4619
- var $L72 = $L("!==");
4620
- var $L73 = $L("\u2262");
4621
- var $L74 = $L("!=");
4622
- var $L75 = $L("\u2260");
4623
- var $L76 = $L("isnt");
4624
- var $L77 = $L("===");
4625
- var $L78 = $L("\u2263");
4626
- var $L79 = $L("\u2A76");
4627
- var $L80 = $L("==");
4628
- var $L81 = $L("\u2261");
4629
- var $L82 = $L("\u2A75");
4630
- var $L83 = $L("and");
4631
- var $L84 = $L("&&");
4632
- var $L85 = $L("or");
4633
- var $L86 = $L("||");
4634
- var $L87 = $L("\u2016");
4635
- var $L88 = $L("^^");
4636
- var $L89 = $L("xor");
4637
- var $L90 = $L("xnor");
4638
- var $L91 = $L("??");
4639
- var $L92 = $L("\u2047");
4640
- var $L93 = $L("instanceof");
4641
- var $L94 = $L("\u2208");
4642
- var $L95 = $L("\u220B");
4643
- var $L96 = $L("\u220C");
4644
- var $L97 = $L("\u2209");
4645
- var $L98 = $L("&");
4646
- var $L99 = $L("|");
4647
- var $L100 = $L(";");
4648
- var $L101 = $L("$:");
4649
- var $L102 = $L("break");
4650
- var $L103 = $L("continue");
4651
- var $L104 = $L("debugger");
4652
- var $L105 = $L("with");
4653
- var $L106 = $L("assert");
4654
- var $L107 = $L(":=");
4655
- var $L108 = $L("\u2254");
4656
- var $L109 = $L(".=");
4657
- var $L110 = $L("/*");
4658
- var $L111 = $L("*/");
4659
- var $L112 = $L("\\");
4660
- var $L113 = $L(")");
4661
- var $L114 = $L("abstract");
4662
- var $L115 = $L("as");
4663
- var $L116 = $L("@");
4664
- var $L117 = $L("@@");
4665
- var $L118 = $L("async");
4666
- var $L119 = $L("await");
4667
- var $L120 = $L("`");
4668
- var $L121 = $L("by");
4669
- var $L122 = $L("case");
4670
- var $L123 = $L("catch");
4671
- var $L124 = $L("class");
4672
- var $L125 = $L("#{");
4673
- var $L126 = $L("declare");
4674
- var $L127 = $L("default");
4675
- var $L128 = $L("delete");
4676
- var $L129 = $L("do");
4677
- var $L130 = $L("..");
4678
- var $L131 = $L("\u2025");
4679
- var $L132 = $L("...");
4680
- var $L133 = $L("\u2026");
4681
- var $L134 = $L("::");
4682
- var $L135 = $L('"');
4683
- var $L136 = $L("each");
4684
- var $L137 = $L("else");
4685
- var $L138 = $L("export");
4686
- var $L139 = $L("extends");
4687
- var $L140 = $L("finally");
4688
- var $L141 = $L("for");
4689
- var $L142 = $L("from");
4690
- var $L143 = $L("function");
4691
- var $L144 = $L("get");
4692
- var $L145 = $L("set");
4693
- var $L146 = $L("#");
4694
- var $L147 = $L("if");
4695
- var $L148 = $L("in");
4696
- var $L149 = $L("let");
4697
- var $L150 = $L("const");
4698
- var $L151 = $L("is");
4699
- var $L152 = $L("loop");
4700
- var $L153 = $L("new");
4701
- var $L154 = $L("not");
4702
- var $L155 = $L("of");
4703
- var $L156 = $L("[");
4704
- var $L157 = $L("operator");
4705
- var $L158 = $L("own");
4706
- var $L159 = $L("public");
4707
- var $L160 = $L("private");
4708
- var $L161 = $L("protected");
4709
- var $L162 = $L("||>");
4710
- var $L163 = $L("|\u25B7");
4711
- var $L164 = $L("|>=");
4712
- var $L165 = $L("\u25B7=");
4713
- var $L166 = $L("|>");
4714
- var $L167 = $L("\u25B7");
4715
- var $L168 = $L("readonly");
4716
- var $L169 = $L("return");
4717
- var $L170 = $L("satisfies");
4718
- var $L171 = $L("'");
4719
- var $L172 = $L("static");
4720
- var $L173 = $L("${");
4721
- var $L174 = $L("super");
4722
- var $L175 = $L("switch");
4723
- var $L176 = $L("target");
4724
- var $L177 = $L("then");
4725
- var $L178 = $L("this");
4726
- var $L179 = $L("throw");
4727
- var $L180 = $L('"""');
4728
- var $L181 = $L("'''");
4729
- var $L182 = $L("///");
4730
- var $L183 = $L("```");
4731
- var $L184 = $L("try");
4732
- var $L185 = $L("typeof");
4733
- var $L186 = $L("unless");
4734
- var $L187 = $L("until");
4735
- var $L188 = $L("using");
4736
- var $L189 = $L("var");
4737
- var $L190 = $L("void");
4738
- var $L191 = $L("when");
4739
- var $L192 = $L("while");
4740
- var $L193 = $L("yield");
4741
- var $L194 = $L("/>");
4742
- var $L195 = $L("</");
4743
- var $L196 = $L("<>");
4744
- var $L197 = $L("</>");
4745
- var $L198 = $L("<!--");
4746
- var $L199 = $L("-->");
4747
- var $L200 = $L("type");
4748
- var $L201 = $L("enum");
4749
- var $L202 = $L("interface");
4750
- var $L203 = $L("global");
4751
- var $L204 = $L("module");
4752
- var $L205 = $L("namespace");
4753
- var $L206 = $L("asserts");
4754
- var $L207 = $L("keyof");
4755
- var $L208 = $L("infer");
4756
- var $L209 = $L("???");
4757
- var $L210 = $L("[]");
4758
- var $L211 = $L("civet");
4579
+ var $L5 = $L("... ");
4580
+ var $L6 = $L("?");
4581
+ var $L7 = $L(".");
4582
+ var $L8 = $L("++");
4583
+ var $L9 = $L("--");
4584
+ var $L10 = $L("=>");
4585
+ var $L11 = $L("\u21D2");
4586
+ var $L12 = $L(":");
4587
+ var $L13 = $L(" ");
4588
+ var $L14 = $L("<");
4589
+ var $L15 = $L("implements");
4590
+ var $L16 = $L("<:");
4591
+ var $L17 = $L("import");
4592
+ var $L18 = $L("!");
4593
+ var $L19 = $L("^");
4594
+ var $L20 = $L("-");
4595
+ var $L21 = $L("import.meta");
4596
+ var $L22 = $L("return.value");
4597
+ var $L23 = $L(",");
4598
+ var $L24 = $L("(&)");
4599
+ var $L25 = $L("->");
4600
+ var $L26 = $L("\u2192");
4601
+ var $L27 = $L("}");
4602
+ var $L28 = $L("null");
4603
+ var $L29 = $L("true");
4604
+ var $L30 = $L("false");
4605
+ var $L31 = $L("yes");
4606
+ var $L32 = $L("on");
4607
+ var $L33 = $L("no");
4608
+ var $L34 = $L("off");
4609
+ var $L35 = $L(">");
4610
+ var $L36 = $L("]");
4611
+ var $L37 = $L("**=");
4612
+ var $L38 = $L("*=");
4613
+ var $L39 = $L("/=");
4614
+ var $L40 = $L("%=");
4615
+ var $L41 = $L("+=");
4616
+ var $L42 = $L("-=");
4617
+ var $L43 = $L("<<=");
4618
+ var $L44 = $L(">>>=");
4619
+ var $L45 = $L(">>=");
4620
+ var $L46 = $L("&&=");
4621
+ var $L47 = $L("&=");
4622
+ var $L48 = $L("^=");
4623
+ var $L49 = $L("||=");
4624
+ var $L50 = $L("|=");
4625
+ var $L51 = $L("??=");
4626
+ var $L52 = $L("?=");
4627
+ var $L53 = $L("and=");
4628
+ var $L54 = $L("or=");
4629
+ var $L55 = $L("**");
4630
+ var $L56 = $L("*");
4631
+ var $L57 = $L("/");
4632
+ var $L58 = $L("%%");
4633
+ var $L59 = $L("%");
4634
+ var $L60 = $L("+");
4635
+ var $L61 = $L("<=");
4636
+ var $L62 = $L("\u2264");
4637
+ var $L63 = $L(">=");
4638
+ var $L64 = $L("\u2265");
4639
+ var $L65 = $L("<?");
4640
+ var $L66 = $L("!<?");
4641
+ var $L67 = $L("<<");
4642
+ var $L68 = $L("\xAB");
4643
+ var $L69 = $L(">>>");
4644
+ var $L70 = $L("\u22D9");
4645
+ var $L71 = $L(">>");
4646
+ var $L72 = $L("\xBB");
4647
+ var $L73 = $L("!==");
4648
+ var $L74 = $L("\u2262");
4649
+ var $L75 = $L("!=");
4650
+ var $L76 = $L("\u2260");
4651
+ var $L77 = $L("isnt");
4652
+ var $L78 = $L("===");
4653
+ var $L79 = $L("\u2263");
4654
+ var $L80 = $L("\u2A76");
4655
+ var $L81 = $L("==");
4656
+ var $L82 = $L("\u2261");
4657
+ var $L83 = $L("\u2A75");
4658
+ var $L84 = $L("and");
4659
+ var $L85 = $L("&&");
4660
+ var $L86 = $L("or");
4661
+ var $L87 = $L("||");
4662
+ var $L88 = $L("\u2016");
4663
+ var $L89 = $L("^^");
4664
+ var $L90 = $L("xor");
4665
+ var $L91 = $L("xnor");
4666
+ var $L92 = $L("??");
4667
+ var $L93 = $L("\u2047");
4668
+ var $L94 = $L("instanceof");
4669
+ var $L95 = $L("\u2208");
4670
+ var $L96 = $L("\u220B");
4671
+ var $L97 = $L("\u220C");
4672
+ var $L98 = $L("\u2209");
4673
+ var $L99 = $L("&");
4674
+ var $L100 = $L("|");
4675
+ var $L101 = $L(";");
4676
+ var $L102 = $L("$:");
4677
+ var $L103 = $L("break");
4678
+ var $L104 = $L("continue");
4679
+ var $L105 = $L("debugger");
4680
+ var $L106 = $L("with");
4681
+ var $L107 = $L("assert");
4682
+ var $L108 = $L(":=");
4683
+ var $L109 = $L("\u2254");
4684
+ var $L110 = $L(".=");
4685
+ var $L111 = $L("/*");
4686
+ var $L112 = $L("*/");
4687
+ var $L113 = $L("\\");
4688
+ var $L114 = $L(")");
4689
+ var $L115 = $L("abstract");
4690
+ var $L116 = $L("as");
4691
+ var $L117 = $L("@");
4692
+ var $L118 = $L("@@");
4693
+ var $L119 = $L("async");
4694
+ var $L120 = $L("await");
4695
+ var $L121 = $L("`");
4696
+ var $L122 = $L("by");
4697
+ var $L123 = $L("case");
4698
+ var $L124 = $L("catch");
4699
+ var $L125 = $L("class");
4700
+ var $L126 = $L("#{");
4701
+ var $L127 = $L("declare");
4702
+ var $L128 = $L("default");
4703
+ var $L129 = $L("delete");
4704
+ var $L130 = $L("do");
4705
+ var $L131 = $L("..");
4706
+ var $L132 = $L("\u2025");
4707
+ var $L133 = $L("...");
4708
+ var $L134 = $L("\u2026");
4709
+ var $L135 = $L("::");
4710
+ var $L136 = $L('"');
4711
+ var $L137 = $L("each");
4712
+ var $L138 = $L("else");
4713
+ var $L139 = $L("export");
4714
+ var $L140 = $L("extends");
4715
+ var $L141 = $L("finally");
4716
+ var $L142 = $L("for");
4717
+ var $L143 = $L("from");
4718
+ var $L144 = $L("function");
4719
+ var $L145 = $L("get");
4720
+ var $L146 = $L("set");
4721
+ var $L147 = $L("#");
4722
+ var $L148 = $L("if");
4723
+ var $L149 = $L("in");
4724
+ var $L150 = $L("let");
4725
+ var $L151 = $L("const");
4726
+ var $L152 = $L("is");
4727
+ var $L153 = $L("loop");
4728
+ var $L154 = $L("new");
4729
+ var $L155 = $L("not");
4730
+ var $L156 = $L("of");
4731
+ var $L157 = $L("[");
4732
+ var $L158 = $L("operator");
4733
+ var $L159 = $L("own");
4734
+ var $L160 = $L("public");
4735
+ var $L161 = $L("private");
4736
+ var $L162 = $L("protected");
4737
+ var $L163 = $L("||>");
4738
+ var $L164 = $L("|\u25B7");
4739
+ var $L165 = $L("|>=");
4740
+ var $L166 = $L("\u25B7=");
4741
+ var $L167 = $L("|>");
4742
+ var $L168 = $L("\u25B7");
4743
+ var $L169 = $L("readonly");
4744
+ var $L170 = $L("return");
4745
+ var $L171 = $L("satisfies");
4746
+ var $L172 = $L("'");
4747
+ var $L173 = $L("static");
4748
+ var $L174 = $L("${");
4749
+ var $L175 = $L("super");
4750
+ var $L176 = $L("switch");
4751
+ var $L177 = $L("target");
4752
+ var $L178 = $L("then");
4753
+ var $L179 = $L("this");
4754
+ var $L180 = $L("throw");
4755
+ var $L181 = $L('"""');
4756
+ var $L182 = $L("'''");
4757
+ var $L183 = $L("///");
4758
+ var $L184 = $L("```");
4759
+ var $L185 = $L("try");
4760
+ var $L186 = $L("typeof");
4761
+ var $L187 = $L("unless");
4762
+ var $L188 = $L("until");
4763
+ var $L189 = $L("using");
4764
+ var $L190 = $L("var");
4765
+ var $L191 = $L("void");
4766
+ var $L192 = $L("when");
4767
+ var $L193 = $L("while");
4768
+ var $L194 = $L("yield");
4769
+ var $L195 = $L("/>");
4770
+ var $L196 = $L("</");
4771
+ var $L197 = $L("<>");
4772
+ var $L198 = $L("</>");
4773
+ var $L199 = $L("<!--");
4774
+ var $L200 = $L("-->");
4775
+ var $L201 = $L("type");
4776
+ var $L202 = $L("enum");
4777
+ var $L203 = $L("interface");
4778
+ var $L204 = $L("global");
4779
+ var $L205 = $L("module");
4780
+ var $L206 = $L("namespace");
4781
+ var $L207 = $L("asserts");
4782
+ var $L208 = $L("keyof");
4783
+ var $L209 = $L("infer");
4784
+ var $L210 = $L("???");
4785
+ var $L211 = $L("[]");
4786
+ var $L212 = $L("civet");
4759
4787
  var $R0 = $R(new RegExp("(?=debugger|if|unless|do|for|loop|until|while|switch|throw|try)", "suy"));
4760
4788
  var $R1 = $R(new RegExp("(as|of|satisfies|then|when|implements|xor|xnor)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
4761
4789
  var $R2 = $R(new RegExp("[0-9]", "suy"));
@@ -4765,16 +4793,16 @@ ${input.slice(result.pos)}
4765
4793
  var $R6 = $R(new RegExp("(?=[\\/\\[{?.!@'\u2019:])", "suy"));
4766
4794
  var $R7 = $R(new RegExp("[)}]", "suy"));
4767
4795
  var $R8 = $R(new RegExp("[&]", "suy"));
4768
- var $R9 = $R(new RegExp("[!~+-]+", "suy"));
4769
- var $R10 = $R(new RegExp(`(?=[0-9.'"tfyno])`, "suy"));
4770
- var $R11 = $R(new RegExp("(?=true|false|yes|no|on|off)", "suy"));
4771
- var $R12 = $R(new RegExp("(?=\\p{ID_Start}|[_$])", "suy"));
4772
- var $R13 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
4773
- var $R14 = $R(new RegExp("(?=\\[)", "suy"));
4774
- var $R15 = $R(new RegExp("[!+-]", "suy"));
4775
- var $R16 = $R(new RegExp("(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>+-])", "suy"));
4776
- var $R17 = $R(new RegExp("!\\^\\^?", "suy"));
4777
- var $R18 = $R(new RegExp("(?!\\+\\+|--)[!~+-](?!\\s|[!~+-]*(&|\\.[^0-9]))", "suy"));
4796
+ var $R9 = $R(new RegExp(`(?=[0-9.'"tfyno])`, "suy"));
4797
+ var $R10 = $R(new RegExp("(?=true|false|yes|no|on|off)", "suy"));
4798
+ var $R11 = $R(new RegExp("(?=\\p{ID_Start}|[_$])", "suy"));
4799
+ var $R12 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
4800
+ var $R13 = $R(new RegExp("(?=\\[)", "suy"));
4801
+ var $R14 = $R(new RegExp("[!+-]", "suy"));
4802
+ var $R15 = $R(new RegExp("(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>+-])", "suy"));
4803
+ var $R16 = $R(new RegExp("!\\^\\^?", "suy"));
4804
+ var $R17 = $R(new RegExp("(?!\\+\\+|--)[!~+-](?!\\s)", "suy"));
4805
+ var $R18 = $R(new RegExp("[:.]", "suy"));
4778
4806
  var $R19 = $R(new RegExp("(?=for|if|loop|unless|until|while)", "suy"));
4779
4807
  var $R20 = $R(new RegExp("(?=loop|do|for|until|while)", "suy"));
4780
4808
  var $R21 = $R(new RegExp("(?=[\\s\\),])", "suy"));
@@ -5055,7 +5083,8 @@ ${input.slice(result.pos)}
5055
5083
  return $0;
5056
5084
  return $skip;
5057
5085
  });
5058
- var ForbiddenImplicitCalls$$ = [ForbiddenImplicitCalls$0, ForbiddenImplicitCalls$1, ForbiddenImplicitCalls$2, ForbiddenImplicitCalls$3, ForbiddenImplicitCalls$4, ForbiddenImplicitCalls$5];
5086
+ var ForbiddenImplicitCalls$6 = $EXPECT($L5, 'ForbiddenImplicitCalls "... "');
5087
+ var ForbiddenImplicitCalls$$ = [ForbiddenImplicitCalls$0, ForbiddenImplicitCalls$1, ForbiddenImplicitCalls$2, ForbiddenImplicitCalls$3, ForbiddenImplicitCalls$4, ForbiddenImplicitCalls$5, ForbiddenImplicitCalls$6];
5059
5088
  function ForbiddenImplicitCalls(ctx, state) {
5060
5089
  return $EVENT_C(ctx, state, "ForbiddenImplicitCalls", ForbiddenImplicitCalls$$);
5061
5090
  }
@@ -5071,7 +5100,7 @@ ${input.slice(result.pos)}
5071
5100
  function ArgumentsWithTrailingMemberExpressions(ctx, state) {
5072
5101
  return $EVENT(ctx, state, "ArgumentsWithTrailingMemberExpressions", ArgumentsWithTrailingMemberExpressions$0);
5073
5102
  }
5074
- var TrailingMemberExpressions$0 = $TS($S($Q(MemberExpressionRest), $Q($S(IndentedAtLeast, $Y($S($E($EXPECT($L5, 'TrailingMemberExpressions "?"')), $EXPECT($L6, 'TrailingMemberExpressions "."'), $N($EXPECT($R2, "TrailingMemberExpressions /[0-9]/")))), MemberExpressionRest))), function($skip, $loc, $0, $1, $2) {
5103
+ var TrailingMemberExpressions$0 = $TS($S($Q(MemberExpressionRest), $Q($S(IndentedAtLeast, $Y($S($E($EXPECT($L6, 'TrailingMemberExpressions "?"')), $EXPECT($L7, 'TrailingMemberExpressions "."'), $N($EXPECT($R2, "TrailingMemberExpressions /[0-9]/")))), MemberExpressionRest))), function($skip, $loc, $0, $1, $2) {
5075
5104
  return $1.concat($2);
5076
5105
  });
5077
5106
  function TrailingMemberExpressions(ctx, state) {
@@ -5085,7 +5114,7 @@ ${input.slice(result.pos)}
5085
5114
  function AllowedTrailingMemberExpressions(ctx, state) {
5086
5115
  return $EVENT_C(ctx, state, "AllowedTrailingMemberExpressions", AllowedTrailingMemberExpressions$$);
5087
5116
  }
5088
- var TrailingCallExpressions$0 = $P($S(IndentedAtLeast, $Y($S($E($EXPECT($L5, 'TrailingCallExpressions "?"')), $EXPECT($L6, 'TrailingCallExpressions "."'), $N($R$0($EXPECT($R2, "TrailingCallExpressions /[0-9]/"))))), $P(CallExpressionRest)));
5117
+ var TrailingCallExpressions$0 = $P($S(IndentedAtLeast, $Y($S($E($EXPECT($L6, 'TrailingCallExpressions "?"')), $EXPECT($L7, 'TrailingCallExpressions "."'), $N($R$0($EXPECT($R2, "TrailingCallExpressions /[0-9]/"))))), $P(CallExpressionRest)));
5089
5118
  function TrailingCallExpressions(ctx, state) {
5090
5119
  return $EVENT(ctx, state, "TrailingCallExpressions", TrailingCallExpressions$0);
5091
5120
  }
@@ -5219,19 +5248,20 @@ ${input.slice(result.pos)}
5219
5248
  function ParenthesizedAssignment(ctx, state) {
5220
5249
  return $EVENT(ctx, state, "ParenthesizedAssignment", ParenthesizedAssignment$0);
5221
5250
  }
5222
- var UnaryExpression$0 = $TS($S($Q(UnaryOp), UnaryBody, $E(UnaryPostfix)), function($skip, $loc, $0, $1, $2, $3) {
5251
+ var UnaryExpression$0 = AmpersandFunctionExpression;
5252
+ var UnaryExpression$1 = $TS($S($Q(UnaryOp), UnaryBody, $E(UnaryPostfix)), function($skip, $loc, $0, $1, $2, $3) {
5223
5253
  var pre = $1;
5224
5254
  var exp = $2;
5225
5255
  var post = $3;
5226
5256
  return processUnaryExpression(pre, exp, post);
5227
5257
  });
5228
- var UnaryExpression$1 = $TS($S(CoffeeDoEnabled, Do, __, $C($S(LeftHandSideExpression, $N($S(__, AssignmentOpSymbol))), ArrowFunction, ExtendedExpression)), function($skip, $loc, $0, $1, $2, $3, $4) {
5258
+ var UnaryExpression$2 = $TS($S(CoffeeDoEnabled, Do, __, $C($S(LeftHandSideExpression, $N($S(__, AssignmentOpSymbol))), ArrowFunction, ExtendedExpression)), function($skip, $loc, $0, $1, $2, $3, $4) {
5229
5259
  var ws = $3;
5230
5260
  var exp = $4;
5231
5261
  ws = insertTrimmingSpace(ws, "");
5232
5262
  return ["(", ...ws, exp, ")()"];
5233
5263
  });
5234
- var UnaryExpression$$ = [UnaryExpression$0, UnaryExpression$1];
5264
+ var UnaryExpression$$ = [UnaryExpression$0, UnaryExpression$1, UnaryExpression$2];
5235
5265
  function UnaryExpression(ctx, state) {
5236
5266
  return $EVENT_C(ctx, state, "UnaryExpression", UnaryExpression$$);
5237
5267
  }
@@ -5287,7 +5317,7 @@ ${input.slice(result.pos)}
5287
5317
  function UpdateExpression(ctx, state) {
5288
5318
  return $EVENT_C(ctx, state, "UpdateExpression", UpdateExpression$$);
5289
5319
  }
5290
- var UpdateExpressionSymbol$0 = $TV($C($EXPECT($L7, 'UpdateExpressionSymbol "++"'), $EXPECT($L8, 'UpdateExpressionSymbol "--"')), function($skip, $loc, $0, $1) {
5320
+ var UpdateExpressionSymbol$0 = $TV($C($EXPECT($L8, 'UpdateExpressionSymbol "++"'), $EXPECT($L9, 'UpdateExpressionSymbol "--"')), function($skip, $loc, $0, $1) {
5291
5321
  return { $loc, token: $1 };
5292
5322
  });
5293
5323
  function UpdateExpressionSymbol(ctx, state) {
@@ -5394,7 +5424,7 @@ ${input.slice(result.pos)}
5394
5424
  function ArrowFunction(ctx, state) {
5395
5425
  return $EVENT_C(ctx, state, "ArrowFunction", ArrowFunction$$);
5396
5426
  }
5397
- var FatArrow$0 = $TS($S($E(_), $C($EXPECT($L9, 'FatArrow "=>"'), $EXPECT($L10, 'FatArrow "\u21D2"'))), function($skip, $loc, $0, $1, $2) {
5427
+ var FatArrow$0 = $TS($S($E(_), $C($EXPECT($L10, 'FatArrow "=>"'), $EXPECT($L11, 'FatArrow "\u21D2"'))), function($skip, $loc, $0, $1, $2) {
5398
5428
  var ws = $1;
5399
5429
  if (!ws)
5400
5430
  return " =>";
@@ -5557,7 +5587,7 @@ ${input.slice(result.pos)}
5557
5587
  function ClassDeclaration(ctx, state) {
5558
5588
  return $EVENT(ctx, state, "ClassDeclaration", ClassDeclaration$0);
5559
5589
  }
5560
- var ClassExpression$0 = $S($E(Decorators), $E($S(Abstract, __)), Class, $N($EXPECT($L11, 'ClassExpression ":"')), $E(ClassBinding), $E(ClassHeritage), ClassBody);
5590
+ var ClassExpression$0 = $S($E(Decorators), $E($S(Abstract, __)), Class, $N($EXPECT($L12, 'ClassExpression ":"')), $E(ClassBinding), $E(ClassHeritage), ClassBody);
5561
5591
  function ClassExpression(ctx, state) {
5562
5592
  return $EVENT(ctx, state, "ClassExpression", ClassExpression$0);
5563
5593
  }
@@ -5577,7 +5607,7 @@ ${input.slice(result.pos)}
5577
5607
  function ExtendsClause(ctx, state) {
5578
5608
  return $EVENT(ctx, state, "ExtendsClause", ExtendsClause$0);
5579
5609
  }
5580
- var ExtendsToken$0 = $TS($S(Loc, __, ExtendsShorthand, $E($EXPECT($L12, 'ExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
5610
+ var ExtendsToken$0 = $TS($S(Loc, __, ExtendsShorthand, $E($EXPECT($L13, 'ExtendsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
5581
5611
  var l = $1;
5582
5612
  var ws = $2;
5583
5613
  var t = $3;
@@ -5592,7 +5622,7 @@ ${input.slice(result.pos)}
5592
5622
  function ExtendsToken(ctx, state) {
5593
5623
  return $EVENT_C(ctx, state, "ExtendsToken", ExtendsToken$$);
5594
5624
  }
5595
- var ExtendsShorthand$0 = $TV($EXPECT($L13, 'ExtendsShorthand "<"'), function($skip, $loc, $0, $1) {
5625
+ var ExtendsShorthand$0 = $TV($EXPECT($L14, 'ExtendsShorthand "<"'), function($skip, $loc, $0, $1) {
5596
5626
  return { $loc, token: "extends " };
5597
5627
  });
5598
5628
  function ExtendsShorthand(ctx, state) {
@@ -5618,7 +5648,7 @@ ${input.slice(result.pos)}
5618
5648
  function ImplementsClause(ctx, state) {
5619
5649
  return $EVENT(ctx, state, "ImplementsClause", ImplementsClause$0);
5620
5650
  }
5621
- var ImplementsToken$0 = $TS($S(Loc, __, ImplementsShorthand, $E($EXPECT($L12, 'ImplementsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
5651
+ var ImplementsToken$0 = $TS($S(Loc, __, ImplementsShorthand, $E($EXPECT($L13, 'ImplementsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
5622
5652
  var l = $1;
5623
5653
  var ws = $2;
5624
5654
  var token = $3;
@@ -5628,7 +5658,7 @@ ${input.slice(result.pos)}
5628
5658
  }
5629
5659
  return { children };
5630
5660
  });
5631
- var ImplementsToken$1 = $TS($S(__, $EXPECT($L14, 'ImplementsToken "implements"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
5661
+ var ImplementsToken$1 = $TS($S(__, $EXPECT($L15, 'ImplementsToken "implements"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
5632
5662
  $2 = { $loc, token: $2 };
5633
5663
  return [$1, $2];
5634
5664
  });
@@ -5636,7 +5666,7 @@ ${input.slice(result.pos)}
5636
5666
  function ImplementsToken(ctx, state) {
5637
5667
  return $EVENT_C(ctx, state, "ImplementsToken", ImplementsToken$$);
5638
5668
  }
5639
- var ImplementsShorthand$0 = $TV($EXPECT($L15, 'ImplementsShorthand "<:"'), function($skip, $loc, $0, $1) {
5669
+ var ImplementsShorthand$0 = $TV($EXPECT($L16, 'ImplementsShorthand "<:"'), function($skip, $loc, $0, $1) {
5640
5670
  return { $loc, token: "implements " };
5641
5671
  });
5642
5672
  function ImplementsShorthand(ctx, state) {
@@ -5848,7 +5878,7 @@ ${input.slice(result.pos)}
5848
5878
  function AtThis(ctx, state) {
5849
5879
  return $EVENT(ctx, state, "AtThis", AtThis$0);
5850
5880
  }
5851
- var LeftHandSideExpression$0 = $S($P($S(New, $N($C($EXPECT($L6, 'LeftHandSideExpression "."'), $EXPECT($L11, 'LeftHandSideExpression ":"'))), __)), CallExpression, $E(TypeArguments));
5881
+ var LeftHandSideExpression$0 = $S($P($S(New, $N($C($EXPECT($L7, 'LeftHandSideExpression "."'), $EXPECT($L12, 'LeftHandSideExpression ":"'))), __)), CallExpression, $E(TypeArguments));
5852
5882
  var LeftHandSideExpression$1 = CallExpression;
5853
5883
  var LeftHandSideExpression$$ = [LeftHandSideExpression$0, LeftHandSideExpression$1];
5854
5884
  function LeftHandSideExpression(ctx, state) {
@@ -5861,7 +5891,7 @@ ${input.slice(result.pos)}
5861
5891
  children: [$1, ...$2, ...rest.flat()]
5862
5892
  });
5863
5893
  });
5864
- var CallExpression$1 = $TS($S($EXPECT($L16, 'CallExpression "import"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
5894
+ var CallExpression$1 = $TS($S($EXPECT($L17, 'CallExpression "import"'), ArgumentsWithTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
5865
5895
  var rest = $3;
5866
5896
  return processCallMemberExpression({
5867
5897
  type: "CallExpression",
@@ -5922,7 +5952,7 @@ ${input.slice(result.pos)}
5922
5952
  function OptionalDot(ctx, state) {
5923
5953
  return $EVENT_C(ctx, state, "OptionalDot", OptionalDot$$);
5924
5954
  }
5925
- var NonNullAssertion$0 = $T($S($EXPECT($L17, 'NonNullAssertion "!"'), $N($EXPECT($L18, 'NonNullAssertion "^"'))), function(value) {
5955
+ var NonNullAssertion$0 = $T($S($EXPECT($L18, 'NonNullAssertion "!"'), $N($EXPECT($L19, 'NonNullAssertion "^"'))), function(value) {
5926
5956
  return { "type": "NonNullAssertion", "ts": true, "children": value[0] };
5927
5957
  });
5928
5958
  function NonNullAssertion(ctx, state) {
@@ -6015,33 +6045,8 @@ ${input.slice(result.pos)}
6015
6045
  expression
6016
6046
  };
6017
6047
  });
6018
- var MemberBracketContent$1 = $TS($S(Dot, $C(TemplateLiteral, StringLiteral, IntegerLiteral)), function($skip, $loc, $0, $1, $2) {
6019
- var dot = $1;
6020
- var literal = $2;
6021
- if (Array.isArray(dot))
6022
- dot = dot[0];
6023
- return {
6024
- type: "Index",
6025
- children: [
6026
- { token: "[", $loc: dot.$loc },
6027
- literal,
6028
- "]"
6029
- ]
6030
- };
6031
- });
6032
- var MemberBracketContent$2 = $TS($S(Dot, $EXPECT($L19, 'MemberBracketContent "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
6033
- var dot = $1;
6034
- var neg = $2;
6035
- var num = $3;
6036
- return [
6037
- { type: "PropertyAccess", children: [dot, "at"] },
6038
- // not including `name` so that `{x.-1}` doesn't use it
6039
- { type: "Call", children: ["(", neg, num, ")"] }
6040
- ];
6041
- });
6042
- var MemberBracketContent$$ = [MemberBracketContent$0, MemberBracketContent$1, MemberBracketContent$2];
6043
6048
  function MemberBracketContent(ctx, state) {
6044
- return $EVENT_C(ctx, state, "MemberBracketContent", MemberBracketContent$$);
6049
+ return $EVENT(ctx, state, "MemberBracketContent", MemberBracketContent$0);
6045
6050
  }
6046
6051
  var SliceParameters$0 = $TS($S(ExtendedExpression, __, $C(DotDotDot, DotDot), $E(ExtendedExpression)), function($skip, $loc, $0, $1, $2, $3, $4) {
6047
6052
  var start = $1;
@@ -6121,7 +6126,34 @@ ${input.slice(result.pos)}
6121
6126
  function PropertyAccessModifier(ctx, state) {
6122
6127
  return $EVENT_C(ctx, state, "PropertyAccessModifier", PropertyAccessModifier$$);
6123
6128
  }
6124
- var PropertyAccess$0 = $TS($S(AccessStart, $Q(InlineComment), $C(IdentifierName, PrivateIdentifier)), function($skip, $loc, $0, $1, $2, $3) {
6129
+ var PropertyAccess$0 = $TS($S(AccessStart, $C(TemplateLiteral, StringLiteral, IntegerLiteral)), function($skip, $loc, $0, $1, $2) {
6130
+ var dot = $1;
6131
+ var literal = $2;
6132
+ dot = replaceNodes(
6133
+ deepCopy(dot),
6134
+ (node) => node.token === ".",
6135
+ (node) => ({ token: "[", $loc: node.$loc })
6136
+ );
6137
+ return {
6138
+ type: "Index",
6139
+ children: [
6140
+ dot,
6141
+ literal,
6142
+ "]"
6143
+ ]
6144
+ };
6145
+ });
6146
+ var PropertyAccess$1 = $TS($S(AccessStart, $EXPECT($L20, 'PropertyAccess "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
6147
+ var dot = $1;
6148
+ var neg = $2;
6149
+ var num = $3;
6150
+ return [
6151
+ { type: "PropertyAccess", children: [dot, "at"] },
6152
+ // not including `name` so that `{x.-1}` doesn't use it
6153
+ { type: "Call", children: ["(", neg, num, ")"] }
6154
+ ];
6155
+ });
6156
+ var PropertyAccess$2 = $TS($S(AccessStart, $Q(InlineComment), $C(IdentifierName, PrivateIdentifier)), function($skip, $loc, $0, $1, $2, $3) {
6125
6157
  var access = $1;
6126
6158
  var comments = $2;
6127
6159
  var id = $3;
@@ -6132,7 +6164,7 @@ ${input.slice(result.pos)}
6132
6164
  children
6133
6165
  };
6134
6166
  });
6135
- var PropertyAccess$1 = $TS($S(CoffeePrototypeEnabled, DoubleColon, $E(IdentifierName)), function($skip, $loc, $0, $1, $2, $3) {
6167
+ var PropertyAccess$3 = $TS($S(CoffeePrototypeEnabled, DoubleColon, $E(IdentifierName)), function($skip, $loc, $0, $1, $2, $3) {
6136
6168
  var p = $2;
6137
6169
  var id = $3;
6138
6170
  if (id) {
@@ -6149,7 +6181,7 @@ ${input.slice(result.pos)}
6149
6181
  };
6150
6182
  }
6151
6183
  });
6152
- var PropertyAccess$$ = [PropertyAccess$0, PropertyAccess$1];
6184
+ var PropertyAccess$$ = [PropertyAccess$0, PropertyAccess$1, PropertyAccess$2, PropertyAccess$3];
6153
6185
  function PropertyAccess(ctx, state) {
6154
6186
  return $EVENT_C(ctx, state, "PropertyAccess", PropertyAccess$$);
6155
6187
  }
@@ -6187,7 +6219,7 @@ ${input.slice(result.pos)}
6187
6219
  return $EVENT_C(ctx, state, "SuperProperty", SuperProperty$$);
6188
6220
  }
6189
6221
  var MetaProperty$0 = $S(New, Dot, Target);
6190
- var MetaProperty$1 = $TS($S($EXPECT($L20, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6222
+ var MetaProperty$1 = $TS($S($EXPECT($L21, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6191
6223
  return { $loc, token: $1 };
6192
6224
  });
6193
6225
  var MetaProperty$2 = ReturnValue;
@@ -6195,7 +6227,7 @@ ${input.slice(result.pos)}
6195
6227
  function MetaProperty(ctx, state) {
6196
6228
  return $EVENT_C(ctx, state, "MetaProperty", MetaProperty$$);
6197
6229
  }
6198
- var ReturnValue$0 = $TV($C($S($EXPECT($L21, 'ReturnValue "return.value"'), NonIdContinue), $S(Return, $Y(AfterReturnShorthand))), function($skip, $loc, $0, $1) {
6230
+ var ReturnValue$0 = $TV($C($S($EXPECT($L22, 'ReturnValue "return.value"'), NonIdContinue), $S(Return, $Y(AfterReturnShorthand))), function($skip, $loc, $0, $1) {
6199
6231
  return { type: "ReturnValue", children: [$1[0]] };
6200
6232
  });
6201
6233
  function ReturnValue(ctx, state) {
@@ -6708,7 +6740,7 @@ ${input.slice(result.pos)}
6708
6740
  children: [ws, binding]
6709
6741
  };
6710
6742
  });
6711
- var BindingElement$2 = $TV($Y($S($E(_), $EXPECT($L22, 'BindingElement ","'))), function($skip, $loc, $0, $1) {
6743
+ var BindingElement$2 = $TV($Y($S($E(_), $EXPECT($L23, 'BindingElement ","'))), function($skip, $loc, $0, $1) {
6712
6744
  return {
6713
6745
  children: [{
6714
6746
  type: "ElisionElement",
@@ -6832,7 +6864,7 @@ ${input.slice(result.pos)}
6832
6864
  block
6833
6865
  };
6834
6866
  });
6835
- var FunctionExpression$1 = $TV($EXPECT($L23, 'FunctionExpression "(&)"'), function($skip, $loc, $0, $1) {
6867
+ var FunctionExpression$1 = $TV($EXPECT($L24, 'FunctionExpression "(&)"'), function($skip, $loc, $0, $1) {
6836
6868
  const ref = makeRef("$"), body = [ref];
6837
6869
  const parameters = {
6838
6870
  type: "Parameters",
@@ -6875,10 +6907,10 @@ ${input.slice(result.pos)}
6875
6907
  function FunctionExpression(ctx, state) {
6876
6908
  return $EVENT_C(ctx, state, "FunctionExpression", FunctionExpression$$);
6877
6909
  }
6878
- var AmpersandFunctionExpression$0 = $TS($S($E(AmpersandUnaryPrefix), $C(Ampersand, $S($N(NumericLiteral), $Y($S($E(QuestionMark), Dot)))), $E(AmpersandBlockRHS)), function($skip, $loc, $0, $1, $2, $3) {
6910
+ var AmpersandFunctionExpression$0 = $TS($S($Q(UnaryOp), $C(Ampersand, $S($N(NumericLiteral), $Y($S($E(QuestionMark), Dot, $N(Dot))))), $E(AmpersandBlockRHS)), function($skip, $loc, $0, $1, $2, $3) {
6879
6911
  var prefix = $1;
6880
6912
  var rhs = $3;
6881
- if (!prefix && !rhs)
6913
+ if (!prefix.length && !rhs)
6882
6914
  return $skip;
6883
6915
  let body, ref;
6884
6916
  if (!rhs) {
@@ -6894,7 +6926,7 @@ ${input.slice(result.pos)}
6894
6926
  }
6895
6927
  body = rhs;
6896
6928
  }
6897
- if (prefix) {
6929
+ if (prefix.length) {
6898
6930
  body = {
6899
6931
  type: "UnaryExpression",
6900
6932
  children: [prefix, body, void 0]
@@ -7049,10 +7081,6 @@ ${input.slice(result.pos)}
7049
7081
  function AmpersandBlockRHSBody(ctx, state) {
7050
7082
  return $EVENT(ctx, state, "AmpersandBlockRHSBody", AmpersandBlockRHSBody$0);
7051
7083
  }
7052
- var AmpersandUnaryPrefix$0 = $R$0($EXPECT($R9, "AmpersandUnaryPrefix /[!~+-]+/"));
7053
- function AmpersandUnaryPrefix(ctx, state) {
7054
- return $EVENT(ctx, state, "AmpersandUnaryPrefix", AmpersandUnaryPrefix$0);
7055
- }
7056
7084
  var ThinArrowFunction$0 = $TS($S($E($S(Async, _)), ArrowParameters, $E(ReturnTypeSuffix), $E(_), Arrow, NoCommaBracedOrEmptyBlock), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
7057
7085
  var async = $1;
7058
7086
  var parameters = $2;
@@ -7096,7 +7124,7 @@ ${input.slice(result.pos)}
7096
7124
  function ThinArrowFunction(ctx, state) {
7097
7125
  return $EVENT(ctx, state, "ThinArrowFunction", ThinArrowFunction$0);
7098
7126
  }
7099
- var Arrow$0 = $TV($C($EXPECT($L24, 'Arrow "->"'), $EXPECT($L25, 'Arrow "\u2192"')), function($skip, $loc, $0, $1) {
7127
+ var Arrow$0 = $TV($C($EXPECT($L25, 'Arrow "->"'), $EXPECT($L26, 'Arrow "\u2192"')), function($skip, $loc, $0, $1) {
7100
7128
  return { $loc, token: "->" };
7101
7129
  });
7102
7130
  function Arrow(ctx, state) {
@@ -7382,7 +7410,7 @@ ${input.slice(result.pos)}
7382
7410
  }
7383
7411
  var BracedContent$0 = NestedBlockStatements;
7384
7412
  var BracedContent$1 = SingleLineStatements;
7385
- var BracedContent$2 = $TV($Y($S(__, $EXPECT($L26, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
7413
+ var BracedContent$2 = $TV($Y($S(__, $EXPECT($L27, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
7386
7414
  const expressions = [];
7387
7415
  return {
7388
7416
  type: "BlockStatement",
@@ -7432,7 +7460,7 @@ ${input.slice(result.pos)}
7432
7460
  function BlockStatementPart(ctx, state) {
7433
7461
  return $EVENT(ctx, state, "BlockStatementPart", BlockStatementPart$0);
7434
7462
  }
7435
- var Literal$0 = $TS($S($EXPECT($R10, `Literal /(?=[0-9.'"tfyno])/`), LiteralContent), function($skip, $loc, $0, $1, $2) {
7463
+ var Literal$0 = $TS($S($EXPECT($R9, `Literal /(?=[0-9.'"tfyno])/`), LiteralContent), function($skip, $loc, $0, $1, $2) {
7436
7464
  var literal = $2;
7437
7465
  return {
7438
7466
  type: "Literal",
@@ -7452,13 +7480,13 @@ ${input.slice(result.pos)}
7452
7480
  function LiteralContent(ctx, state) {
7453
7481
  return $EVENT_C(ctx, state, "LiteralContent", LiteralContent$$);
7454
7482
  }
7455
- var NullLiteral$0 = $TS($S($EXPECT($L27, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7483
+ var NullLiteral$0 = $TS($S($EXPECT($L28, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7456
7484
  return { $loc, token: $1 };
7457
7485
  });
7458
7486
  function NullLiteral(ctx, state) {
7459
7487
  return $EVENT(ctx, state, "NullLiteral", NullLiteral$0);
7460
7488
  }
7461
- var BooleanLiteral$0 = $T($S($EXPECT($R11, "BooleanLiteral /(?=true|false|yes|no|on|off)/"), _BooleanLiteral), function(value) {
7489
+ var BooleanLiteral$0 = $T($S($EXPECT($R10, "BooleanLiteral /(?=true|false|yes|no|on|off)/"), _BooleanLiteral), function(value) {
7462
7490
  return value[1];
7463
7491
  });
7464
7492
  function BooleanLiteral(ctx, state) {
@@ -7467,31 +7495,31 @@ ${input.slice(result.pos)}
7467
7495
  var _BooleanLiteral$0 = $T($S(CoffeeBooleansEnabled, CoffeeScriptBooleanLiteral), function(value) {
7468
7496
  return value[1];
7469
7497
  });
7470
- var _BooleanLiteral$1 = $TS($S($C($EXPECT($L28, '_BooleanLiteral "true"'), $EXPECT($L29, '_BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7498
+ var _BooleanLiteral$1 = $TS($S($C($EXPECT($L29, '_BooleanLiteral "true"'), $EXPECT($L30, '_BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7471
7499
  return { $loc, token: $1 };
7472
7500
  });
7473
7501
  var _BooleanLiteral$$ = [_BooleanLiteral$0, _BooleanLiteral$1];
7474
7502
  function _BooleanLiteral(ctx, state) {
7475
7503
  return $EVENT_C(ctx, state, "_BooleanLiteral", _BooleanLiteral$$);
7476
7504
  }
7477
- var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L30, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L31, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7505
+ var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L31, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L32, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7478
7506
  return { $loc, token: "true" };
7479
7507
  });
7480
- var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L32, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L33, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7508
+ var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L33, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L34, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7481
7509
  return { $loc, token: "false" };
7482
7510
  });
7483
7511
  var CoffeeScriptBooleanLiteral$$ = [CoffeeScriptBooleanLiteral$0, CoffeeScriptBooleanLiteral$1];
7484
7512
  function CoffeeScriptBooleanLiteral(ctx, state) {
7485
7513
  return $EVENT_C(ctx, state, "CoffeeScriptBooleanLiteral", CoffeeScriptBooleanLiteral$$);
7486
7514
  }
7487
- var Identifier$0 = $T($S($EXPECT($R12, "Identifier /(?=\\p{ID_Start}|[_$])/"), $N(ReservedWord), IdentifierName), function(value) {
7515
+ var Identifier$0 = $T($S($EXPECT($R11, "Identifier /(?=\\p{ID_Start}|[_$])/"), $N(ReservedWord), IdentifierName), function(value) {
7488
7516
  var id = value[2];
7489
7517
  return id;
7490
7518
  });
7491
7519
  function Identifier(ctx, state) {
7492
7520
  return $EVENT(ctx, state, "Identifier", Identifier$0);
7493
7521
  }
7494
- var IdentifierName$0 = $TR($EXPECT($R13, "IdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
7522
+ var IdentifierName$0 = $TR($EXPECT($R12, "IdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
7495
7523
  return {
7496
7524
  type: "Identifier",
7497
7525
  name: $0,
@@ -7509,11 +7537,11 @@ ${input.slice(result.pos)}
7509
7537
  function IdentifierReference(ctx, state) {
7510
7538
  return $EVENT(ctx, state, "IdentifierReference", IdentifierReference$0);
7511
7539
  }
7512
- var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L3, 'UpcomingAssignment "="'), $N($C($EXPECT($L3, 'UpcomingAssignment "="'), $EXPECT($L34, 'UpcomingAssignment ">"')))));
7540
+ var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L3, 'UpcomingAssignment "="'), $N($C($EXPECT($L3, 'UpcomingAssignment "="'), $EXPECT($L35, 'UpcomingAssignment ">"')))));
7513
7541
  function UpcomingAssignment(ctx, state) {
7514
7542
  return $EVENT(ctx, state, "UpcomingAssignment", UpcomingAssignment$0);
7515
7543
  }
7516
- var ArrayLiteral$0 = $T($S($EXPECT($R14, "ArrayLiteral /(?=\\[)/"), _ArrayLiteral), function(value) {
7544
+ var ArrayLiteral$0 = $T($S($EXPECT($R13, "ArrayLiteral /(?=\\[)/"), _ArrayLiteral), function(value) {
7517
7545
  return value[1];
7518
7546
  });
7519
7547
  function ArrayLiteral(ctx, state) {
@@ -7667,7 +7695,7 @@ ${input.slice(result.pos)}
7667
7695
  return $EVENT(ctx, state, "NestedElement", NestedElement$0);
7668
7696
  }
7669
7697
  var ArrayElementDelimiter$0 = $S(__, Comma);
7670
- var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L35, 'ArrayElementDelimiter "]"')));
7698
+ var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L36, 'ArrayElementDelimiter "]"')));
7671
7699
  var ArrayElementDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
7672
7700
  return value[1];
7673
7701
  });
@@ -7897,7 +7925,7 @@ ${input.slice(result.pos)}
7897
7925
  return $EVENT_C(ctx, state, "ImplicitInlineObjectPropertyDelimiter", ImplicitInlineObjectPropertyDelimiter$$);
7898
7926
  }
7899
7927
  var ObjectPropertyDelimiter$0 = $S($E(_), Comma);
7900
- var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L26, 'ObjectPropertyDelimiter "}"')));
7928
+ var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L27, 'ObjectPropertyDelimiter "}"')));
7901
7929
  var ObjectPropertyDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
7902
7930
  return value[1];
7903
7931
  });
@@ -7913,7 +7941,7 @@ ${input.slice(result.pos)}
7913
7941
  children: [ws, ...prop.children]
7914
7942
  };
7915
7943
  });
7916
- var PropertyDefinition$1 = $TS($S($E(_), $TEXT($EXPECT($R15, "PropertyDefinition /[!+-]/")), PropertyName), function($skip, $loc, $0, $1, $2, $3) {
7944
+ var PropertyDefinition$1 = $TS($S($E(_), $TEXT($EXPECT($R14, "PropertyDefinition /[!+-]/")), PropertyName), function($skip, $loc, $0, $1, $2, $3) {
7917
7945
  var ws = $1;
7918
7946
  var toggle = $2;
7919
7947
  var id = $3;
@@ -8080,7 +8108,7 @@ ${input.slice(result.pos)}
8080
8108
  implicit: true
8081
8109
  };
8082
8110
  });
8083
- var ComputedPropertyName$2 = $TS($S(InsertOpenBracket, $EXPECT($L19, 'ComputedPropertyName "-"'), NumericLiteral, InsertCloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
8111
+ var ComputedPropertyName$2 = $TS($S(InsertOpenBracket, $EXPECT($L20, 'ComputedPropertyName "-"'), NumericLiteral, InsertCloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
8084
8112
  const expression = [$2, $3];
8085
8113
  return {
8086
8114
  type: "ComputedPropertyName",
@@ -8375,22 +8403,22 @@ ${input.slice(result.pos)}
8375
8403
  function OperatorAssignmentOp(ctx, state) {
8376
8404
  return $EVENT_C(ctx, state, "OperatorAssignmentOp", OperatorAssignmentOp$$);
8377
8405
  }
8378
- var AssignmentOpSymbol$0 = $EXPECT($L36, 'AssignmentOpSymbol "**="');
8379
- var AssignmentOpSymbol$1 = $EXPECT($L37, 'AssignmentOpSymbol "*="');
8380
- var AssignmentOpSymbol$2 = $EXPECT($L38, 'AssignmentOpSymbol "/="');
8381
- var AssignmentOpSymbol$3 = $EXPECT($L39, 'AssignmentOpSymbol "%="');
8382
- var AssignmentOpSymbol$4 = $EXPECT($L40, 'AssignmentOpSymbol "+="');
8383
- var AssignmentOpSymbol$5 = $EXPECT($L41, 'AssignmentOpSymbol "-="');
8384
- var AssignmentOpSymbol$6 = $EXPECT($L42, 'AssignmentOpSymbol "<<="');
8385
- var AssignmentOpSymbol$7 = $EXPECT($L43, 'AssignmentOpSymbol ">>>="');
8386
- var AssignmentOpSymbol$8 = $EXPECT($L44, 'AssignmentOpSymbol ">>="');
8387
- var AssignmentOpSymbol$9 = $EXPECT($L45, 'AssignmentOpSymbol "&&="');
8388
- var AssignmentOpSymbol$10 = $EXPECT($L46, 'AssignmentOpSymbol "&="');
8389
- var AssignmentOpSymbol$11 = $EXPECT($L47, 'AssignmentOpSymbol "^="');
8390
- var AssignmentOpSymbol$12 = $EXPECT($L48, 'AssignmentOpSymbol "||="');
8391
- var AssignmentOpSymbol$13 = $EXPECT($L49, 'AssignmentOpSymbol "|="');
8392
- var AssignmentOpSymbol$14 = $EXPECT($L50, 'AssignmentOpSymbol "??="');
8393
- var AssignmentOpSymbol$15 = $T($EXPECT($L51, 'AssignmentOpSymbol "?="'), function(value) {
8406
+ var AssignmentOpSymbol$0 = $EXPECT($L37, 'AssignmentOpSymbol "**="');
8407
+ var AssignmentOpSymbol$1 = $EXPECT($L38, 'AssignmentOpSymbol "*="');
8408
+ var AssignmentOpSymbol$2 = $EXPECT($L39, 'AssignmentOpSymbol "/="');
8409
+ var AssignmentOpSymbol$3 = $EXPECT($L40, 'AssignmentOpSymbol "%="');
8410
+ var AssignmentOpSymbol$4 = $EXPECT($L41, 'AssignmentOpSymbol "+="');
8411
+ var AssignmentOpSymbol$5 = $EXPECT($L42, 'AssignmentOpSymbol "-="');
8412
+ var AssignmentOpSymbol$6 = $EXPECT($L43, 'AssignmentOpSymbol "<<="');
8413
+ var AssignmentOpSymbol$7 = $EXPECT($L44, 'AssignmentOpSymbol ">>>="');
8414
+ var AssignmentOpSymbol$8 = $EXPECT($L45, 'AssignmentOpSymbol ">>="');
8415
+ var AssignmentOpSymbol$9 = $EXPECT($L46, 'AssignmentOpSymbol "&&="');
8416
+ var AssignmentOpSymbol$10 = $EXPECT($L47, 'AssignmentOpSymbol "&="');
8417
+ var AssignmentOpSymbol$11 = $EXPECT($L48, 'AssignmentOpSymbol "^="');
8418
+ var AssignmentOpSymbol$12 = $EXPECT($L49, 'AssignmentOpSymbol "||="');
8419
+ var AssignmentOpSymbol$13 = $EXPECT($L50, 'AssignmentOpSymbol "|="');
8420
+ var AssignmentOpSymbol$14 = $EXPECT($L51, 'AssignmentOpSymbol "??="');
8421
+ var AssignmentOpSymbol$15 = $T($EXPECT($L52, 'AssignmentOpSymbol "?="'), function(value) {
8394
8422
  return "??=";
8395
8423
  });
8396
8424
  var AssignmentOpSymbol$16 = $T($S($EXPECT($L3, 'AssignmentOpSymbol "="'), $N($EXPECT($L3, 'AssignmentOpSymbol "="'))), function(value) {
@@ -8403,10 +8431,10 @@ ${input.slice(result.pos)}
8403
8431
  function AssignmentOpSymbol(ctx, state) {
8404
8432
  return $EVENT_C(ctx, state, "AssignmentOpSymbol", AssignmentOpSymbol$$);
8405
8433
  }
8406
- var CoffeeWordAssignmentOp$0 = $T($EXPECT($L52, 'CoffeeWordAssignmentOp "and="'), function(value) {
8434
+ var CoffeeWordAssignmentOp$0 = $T($EXPECT($L53, 'CoffeeWordAssignmentOp "and="'), function(value) {
8407
8435
  return "&&=";
8408
8436
  });
8409
- var CoffeeWordAssignmentOp$1 = $T($EXPECT($L53, 'CoffeeWordAssignmentOp "or="'), function(value) {
8437
+ var CoffeeWordAssignmentOp$1 = $T($EXPECT($L54, 'CoffeeWordAssignmentOp "or="'), function(value) {
8410
8438
  return "||=";
8411
8439
  });
8412
8440
  var CoffeeWordAssignmentOp$$ = [CoffeeWordAssignmentOp$0, CoffeeWordAssignmentOp$1];
@@ -8440,7 +8468,7 @@ ${input.slice(result.pos)}
8440
8468
  function IdentifierBinaryOp(ctx, state) {
8441
8469
  return $EVENT(ctx, state, "IdentifierBinaryOp", IdentifierBinaryOp$0);
8442
8470
  }
8443
- var BinaryOp$0 = $T($S($EXPECT($R16, "BinaryOp /(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>+-])/"), _BinaryOp), function(value) {
8471
+ var BinaryOp$0 = $T($S($EXPECT($R15, "BinaryOp /(?=\\p{ID_Start}|[_$^\xAB\xBB\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2016\u2047&|*\\/!?%<>+-])/"), _BinaryOp), function(value) {
8444
8472
  var op = value[1];
8445
8473
  return op;
8446
8474
  });
@@ -8475,27 +8503,27 @@ ${input.slice(result.pos)}
8475
8503
  function _BinaryOp(ctx, state) {
8476
8504
  return $EVENT_C(ctx, state, "_BinaryOp", _BinaryOp$$);
8477
8505
  }
8478
- var BinaryOpSymbol$0 = $EXPECT($L54, 'BinaryOpSymbol "**"');
8479
- var BinaryOpSymbol$1 = $EXPECT($L55, 'BinaryOpSymbol "*"');
8480
- var BinaryOpSymbol$2 = $EXPECT($L56, 'BinaryOpSymbol "/"');
8481
- var BinaryOpSymbol$3 = $TV($EXPECT($L57, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
8506
+ var BinaryOpSymbol$0 = $EXPECT($L55, 'BinaryOpSymbol "**"');
8507
+ var BinaryOpSymbol$1 = $EXPECT($L56, 'BinaryOpSymbol "*"');
8508
+ var BinaryOpSymbol$2 = $EXPECT($L57, 'BinaryOpSymbol "/"');
8509
+ var BinaryOpSymbol$3 = $TV($EXPECT($L58, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
8482
8510
  return {
8483
8511
  call: module.getRef("modulo"),
8484
8512
  special: true
8485
8513
  };
8486
8514
  });
8487
- var BinaryOpSymbol$4 = $EXPECT($L58, 'BinaryOpSymbol "%"');
8488
- var BinaryOpSymbol$5 = $EXPECT($L59, 'BinaryOpSymbol "+"');
8489
- var BinaryOpSymbol$6 = $EXPECT($L19, 'BinaryOpSymbol "-"');
8490
- var BinaryOpSymbol$7 = $EXPECT($L60, 'BinaryOpSymbol "<="');
8491
- var BinaryOpSymbol$8 = $T($EXPECT($L61, 'BinaryOpSymbol "\u2264"'), function(value) {
8515
+ var BinaryOpSymbol$4 = $EXPECT($L59, 'BinaryOpSymbol "%"');
8516
+ var BinaryOpSymbol$5 = $EXPECT($L60, 'BinaryOpSymbol "+"');
8517
+ var BinaryOpSymbol$6 = $EXPECT($L20, 'BinaryOpSymbol "-"');
8518
+ var BinaryOpSymbol$7 = $EXPECT($L61, 'BinaryOpSymbol "<="');
8519
+ var BinaryOpSymbol$8 = $T($EXPECT($L62, 'BinaryOpSymbol "\u2264"'), function(value) {
8492
8520
  return "<=";
8493
8521
  });
8494
- var BinaryOpSymbol$9 = $EXPECT($L62, 'BinaryOpSymbol ">="');
8495
- var BinaryOpSymbol$10 = $T($EXPECT($L63, 'BinaryOpSymbol "\u2265"'), function(value) {
8522
+ var BinaryOpSymbol$9 = $EXPECT($L63, 'BinaryOpSymbol ">="');
8523
+ var BinaryOpSymbol$10 = $T($EXPECT($L64, 'BinaryOpSymbol "\u2265"'), function(value) {
8496
8524
  return ">=";
8497
8525
  });
8498
- var BinaryOpSymbol$11 = $TV($EXPECT($L64, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
8526
+ var BinaryOpSymbol$11 = $TV($EXPECT($L65, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
8499
8527
  return {
8500
8528
  $loc,
8501
8529
  token: "instanceof",
@@ -8503,7 +8531,7 @@ ${input.slice(result.pos)}
8503
8531
  special: true
8504
8532
  };
8505
8533
  });
8506
- var BinaryOpSymbol$12 = $TV($EXPECT($L65, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
8534
+ var BinaryOpSymbol$12 = $TV($EXPECT($L66, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
8507
8535
  return {
8508
8536
  $loc,
8509
8537
  token: "instanceof",
@@ -8512,74 +8540,74 @@ ${input.slice(result.pos)}
8512
8540
  negated: true
8513
8541
  };
8514
8542
  });
8515
- var BinaryOpSymbol$13 = $EXPECT($L66, 'BinaryOpSymbol "<<"');
8516
- var BinaryOpSymbol$14 = $T($EXPECT($L67, 'BinaryOpSymbol "\xAB"'), function(value) {
8543
+ var BinaryOpSymbol$13 = $EXPECT($L67, 'BinaryOpSymbol "<<"');
8544
+ var BinaryOpSymbol$14 = $T($EXPECT($L68, 'BinaryOpSymbol "\xAB"'), function(value) {
8517
8545
  return "<<";
8518
8546
  });
8519
- var BinaryOpSymbol$15 = $EXPECT($L13, 'BinaryOpSymbol "<"');
8520
- var BinaryOpSymbol$16 = $EXPECT($L68, 'BinaryOpSymbol ">>>"');
8521
- var BinaryOpSymbol$17 = $T($EXPECT($L69, 'BinaryOpSymbol "\u22D9"'), function(value) {
8547
+ var BinaryOpSymbol$15 = $EXPECT($L14, 'BinaryOpSymbol "<"');
8548
+ var BinaryOpSymbol$16 = $EXPECT($L69, 'BinaryOpSymbol ">>>"');
8549
+ var BinaryOpSymbol$17 = $T($EXPECT($L70, 'BinaryOpSymbol "\u22D9"'), function(value) {
8522
8550
  return ">>>";
8523
8551
  });
8524
- var BinaryOpSymbol$18 = $EXPECT($L70, 'BinaryOpSymbol ">>"');
8525
- var BinaryOpSymbol$19 = $T($EXPECT($L71, 'BinaryOpSymbol "\xBB"'), function(value) {
8552
+ var BinaryOpSymbol$18 = $EXPECT($L71, 'BinaryOpSymbol ">>"');
8553
+ var BinaryOpSymbol$19 = $T($EXPECT($L72, 'BinaryOpSymbol "\xBB"'), function(value) {
8526
8554
  return ">>";
8527
8555
  });
8528
- var BinaryOpSymbol$20 = $EXPECT($L34, 'BinaryOpSymbol ">"');
8529
- var BinaryOpSymbol$21 = $EXPECT($L72, 'BinaryOpSymbol "!=="');
8530
- var BinaryOpSymbol$22 = $T($EXPECT($L73, 'BinaryOpSymbol "\u2262"'), function(value) {
8556
+ var BinaryOpSymbol$20 = $EXPECT($L35, 'BinaryOpSymbol ">"');
8557
+ var BinaryOpSymbol$21 = $EXPECT($L73, 'BinaryOpSymbol "!=="');
8558
+ var BinaryOpSymbol$22 = $T($EXPECT($L74, 'BinaryOpSymbol "\u2262"'), function(value) {
8531
8559
  return "!==";
8532
8560
  });
8533
- var BinaryOpSymbol$23 = $TV($C($EXPECT($L74, 'BinaryOpSymbol "!="'), $EXPECT($L75, 'BinaryOpSymbol "\u2260"')), function($skip, $loc, $0, $1) {
8561
+ var BinaryOpSymbol$23 = $TV($C($EXPECT($L75, 'BinaryOpSymbol "!="'), $EXPECT($L76, 'BinaryOpSymbol "\u2260"')), function($skip, $loc, $0, $1) {
8534
8562
  if (module.config.coffeeEq)
8535
8563
  return "!==";
8536
8564
  return "!=";
8537
8565
  });
8538
- var BinaryOpSymbol$24 = $TS($S($EXPECT($L76, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8566
+ var BinaryOpSymbol$24 = $TS($S($EXPECT($L77, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8539
8567
  if (module.config.coffeeIsnt)
8540
8568
  return "!==";
8541
8569
  return $skip;
8542
8570
  });
8543
- var BinaryOpSymbol$25 = $EXPECT($L77, 'BinaryOpSymbol "==="');
8544
- var BinaryOpSymbol$26 = $T($C($EXPECT($L78, 'BinaryOpSymbol "\u2263"'), $EXPECT($L79, 'BinaryOpSymbol "\u2A76"')), function(value) {
8571
+ var BinaryOpSymbol$25 = $EXPECT($L78, 'BinaryOpSymbol "==="');
8572
+ var BinaryOpSymbol$26 = $T($C($EXPECT($L79, 'BinaryOpSymbol "\u2263"'), $EXPECT($L80, 'BinaryOpSymbol "\u2A76"')), function(value) {
8545
8573
  return "===";
8546
8574
  });
8547
- var BinaryOpSymbol$27 = $TV($C($EXPECT($L80, 'BinaryOpSymbol "=="'), $EXPECT($L81, 'BinaryOpSymbol "\u2261"'), $EXPECT($L82, 'BinaryOpSymbol "\u2A75"')), function($skip, $loc, $0, $1) {
8575
+ var BinaryOpSymbol$27 = $TV($C($EXPECT($L81, 'BinaryOpSymbol "=="'), $EXPECT($L82, 'BinaryOpSymbol "\u2261"'), $EXPECT($L83, 'BinaryOpSymbol "\u2A75"')), function($skip, $loc, $0, $1) {
8548
8576
  if (module.config.coffeeEq)
8549
8577
  return "===";
8550
8578
  return "==";
8551
8579
  });
8552
- var BinaryOpSymbol$28 = $T($S($EXPECT($L83, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
8580
+ var BinaryOpSymbol$28 = $T($S($EXPECT($L84, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
8553
8581
  return "&&";
8554
8582
  });
8555
- var BinaryOpSymbol$29 = $EXPECT($L84, 'BinaryOpSymbol "&&"');
8556
- var BinaryOpSymbol$30 = $T($S($EXPECT($L85, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
8583
+ var BinaryOpSymbol$29 = $EXPECT($L85, 'BinaryOpSymbol "&&"');
8584
+ var BinaryOpSymbol$30 = $T($S($EXPECT($L86, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
8557
8585
  return "||";
8558
8586
  });
8559
- var BinaryOpSymbol$31 = $EXPECT($L86, 'BinaryOpSymbol "||"');
8560
- var BinaryOpSymbol$32 = $T($EXPECT($L87, 'BinaryOpSymbol "\u2016"'), function(value) {
8587
+ var BinaryOpSymbol$31 = $EXPECT($L87, 'BinaryOpSymbol "||"');
8588
+ var BinaryOpSymbol$32 = $T($EXPECT($L88, 'BinaryOpSymbol "\u2016"'), function(value) {
8561
8589
  return "||";
8562
8590
  });
8563
- var BinaryOpSymbol$33 = $TV($C($EXPECT($L88, 'BinaryOpSymbol "^^"'), $S($EXPECT($L89, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
8591
+ var BinaryOpSymbol$33 = $TV($C($EXPECT($L89, 'BinaryOpSymbol "^^"'), $S($EXPECT($L90, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
8564
8592
  return {
8565
8593
  call: module.getRef("xor"),
8566
8594
  special: true
8567
8595
  };
8568
8596
  });
8569
- var BinaryOpSymbol$34 = $TV($C($EXPECT($R17, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L90, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
8597
+ var BinaryOpSymbol$34 = $TV($C($EXPECT($R16, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L91, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
8570
8598
  return {
8571
8599
  call: module.getRef("xnor"),
8572
8600
  special: true
8573
8601
  };
8574
8602
  });
8575
- var BinaryOpSymbol$35 = $EXPECT($L91, 'BinaryOpSymbol "??"');
8576
- var BinaryOpSymbol$36 = $T($EXPECT($L92, 'BinaryOpSymbol "\u2047"'), function(value) {
8603
+ var BinaryOpSymbol$35 = $EXPECT($L92, 'BinaryOpSymbol "??"');
8604
+ var BinaryOpSymbol$36 = $T($EXPECT($L93, 'BinaryOpSymbol "\u2047"'), function(value) {
8577
8605
  return "??";
8578
8606
  });
8579
- var BinaryOpSymbol$37 = $T($S($EXPECT($L5, 'BinaryOpSymbol "?"'), CoffeeBinaryExistentialEnabled), function(value) {
8607
+ var BinaryOpSymbol$37 = $T($S($EXPECT($L6, 'BinaryOpSymbol "?"'), CoffeeBinaryExistentialEnabled), function(value) {
8580
8608
  return "??";
8581
8609
  });
8582
- var BinaryOpSymbol$38 = $TS($S($EXPECT($L93, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8610
+ var BinaryOpSymbol$38 = $TS($S($EXPECT($L94, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8583
8611
  return {
8584
8612
  $loc,
8585
8613
  token: $1,
@@ -8596,7 +8624,7 @@ ${input.slice(result.pos)}
8596
8624
  var op = $3;
8597
8625
  return { ...op, $loc };
8598
8626
  });
8599
- var BinaryOpSymbol$41 = $TV($C($S(Is, __, In), $EXPECT($L94, 'BinaryOpSymbol "\u2208"')), function($skip, $loc, $0, $1) {
8627
+ var BinaryOpSymbol$41 = $TV($C($S(Is, __, In), $EXPECT($L95, 'BinaryOpSymbol "\u2208"')), function($skip, $loc, $0, $1) {
8600
8628
  return {
8601
8629
  method: "includes",
8602
8630
  relational: true,
@@ -8604,14 +8632,14 @@ ${input.slice(result.pos)}
8604
8632
  special: true
8605
8633
  };
8606
8634
  });
8607
- var BinaryOpSymbol$42 = $TV($EXPECT($L95, 'BinaryOpSymbol "\u220B"'), function($skip, $loc, $0, $1) {
8635
+ var BinaryOpSymbol$42 = $TV($EXPECT($L96, 'BinaryOpSymbol "\u220B"'), function($skip, $loc, $0, $1) {
8608
8636
  return {
8609
8637
  method: "includes",
8610
8638
  relational: true,
8611
8639
  special: true
8612
8640
  };
8613
8641
  });
8614
- var BinaryOpSymbol$43 = $TV($EXPECT($L96, 'BinaryOpSymbol "\u220C"'), function($skip, $loc, $0, $1) {
8642
+ var BinaryOpSymbol$43 = $TV($EXPECT($L97, 'BinaryOpSymbol "\u220C"'), function($skip, $loc, $0, $1) {
8615
8643
  return {
8616
8644
  method: "includes",
8617
8645
  relational: true,
@@ -8619,7 +8647,7 @@ ${input.slice(result.pos)}
8619
8647
  negated: true
8620
8648
  };
8621
8649
  });
8622
- var BinaryOpSymbol$44 = $TV($C($S(Is, __, Not, __, In), $EXPECT($L97, 'BinaryOpSymbol "\u2209"')), function($skip, $loc, $0, $1) {
8650
+ var BinaryOpSymbol$44 = $TV($C($S(Is, __, Not, __, In), $EXPECT($L98, 'BinaryOpSymbol "\u2209"')), function($skip, $loc, $0, $1) {
8623
8651
  return {
8624
8652
  method: "includes",
8625
8653
  relational: true,
@@ -8652,9 +8680,9 @@ ${input.slice(result.pos)}
8652
8680
  return "===";
8653
8681
  });
8654
8682
  var BinaryOpSymbol$47 = In;
8655
- var BinaryOpSymbol$48 = $EXPECT($L98, 'BinaryOpSymbol "&"');
8656
- var BinaryOpSymbol$49 = $EXPECT($L18, 'BinaryOpSymbol "^"');
8657
- var BinaryOpSymbol$50 = $EXPECT($L99, 'BinaryOpSymbol "|"');
8683
+ var BinaryOpSymbol$48 = $EXPECT($L99, 'BinaryOpSymbol "&"');
8684
+ var BinaryOpSymbol$49 = $EXPECT($L19, 'BinaryOpSymbol "^"');
8685
+ var BinaryOpSymbol$50 = $EXPECT($L100, 'BinaryOpSymbol "|"');
8658
8686
  var BinaryOpSymbol$$ = [BinaryOpSymbol$0, BinaryOpSymbol$1, BinaryOpSymbol$2, BinaryOpSymbol$3, BinaryOpSymbol$4, BinaryOpSymbol$5, BinaryOpSymbol$6, BinaryOpSymbol$7, BinaryOpSymbol$8, BinaryOpSymbol$9, BinaryOpSymbol$10, BinaryOpSymbol$11, BinaryOpSymbol$12, BinaryOpSymbol$13, BinaryOpSymbol$14, BinaryOpSymbol$15, BinaryOpSymbol$16, BinaryOpSymbol$17, BinaryOpSymbol$18, BinaryOpSymbol$19, BinaryOpSymbol$20, BinaryOpSymbol$21, BinaryOpSymbol$22, BinaryOpSymbol$23, BinaryOpSymbol$24, BinaryOpSymbol$25, BinaryOpSymbol$26, BinaryOpSymbol$27, BinaryOpSymbol$28, BinaryOpSymbol$29, BinaryOpSymbol$30, BinaryOpSymbol$31, BinaryOpSymbol$32, BinaryOpSymbol$33, BinaryOpSymbol$34, BinaryOpSymbol$35, BinaryOpSymbol$36, BinaryOpSymbol$37, BinaryOpSymbol$38, BinaryOpSymbol$39, BinaryOpSymbol$40, BinaryOpSymbol$41, BinaryOpSymbol$42, BinaryOpSymbol$43, BinaryOpSymbol$44, BinaryOpSymbol$45, BinaryOpSymbol$46, BinaryOpSymbol$47, BinaryOpSymbol$48, BinaryOpSymbol$49, BinaryOpSymbol$50];
8659
8687
  function BinaryOpSymbol(ctx, state) {
8660
8688
  return $EVENT_C(ctx, state, "BinaryOpSymbol", BinaryOpSymbol$$);
@@ -8692,7 +8720,7 @@ ${input.slice(result.pos)}
8692
8720
  function CoffeeOfOp(ctx, state) {
8693
8721
  return $EVENT_C(ctx, state, "CoffeeOfOp", CoffeeOfOp$$);
8694
8722
  }
8695
- var NotOp$0 = $TS($S($EXPECT($L93, 'NotOp "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8723
+ var NotOp$0 = $TS($S($EXPECT($L94, 'NotOp "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8696
8724
  return {
8697
8725
  $loc,
8698
8726
  token: "instanceof",
@@ -8713,25 +8741,25 @@ ${input.slice(result.pos)}
8713
8741
  function NotOp(ctx, state) {
8714
8742
  return $EVENT_C(ctx, state, "NotOp", NotOp$$);
8715
8743
  }
8716
- var Xor$0 = $EXPECT($L88, 'Xor "^^"');
8717
- var Xor$1 = $S($EXPECT($L89, 'Xor "xor"'), NonIdContinue);
8744
+ var Xor$0 = $EXPECT($L89, 'Xor "^^"');
8745
+ var Xor$1 = $S($EXPECT($L90, 'Xor "xor"'), NonIdContinue);
8718
8746
  var Xor$$ = [Xor$0, Xor$1];
8719
8747
  function Xor(ctx, state) {
8720
8748
  return $EVENT_C(ctx, state, "Xor", Xor$$);
8721
8749
  }
8722
- var Xnor$0 = $R$0($EXPECT($R17, "Xnor /!\\^\\^?/"));
8723
- var Xnor$1 = $EXPECT($L90, 'Xnor "xnor"');
8750
+ var Xnor$0 = $R$0($EXPECT($R16, "Xnor /!\\^\\^?/"));
8751
+ var Xnor$1 = $EXPECT($L91, 'Xnor "xnor"');
8724
8752
  var Xnor$$ = [Xnor$0, Xnor$1];
8725
8753
  function Xnor(ctx, state) {
8726
8754
  return $EVENT_C(ctx, state, "Xnor", Xnor$$);
8727
8755
  }
8728
- var UnaryOp$0 = $TR($EXPECT($R18, "UnaryOp /(?!\\+\\+|--)[!~+-](?!\\s|[!~+-]*(&|\\.[^0-9]))/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
8756
+ var UnaryOp$0 = $TR($EXPECT($R17, "UnaryOp /(?!\\+\\+|--)[!~+-](?!\\s)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
8729
8757
  return { $loc, token: $0 };
8730
8758
  });
8731
8759
  var UnaryOp$1 = AwaitOp;
8732
- var UnaryOp$2 = $S($C(Delete, Void, Typeof), $N($EXPECT($L11, 'UnaryOp ":"')), $E(_));
8733
- var UnaryOp$3 = $T($S(Not, $E($EXPECT($L12, 'UnaryOp " "')), $E(_)), function(value) {
8734
- return [value[0], value[2]];
8760
+ var UnaryOp$2 = $S($C(Delete, Void, Typeof), $N($R$0($EXPECT($R18, "UnaryOp /[:.]/"))), $E(_));
8761
+ var UnaryOp$3 = $T($S(Not, $N($EXPECT($R18, "UnaryOp /[:.]/")), $E($EXPECT($L13, 'UnaryOp " "')), $E(_)), function(value) {
8762
+ return [value[0], value[3]];
8735
8763
  });
8736
8764
  var UnaryOp$$ = [UnaryOp$0, UnaryOp$1, UnaryOp$2, UnaryOp$3];
8737
8765
  function UnaryOp(ctx, state) {
@@ -8868,7 +8896,7 @@ ${input.slice(result.pos)}
8868
8896
  function NoCommaStatement(ctx, state) {
8869
8897
  return $EVENT_C(ctx, state, "NoCommaStatement", NoCommaStatement$$);
8870
8898
  }
8871
- var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L100, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
8899
+ var EmptyStatement$0 = $TS($S($E(_), $Y($EXPECT($L101, 'EmptyStatement ";"'))), function($skip, $loc, $0, $1, $2) {
8872
8900
  return { type: "EmptyStatement", children: $1 || [] };
8873
8901
  });
8874
8902
  function EmptyStatement(ctx, state) {
@@ -8899,7 +8927,7 @@ ${input.slice(result.pos)}
8899
8927
  var w = $3;
8900
8928
  return [id, colon, w];
8901
8929
  });
8902
- var Label$1 = $S($EXPECT($L101, 'Label "$:"'), Whitespace);
8930
+ var Label$1 = $S($EXPECT($L102, 'Label "$:"'), Whitespace);
8903
8931
  var Label$$ = [Label$0, Label$1];
8904
8932
  function Label(ctx, state) {
8905
8933
  return $EVENT_C(ctx, state, "Label", Label$$);
@@ -9651,7 +9679,7 @@ ${input.slice(result.pos)}
9651
9679
  function IgnoreColon(ctx, state) {
9652
9680
  return $EVENT(ctx, state, "IgnoreColon", IgnoreColon$0);
9653
9681
  }
9654
- var TryStatement$0 = $TS($S(Try, $N($EXPECT($L11, 'TryStatement ":"')), NoPostfixBracedOrEmptyBlock, $E(CatchClause), $E(FinallyClause)), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
9682
+ var TryStatement$0 = $TS($S(Try, $N($EXPECT($L12, 'TryStatement ":"')), NoPostfixBracedOrEmptyBlock, $E(CatchClause), $E(FinallyClause)), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
9655
9683
  var t = $1;
9656
9684
  var b = $3;
9657
9685
  var c = $4;
@@ -9987,7 +10015,7 @@ ${input.slice(result.pos)}
9987
10015
  };
9988
10016
  });
9989
10017
  var KeywordStatement$2 = DebuggerStatement;
9990
- var KeywordStatement$3 = $T($S(Return, $N($C($EXPECT($L11, 'KeywordStatement ":"'), $EXPECT($L6, 'KeywordStatement "."'), AfterReturnShorthand)), $E(MaybeNestedExpression)), function(value) {
10018
+ var KeywordStatement$3 = $T($S(Return, $N($C($EXPECT($L12, 'KeywordStatement ":"'), $EXPECT($L7, 'KeywordStatement "."'), AfterReturnShorthand)), $E(MaybeNestedExpression)), function(value) {
9991
10019
  var expression = value[2];
9992
10020
  return { "type": "ReturnStatement", "expression": expression, "children": value };
9993
10021
  });
@@ -10008,19 +10036,19 @@ ${input.slice(result.pos)}
10008
10036
  function ThrowStatement(ctx, state) {
10009
10037
  return $EVENT(ctx, state, "ThrowStatement", ThrowStatement$0);
10010
10038
  }
10011
- var Break$0 = $TS($S($EXPECT($L102, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10039
+ var Break$0 = $TS($S($EXPECT($L103, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10012
10040
  return { $loc, token: $1 };
10013
10041
  });
10014
10042
  function Break(ctx, state) {
10015
10043
  return $EVENT(ctx, state, "Break", Break$0);
10016
10044
  }
10017
- var Continue$0 = $TS($S($EXPECT($L103, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10045
+ var Continue$0 = $TS($S($EXPECT($L104, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10018
10046
  return { $loc, token: $1 };
10019
10047
  });
10020
10048
  function Continue(ctx, state) {
10021
10049
  return $EVENT(ctx, state, "Continue", Continue$0);
10022
10050
  }
10023
- var Debugger$0 = $TS($S($EXPECT($L104, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10051
+ var Debugger$0 = $TS($S($EXPECT($L105, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10024
10052
  return { $loc, token: $1 };
10025
10053
  });
10026
10054
  function Debugger(ctx, state) {
@@ -10141,7 +10169,7 @@ ${input.slice(result.pos)}
10141
10169
  function FromClause(ctx, state) {
10142
10170
  return $EVENT(ctx, state, "FromClause", FromClause$0);
10143
10171
  }
10144
- var ImportAssertion$0 = $S($E(_), $C($EXPECT($L105, 'ImportAssertion "with"'), $EXPECT($L106, 'ImportAssertion "assert"')), NonIdContinue, $E(_), ObjectLiteral);
10172
+ var ImportAssertion$0 = $S($E(_), $C($EXPECT($L106, 'ImportAssertion "with"'), $EXPECT($L107, 'ImportAssertion "assert"')), NonIdContinue, $E(_), ObjectLiteral);
10145
10173
  function ImportAssertion(ctx, state) {
10146
10174
  return $EVENT(ctx, state, "ImportAssertion", ImportAssertion$0);
10147
10175
  }
@@ -10189,7 +10217,7 @@ ${input.slice(result.pos)}
10189
10217
  return $EVENT_C(ctx, state, "ImportSpecifier", ImportSpecifier$$);
10190
10218
  }
10191
10219
  var ImportAsToken$0 = $S(__, As);
10192
- var ImportAsToken$1 = $TS($S(Loc, __, Colon, $E($EXPECT($L12, 'ImportAsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
10220
+ var ImportAsToken$1 = $TS($S(Loc, __, Colon, $E($EXPECT($L13, 'ImportAsToken " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
10193
10221
  var l = $1;
10194
10222
  var ws = $2;
10195
10223
  var c = $3;
@@ -10361,13 +10389,13 @@ ${input.slice(result.pos)}
10361
10389
  function LexicalDeclaration(ctx, state) {
10362
10390
  return $EVENT_C(ctx, state, "LexicalDeclaration", LexicalDeclaration$$);
10363
10391
  }
10364
- var ConstAssignment$0 = $TV($C($EXPECT($L107, 'ConstAssignment ":="'), $EXPECT($L108, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
10392
+ var ConstAssignment$0 = $TV($C($EXPECT($L108, 'ConstAssignment ":="'), $EXPECT($L109, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
10365
10393
  return { $loc, token: "=" };
10366
10394
  });
10367
10395
  function ConstAssignment(ctx, state) {
10368
10396
  return $EVENT(ctx, state, "ConstAssignment", ConstAssignment$0);
10369
10397
  }
10370
- var LetAssignment$0 = $TV($EXPECT($L109, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
10398
+ var LetAssignment$0 = $TV($EXPECT($L110, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
10371
10399
  return { $loc, token: "=" };
10372
10400
  });
10373
10401
  function LetAssignment(ctx, state) {
@@ -10564,7 +10592,7 @@ ${input.slice(result.pos)}
10564
10592
  return $EVENT(ctx, state, "CoffeeDoubleQuotedStringCharacters", CoffeeDoubleQuotedStringCharacters$0);
10565
10593
  }
10566
10594
  var RegularExpressionLiteral$0 = HeregexLiteral;
10567
- var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L56, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L56, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
10595
+ var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L57, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L57, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
10568
10596
  return { type: "RegularExpressionLiteral", $loc, token: $1 };
10569
10597
  });
10570
10598
  var RegularExpressionLiteral$$ = [RegularExpressionLiteral$0, RegularExpressionLiteral$1];
@@ -10773,7 +10801,7 @@ ${input.slice(result.pos)}
10773
10801
  function MultiLineComment(ctx, state) {
10774
10802
  return $EVENT_C(ctx, state, "MultiLineComment", MultiLineComment$$);
10775
10803
  }
10776
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L110, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L111, 'JSMultiLineComment "*/"')), $EXPECT($R57, "JSMultiLineComment /./"))), $EXPECT($L111, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
10804
+ var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L111, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L112, 'JSMultiLineComment "*/"')), $EXPECT($R57, "JSMultiLineComment /./"))), $EXPECT($L112, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
10777
10805
  return { type: "Comment", $loc, token: $1 };
10778
10806
  });
10779
10807
  function JSMultiLineComment(ctx, state) {
@@ -10819,7 +10847,7 @@ ${input.slice(result.pos)}
10819
10847
  var NonNewlineWhitespace$0 = $TR($EXPECT($R63, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10820
10848
  return { $loc, token: $0 };
10821
10849
  });
10822
- var NonNewlineWhitespace$1 = $T($S($EXPECT($L112, 'NonNewlineWhitespace "\\\\\\\\"'), CoffeeLineContinuationEnabled, EOL), function(value) {
10850
+ var NonNewlineWhitespace$1 = $T($S($EXPECT($L113, 'NonNewlineWhitespace "\\\\\\\\"'), CoffeeLineContinuationEnabled, EOL), function(value) {
10823
10851
  return " ";
10824
10852
  });
10825
10853
  var NonNewlineWhitespace$$ = [NonNewlineWhitespace$0, NonNewlineWhitespace$1];
@@ -10865,7 +10893,7 @@ ${input.slice(result.pos)}
10865
10893
  }
10866
10894
  var StatementDelimiter$0 = $Y(EOS);
10867
10895
  var StatementDelimiter$1 = SemicolonDelimiter;
10868
- var StatementDelimiter$2 = $Y($S($E(_), $C($EXPECT($L26, 'StatementDelimiter "}"'), $EXPECT($L113, 'StatementDelimiter ")"'), $EXPECT($L35, 'StatementDelimiter "]"'))));
10896
+ var StatementDelimiter$2 = $Y($S($E(_), $C($EXPECT($L27, 'StatementDelimiter "}"'), $EXPECT($L114, 'StatementDelimiter ")"'), $EXPECT($L36, 'StatementDelimiter "]"'))));
10869
10897
  var StatementDelimiter$$ = [StatementDelimiter$0, StatementDelimiter$1, StatementDelimiter$2];
10870
10898
  function StatementDelimiter(ctx, state) {
10871
10899
  return $EVENT_C(ctx, state, "StatementDelimiter", StatementDelimiter$$);
@@ -10889,157 +10917,157 @@ ${input.slice(result.pos)}
10889
10917
  function Loc(ctx, state) {
10890
10918
  return $EVENT(ctx, state, "Loc", Loc$0);
10891
10919
  }
10892
- var Abstract$0 = $TV($TEXT($S($EXPECT($L114, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L12, 'Abstract " "')))), function($skip, $loc, $0, $1) {
10920
+ var Abstract$0 = $TV($TEXT($S($EXPECT($L115, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L13, 'Abstract " "')))), function($skip, $loc, $0, $1) {
10893
10921
  return { $loc, token: $1, ts: true };
10894
10922
  });
10895
10923
  function Abstract(ctx, state) {
10896
10924
  return $EVENT(ctx, state, "Abstract", Abstract$0);
10897
10925
  }
10898
- var Ampersand$0 = $TV($EXPECT($L98, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
10926
+ var Ampersand$0 = $TV($EXPECT($L99, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
10899
10927
  return { $loc, token: $1 };
10900
10928
  });
10901
10929
  function Ampersand(ctx, state) {
10902
10930
  return $EVENT(ctx, state, "Ampersand", Ampersand$0);
10903
10931
  }
10904
- var As$0 = $TS($S($EXPECT($L115, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10932
+ var As$0 = $TS($S($EXPECT($L116, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10905
10933
  return { $loc, token: $1 };
10906
10934
  });
10907
10935
  function As(ctx, state) {
10908
10936
  return $EVENT(ctx, state, "As", As$0);
10909
10937
  }
10910
- var At$0 = $TV($EXPECT($L116, 'At "@"'), function($skip, $loc, $0, $1) {
10938
+ var At$0 = $TV($EXPECT($L117, 'At "@"'), function($skip, $loc, $0, $1) {
10911
10939
  return { $loc, token: $1 };
10912
10940
  });
10913
10941
  function At(ctx, state) {
10914
10942
  return $EVENT(ctx, state, "At", At$0);
10915
10943
  }
10916
- var AtAt$0 = $TV($EXPECT($L117, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
10944
+ var AtAt$0 = $TV($EXPECT($L118, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
10917
10945
  return { $loc, token: "@" };
10918
10946
  });
10919
10947
  function AtAt(ctx, state) {
10920
10948
  return $EVENT(ctx, state, "AtAt", AtAt$0);
10921
10949
  }
10922
- var Async$0 = $TS($S($EXPECT($L118, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10950
+ var Async$0 = $TS($S($EXPECT($L119, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10923
10951
  return { $loc, token: $1, type: "Async" };
10924
10952
  });
10925
10953
  function Async(ctx, state) {
10926
10954
  return $EVENT(ctx, state, "Async", Async$0);
10927
10955
  }
10928
- var Await$0 = $TS($S($EXPECT($L119, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10956
+ var Await$0 = $TS($S($EXPECT($L120, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10929
10957
  return { $loc, token: $1, type: "Await" };
10930
10958
  });
10931
10959
  function Await(ctx, state) {
10932
10960
  return $EVENT(ctx, state, "Await", Await$0);
10933
10961
  }
10934
- var Backtick$0 = $TV($EXPECT($L120, 'Backtick "`"'), function($skip, $loc, $0, $1) {
10962
+ var Backtick$0 = $TV($EXPECT($L121, 'Backtick "`"'), function($skip, $loc, $0, $1) {
10935
10963
  return { $loc, token: $1 };
10936
10964
  });
10937
10965
  function Backtick(ctx, state) {
10938
10966
  return $EVENT(ctx, state, "Backtick", Backtick$0);
10939
10967
  }
10940
- var By$0 = $TS($S($EXPECT($L121, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10968
+ var By$0 = $TS($S($EXPECT($L122, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10941
10969
  return { $loc, token: $1 };
10942
10970
  });
10943
10971
  function By(ctx, state) {
10944
10972
  return $EVENT(ctx, state, "By", By$0);
10945
10973
  }
10946
- var Caret$0 = $TV($EXPECT($L18, 'Caret "^"'), function($skip, $loc, $0, $1) {
10974
+ var Caret$0 = $TV($EXPECT($L19, 'Caret "^"'), function($skip, $loc, $0, $1) {
10947
10975
  return { $loc, token: $1 };
10948
10976
  });
10949
10977
  function Caret(ctx, state) {
10950
10978
  return $EVENT(ctx, state, "Caret", Caret$0);
10951
10979
  }
10952
- var Case$0 = $TS($S($EXPECT($L122, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10980
+ var Case$0 = $TS($S($EXPECT($L123, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10953
10981
  return { $loc, token: $1 };
10954
10982
  });
10955
10983
  function Case(ctx, state) {
10956
10984
  return $EVENT(ctx, state, "Case", Case$0);
10957
10985
  }
10958
- var Catch$0 = $TS($S($EXPECT($L123, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10986
+ var Catch$0 = $TS($S($EXPECT($L124, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10959
10987
  return { $loc, token: $1 };
10960
10988
  });
10961
10989
  function Catch(ctx, state) {
10962
10990
  return $EVENT(ctx, state, "Catch", Catch$0);
10963
10991
  }
10964
- var Class$0 = $TS($S($EXPECT($L124, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10992
+ var Class$0 = $TS($S($EXPECT($L125, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10965
10993
  return { $loc, token: $1 };
10966
10994
  });
10967
10995
  function Class(ctx, state) {
10968
10996
  return $EVENT(ctx, state, "Class", Class$0);
10969
10997
  }
10970
- var CloseAngleBracket$0 = $TV($EXPECT($L34, 'CloseAngleBracket ">"'), function($skip, $loc, $0, $1) {
10998
+ var CloseAngleBracket$0 = $TV($EXPECT($L35, 'CloseAngleBracket ">"'), function($skip, $loc, $0, $1) {
10971
10999
  return { $loc, token: $1 };
10972
11000
  });
10973
11001
  function CloseAngleBracket(ctx, state) {
10974
11002
  return $EVENT(ctx, state, "CloseAngleBracket", CloseAngleBracket$0);
10975
11003
  }
10976
- var CloseBrace$0 = $TV($EXPECT($L26, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
11004
+ var CloseBrace$0 = $TV($EXPECT($L27, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
10977
11005
  return { $loc, token: $1 };
10978
11006
  });
10979
11007
  function CloseBrace(ctx, state) {
10980
11008
  return $EVENT(ctx, state, "CloseBrace", CloseBrace$0);
10981
11009
  }
10982
- var CloseBracket$0 = $TV($EXPECT($L35, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
11010
+ var CloseBracket$0 = $TV($EXPECT($L36, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
10983
11011
  return { $loc, token: $1 };
10984
11012
  });
10985
11013
  function CloseBracket(ctx, state) {
10986
11014
  return $EVENT(ctx, state, "CloseBracket", CloseBracket$0);
10987
11015
  }
10988
- var CloseParen$0 = $TV($EXPECT($L113, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
11016
+ var CloseParen$0 = $TV($EXPECT($L114, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
10989
11017
  return { $loc, token: $1 };
10990
11018
  });
10991
11019
  function CloseParen(ctx, state) {
10992
11020
  return $EVENT(ctx, state, "CloseParen", CloseParen$0);
10993
11021
  }
10994
- var CoffeeSubstitutionStart$0 = $TV($EXPECT($L125, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
11022
+ var CoffeeSubstitutionStart$0 = $TV($EXPECT($L126, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
10995
11023
  return { $loc, token: "${" };
10996
11024
  });
10997
11025
  function CoffeeSubstitutionStart(ctx, state) {
10998
11026
  return $EVENT(ctx, state, "CoffeeSubstitutionStart", CoffeeSubstitutionStart$0);
10999
11027
  }
11000
- var Colon$0 = $TS($S($EXPECT($L11, 'Colon ":"'), $N($EXPECT($L3, 'Colon "="'))), function($skip, $loc, $0, $1, $2) {
11028
+ var Colon$0 = $TS($S($EXPECT($L12, 'Colon ":"'), $N($EXPECT($L3, 'Colon "="'))), function($skip, $loc, $0, $1, $2) {
11001
11029
  return { $loc, token: $1 };
11002
11030
  });
11003
11031
  function Colon(ctx, state) {
11004
11032
  return $EVENT(ctx, state, "Colon", Colon$0);
11005
11033
  }
11006
- var Comma$0 = $TV($EXPECT($L22, 'Comma ","'), function($skip, $loc, $0, $1) {
11034
+ var Comma$0 = $TV($EXPECT($L23, 'Comma ","'), function($skip, $loc, $0, $1) {
11007
11035
  return { $loc, token: $1 };
11008
11036
  });
11009
11037
  function Comma(ctx, state) {
11010
11038
  return $EVENT(ctx, state, "Comma", Comma$0);
11011
11039
  }
11012
- var ConstructorShorthand$0 = $TV($EXPECT($L116, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
11040
+ var ConstructorShorthand$0 = $TV($EXPECT($L117, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
11013
11041
  return { $loc, token: "constructor" };
11014
11042
  });
11015
11043
  function ConstructorShorthand(ctx, state) {
11016
11044
  return $EVENT(ctx, state, "ConstructorShorthand", ConstructorShorthand$0);
11017
11045
  }
11018
- var Declare$0 = $TS($S($EXPECT($L126, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11046
+ var Declare$0 = $TS($S($EXPECT($L127, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11019
11047
  return { $loc, token: $1 };
11020
11048
  });
11021
11049
  function Declare(ctx, state) {
11022
11050
  return $EVENT(ctx, state, "Declare", Declare$0);
11023
11051
  }
11024
- var Default$0 = $TS($S($EXPECT($L127, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11052
+ var Default$0 = $TS($S($EXPECT($L128, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11025
11053
  return { $loc, token: $1 };
11026
11054
  });
11027
11055
  function Default(ctx, state) {
11028
11056
  return $EVENT(ctx, state, "Default", Default$0);
11029
11057
  }
11030
- var Delete$0 = $TS($S($EXPECT($L128, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11058
+ var Delete$0 = $TS($S($EXPECT($L129, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11031
11059
  return { $loc, token: $1 };
11032
11060
  });
11033
11061
  function Delete(ctx, state) {
11034
11062
  return $EVENT(ctx, state, "Delete", Delete$0);
11035
11063
  }
11036
- var Do$0 = $TS($S($EXPECT($L129, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11064
+ var Do$0 = $TS($S($EXPECT($L130, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11037
11065
  return { $loc, token: $1 };
11038
11066
  });
11039
11067
  function Do(ctx, state) {
11040
11068
  return $EVENT(ctx, state, "Do", Do$0);
11041
11069
  }
11042
- var Dot$0 = $TV($EXPECT($L6, 'Dot "."'), function($skip, $loc, $0, $1) {
11070
+ var Dot$0 = $TV($EXPECT($L7, 'Dot "."'), function($skip, $loc, $0, $1) {
11043
11071
  return { $loc, token: $1 };
11044
11072
  });
11045
11073
  var Dot$1 = $TS($S($EXPECT($R66, "Dot /['\u2019]s/"), _), function($skip, $loc, $0, $1, $2) {
@@ -11053,45 +11081,45 @@ ${input.slice(result.pos)}
11053
11081
  function Dot(ctx, state) {
11054
11082
  return $EVENT_C(ctx, state, "Dot", Dot$$);
11055
11083
  }
11056
- var DotDot$0 = $TS($S($EXPECT($L130, 'DotDot ".."'), $N($EXPECT($L6, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
11084
+ var DotDot$0 = $TS($S($EXPECT($L131, 'DotDot ".."'), $N($EXPECT($L7, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
11057
11085
  return { $loc, token: $1 };
11058
11086
  });
11059
- var DotDot$1 = $TV($EXPECT($L131, 'DotDot "\u2025"'), function($skip, $loc, $0, $1) {
11087
+ var DotDot$1 = $TV($EXPECT($L132, 'DotDot "\u2025"'), function($skip, $loc, $0, $1) {
11060
11088
  return { $loc, token: ".." };
11061
11089
  });
11062
11090
  var DotDot$$ = [DotDot$0, DotDot$1];
11063
11091
  function DotDot(ctx, state) {
11064
11092
  return $EVENT_C(ctx, state, "DotDot", DotDot$$);
11065
11093
  }
11066
- var DotDotDot$0 = $TV($EXPECT($L132, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
11094
+ var DotDotDot$0 = $TV($EXPECT($L133, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
11067
11095
  return { $loc, token: $1 };
11068
11096
  });
11069
- var DotDotDot$1 = $TV($EXPECT($L133, 'DotDotDot "\u2026"'), function($skip, $loc, $0, $1) {
11097
+ var DotDotDot$1 = $TV($EXPECT($L134, 'DotDotDot "\u2026"'), function($skip, $loc, $0, $1) {
11070
11098
  return { $loc, token: "..." };
11071
11099
  });
11072
11100
  var DotDotDot$$ = [DotDotDot$0, DotDotDot$1];
11073
11101
  function DotDotDot(ctx, state) {
11074
11102
  return $EVENT_C(ctx, state, "DotDotDot", DotDotDot$$);
11075
11103
  }
11076
- var DoubleColon$0 = $TV($EXPECT($L134, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
11104
+ var DoubleColon$0 = $TV($EXPECT($L135, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
11077
11105
  return { $loc, token: $1 };
11078
11106
  });
11079
11107
  function DoubleColon(ctx, state) {
11080
11108
  return $EVENT(ctx, state, "DoubleColon", DoubleColon$0);
11081
11109
  }
11082
- var DoubleQuote$0 = $TV($EXPECT($L135, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
11110
+ var DoubleQuote$0 = $TV($EXPECT($L136, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
11083
11111
  return { $loc, token: $1 };
11084
11112
  });
11085
11113
  function DoubleQuote(ctx, state) {
11086
11114
  return $EVENT(ctx, state, "DoubleQuote", DoubleQuote$0);
11087
11115
  }
11088
- var Each$0 = $TS($S($EXPECT($L136, 'Each "each"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11116
+ var Each$0 = $TS($S($EXPECT($L137, 'Each "each"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11089
11117
  return { $loc, token: $1 };
11090
11118
  });
11091
11119
  function Each(ctx, state) {
11092
11120
  return $EVENT(ctx, state, "Each", Each$0);
11093
11121
  }
11094
- var Else$0 = $TS($S($EXPECT($L137, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11122
+ var Else$0 = $TS($S($EXPECT($L138, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11095
11123
  return { $loc, token: $1 };
11096
11124
  });
11097
11125
  function Else(ctx, state) {
@@ -11103,85 +11131,85 @@ ${input.slice(result.pos)}
11103
11131
  function Equals(ctx, state) {
11104
11132
  return $EVENT(ctx, state, "Equals", Equals$0);
11105
11133
  }
11106
- var Export$0 = $TS($S($EXPECT($L138, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11134
+ var Export$0 = $TS($S($EXPECT($L139, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11107
11135
  return { $loc, token: $1 };
11108
11136
  });
11109
11137
  function Export(ctx, state) {
11110
11138
  return $EVENT(ctx, state, "Export", Export$0);
11111
11139
  }
11112
- var Extends$0 = $TS($S($EXPECT($L139, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11140
+ var Extends$0 = $TS($S($EXPECT($L140, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11113
11141
  return { $loc, token: $1 };
11114
11142
  });
11115
11143
  function Extends(ctx, state) {
11116
11144
  return $EVENT(ctx, state, "Extends", Extends$0);
11117
11145
  }
11118
- var Finally$0 = $TS($S($EXPECT($L140, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11146
+ var Finally$0 = $TS($S($EXPECT($L141, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11119
11147
  return { $loc, token: $1 };
11120
11148
  });
11121
11149
  function Finally(ctx, state) {
11122
11150
  return $EVENT(ctx, state, "Finally", Finally$0);
11123
11151
  }
11124
- var For$0 = $TS($S($EXPECT($L141, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11152
+ var For$0 = $TS($S($EXPECT($L142, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11125
11153
  return { $loc, token: $1 };
11126
11154
  });
11127
11155
  function For(ctx, state) {
11128
11156
  return $EVENT(ctx, state, "For", For$0);
11129
11157
  }
11130
- var From$0 = $TS($S($EXPECT($L142, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11158
+ var From$0 = $TS($S($EXPECT($L143, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11131
11159
  return { $loc, token: $1 };
11132
11160
  });
11133
11161
  function From(ctx, state) {
11134
11162
  return $EVENT(ctx, state, "From", From$0);
11135
11163
  }
11136
- var Function$0 = $TS($S($EXPECT($L143, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11164
+ var Function$0 = $TS($S($EXPECT($L144, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11137
11165
  return { $loc, token: $1 };
11138
11166
  });
11139
11167
  function Function(ctx, state) {
11140
11168
  return $EVENT(ctx, state, "Function", Function$0);
11141
11169
  }
11142
- var GetOrSet$0 = $TS($S($C($EXPECT($L144, 'GetOrSet "get"'), $EXPECT($L145, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11170
+ var GetOrSet$0 = $TS($S($C($EXPECT($L145, 'GetOrSet "get"'), $EXPECT($L146, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11143
11171
  return { $loc, token: $1, type: "GetOrSet" };
11144
11172
  });
11145
11173
  function GetOrSet(ctx, state) {
11146
11174
  return $EVENT(ctx, state, "GetOrSet", GetOrSet$0);
11147
11175
  }
11148
- var Hash$0 = $TV($EXPECT($L146, 'Hash "#"'), function($skip, $loc, $0, $1) {
11176
+ var Hash$0 = $TV($EXPECT($L147, 'Hash "#"'), function($skip, $loc, $0, $1) {
11149
11177
  return { $loc, token: $1 };
11150
11178
  });
11151
11179
  function Hash(ctx, state) {
11152
11180
  return $EVENT(ctx, state, "Hash", Hash$0);
11153
11181
  }
11154
- var If$0 = $TV($TEXT($S($EXPECT($L147, 'If "if"'), NonIdContinue, $E($EXPECT($L12, 'If " "')))), function($skip, $loc, $0, $1) {
11182
+ var If$0 = $TV($TEXT($S($EXPECT($L148, 'If "if"'), NonIdContinue, $E($EXPECT($L13, 'If " "')))), function($skip, $loc, $0, $1) {
11155
11183
  return { $loc, token: $1 };
11156
11184
  });
11157
11185
  function If(ctx, state) {
11158
11186
  return $EVENT(ctx, state, "If", If$0);
11159
11187
  }
11160
- var Import$0 = $TS($S($EXPECT($L16, 'Import "import"'), $Y($EXPECT($R67, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
11188
+ var Import$0 = $TS($S($EXPECT($L17, 'Import "import"'), $Y($EXPECT($R67, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
11161
11189
  return { $loc, token: $1 };
11162
11190
  });
11163
11191
  function Import(ctx, state) {
11164
11192
  return $EVENT(ctx, state, "Import", Import$0);
11165
11193
  }
11166
- var In$0 = $TS($S($EXPECT($L148, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11194
+ var In$0 = $TS($S($EXPECT($L149, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11167
11195
  return { $loc, token: $1 };
11168
11196
  });
11169
11197
  function In(ctx, state) {
11170
11198
  return $EVENT(ctx, state, "In", In$0);
11171
11199
  }
11172
- var LetOrConst$0 = $TS($S($C($EXPECT($L149, 'LetOrConst "let"'), $EXPECT($L150, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11200
+ var LetOrConst$0 = $TS($S($C($EXPECT($L150, 'LetOrConst "let"'), $EXPECT($L151, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11173
11201
  return { $loc, token: $1 };
11174
11202
  });
11175
11203
  function LetOrConst(ctx, state) {
11176
11204
  return $EVENT(ctx, state, "LetOrConst", LetOrConst$0);
11177
11205
  }
11178
- var Const$0 = $TS($S($EXPECT($L150, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11206
+ var Const$0 = $TS($S($EXPECT($L151, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11179
11207
  return { $loc, token: $1 };
11180
11208
  });
11181
11209
  function Const(ctx, state) {
11182
11210
  return $EVENT(ctx, state, "Const", Const$0);
11183
11211
  }
11184
- var Is$0 = $TS($S($EXPECT($L151, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11212
+ var Is$0 = $TS($S($EXPECT($L152, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11185
11213
  return { $loc, token: $1 };
11186
11214
  });
11187
11215
  function Is(ctx, state) {
@@ -11193,31 +11221,31 @@ ${input.slice(result.pos)}
11193
11221
  function LetOrConstOrVar(ctx, state) {
11194
11222
  return $EVENT_C(ctx, state, "LetOrConstOrVar", LetOrConstOrVar$$);
11195
11223
  }
11196
- var Loop$0 = $TS($S($EXPECT($L152, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11224
+ var Loop$0 = $TS($S($EXPECT($L153, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11197
11225
  return { $loc, token: "while(true)" };
11198
11226
  });
11199
11227
  function Loop(ctx, state) {
11200
11228
  return $EVENT(ctx, state, "Loop", Loop$0);
11201
11229
  }
11202
- var New$0 = $TS($S($EXPECT($L153, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11230
+ var New$0 = $TS($S($EXPECT($L154, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11203
11231
  return { $loc, token: $1 };
11204
11232
  });
11205
11233
  function New(ctx, state) {
11206
11234
  return $EVENT(ctx, state, "New", New$0);
11207
11235
  }
11208
- var Not$0 = $TS($S($EXPECT($L154, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L11, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
11236
+ var Not$0 = $TS($S($EXPECT($L155, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L12, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
11209
11237
  return { $loc, token: "!" };
11210
11238
  });
11211
11239
  function Not(ctx, state) {
11212
11240
  return $EVENT(ctx, state, "Not", Not$0);
11213
11241
  }
11214
- var Of$0 = $TS($S($EXPECT($L155, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11242
+ var Of$0 = $TS($S($EXPECT($L156, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11215
11243
  return { $loc, token: $1 };
11216
11244
  });
11217
11245
  function Of(ctx, state) {
11218
11246
  return $EVENT(ctx, state, "Of", Of$0);
11219
11247
  }
11220
- var OpenAngleBracket$0 = $TV($EXPECT($L13, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
11248
+ var OpenAngleBracket$0 = $TV($EXPECT($L14, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
11221
11249
  return { $loc, token: $1 };
11222
11250
  });
11223
11251
  function OpenAngleBracket(ctx, state) {
@@ -11229,7 +11257,7 @@ ${input.slice(result.pos)}
11229
11257
  function OpenBrace(ctx, state) {
11230
11258
  return $EVENT(ctx, state, "OpenBrace", OpenBrace$0);
11231
11259
  }
11232
- var OpenBracket$0 = $TV($EXPECT($L156, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
11260
+ var OpenBracket$0 = $TV($EXPECT($L157, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
11233
11261
  return { $loc, token: $1 };
11234
11262
  });
11235
11263
  function OpenBracket(ctx, state) {
@@ -11241,222 +11269,222 @@ ${input.slice(result.pos)}
11241
11269
  function OpenParen(ctx, state) {
11242
11270
  return $EVENT(ctx, state, "OpenParen", OpenParen$0);
11243
11271
  }
11244
- var Operator$0 = $TS($S($EXPECT($L157, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11272
+ var Operator$0 = $TS($S($EXPECT($L158, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11245
11273
  return { $loc, token: $1 };
11246
11274
  });
11247
11275
  function Operator(ctx, state) {
11248
11276
  return $EVENT(ctx, state, "Operator", Operator$0);
11249
11277
  }
11250
- var Own$0 = $TS($S($EXPECT($L158, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11278
+ var Own$0 = $TS($S($EXPECT($L159, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11251
11279
  return { $loc, token: $1 };
11252
11280
  });
11253
11281
  function Own(ctx, state) {
11254
11282
  return $EVENT(ctx, state, "Own", Own$0);
11255
11283
  }
11256
- var Public$0 = $TS($S($EXPECT($L159, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11284
+ var Public$0 = $TS($S($EXPECT($L160, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11257
11285
  return { $loc, token: $1 };
11258
11286
  });
11259
11287
  function Public(ctx, state) {
11260
11288
  return $EVENT(ctx, state, "Public", Public$0);
11261
11289
  }
11262
- var Private$0 = $TS($S($EXPECT($L160, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11290
+ var Private$0 = $TS($S($EXPECT($L161, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11263
11291
  return { $loc, token: $1 };
11264
11292
  });
11265
11293
  function Private(ctx, state) {
11266
11294
  return $EVENT(ctx, state, "Private", Private$0);
11267
11295
  }
11268
- var Protected$0 = $TS($S($EXPECT($L161, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11296
+ var Protected$0 = $TS($S($EXPECT($L162, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11269
11297
  return { $loc, token: $1 };
11270
11298
  });
11271
11299
  function Protected(ctx, state) {
11272
11300
  return $EVENT(ctx, state, "Protected", Protected$0);
11273
11301
  }
11274
- var Pipe$0 = $TV($C($EXPECT($L162, 'Pipe "||>"'), $EXPECT($L163, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
11302
+ var Pipe$0 = $TV($C($EXPECT($L163, 'Pipe "||>"'), $EXPECT($L164, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
11275
11303
  return { $loc, token: "||>" };
11276
11304
  });
11277
- var Pipe$1 = $TV($C($EXPECT($L164, 'Pipe "|>="'), $EXPECT($L165, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
11305
+ var Pipe$1 = $TV($C($EXPECT($L165, 'Pipe "|>="'), $EXPECT($L166, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
11278
11306
  return { $loc, token: "|>=" };
11279
11307
  });
11280
- var Pipe$2 = $TV($C($EXPECT($L166, 'Pipe "|>"'), $EXPECT($L167, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
11308
+ var Pipe$2 = $TV($C($EXPECT($L167, 'Pipe "|>"'), $EXPECT($L168, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
11281
11309
  return { $loc, token: "|>" };
11282
11310
  });
11283
11311
  var Pipe$$ = [Pipe$0, Pipe$1, Pipe$2];
11284
11312
  function Pipe(ctx, state) {
11285
11313
  return $EVENT_C(ctx, state, "Pipe", Pipe$$);
11286
11314
  }
11287
- var QuestionMark$0 = $TV($EXPECT($L5, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
11315
+ var QuestionMark$0 = $TV($EXPECT($L6, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
11288
11316
  return { $loc, token: $1 };
11289
11317
  });
11290
11318
  function QuestionMark(ctx, state) {
11291
11319
  return $EVENT(ctx, state, "QuestionMark", QuestionMark$0);
11292
11320
  }
11293
- var Readonly$0 = $TS($S($EXPECT($L168, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11321
+ var Readonly$0 = $TS($S($EXPECT($L169, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11294
11322
  return { $loc, token: $1, ts: true };
11295
11323
  });
11296
11324
  function Readonly(ctx, state) {
11297
11325
  return $EVENT(ctx, state, "Readonly", Readonly$0);
11298
11326
  }
11299
- var Return$0 = $TS($S($EXPECT($L169, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11327
+ var Return$0 = $TS($S($EXPECT($L170, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11300
11328
  return { $loc, token: $1 };
11301
11329
  });
11302
11330
  function Return(ctx, state) {
11303
11331
  return $EVENT(ctx, state, "Return", Return$0);
11304
11332
  }
11305
- var Satisfies$0 = $TS($S($EXPECT($L170, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11333
+ var Satisfies$0 = $TS($S($EXPECT($L171, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11306
11334
  return { $loc, token: $1 };
11307
11335
  });
11308
11336
  function Satisfies(ctx, state) {
11309
11337
  return $EVENT(ctx, state, "Satisfies", Satisfies$0);
11310
11338
  }
11311
- var Semicolon$0 = $TV($EXPECT($L100, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
11339
+ var Semicolon$0 = $TV($EXPECT($L101, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
11312
11340
  return { $loc, token: $1 };
11313
11341
  });
11314
11342
  function Semicolon(ctx, state) {
11315
11343
  return $EVENT(ctx, state, "Semicolon", Semicolon$0);
11316
11344
  }
11317
- var SingleQuote$0 = $TV($EXPECT($L171, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
11345
+ var SingleQuote$0 = $TV($EXPECT($L172, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
11318
11346
  return { $loc, token: $1 };
11319
11347
  });
11320
11348
  function SingleQuote(ctx, state) {
11321
11349
  return $EVENT(ctx, state, "SingleQuote", SingleQuote$0);
11322
11350
  }
11323
- var Star$0 = $TV($EXPECT($L55, 'Star "*"'), function($skip, $loc, $0, $1) {
11351
+ var Star$0 = $TV($EXPECT($L56, 'Star "*"'), function($skip, $loc, $0, $1) {
11324
11352
  return { $loc, token: $1 };
11325
11353
  });
11326
11354
  function Star(ctx, state) {
11327
11355
  return $EVENT(ctx, state, "Star", Star$0);
11328
11356
  }
11329
- var Static$0 = $TS($S($EXPECT($L172, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11357
+ var Static$0 = $TS($S($EXPECT($L173, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11330
11358
  return { $loc, token: $1 };
11331
11359
  });
11332
- var Static$1 = $TS($S($EXPECT($L116, 'Static "@"'), $N($C($EXPECT($L4, 'Static "("'), $EXPECT($L116, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
11360
+ var Static$1 = $TS($S($EXPECT($L117, 'Static "@"'), $N($C($EXPECT($L4, 'Static "("'), $EXPECT($L117, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
11333
11361
  return { $loc, token: "static " };
11334
11362
  });
11335
11363
  var Static$$ = [Static$0, Static$1];
11336
11364
  function Static(ctx, state) {
11337
11365
  return $EVENT_C(ctx, state, "Static", Static$$);
11338
11366
  }
11339
- var SubstitutionStart$0 = $TV($EXPECT($L173, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
11367
+ var SubstitutionStart$0 = $TV($EXPECT($L174, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
11340
11368
  return { $loc, token: $1 };
11341
11369
  });
11342
11370
  function SubstitutionStart(ctx, state) {
11343
11371
  return $EVENT(ctx, state, "SubstitutionStart", SubstitutionStart$0);
11344
11372
  }
11345
- var Super$0 = $TS($S($EXPECT($L174, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11373
+ var Super$0 = $TS($S($EXPECT($L175, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11346
11374
  return { $loc, token: $1 };
11347
11375
  });
11348
11376
  function Super(ctx, state) {
11349
11377
  return $EVENT(ctx, state, "Super", Super$0);
11350
11378
  }
11351
- var Switch$0 = $TS($S($EXPECT($L175, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11379
+ var Switch$0 = $TS($S($EXPECT($L176, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11352
11380
  return { $loc, token: $1 };
11353
11381
  });
11354
11382
  function Switch(ctx, state) {
11355
11383
  return $EVENT(ctx, state, "Switch", Switch$0);
11356
11384
  }
11357
- var Target$0 = $TS($S($EXPECT($L176, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11385
+ var Target$0 = $TS($S($EXPECT($L177, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11358
11386
  return { $loc, token: $1 };
11359
11387
  });
11360
11388
  function Target(ctx, state) {
11361
11389
  return $EVENT(ctx, state, "Target", Target$0);
11362
11390
  }
11363
- var Then$0 = $TS($S(__, $EXPECT($L177, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
11391
+ var Then$0 = $TS($S(__, $EXPECT($L178, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
11364
11392
  return { $loc, token: "" };
11365
11393
  });
11366
11394
  function Then(ctx, state) {
11367
11395
  return $EVENT(ctx, state, "Then", Then$0);
11368
11396
  }
11369
- var This$0 = $TS($S($EXPECT($L178, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11397
+ var This$0 = $TS($S($EXPECT($L179, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11370
11398
  return { $loc, token: $1 };
11371
11399
  });
11372
11400
  function This(ctx, state) {
11373
11401
  return $EVENT(ctx, state, "This", This$0);
11374
11402
  }
11375
- var Throw$0 = $TS($S($EXPECT($L179, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11403
+ var Throw$0 = $TS($S($EXPECT($L180, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11376
11404
  return { $loc, token: $1 };
11377
11405
  });
11378
11406
  function Throw(ctx, state) {
11379
11407
  return $EVENT(ctx, state, "Throw", Throw$0);
11380
11408
  }
11381
- var TripleDoubleQuote$0 = $TV($EXPECT($L180, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
11409
+ var TripleDoubleQuote$0 = $TV($EXPECT($L181, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
11382
11410
  return { $loc, token: "`" };
11383
11411
  });
11384
11412
  function TripleDoubleQuote(ctx, state) {
11385
11413
  return $EVENT(ctx, state, "TripleDoubleQuote", TripleDoubleQuote$0);
11386
11414
  }
11387
- var TripleSingleQuote$0 = $TV($EXPECT($L181, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
11415
+ var TripleSingleQuote$0 = $TV($EXPECT($L182, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
11388
11416
  return { $loc, token: "`" };
11389
11417
  });
11390
11418
  function TripleSingleQuote(ctx, state) {
11391
11419
  return $EVENT(ctx, state, "TripleSingleQuote", TripleSingleQuote$0);
11392
11420
  }
11393
- var TripleSlash$0 = $TV($EXPECT($L182, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
11421
+ var TripleSlash$0 = $TV($EXPECT($L183, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
11394
11422
  return { $loc, token: "/" };
11395
11423
  });
11396
11424
  function TripleSlash(ctx, state) {
11397
11425
  return $EVENT(ctx, state, "TripleSlash", TripleSlash$0);
11398
11426
  }
11399
- var TripleTick$0 = $TV($EXPECT($L183, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
11427
+ var TripleTick$0 = $TV($EXPECT($L184, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
11400
11428
  return { $loc, token: "`" };
11401
11429
  });
11402
11430
  function TripleTick(ctx, state) {
11403
11431
  return $EVENT(ctx, state, "TripleTick", TripleTick$0);
11404
11432
  }
11405
- var Try$0 = $TS($S($EXPECT($L184, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11433
+ var Try$0 = $TS($S($EXPECT($L185, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11406
11434
  return { $loc, token: $1 };
11407
11435
  });
11408
11436
  function Try(ctx, state) {
11409
11437
  return $EVENT(ctx, state, "Try", Try$0);
11410
11438
  }
11411
- var Typeof$0 = $TS($S($EXPECT($L185, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11439
+ var Typeof$0 = $TS($S($EXPECT($L186, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11412
11440
  return { $loc, token: $1 };
11413
11441
  });
11414
11442
  function Typeof(ctx, state) {
11415
11443
  return $EVENT(ctx, state, "Typeof", Typeof$0);
11416
11444
  }
11417
- var Unless$0 = $TS($S($EXPECT($L186, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11445
+ var Unless$0 = $TS($S($EXPECT($L187, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11418
11446
  return { $loc, token: $1 };
11419
11447
  });
11420
11448
  function Unless(ctx, state) {
11421
11449
  return $EVENT(ctx, state, "Unless", Unless$0);
11422
11450
  }
11423
- var Until$0 = $TS($S($EXPECT($L187, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11451
+ var Until$0 = $TS($S($EXPECT($L188, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11424
11452
  return { $loc, token: $1 };
11425
11453
  });
11426
11454
  function Until(ctx, state) {
11427
11455
  return $EVENT(ctx, state, "Until", Until$0);
11428
11456
  }
11429
- var Using$0 = $TS($S($EXPECT($L188, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11457
+ var Using$0 = $TS($S($EXPECT($L189, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11430
11458
  return { $loc, token: $1 };
11431
11459
  });
11432
11460
  function Using(ctx, state) {
11433
11461
  return $EVENT(ctx, state, "Using", Using$0);
11434
11462
  }
11435
- var Var$0 = $TS($S($EXPECT($L189, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11463
+ var Var$0 = $TS($S($EXPECT($L190, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11436
11464
  return { $loc, token: $1 };
11437
11465
  });
11438
11466
  function Var(ctx, state) {
11439
11467
  return $EVENT(ctx, state, "Var", Var$0);
11440
11468
  }
11441
- var Void$0 = $TS($S($EXPECT($L190, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11469
+ var Void$0 = $TS($S($EXPECT($L191, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11442
11470
  return { $loc, token: $1 };
11443
11471
  });
11444
11472
  function Void(ctx, state) {
11445
11473
  return $EVENT(ctx, state, "Void", Void$0);
11446
11474
  }
11447
- var When$0 = $TS($S($EXPECT($L191, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11475
+ var When$0 = $TS($S($EXPECT($L192, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11448
11476
  return { $loc, token: "case" };
11449
11477
  });
11450
11478
  function When(ctx, state) {
11451
11479
  return $EVENT(ctx, state, "When", When$0);
11452
11480
  }
11453
- var While$0 = $TS($S($EXPECT($L192, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11481
+ var While$0 = $TS($S($EXPECT($L193, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11454
11482
  return { $loc, token: $1 };
11455
11483
  });
11456
11484
  function While(ctx, state) {
11457
11485
  return $EVENT(ctx, state, "While", While$0);
11458
11486
  }
11459
- var Yield$0 = $TS($S($EXPECT($L193, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11487
+ var Yield$0 = $TS($S($EXPECT($L194, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11460
11488
  return { $loc, token: $1, type: "Yield" };
11461
11489
  });
11462
11490
  function Yield(ctx, state) {
@@ -11535,7 +11563,7 @@ ${input.slice(result.pos)}
11535
11563
  function JSXElement(ctx, state) {
11536
11564
  return $EVENT_C(ctx, state, "JSXElement", JSXElement$$);
11537
11565
  }
11538
- var JSXSelfClosingElement$0 = $TS($S($EXPECT($L13, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L194, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
11566
+ var JSXSelfClosingElement$0 = $TS($S($EXPECT($L14, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L195, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
11539
11567
  return { type: "JSXElement", children: $0, tag: $2 };
11540
11568
  });
11541
11569
  function JSXSelfClosingElement(ctx, state) {
@@ -11554,7 +11582,7 @@ ${input.slice(result.pos)}
11554
11582
  function PopJSXStack(ctx, state) {
11555
11583
  return $EVENT(ctx, state, "PopJSXStack", PopJSXStack$0);
11556
11584
  }
11557
- var JSXOpeningElement$0 = $S($EXPECT($L13, 'JSXOpeningElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L34, 'JSXOpeningElement ">"'));
11585
+ var JSXOpeningElement$0 = $S($EXPECT($L14, 'JSXOpeningElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L35, 'JSXOpeningElement ">"'));
11558
11586
  function JSXOpeningElement(ctx, state) {
11559
11587
  return $EVENT(ctx, state, "JSXOpeningElement", JSXOpeningElement$0);
11560
11588
  }
@@ -11569,7 +11597,7 @@ ${input.slice(result.pos)}
11569
11597
  function JSXOptionalClosingElement(ctx, state) {
11570
11598
  return $EVENT_C(ctx, state, "JSXOptionalClosingElement", JSXOptionalClosingElement$$);
11571
11599
  }
11572
- var JSXClosingElement$0 = $S($EXPECT($L195, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L34, 'JSXClosingElement ">"'));
11600
+ var JSXClosingElement$0 = $S($EXPECT($L196, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L35, 'JSXClosingElement ">"'));
11573
11601
  function JSXClosingElement(ctx, state) {
11574
11602
  return $EVENT(ctx, state, "JSXClosingElement", JSXClosingElement$0);
11575
11603
  }
@@ -11590,7 +11618,7 @@ ${input.slice(result.pos)}
11590
11618
  ];
11591
11619
  return { type: "JSXFragment", children: parts, jsxChildren: children.jsxChildren };
11592
11620
  });
11593
- var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L196, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11621
+ var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L197, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11594
11622
  var children = $3;
11595
11623
  $0 = $0.slice(1);
11596
11624
  return {
@@ -11603,7 +11631,7 @@ ${input.slice(result.pos)}
11603
11631
  function JSXFragment(ctx, state) {
11604
11632
  return $EVENT_C(ctx, state, "JSXFragment", JSXFragment$$);
11605
11633
  }
11606
- var PushJSXOpeningFragment$0 = $TV($EXPECT($L196, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
11634
+ var PushJSXOpeningFragment$0 = $TV($EXPECT($L197, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
11607
11635
  module.JSXTagStack.push("");
11608
11636
  return $1;
11609
11637
  });
@@ -11620,11 +11648,11 @@ ${input.slice(result.pos)}
11620
11648
  function JSXOptionalClosingFragment(ctx, state) {
11621
11649
  return $EVENT_C(ctx, state, "JSXOptionalClosingFragment", JSXOptionalClosingFragment$$);
11622
11650
  }
11623
- var JSXClosingFragment$0 = $EXPECT($L197, 'JSXClosingFragment "</>"');
11651
+ var JSXClosingFragment$0 = $EXPECT($L198, 'JSXClosingFragment "</>"');
11624
11652
  function JSXClosingFragment(ctx, state) {
11625
11653
  return $EVENT(ctx, state, "JSXClosingFragment", JSXClosingFragment$0);
11626
11654
  }
11627
- var JSXElementName$0 = $TV($Y($S($C($EXPECT($L146, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
11655
+ var JSXElementName$0 = $TV($Y($S($C($EXPECT($L147, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
11628
11656
  return module.config.defaultElement;
11629
11657
  });
11630
11658
  var JSXElementName$1 = $TEXT($S(JSXIdentifierName, $C($S(Colon, JSXIdentifierName), $Q($S(Dot, JSXIdentifierName)))));
@@ -11796,7 +11824,7 @@ ${input.slice(result.pos)}
11796
11824
  }
11797
11825
  return $skip;
11798
11826
  });
11799
- var JSXAttribute$5 = $TS($S($EXPECT($L146, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
11827
+ var JSXAttribute$5 = $TS($S($EXPECT($L147, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
11800
11828
  return [" ", "id=", $2];
11801
11829
  });
11802
11830
  var JSXAttribute$6 = $TS($S(Dot, JSXShorthandString), function($skip, $loc, $0, $1, $2) {
@@ -11805,7 +11833,7 @@ ${input.slice(result.pos)}
11805
11833
  class: $2
11806
11834
  };
11807
11835
  });
11808
- var JSXAttribute$7 = $TS($S($TEXT($EXPECT($R15, "JSXAttribute /[!+-]/")), JSXAttributeName, $Y(JSXAttributeSpace)), function($skip, $loc, $0, $1, $2, $3) {
11836
+ var JSXAttribute$7 = $TS($S($TEXT($EXPECT($R14, "JSXAttribute /[!+-]/")), JSXAttributeName, $Y(JSXAttributeSpace)), function($skip, $loc, $0, $1, $2, $3) {
11809
11837
  var toggle = $1;
11810
11838
  var id = $2;
11811
11839
  const value = toggle === "+" ? "true" : "false";
@@ -11915,7 +11943,7 @@ ${input.slice(result.pos)}
11915
11943
  ]
11916
11944
  });
11917
11945
  });
11918
- var InlineJSXCallExpression$1 = $TS($S($EXPECT($L16, 'InlineJSXCallExpression "import"'), ExplicitArguments, $Q(InlineJSXCallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
11946
+ var InlineJSXCallExpression$1 = $TS($S($EXPECT($L17, 'InlineJSXCallExpression "import"'), ExplicitArguments, $Q(InlineJSXCallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
11919
11947
  var args = $2;
11920
11948
  var rest = $3;
11921
11949
  return processCallMemberExpression({
@@ -12034,7 +12062,7 @@ ${input.slice(result.pos)}
12034
12062
  }
12035
12063
  return $skip;
12036
12064
  });
12037
- var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L26, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
12065
+ var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L27, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
12038
12066
  return { children: [], jsxChildren: [] };
12039
12067
  });
12040
12068
  var JSXNestedChildren$$ = [JSXNestedChildren$0, JSXNestedChildren$1];
@@ -12089,7 +12117,7 @@ ${input.slice(result.pos)}
12089
12117
  function JSXChild(ctx, state) {
12090
12118
  return $EVENT_C(ctx, state, "JSXChild", JSXChild$$);
12091
12119
  }
12092
- var JSXComment$0 = $TS($S($EXPECT($L198, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L199, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
12120
+ var JSXComment$0 = $TS($S($EXPECT($L199, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L200, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
12093
12121
  return ["{/*", $2, "*/}"];
12094
12122
  });
12095
12123
  function JSXComment(ctx, state) {
@@ -12221,37 +12249,37 @@ ${input.slice(result.pos)}
12221
12249
  function InterfaceExtendsTarget(ctx, state) {
12222
12250
  return $EVENT(ctx, state, "InterfaceExtendsTarget", InterfaceExtendsTarget$0);
12223
12251
  }
12224
- var TypeKeyword$0 = $TS($S($EXPECT($L200, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12252
+ var TypeKeyword$0 = $TS($S($EXPECT($L201, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12225
12253
  return { $loc, token: $1 };
12226
12254
  });
12227
12255
  function TypeKeyword(ctx, state) {
12228
12256
  return $EVENT(ctx, state, "TypeKeyword", TypeKeyword$0);
12229
12257
  }
12230
- var Enum$0 = $TS($S($EXPECT($L201, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12258
+ var Enum$0 = $TS($S($EXPECT($L202, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12231
12259
  return { $loc, token: $1 };
12232
12260
  });
12233
12261
  function Enum(ctx, state) {
12234
12262
  return $EVENT(ctx, state, "Enum", Enum$0);
12235
12263
  }
12236
- var Interface$0 = $TS($S($EXPECT($L202, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12264
+ var Interface$0 = $TS($S($EXPECT($L203, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12237
12265
  return { $loc, token: $1 };
12238
12266
  });
12239
12267
  function Interface(ctx, state) {
12240
12268
  return $EVENT(ctx, state, "Interface", Interface$0);
12241
12269
  }
12242
- var Global$0 = $TS($S($EXPECT($L203, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12270
+ var Global$0 = $TS($S($EXPECT($L204, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12243
12271
  return { $loc, token: $1 };
12244
12272
  });
12245
12273
  function Global(ctx, state) {
12246
12274
  return $EVENT(ctx, state, "Global", Global$0);
12247
12275
  }
12248
- var Module$0 = $TS($S($EXPECT($L204, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12276
+ var Module$0 = $TS($S($EXPECT($L205, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12249
12277
  return { $loc, token: $1 };
12250
12278
  });
12251
12279
  function Module(ctx, state) {
12252
12280
  return $EVENT(ctx, state, "Module", Module$0);
12253
12281
  }
12254
- var Namespace$0 = $TS($S($EXPECT($L205, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12282
+ var Namespace$0 = $TS($S($EXPECT($L206, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12255
12283
  return { $loc, token: $1 };
12256
12284
  });
12257
12285
  function Namespace(ctx, state) {
@@ -12496,7 +12524,7 @@ ${input.slice(result.pos)}
12496
12524
  function ReturnTypeSuffix(ctx, state) {
12497
12525
  return $EVENT(ctx, state, "ReturnTypeSuffix", ReturnTypeSuffix$0);
12498
12526
  }
12499
- var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L206, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
12527
+ var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L207, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
12500
12528
  var asserts = $1;
12501
12529
  var t = $2;
12502
12530
  if (asserts) {
@@ -12517,7 +12545,7 @@ ${input.slice(result.pos)}
12517
12545
  function ReturnType(ctx, state) {
12518
12546
  return $EVENT(ctx, state, "ReturnType", ReturnType$0);
12519
12547
  }
12520
- var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L151, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
12548
+ var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L152, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
12521
12549
  var lhs = $1;
12522
12550
  var rhs = $2;
12523
12551
  if (!rhs)
@@ -12565,10 +12593,10 @@ ${input.slice(result.pos)}
12565
12593
  function TypeUnarySuffix(ctx, state) {
12566
12594
  return $EVENT_C(ctx, state, "TypeUnarySuffix", TypeUnarySuffix$$);
12567
12595
  }
12568
- var TypeUnaryOp$0 = $S($EXPECT($L207, 'TypeUnaryOp "keyof"'), NonIdContinue);
12569
- var TypeUnaryOp$1 = $S($EXPECT($L185, 'TypeUnaryOp "typeof"'), NonIdContinue);
12570
- var TypeUnaryOp$2 = $S($EXPECT($L208, 'TypeUnaryOp "infer"'), NonIdContinue);
12571
- var TypeUnaryOp$3 = $S($EXPECT($L168, 'TypeUnaryOp "readonly"'), NonIdContinue);
12596
+ var TypeUnaryOp$0 = $S($EXPECT($L208, 'TypeUnaryOp "keyof"'), NonIdContinue);
12597
+ var TypeUnaryOp$1 = $S($EXPECT($L186, 'TypeUnaryOp "typeof"'), NonIdContinue);
12598
+ var TypeUnaryOp$2 = $S($EXPECT($L209, 'TypeUnaryOp "infer"'), NonIdContinue);
12599
+ var TypeUnaryOp$3 = $S($EXPECT($L169, 'TypeUnaryOp "readonly"'), NonIdContinue);
12572
12600
  var TypeUnaryOp$$ = [TypeUnaryOp$0, TypeUnaryOp$1, TypeUnaryOp$2, TypeUnaryOp$3];
12573
12601
  function TypeUnaryOp(ctx, state) {
12574
12602
  return $EVENT_C(ctx, state, "TypeUnaryOp", TypeUnaryOp$$);
@@ -12577,7 +12605,7 @@ ${input.slice(result.pos)}
12577
12605
  function TypeIndexedAccess(ctx, state) {
12578
12606
  return $EVENT(ctx, state, "TypeIndexedAccess", TypeIndexedAccess$0);
12579
12607
  }
12580
- var UnknownAlias$0 = $TV($EXPECT($L209, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
12608
+ var UnknownAlias$0 = $TV($EXPECT($L210, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
12581
12609
  return { $loc, token: "unknown" };
12582
12610
  });
12583
12611
  function UnknownAlias(ctx, state) {
@@ -12618,8 +12646,8 @@ ${input.slice(result.pos)}
12618
12646
  function TypePrimary(ctx, state) {
12619
12647
  return $EVENT_C(ctx, state, "TypePrimary", TypePrimary$$);
12620
12648
  }
12621
- var ImportType$0 = $S($EXPECT($L16, 'ImportType "import"'), OpenParen, __, StringLiteral, __, CloseParen, $E($S(Dot, IdentifierName)), $E(TypeArguments));
12622
- var ImportType$1 = $S($EXPECT($L16, 'ImportType "import"'), InsertOpenParen, Trimmed_, StringLiteral, InsertCloseParen);
12649
+ var ImportType$0 = $S($EXPECT($L17, 'ImportType "import"'), OpenParen, __, StringLiteral, __, CloseParen, $E($S(Dot, IdentifierName)), $E(TypeArguments));
12650
+ var ImportType$1 = $S($EXPECT($L17, 'ImportType "import"'), InsertOpenParen, Trimmed_, StringLiteral, InsertCloseParen);
12623
12651
  var ImportType$$ = [ImportType$0, ImportType$1];
12624
12652
  function ImportType(ctx, state) {
12625
12653
  return $EVENT_C(ctx, state, "ImportType", ImportType$$);
@@ -12679,7 +12707,7 @@ ${input.slice(result.pos)}
12679
12707
  function NestedType(ctx, state) {
12680
12708
  return $EVENT(ctx, state, "NestedType", NestedType$0);
12681
12709
  }
12682
- var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L139, 'TypeConditional "extends"'), NonIdContinue, Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
12710
+ var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L140, 'TypeConditional "extends"'), NonIdContinue, Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
12683
12711
  if ($2)
12684
12712
  return $0;
12685
12713
  return $1;
@@ -12717,10 +12745,10 @@ ${input.slice(result.pos)}
12717
12745
  }
12718
12746
  var TypeLiteral$0 = TypeTemplateLiteral;
12719
12747
  var TypeLiteral$1 = Literal;
12720
- var TypeLiteral$2 = $TS($S($EXPECT($L190, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12748
+ var TypeLiteral$2 = $TS($S($EXPECT($L191, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12721
12749
  return { type: "VoidType", $loc, token: $1 };
12722
12750
  });
12723
- var TypeLiteral$3 = $TV($EXPECT($L210, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
12751
+ var TypeLiteral$3 = $TV($EXPECT($L211, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
12724
12752
  return { $loc, token: "[]" };
12725
12753
  });
12726
12754
  var TypeLiteral$$ = [TypeLiteral$0, TypeLiteral$1, TypeLiteral$2, TypeLiteral$3];
@@ -12739,16 +12767,16 @@ ${input.slice(result.pos)}
12739
12767
  var InlineInterfacePropertyDelimiter$1 = $T($S($Y($S($C(IndentedFurther, $E(_)), InlineBasicInterfaceProperty)), InsertComma), function(value) {
12740
12768
  return value[1];
12741
12769
  });
12742
- var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L11, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L113, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L35, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L26, 'InlineInterfacePropertyDelimiter "}"'))));
12770
+ var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L12, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L114, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L36, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L27, 'InlineInterfacePropertyDelimiter "}"'))));
12743
12771
  var InlineInterfacePropertyDelimiter$3 = $Y(EOS);
12744
12772
  var InlineInterfacePropertyDelimiter$$ = [InlineInterfacePropertyDelimiter$0, InlineInterfacePropertyDelimiter$1, InlineInterfacePropertyDelimiter$2, InlineInterfacePropertyDelimiter$3];
12745
12773
  function InlineInterfacePropertyDelimiter(ctx, state) {
12746
12774
  return $EVENT_C(ctx, state, "InlineInterfacePropertyDelimiter", InlineInterfacePropertyDelimiter$$);
12747
12775
  }
12748
- var TypeBinaryOp$0 = $TV($EXPECT($L99, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
12776
+ var TypeBinaryOp$0 = $TV($EXPECT($L100, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
12749
12777
  return { $loc, token: "|" };
12750
12778
  });
12751
- var TypeBinaryOp$1 = $TV($EXPECT($L98, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
12779
+ var TypeBinaryOp$1 = $TV($EXPECT($L99, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
12752
12780
  return { $loc, token: "&" };
12753
12781
  });
12754
12782
  var TypeBinaryOp$$ = [TypeBinaryOp$0, TypeBinaryOp$1];
@@ -12765,7 +12793,7 @@ ${input.slice(result.pos)}
12765
12793
  function FunctionType(ctx, state) {
12766
12794
  return $EVENT(ctx, state, "FunctionType", FunctionType$0);
12767
12795
  }
12768
- var TypeArrowFunction$0 = $TV($C($EXPECT($L9, 'TypeArrowFunction "=>"'), $EXPECT($L10, 'TypeArrowFunction "\u21D2"'), $EXPECT($L24, 'TypeArrowFunction "->"'), $EXPECT($L25, 'TypeArrowFunction "\u2192"')), function($skip, $loc, $0, $1) {
12796
+ var TypeArrowFunction$0 = $TV($C($EXPECT($L10, 'TypeArrowFunction "=>"'), $EXPECT($L11, 'TypeArrowFunction "\u21D2"'), $EXPECT($L25, 'TypeArrowFunction "->"'), $EXPECT($L26, 'TypeArrowFunction "\u2192"')), function($skip, $loc, $0, $1) {
12769
12797
  return { $loc, token: "=>" };
12770
12798
  });
12771
12799
  function TypeArrowFunction(ctx, state) {
@@ -12803,11 +12831,11 @@ ${input.slice(result.pos)}
12803
12831
  function TypeParameters(ctx, state) {
12804
12832
  return $EVENT(ctx, state, "TypeParameters", TypeParameters$0);
12805
12833
  }
12806
- var TypeParameter$0 = $S(__, $E($S($EXPECT($L150, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
12834
+ var TypeParameter$0 = $S(__, $E($S($EXPECT($L151, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
12807
12835
  function TypeParameter(ctx, state) {
12808
12836
  return $EVENT(ctx, state, "TypeParameter", TypeParameter$0);
12809
12837
  }
12810
- var TypeConstraint$0 = $S(__, $EXPECT($L139, 'TypeConstraint "extends"'), NonIdContinue, Type);
12838
+ var TypeConstraint$0 = $S(__, $EXPECT($L140, 'TypeConstraint "extends"'), NonIdContinue, Type);
12811
12839
  function TypeConstraint(ctx, state) {
12812
12840
  return $EVENT(ctx, state, "TypeConstraint", TypeConstraint$0);
12813
12841
  }
@@ -12816,7 +12844,7 @@ ${input.slice(result.pos)}
12816
12844
  return $EVENT(ctx, state, "TypeInitializer", TypeInitializer$0);
12817
12845
  }
12818
12846
  var TypeParameterDelimiter$0 = $S($E(_), Comma);
12819
- var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L34, 'TypeParameterDelimiter ">"')));
12847
+ var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L35, 'TypeParameterDelimiter ">"')));
12820
12848
  var TypeParameterDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
12821
12849
  return value[1];
12822
12850
  });
@@ -12846,7 +12874,7 @@ ${input.slice(result.pos)}
12846
12874
  function CivetPrologue(ctx, state) {
12847
12875
  return $EVENT_C(ctx, state, "CivetPrologue", CivetPrologue$$);
12848
12876
  }
12849
- var CivetPrologueContent$0 = $TS($S($EXPECT($L211, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R82, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
12877
+ var CivetPrologueContent$0 = $TS($S($EXPECT($L212, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R82, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
12850
12878
  var options = $3;
12851
12879
  return {
12852
12880
  type: "CivetPrologue",
@@ -13683,7 +13711,6 @@ ${input.slice(result.pos)}
13683
13711
  exports.OperatorSignature = OperatorSignature;
13684
13712
  exports.AmpersandBlockRHS = AmpersandBlockRHS;
13685
13713
  exports.AmpersandBlockRHSBody = AmpersandBlockRHSBody;
13686
- exports.AmpersandUnaryPrefix = AmpersandUnaryPrefix;
13687
13714
  exports.ThinArrowFunction = ThinArrowFunction;
13688
13715
  exports.Arrow = Arrow;
13689
13716
  exports.ExplicitBlock = ExplicitBlock;
@@ -14329,7 +14356,6 @@ ${input.slice(result.pos)}
14329
14356
  switch (node.type) {
14330
14357
  case "Ref": {
14331
14358
  throw new Error(`Unpopulated ref ${JSON.stringify(node)}`);
14332
- break;
14333
14359
  }
14334
14360
  }
14335
14361
  debugger;