@danielx/civet 0.6.53 → 0.6.55

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
@@ -932,48 +932,64 @@ ${input.slice(result.pos)}
932
932
  const expandedOps = expandChainedComparisons($0);
933
933
  let i = 2;
934
934
  while (i < expandedOps.length) {
935
- const op = expandedOps[i];
935
+ let op = expandedOps[i];
936
936
  if (op.special) {
937
- let [a, wsOp, op2, wsB, b] = expandedOps.slice(i - 2, i + 3);
938
- if (op2.token === "instanceof" && b.type === "Literal" && b.children?.[0]?.type === "StringLiteral") {
937
+ let start = i - 2, end = i + 2;
938
+ if (isRelationalOp(op)) {
939
+ while (start >= 4 && !isLowerThanRelationalOp(expandedOps[start - 2])) {
940
+ start -= 4;
941
+ }
942
+ while (end + 4 < expandedOps.length && !isLowerThanRelationalOp(expandedOps[end + 2])) {
943
+ end += 4;
944
+ }
945
+ }
946
+ let a = start === i - 2 ? expandedOps[start] : expandedOps.slice(start, i - 1);
947
+ let wsOp = expandedOps[i - 1];
948
+ let wsB = expandedOps[i + 1];
949
+ let b = end === i + 2 ? expandedOps[i + 2] : expandedOps.slice(i + 2, end + 1);
950
+ if (op.token === "instanceof" && b.type === "Literal" && b.children?.[0]?.type === "StringLiteral") {
939
951
  a = ["typeof ", makeLeftHandSideExpression(a)];
940
- if (op2.negated) {
941
- op2 = { ...op2, token: "!==", negated: false };
952
+ if (op.negated) {
953
+ op = { ...op, token: "!==", negated: false };
942
954
  } else {
943
- op2 = { ...op2, token: "===" };
955
+ op = { ...op, token: "===" };
944
956
  }
945
957
  }
946
- if (op2.asConst) {
958
+ if (op.asConst) {
947
959
  a = makeAsConst(a);
948
960
  b = makeAsConst(b);
949
961
  }
950
962
  let children;
951
- if (op2.call) {
963
+ if (op.call) {
952
964
  wsOp = insertTrimmingSpace(wsOp, "");
953
- if (op2.reversed) {
965
+ if (op.reversed) {
954
966
  wsB = insertTrimmingSpace(wsB, "");
955
- children = [wsOp, op2.call, "(", wsB, b, ", ", a, ")", op2.suffix];
967
+ children = [wsOp, op.call, "(", wsB, b, ", ", a, ")", op.suffix];
956
968
  } else {
957
- children = [wsOp, op2.call, "(", a, ",", wsB, b, ")", op2.suffix];
969
+ children = [wsOp, op.call, "(", a, ",", wsB, b, ")", op.suffix];
958
970
  }
959
- } else if (op2.method) {
971
+ } else if (op.method) {
960
972
  wsOp = insertTrimmingSpace(wsOp, "");
961
973
  wsB = insertTrimmingSpace(wsB, "");
962
- if (op2.reversed) {
963
- children = [wsB, b, wsOp, ".", op2.method, "(", a, ")"];
974
+ if (op.reversed) {
975
+ if (end !== i + 2)
976
+ b = makeLeftHandSideExpression(b);
977
+ children = [wsB, b, wsOp, ".", op.method, "(", a, ")"];
964
978
  } else {
965
- children = [a, wsOp, ".", op2.method, "(", wsB, b, ")"];
979
+ if (start !== i - 2)
980
+ a = makeLeftHandSideExpression(a);
981
+ children = [a, wsOp, ".", op.method, "(", wsB, b, ")"];
966
982
  }
967
- } else if (op2.token) {
968
- children = [a, wsOp, op2, wsB, b];
969
- if (op2.negated)
983
+ } else if (op.token) {
984
+ children = [a, wsOp, op, wsB, b];
985
+ if (op.negated)
970
986
  children = ["(", ...children, ")"];
971
987
  } else {
972
- throw new Error("Unknown operator: " + JSON.stringify(op2));
988
+ throw new Error("Unknown operator: " + JSON.stringify(op));
973
989
  }
974
- if (op2.negated)
990
+ if (op.negated)
975
991
  children.unshift("!");
976
- expandedOps.splice(i - 2, 5, {
992
+ expandedOps.splice(start, end - start + 1, {
977
993
  children
978
994
  });
979
995
  } else {
@@ -1239,6 +1255,10 @@ ${input.slice(result.pos)}
1239
1255
  function isRelationalOp(op) {
1240
1256
  return relationalOps.includes(op.token) || op.relational;
1241
1257
  }
1258
+ var lowerThanRelationalOps = ["&", "^", "|", "&&", "||", "??"];
1259
+ function isLowerThanRelationalOp(op) {
1260
+ return op === "&&" || lowerThanRelationalOps.includes(op.token) || isRelationalOp(op);
1261
+ }
1242
1262
  function expandChainedComparisons([first, binops]) {
1243
1263
  const lowerPrecedenceOps = ["??", "&&", "||", "&", "|", "^"];
1244
1264
  const results = [];
@@ -1783,7 +1803,7 @@ ${input.slice(result.pos)}
1783
1803
  }
1784
1804
  const expRefDec = expRef2 !== exp ? [insertTrimmingSpace(expRef2, " "), " = ", insertTrimmingSpace(exp, ""), ", "] : [];
1785
1805
  blockPrefix.push(["", {
1786
- type: "AssignmentExpression",
1806
+ type: "Declaration",
1787
1807
  children: [declaration, " = ", insertTrimmingSpace(expRef2, ""), "[", counterRef, "]"],
1788
1808
  names: assignmentNames
1789
1809
  }, ";"]);
@@ -2011,10 +2031,14 @@ ${input.slice(result.pos)}
2011
2031
  children: [" as const"]
2012
2032
  };
2013
2033
  function makeAsConst(node) {
2034
+ if (Array.isArray(node) && node.length === 1) {
2035
+ node = node[0];
2036
+ }
2014
2037
  if (node.type === "Literal" && node.raw !== "null" || node.type === "ArrayExpression" || node.type === "ObjectExpression") {
2015
2038
  return { ...node, children: [...node.children, asConst] };
2039
+ } else {
2040
+ return node;
2016
2041
  }
2017
- return node;
2018
2042
  }
2019
2043
  function makeEmptyBlock() {
2020
2044
  const expressions = [];
@@ -2744,7 +2768,7 @@ ${input.slice(result.pos)}
2744
2768
  conditions.push([
2745
2769
  ref,
2746
2770
  " === ",
2747
- pattern.identifier
2771
+ pattern.expression
2748
2772
  ]);
2749
2773
  break;
2750
2774
  case "Literal":
@@ -3866,6 +3890,7 @@ ${input.slice(result.pos)}
3866
3890
  OptionalDot,
3867
3891
  NonNullAssertion,
3868
3892
  MemberExpression,
3893
+ ActualMemberExpression,
3869
3894
  MemberBase,
3870
3895
  MemberExpressionRest,
3871
3896
  MemberExpressionRestBody,
@@ -4078,6 +4103,7 @@ ${input.slice(result.pos)}
4078
4103
  Condition,
4079
4104
  DeclarationCondition,
4080
4105
  ExpressionWithIndentedApplicationForbidden,
4106
+ SingleLineExpressionWithIndentedApplicationForbidden,
4081
4107
  ExpressionWithObjectApplicationForbidden,
4082
4108
  LeftHandSideExpressionWithObjectApplicationForbidden,
4083
4109
  ForbidClassImplicitCall,
@@ -4212,6 +4238,7 @@ ${input.slice(result.pos)}
4212
4238
  Await,
4213
4239
  Backtick,
4214
4240
  By,
4241
+ Caret,
4215
4242
  Case,
4216
4243
  Catch,
4217
4244
  Class,
@@ -4577,112 +4604,113 @@ ${input.slice(result.pos)}
4577
4604
  var $L102 = $L("break");
4578
4605
  var $L103 = $L("continue");
4579
4606
  var $L104 = $L("debugger");
4580
- var $L105 = $L("assert");
4581
- var $L106 = $L(":=");
4582
- var $L107 = $L("\u2254");
4583
- var $L108 = $L(".=");
4584
- var $L109 = $L("/*");
4585
- var $L110 = $L("*/");
4586
- var $L111 = $L("\\");
4587
- var $L112 = $L(")");
4588
- var $L113 = $L("abstract");
4589
- var $L114 = $L("as");
4590
- var $L115 = $L("@");
4591
- var $L116 = $L("@@");
4592
- var $L117 = $L("async");
4593
- var $L118 = $L("await");
4594
- var $L119 = $L("`");
4595
- var $L120 = $L("by");
4596
- var $L121 = $L("case");
4597
- var $L122 = $L("catch");
4598
- var $L123 = $L("class");
4599
- var $L124 = $L("#{");
4600
- var $L125 = $L("declare");
4601
- var $L126 = $L("default");
4602
- var $L127 = $L("delete");
4603
- var $L128 = $L("do");
4604
- var $L129 = $L("..");
4605
- var $L130 = $L("\u2025");
4606
- var $L131 = $L("...");
4607
- var $L132 = $L("\u2026");
4608
- var $L133 = $L("::");
4609
- var $L134 = $L('"');
4610
- var $L135 = $L("each");
4611
- var $L136 = $L("else");
4612
- var $L137 = $L("export");
4613
- var $L138 = $L("extends");
4614
- var $L139 = $L("finally");
4615
- var $L140 = $L("for");
4616
- var $L141 = $L("from");
4617
- var $L142 = $L("function");
4618
- var $L143 = $L("get");
4619
- var $L144 = $L("set");
4620
- var $L145 = $L("#");
4621
- var $L146 = $L("if");
4622
- var $L147 = $L("in");
4623
- var $L148 = $L("let");
4624
- var $L149 = $L("const");
4625
- var $L150 = $L("is");
4626
- var $L151 = $L("loop");
4627
- var $L152 = $L("new");
4628
- var $L153 = $L("not");
4629
- var $L154 = $L("of");
4630
- var $L155 = $L("[");
4631
- var $L156 = $L("operator");
4632
- var $L157 = $L("own");
4633
- var $L158 = $L("public");
4634
- var $L159 = $L("private");
4635
- var $L160 = $L("protected");
4636
- var $L161 = $L("||>");
4637
- var $L162 = $L("|\u25B7");
4638
- var $L163 = $L("|>=");
4639
- var $L164 = $L("\u25B7=");
4640
- var $L165 = $L("|>");
4641
- var $L166 = $L("\u25B7");
4642
- var $L167 = $L("readonly");
4643
- var $L168 = $L("return");
4644
- var $L169 = $L("satisfies");
4645
- var $L170 = $L("'");
4646
- var $L171 = $L("static");
4647
- var $L172 = $L("${");
4648
- var $L173 = $L("super");
4649
- var $L174 = $L("switch");
4650
- var $L175 = $L("target");
4651
- var $L176 = $L("then");
4652
- var $L177 = $L("this");
4653
- var $L178 = $L("throw");
4654
- var $L179 = $L('"""');
4655
- var $L180 = $L("'''");
4656
- var $L181 = $L("///");
4657
- var $L182 = $L("```");
4658
- var $L183 = $L("try");
4659
- var $L184 = $L("typeof");
4660
- var $L185 = $L("unless");
4661
- var $L186 = $L("until");
4662
- var $L187 = $L("using");
4663
- var $L188 = $L("var");
4664
- var $L189 = $L("void");
4665
- var $L190 = $L("when");
4666
- var $L191 = $L("while");
4667
- var $L192 = $L("yield");
4668
- var $L193 = $L("/>");
4669
- var $L194 = $L("</");
4670
- var $L195 = $L("<>");
4671
- var $L196 = $L("</>");
4672
- var $L197 = $L("<!--");
4673
- var $L198 = $L("-->");
4674
- var $L199 = $L("type");
4675
- var $L200 = $L("enum");
4676
- var $L201 = $L("interface");
4677
- var $L202 = $L("global");
4678
- var $L203 = $L("module");
4679
- var $L204 = $L("namespace");
4680
- var $L205 = $L("asserts");
4681
- var $L206 = $L("keyof");
4682
- var $L207 = $L("infer");
4683
- var $L208 = $L("???");
4684
- var $L209 = $L("[]");
4685
- var $L210 = $L("civet");
4607
+ var $L105 = $L("with");
4608
+ var $L106 = $L("assert");
4609
+ var $L107 = $L(":=");
4610
+ var $L108 = $L("\u2254");
4611
+ var $L109 = $L(".=");
4612
+ var $L110 = $L("/*");
4613
+ var $L111 = $L("*/");
4614
+ var $L112 = $L("\\");
4615
+ var $L113 = $L(")");
4616
+ var $L114 = $L("abstract");
4617
+ var $L115 = $L("as");
4618
+ var $L116 = $L("@");
4619
+ var $L117 = $L("@@");
4620
+ var $L118 = $L("async");
4621
+ var $L119 = $L("await");
4622
+ var $L120 = $L("`");
4623
+ var $L121 = $L("by");
4624
+ var $L122 = $L("case");
4625
+ var $L123 = $L("catch");
4626
+ var $L124 = $L("class");
4627
+ var $L125 = $L("#{");
4628
+ var $L126 = $L("declare");
4629
+ var $L127 = $L("default");
4630
+ var $L128 = $L("delete");
4631
+ var $L129 = $L("do");
4632
+ var $L130 = $L("..");
4633
+ var $L131 = $L("\u2025");
4634
+ var $L132 = $L("...");
4635
+ var $L133 = $L("\u2026");
4636
+ var $L134 = $L("::");
4637
+ var $L135 = $L('"');
4638
+ var $L136 = $L("each");
4639
+ var $L137 = $L("else");
4640
+ var $L138 = $L("export");
4641
+ var $L139 = $L("extends");
4642
+ var $L140 = $L("finally");
4643
+ var $L141 = $L("for");
4644
+ var $L142 = $L("from");
4645
+ var $L143 = $L("function");
4646
+ var $L144 = $L("get");
4647
+ var $L145 = $L("set");
4648
+ var $L146 = $L("#");
4649
+ var $L147 = $L("if");
4650
+ var $L148 = $L("in");
4651
+ var $L149 = $L("let");
4652
+ var $L150 = $L("const");
4653
+ var $L151 = $L("is");
4654
+ var $L152 = $L("loop");
4655
+ var $L153 = $L("new");
4656
+ var $L154 = $L("not");
4657
+ var $L155 = $L("of");
4658
+ var $L156 = $L("[");
4659
+ var $L157 = $L("operator");
4660
+ var $L158 = $L("own");
4661
+ var $L159 = $L("public");
4662
+ var $L160 = $L("private");
4663
+ var $L161 = $L("protected");
4664
+ var $L162 = $L("||>");
4665
+ var $L163 = $L("|\u25B7");
4666
+ var $L164 = $L("|>=");
4667
+ var $L165 = $L("\u25B7=");
4668
+ var $L166 = $L("|>");
4669
+ var $L167 = $L("\u25B7");
4670
+ var $L168 = $L("readonly");
4671
+ var $L169 = $L("return");
4672
+ var $L170 = $L("satisfies");
4673
+ var $L171 = $L("'");
4674
+ var $L172 = $L("static");
4675
+ var $L173 = $L("${");
4676
+ var $L174 = $L("super");
4677
+ var $L175 = $L("switch");
4678
+ var $L176 = $L("target");
4679
+ var $L177 = $L("then");
4680
+ var $L178 = $L("this");
4681
+ var $L179 = $L("throw");
4682
+ var $L180 = $L('"""');
4683
+ var $L181 = $L("'''");
4684
+ var $L182 = $L("///");
4685
+ var $L183 = $L("```");
4686
+ var $L184 = $L("try");
4687
+ var $L185 = $L("typeof");
4688
+ var $L186 = $L("unless");
4689
+ var $L187 = $L("until");
4690
+ var $L188 = $L("using");
4691
+ var $L189 = $L("var");
4692
+ var $L190 = $L("void");
4693
+ var $L191 = $L("when");
4694
+ var $L192 = $L("while");
4695
+ var $L193 = $L("yield");
4696
+ var $L194 = $L("/>");
4697
+ var $L195 = $L("</");
4698
+ var $L196 = $L("<>");
4699
+ var $L197 = $L("</>");
4700
+ var $L198 = $L("<!--");
4701
+ var $L199 = $L("-->");
4702
+ var $L200 = $L("type");
4703
+ var $L201 = $L("enum");
4704
+ var $L202 = $L("interface");
4705
+ var $L203 = $L("global");
4706
+ var $L204 = $L("module");
4707
+ var $L205 = $L("namespace");
4708
+ var $L206 = $L("asserts");
4709
+ var $L207 = $L("keyof");
4710
+ var $L208 = $L("infer");
4711
+ var $L209 = $L("???");
4712
+ var $L210 = $L("[]");
4713
+ var $L211 = $L("civet");
4686
4714
  var $R0 = $R(new RegExp("(?=debugger|if|unless|do|for|loop|until|while|switch|throw|try)", "suy"));
4687
4715
  var $R1 = $R(new RegExp("(as|of|satisfies|then|when|implements|xor|xnor)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
4688
4716
  var $R2 = $R(new RegExp("[0-9]", "suy"));
@@ -5868,6 +5896,16 @@ ${input.slice(result.pos)}
5868
5896
  function MemberExpression(ctx, state) {
5869
5897
  return $EVENT(ctx, state, "MemberExpression", MemberExpression$0);
5870
5898
  }
5899
+ var ActualMemberExpression$0 = $TS($S(MemberBase, $P(MemberExpressionRest)), function($skip, $loc, $0, $1, $2) {
5900
+ var rest = $2;
5901
+ return processCallMemberExpression({
5902
+ type: "MemberExpression",
5903
+ children: [$1, ...rest].flat()
5904
+ });
5905
+ });
5906
+ function ActualMemberExpression(ctx, state) {
5907
+ return $EVENT(ctx, state, "ActualMemberExpression", ActualMemberExpression$0);
5908
+ }
5871
5909
  var MemberBase$0 = PrimaryExpression;
5872
5910
  var MemberBase$1 = SuperProperty;
5873
5911
  var MemberBase$2 = MetaProperty;
@@ -6367,16 +6405,25 @@ ${input.slice(result.pos)}
6367
6405
  function AtIdentifierRef(ctx, state) {
6368
6406
  return $EVENT_C(ctx, state, "AtIdentifierRef", AtIdentifierRef$$);
6369
6407
  }
6370
- var PinPattern$0 = $TS($S($EXPECT($L18, 'PinPattern "^"'), Identifier), function($skip, $loc, $0, $1, $2) {
6371
- var identifier = $2;
6408
+ var PinPattern$0 = $TS($S(Caret, SingleLineExpressionWithIndentedApplicationForbidden), function($skip, $loc, $0, $1, $2) {
6409
+ var expression = $2;
6372
6410
  return {
6373
6411
  type: "PinPattern",
6374
6412
  children: $0,
6375
- identifier
6413
+ expression
6414
+ };
6415
+ });
6416
+ var PinPattern$1 = $TV(ActualMemberExpression, function($skip, $loc, $0, $1) {
6417
+ var expression = $0;
6418
+ return {
6419
+ type: "PinPattern",
6420
+ children: [expression],
6421
+ expression
6376
6422
  };
6377
6423
  });
6424
+ var PinPattern$$ = [PinPattern$0, PinPattern$1];
6378
6425
  function PinPattern(ctx, state) {
6379
- return $EVENT(ctx, state, "PinPattern", PinPattern$0);
6426
+ return $EVENT_C(ctx, state, "PinPattern", PinPattern$$);
6380
6427
  }
6381
6428
  var BindingPattern$0 = ObjectBindingPattern;
6382
6429
  var BindingPattern$1 = ArrayBindingPattern;
@@ -6526,7 +6573,7 @@ ${input.slice(result.pos)}
6526
6573
  names: value.names
6527
6574
  };
6528
6575
  });
6529
- var BindingProperty$2 = $TS($S($E(_), $E($EXPECT($L18, 'BindingProperty "^"')), BindingIdentifier, $E(Initializer)), function($skip, $loc, $0, $1, $2, $3, $4) {
6576
+ var BindingProperty$2 = $TS($S($E(_), $E(Caret), BindingIdentifier, $E(Initializer)), function($skip, $loc, $0, $1, $2, $3, $4) {
6530
6577
  var ws = $1;
6531
6578
  var pin = $2;
6532
6579
  var binding = $3;
@@ -6548,7 +6595,7 @@ ${input.slice(result.pos)}
6548
6595
  name: binding,
6549
6596
  value: {
6550
6597
  type: "PinPattern",
6551
- identifier: binding
6598
+ expression: binding
6552
6599
  }
6553
6600
  };
6554
6601
  }
@@ -9469,7 +9516,7 @@ ${input.slice(result.pos)}
9469
9516
  function CaseClause(ctx, state) {
9470
9517
  return $EVENT_C(ctx, state, "CaseClause", CaseClause$$);
9471
9518
  }
9472
- var PatternExpressionList$0 = $TS($S(ConditionFragment, $Q($S($E(_), Comma, $E(_), ConditionFragment))), function($skip, $loc, $0, $1, $2) {
9519
+ var PatternExpressionList$0 = $TS($S(ConditionFragment, $Q($S($E(_), Comma, $E($C(Nested, _)), ConditionFragment))), function($skip, $loc, $0, $1, $2) {
9473
9520
  var first = $1;
9474
9521
  var rest = $2;
9475
9522
  return [first, ...rest.map(([, , , p]) => p)];
@@ -9663,6 +9710,15 @@ ${input.slice(result.pos)}
9663
9710
  function ExpressionWithIndentedApplicationForbidden(ctx, state) {
9664
9711
  return $EVENT(ctx, state, "ExpressionWithIndentedApplicationForbidden", ExpressionWithIndentedApplicationForbidden$0);
9665
9712
  }
9713
+ var SingleLineExpressionWithIndentedApplicationForbidden$0 = $TS($S(ForbidIndentedApplication, ForbidNewlineBinaryOp, $E(SingleLineAssignmentExpression), RestoreNewlineBinaryOp, RestoreIndentedApplication), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
9714
+ var exp = $3;
9715
+ if (exp)
9716
+ return exp;
9717
+ return $skip;
9718
+ });
9719
+ function SingleLineExpressionWithIndentedApplicationForbidden(ctx, state) {
9720
+ return $EVENT(ctx, state, "SingleLineExpressionWithIndentedApplicationForbidden", SingleLineExpressionWithIndentedApplicationForbidden$0);
9721
+ }
9666
9722
  var ExpressionWithObjectApplicationForbidden$0 = $TS($S(ForbidBracedApplication, ForbidIndentedApplication, ForbidNewlineBinaryOp, $E(ExtendedExpression), RestoreNewlineBinaryOp, RestoreBracedApplication, RestoreIndentedApplication), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
9667
9723
  var exp = $4;
9668
9724
  if (exp)
@@ -10014,7 +10070,7 @@ ${input.slice(result.pos)}
10014
10070
  function FromClause(ctx, state) {
10015
10071
  return $EVENT(ctx, state, "FromClause", FromClause$0);
10016
10072
  }
10017
- var ImportAssertion$0 = $S($E(_), $EXPECT($L105, 'ImportAssertion "assert"'), NonIdContinue, $E(_), ObjectLiteral);
10073
+ var ImportAssertion$0 = $S($E(_), $C($EXPECT($L105, 'ImportAssertion "with"'), $EXPECT($L106, 'ImportAssertion "assert"')), NonIdContinue, $E(_), ObjectLiteral);
10018
10074
  function ImportAssertion(ctx, state) {
10019
10075
  return $EVENT(ctx, state, "ImportAssertion", ImportAssertion$0);
10020
10076
  }
@@ -10234,13 +10290,13 @@ ${input.slice(result.pos)}
10234
10290
  function LexicalDeclaration(ctx, state) {
10235
10291
  return $EVENT_C(ctx, state, "LexicalDeclaration", LexicalDeclaration$$);
10236
10292
  }
10237
- var ConstAssignment$0 = $TV($C($EXPECT($L106, 'ConstAssignment ":="'), $EXPECT($L107, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
10293
+ var ConstAssignment$0 = $TV($C($EXPECT($L107, 'ConstAssignment ":="'), $EXPECT($L108, 'ConstAssignment "\u2254"')), function($skip, $loc, $0, $1) {
10238
10294
  return { $loc, token: "=" };
10239
10295
  });
10240
10296
  function ConstAssignment(ctx, state) {
10241
10297
  return $EVENT(ctx, state, "ConstAssignment", ConstAssignment$0);
10242
10298
  }
10243
- var LetAssignment$0 = $TV($EXPECT($L108, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
10299
+ var LetAssignment$0 = $TV($EXPECT($L109, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
10244
10300
  return { $loc, token: "=" };
10245
10301
  });
10246
10302
  function LetAssignment(ctx, state) {
@@ -10646,7 +10702,7 @@ ${input.slice(result.pos)}
10646
10702
  function MultiLineComment(ctx, state) {
10647
10703
  return $EVENT_C(ctx, state, "MultiLineComment", MultiLineComment$$);
10648
10704
  }
10649
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L109, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L110, 'JSMultiLineComment "*/"')), $EXPECT($R57, "JSMultiLineComment /./"))), $EXPECT($L110, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
10705
+ 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) {
10650
10706
  return { type: "Comment", $loc, token: $1 };
10651
10707
  });
10652
10708
  function JSMultiLineComment(ctx, state) {
@@ -10692,7 +10748,7 @@ ${input.slice(result.pos)}
10692
10748
  var NonNewlineWhitespace$0 = $TR($EXPECT($R63, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
10693
10749
  return { $loc, token: $0 };
10694
10750
  });
10695
- var NonNewlineWhitespace$1 = $T($S($EXPECT($L111, 'NonNewlineWhitespace "\\\\\\\\"'), CoffeeLineContinuationEnabled, EOL), function(value) {
10751
+ var NonNewlineWhitespace$1 = $T($S($EXPECT($L112, 'NonNewlineWhitespace "\\\\\\\\"'), CoffeeLineContinuationEnabled, EOL), function(value) {
10696
10752
  return " ";
10697
10753
  });
10698
10754
  var NonNewlineWhitespace$$ = [NonNewlineWhitespace$0, NonNewlineWhitespace$1];
@@ -10738,7 +10794,7 @@ ${input.slice(result.pos)}
10738
10794
  }
10739
10795
  var StatementDelimiter$0 = $Y(EOS);
10740
10796
  var StatementDelimiter$1 = SemicolonDelimiter;
10741
- var StatementDelimiter$2 = $Y($S($E(_), $C($EXPECT($L26, 'StatementDelimiter "}"'), $EXPECT($L112, 'StatementDelimiter ")"'), $EXPECT($L35, 'StatementDelimiter "]"'))));
10797
+ var StatementDelimiter$2 = $Y($S($E(_), $C($EXPECT($L26, 'StatementDelimiter "}"'), $EXPECT($L113, 'StatementDelimiter ")"'), $EXPECT($L35, 'StatementDelimiter "]"'))));
10742
10798
  var StatementDelimiter$$ = [StatementDelimiter$0, StatementDelimiter$1, StatementDelimiter$2];
10743
10799
  function StatementDelimiter(ctx, state) {
10744
10800
  return $EVENT_C(ctx, state, "StatementDelimiter", StatementDelimiter$$);
@@ -10762,7 +10818,7 @@ ${input.slice(result.pos)}
10762
10818
  function Loc(ctx, state) {
10763
10819
  return $EVENT(ctx, state, "Loc", Loc$0);
10764
10820
  }
10765
- var Abstract$0 = $TV($TEXT($S($EXPECT($L113, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L12, 'Abstract " "')))), function($skip, $loc, $0, $1) {
10821
+ var Abstract$0 = $TV($TEXT($S($EXPECT($L114, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L12, 'Abstract " "')))), function($skip, $loc, $0, $1) {
10766
10822
  return { $loc, token: $1, ts: true };
10767
10823
  });
10768
10824
  function Abstract(ctx, state) {
@@ -10774,61 +10830,67 @@ ${input.slice(result.pos)}
10774
10830
  function Ampersand(ctx, state) {
10775
10831
  return $EVENT(ctx, state, "Ampersand", Ampersand$0);
10776
10832
  }
10777
- var As$0 = $TS($S($EXPECT($L114, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10833
+ var As$0 = $TS($S($EXPECT($L115, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10778
10834
  return { $loc, token: $1 };
10779
10835
  });
10780
10836
  function As(ctx, state) {
10781
10837
  return $EVENT(ctx, state, "As", As$0);
10782
10838
  }
10783
- var At$0 = $TV($EXPECT($L115, 'At "@"'), function($skip, $loc, $0, $1) {
10839
+ var At$0 = $TV($EXPECT($L116, 'At "@"'), function($skip, $loc, $0, $1) {
10784
10840
  return { $loc, token: $1 };
10785
10841
  });
10786
10842
  function At(ctx, state) {
10787
10843
  return $EVENT(ctx, state, "At", At$0);
10788
10844
  }
10789
- var AtAt$0 = $TV($EXPECT($L116, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
10845
+ var AtAt$0 = $TV($EXPECT($L117, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
10790
10846
  return { $loc, token: "@" };
10791
10847
  });
10792
10848
  function AtAt(ctx, state) {
10793
10849
  return $EVENT(ctx, state, "AtAt", AtAt$0);
10794
10850
  }
10795
- var Async$0 = $TS($S($EXPECT($L117, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10851
+ var Async$0 = $TS($S($EXPECT($L118, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10796
10852
  return { $loc, token: $1, type: "Async" };
10797
10853
  });
10798
10854
  function Async(ctx, state) {
10799
10855
  return $EVENT(ctx, state, "Async", Async$0);
10800
10856
  }
10801
- var Await$0 = $TS($S($EXPECT($L118, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10857
+ var Await$0 = $TS($S($EXPECT($L119, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10802
10858
  return { $loc, token: $1, type: "Await" };
10803
10859
  });
10804
10860
  function Await(ctx, state) {
10805
10861
  return $EVENT(ctx, state, "Await", Await$0);
10806
10862
  }
10807
- var Backtick$0 = $TV($EXPECT($L119, 'Backtick "`"'), function($skip, $loc, $0, $1) {
10863
+ var Backtick$0 = $TV($EXPECT($L120, 'Backtick "`"'), function($skip, $loc, $0, $1) {
10808
10864
  return { $loc, token: $1 };
10809
10865
  });
10810
10866
  function Backtick(ctx, state) {
10811
10867
  return $EVENT(ctx, state, "Backtick", Backtick$0);
10812
10868
  }
10813
- var By$0 = $TS($S($EXPECT($L120, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10869
+ var By$0 = $TS($S($EXPECT($L121, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10814
10870
  return { $loc, token: $1 };
10815
10871
  });
10816
10872
  function By(ctx, state) {
10817
10873
  return $EVENT(ctx, state, "By", By$0);
10818
10874
  }
10819
- var Case$0 = $TS($S($EXPECT($L121, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10875
+ var Caret$0 = $TV($EXPECT($L18, 'Caret "^"'), function($skip, $loc, $0, $1) {
10876
+ return { $loc, token: $1 };
10877
+ });
10878
+ function Caret(ctx, state) {
10879
+ return $EVENT(ctx, state, "Caret", Caret$0);
10880
+ }
10881
+ var Case$0 = $TS($S($EXPECT($L122, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10820
10882
  return { $loc, token: $1 };
10821
10883
  });
10822
10884
  function Case(ctx, state) {
10823
10885
  return $EVENT(ctx, state, "Case", Case$0);
10824
10886
  }
10825
- var Catch$0 = $TS($S($EXPECT($L122, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10887
+ var Catch$0 = $TS($S($EXPECT($L123, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10826
10888
  return { $loc, token: $1 };
10827
10889
  });
10828
10890
  function Catch(ctx, state) {
10829
10891
  return $EVENT(ctx, state, "Catch", Catch$0);
10830
10892
  }
10831
- var Class$0 = $TS($S($EXPECT($L123, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10893
+ var Class$0 = $TS($S($EXPECT($L124, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10832
10894
  return { $loc, token: $1 };
10833
10895
  });
10834
10896
  function Class(ctx, state) {
@@ -10852,13 +10914,13 @@ ${input.slice(result.pos)}
10852
10914
  function CloseBracket(ctx, state) {
10853
10915
  return $EVENT(ctx, state, "CloseBracket", CloseBracket$0);
10854
10916
  }
10855
- var CloseParen$0 = $TV($EXPECT($L112, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
10917
+ var CloseParen$0 = $TV($EXPECT($L113, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
10856
10918
  return { $loc, token: $1 };
10857
10919
  });
10858
10920
  function CloseParen(ctx, state) {
10859
10921
  return $EVENT(ctx, state, "CloseParen", CloseParen$0);
10860
10922
  }
10861
- var CoffeeSubstitutionStart$0 = $TV($EXPECT($L124, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
10923
+ var CoffeeSubstitutionStart$0 = $TV($EXPECT($L125, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
10862
10924
  return { $loc, token: "${" };
10863
10925
  });
10864
10926
  function CoffeeSubstitutionStart(ctx, state) {
@@ -10876,31 +10938,31 @@ ${input.slice(result.pos)}
10876
10938
  function Comma(ctx, state) {
10877
10939
  return $EVENT(ctx, state, "Comma", Comma$0);
10878
10940
  }
10879
- var ConstructorShorthand$0 = $TV($EXPECT($L115, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
10941
+ var ConstructorShorthand$0 = $TV($EXPECT($L116, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
10880
10942
  return { $loc, token: "constructor" };
10881
10943
  });
10882
10944
  function ConstructorShorthand(ctx, state) {
10883
10945
  return $EVENT(ctx, state, "ConstructorShorthand", ConstructorShorthand$0);
10884
10946
  }
10885
- var Declare$0 = $TS($S($EXPECT($L125, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10947
+ var Declare$0 = $TS($S($EXPECT($L126, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10886
10948
  return { $loc, token: $1 };
10887
10949
  });
10888
10950
  function Declare(ctx, state) {
10889
10951
  return $EVENT(ctx, state, "Declare", Declare$0);
10890
10952
  }
10891
- var Default$0 = $TS($S($EXPECT($L126, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10953
+ var Default$0 = $TS($S($EXPECT($L127, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10892
10954
  return { $loc, token: $1 };
10893
10955
  });
10894
10956
  function Default(ctx, state) {
10895
10957
  return $EVENT(ctx, state, "Default", Default$0);
10896
10958
  }
10897
- var Delete$0 = $TS($S($EXPECT($L127, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10959
+ var Delete$0 = $TS($S($EXPECT($L128, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10898
10960
  return { $loc, token: $1 };
10899
10961
  });
10900
10962
  function Delete(ctx, state) {
10901
10963
  return $EVENT(ctx, state, "Delete", Delete$0);
10902
10964
  }
10903
- var Do$0 = $TS($S($EXPECT($L128, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10965
+ var Do$0 = $TS($S($EXPECT($L129, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10904
10966
  return { $loc, token: $1 };
10905
10967
  });
10906
10968
  function Do(ctx, state) {
@@ -10920,45 +10982,45 @@ ${input.slice(result.pos)}
10920
10982
  function Dot(ctx, state) {
10921
10983
  return $EVENT_C(ctx, state, "Dot", Dot$$);
10922
10984
  }
10923
- var DotDot$0 = $TS($S($EXPECT($L129, 'DotDot ".."'), $N($EXPECT($L6, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
10985
+ var DotDot$0 = $TS($S($EXPECT($L130, 'DotDot ".."'), $N($EXPECT($L6, 'DotDot "."'))), function($skip, $loc, $0, $1, $2) {
10924
10986
  return { $loc, token: $1 };
10925
10987
  });
10926
- var DotDot$1 = $TV($EXPECT($L130, 'DotDot "\u2025"'), function($skip, $loc, $0, $1) {
10988
+ var DotDot$1 = $TV($EXPECT($L131, 'DotDot "\u2025"'), function($skip, $loc, $0, $1) {
10927
10989
  return { $loc, token: ".." };
10928
10990
  });
10929
10991
  var DotDot$$ = [DotDot$0, DotDot$1];
10930
10992
  function DotDot(ctx, state) {
10931
10993
  return $EVENT_C(ctx, state, "DotDot", DotDot$$);
10932
10994
  }
10933
- var DotDotDot$0 = $TV($EXPECT($L131, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
10995
+ var DotDotDot$0 = $TV($EXPECT($L132, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
10934
10996
  return { $loc, token: $1 };
10935
10997
  });
10936
- var DotDotDot$1 = $TV($EXPECT($L132, 'DotDotDot "\u2026"'), function($skip, $loc, $0, $1) {
10998
+ var DotDotDot$1 = $TV($EXPECT($L133, 'DotDotDot "\u2026"'), function($skip, $loc, $0, $1) {
10937
10999
  return { $loc, token: "..." };
10938
11000
  });
10939
11001
  var DotDotDot$$ = [DotDotDot$0, DotDotDot$1];
10940
11002
  function DotDotDot(ctx, state) {
10941
11003
  return $EVENT_C(ctx, state, "DotDotDot", DotDotDot$$);
10942
11004
  }
10943
- var DoubleColon$0 = $TV($EXPECT($L133, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
11005
+ var DoubleColon$0 = $TV($EXPECT($L134, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
10944
11006
  return { $loc, token: $1 };
10945
11007
  });
10946
11008
  function DoubleColon(ctx, state) {
10947
11009
  return $EVENT(ctx, state, "DoubleColon", DoubleColon$0);
10948
11010
  }
10949
- var DoubleQuote$0 = $TV($EXPECT($L134, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
11011
+ var DoubleQuote$0 = $TV($EXPECT($L135, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
10950
11012
  return { $loc, token: $1 };
10951
11013
  });
10952
11014
  function DoubleQuote(ctx, state) {
10953
11015
  return $EVENT(ctx, state, "DoubleQuote", DoubleQuote$0);
10954
11016
  }
10955
- var Each$0 = $TS($S($EXPECT($L135, 'Each "each"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11017
+ var Each$0 = $TS($S($EXPECT($L136, 'Each "each"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10956
11018
  return { $loc, token: $1 };
10957
11019
  });
10958
11020
  function Each(ctx, state) {
10959
11021
  return $EVENT(ctx, state, "Each", Each$0);
10960
11022
  }
10961
- var Else$0 = $TS($S($EXPECT($L136, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11023
+ var Else$0 = $TS($S($EXPECT($L137, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10962
11024
  return { $loc, token: $1 };
10963
11025
  });
10964
11026
  function Else(ctx, state) {
@@ -10970,55 +11032,55 @@ ${input.slice(result.pos)}
10970
11032
  function Equals(ctx, state) {
10971
11033
  return $EVENT(ctx, state, "Equals", Equals$0);
10972
11034
  }
10973
- var Export$0 = $TS($S($EXPECT($L137, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11035
+ var Export$0 = $TS($S($EXPECT($L138, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10974
11036
  return { $loc, token: $1 };
10975
11037
  });
10976
11038
  function Export(ctx, state) {
10977
11039
  return $EVENT(ctx, state, "Export", Export$0);
10978
11040
  }
10979
- var Extends$0 = $TS($S($EXPECT($L138, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11041
+ var Extends$0 = $TS($S($EXPECT($L139, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10980
11042
  return { $loc, token: $1 };
10981
11043
  });
10982
11044
  function Extends(ctx, state) {
10983
11045
  return $EVENT(ctx, state, "Extends", Extends$0);
10984
11046
  }
10985
- var Finally$0 = $TS($S($EXPECT($L139, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11047
+ var Finally$0 = $TS($S($EXPECT($L140, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10986
11048
  return { $loc, token: $1 };
10987
11049
  });
10988
11050
  function Finally(ctx, state) {
10989
11051
  return $EVENT(ctx, state, "Finally", Finally$0);
10990
11052
  }
10991
- var For$0 = $TS($S($EXPECT($L140, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11053
+ var For$0 = $TS($S($EXPECT($L141, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10992
11054
  return { $loc, token: $1 };
10993
11055
  });
10994
11056
  function For(ctx, state) {
10995
11057
  return $EVENT(ctx, state, "For", For$0);
10996
11058
  }
10997
- var From$0 = $TS($S($EXPECT($L141, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11059
+ var From$0 = $TS($S($EXPECT($L142, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10998
11060
  return { $loc, token: $1 };
10999
11061
  });
11000
11062
  function From(ctx, state) {
11001
11063
  return $EVENT(ctx, state, "From", From$0);
11002
11064
  }
11003
- var Function$0 = $TS($S($EXPECT($L142, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11065
+ var Function$0 = $TS($S($EXPECT($L143, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11004
11066
  return { $loc, token: $1 };
11005
11067
  });
11006
11068
  function Function(ctx, state) {
11007
11069
  return $EVENT(ctx, state, "Function", Function$0);
11008
11070
  }
11009
- var GetOrSet$0 = $TS($S($C($EXPECT($L143, 'GetOrSet "get"'), $EXPECT($L144, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11071
+ var GetOrSet$0 = $TS($S($C($EXPECT($L144, 'GetOrSet "get"'), $EXPECT($L145, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11010
11072
  return { $loc, token: $1, type: "GetOrSet" };
11011
11073
  });
11012
11074
  function GetOrSet(ctx, state) {
11013
11075
  return $EVENT(ctx, state, "GetOrSet", GetOrSet$0);
11014
11076
  }
11015
- var Hash$0 = $TV($EXPECT($L145, 'Hash "#"'), function($skip, $loc, $0, $1) {
11077
+ var Hash$0 = $TV($EXPECT($L146, 'Hash "#"'), function($skip, $loc, $0, $1) {
11016
11078
  return { $loc, token: $1 };
11017
11079
  });
11018
11080
  function Hash(ctx, state) {
11019
11081
  return $EVENT(ctx, state, "Hash", Hash$0);
11020
11082
  }
11021
- var If$0 = $TV($TEXT($S($EXPECT($L146, 'If "if"'), NonIdContinue, $E($EXPECT($L12, 'If " "')))), function($skip, $loc, $0, $1) {
11083
+ var If$0 = $TV($TEXT($S($EXPECT($L147, 'If "if"'), NonIdContinue, $E($EXPECT($L12, 'If " "')))), function($skip, $loc, $0, $1) {
11022
11084
  return { $loc, token: $1 };
11023
11085
  });
11024
11086
  function If(ctx, state) {
@@ -11030,25 +11092,25 @@ ${input.slice(result.pos)}
11030
11092
  function Import(ctx, state) {
11031
11093
  return $EVENT(ctx, state, "Import", Import$0);
11032
11094
  }
11033
- var In$0 = $TS($S($EXPECT($L147, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11095
+ var In$0 = $TS($S($EXPECT($L148, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11034
11096
  return { $loc, token: $1 };
11035
11097
  });
11036
11098
  function In(ctx, state) {
11037
11099
  return $EVENT(ctx, state, "In", In$0);
11038
11100
  }
11039
- var LetOrConst$0 = $TS($S($C($EXPECT($L148, 'LetOrConst "let"'), $EXPECT($L149, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11101
+ var LetOrConst$0 = $TS($S($C($EXPECT($L149, 'LetOrConst "let"'), $EXPECT($L150, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11040
11102
  return { $loc, token: $1 };
11041
11103
  });
11042
11104
  function LetOrConst(ctx, state) {
11043
11105
  return $EVENT(ctx, state, "LetOrConst", LetOrConst$0);
11044
11106
  }
11045
- var Const$0 = $TS($S($EXPECT($L149, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11107
+ var Const$0 = $TS($S($EXPECT($L150, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11046
11108
  return { $loc, token: $1 };
11047
11109
  });
11048
11110
  function Const(ctx, state) {
11049
11111
  return $EVENT(ctx, state, "Const", Const$0);
11050
11112
  }
11051
- var Is$0 = $TS($S($EXPECT($L150, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11113
+ var Is$0 = $TS($S($EXPECT($L151, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11052
11114
  return { $loc, token: $1 };
11053
11115
  });
11054
11116
  function Is(ctx, state) {
@@ -11060,25 +11122,25 @@ ${input.slice(result.pos)}
11060
11122
  function LetOrConstOrVar(ctx, state) {
11061
11123
  return $EVENT_C(ctx, state, "LetOrConstOrVar", LetOrConstOrVar$$);
11062
11124
  }
11063
- var Loop$0 = $TS($S($EXPECT($L151, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11125
+ var Loop$0 = $TS($S($EXPECT($L152, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11064
11126
  return { $loc, token: "while(true)" };
11065
11127
  });
11066
11128
  function Loop(ctx, state) {
11067
11129
  return $EVENT(ctx, state, "Loop", Loop$0);
11068
11130
  }
11069
- var New$0 = $TS($S($EXPECT($L152, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11131
+ var New$0 = $TS($S($EXPECT($L153, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11070
11132
  return { $loc, token: $1 };
11071
11133
  });
11072
11134
  function New(ctx, state) {
11073
11135
  return $EVENT(ctx, state, "New", New$0);
11074
11136
  }
11075
- var Not$0 = $TS($S($EXPECT($L153, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L11, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
11137
+ var Not$0 = $TS($S($EXPECT($L154, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L11, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
11076
11138
  return { $loc, token: "!" };
11077
11139
  });
11078
11140
  function Not(ctx, state) {
11079
11141
  return $EVENT(ctx, state, "Not", Not$0);
11080
11142
  }
11081
- var Of$0 = $TS($S($EXPECT($L154, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11143
+ var Of$0 = $TS($S($EXPECT($L155, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11082
11144
  return { $loc, token: $1 };
11083
11145
  });
11084
11146
  function Of(ctx, state) {
@@ -11096,7 +11158,7 @@ ${input.slice(result.pos)}
11096
11158
  function OpenBrace(ctx, state) {
11097
11159
  return $EVENT(ctx, state, "OpenBrace", OpenBrace$0);
11098
11160
  }
11099
- var OpenBracket$0 = $TV($EXPECT($L155, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
11161
+ var OpenBracket$0 = $TV($EXPECT($L156, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
11100
11162
  return { $loc, token: $1 };
11101
11163
  });
11102
11164
  function OpenBracket(ctx, state) {
@@ -11108,43 +11170,43 @@ ${input.slice(result.pos)}
11108
11170
  function OpenParen(ctx, state) {
11109
11171
  return $EVENT(ctx, state, "OpenParen", OpenParen$0);
11110
11172
  }
11111
- var Operator$0 = $TS($S($EXPECT($L156, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11173
+ var Operator$0 = $TS($S($EXPECT($L157, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11112
11174
  return { $loc, token: $1 };
11113
11175
  });
11114
11176
  function Operator(ctx, state) {
11115
11177
  return $EVENT(ctx, state, "Operator", Operator$0);
11116
11178
  }
11117
- var Own$0 = $TS($S($EXPECT($L157, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11179
+ var Own$0 = $TS($S($EXPECT($L158, 'Own "own"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11118
11180
  return { $loc, token: $1 };
11119
11181
  });
11120
11182
  function Own(ctx, state) {
11121
11183
  return $EVENT(ctx, state, "Own", Own$0);
11122
11184
  }
11123
- var Public$0 = $TS($S($EXPECT($L158, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11185
+ var Public$0 = $TS($S($EXPECT($L159, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11124
11186
  return { $loc, token: $1 };
11125
11187
  });
11126
11188
  function Public(ctx, state) {
11127
11189
  return $EVENT(ctx, state, "Public", Public$0);
11128
11190
  }
11129
- var Private$0 = $TS($S($EXPECT($L159, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11191
+ var Private$0 = $TS($S($EXPECT($L160, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11130
11192
  return { $loc, token: $1 };
11131
11193
  });
11132
11194
  function Private(ctx, state) {
11133
11195
  return $EVENT(ctx, state, "Private", Private$0);
11134
11196
  }
11135
- var Protected$0 = $TS($S($EXPECT($L160, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11197
+ var Protected$0 = $TS($S($EXPECT($L161, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11136
11198
  return { $loc, token: $1 };
11137
11199
  });
11138
11200
  function Protected(ctx, state) {
11139
11201
  return $EVENT(ctx, state, "Protected", Protected$0);
11140
11202
  }
11141
- var Pipe$0 = $TV($C($EXPECT($L161, 'Pipe "||>"'), $EXPECT($L162, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
11203
+ var Pipe$0 = $TV($C($EXPECT($L162, 'Pipe "||>"'), $EXPECT($L163, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
11142
11204
  return { $loc, token: "||>" };
11143
11205
  });
11144
- var Pipe$1 = $TV($C($EXPECT($L163, 'Pipe "|>="'), $EXPECT($L164, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
11206
+ var Pipe$1 = $TV($C($EXPECT($L164, 'Pipe "|>="'), $EXPECT($L165, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
11145
11207
  return { $loc, token: "|>=" };
11146
11208
  });
11147
- var Pipe$2 = $TV($C($EXPECT($L165, 'Pipe "|>"'), $EXPECT($L166, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
11209
+ var Pipe$2 = $TV($C($EXPECT($L166, 'Pipe "|>"'), $EXPECT($L167, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
11148
11210
  return { $loc, token: "|>" };
11149
11211
  });
11150
11212
  var Pipe$$ = [Pipe$0, Pipe$1, Pipe$2];
@@ -11157,19 +11219,19 @@ ${input.slice(result.pos)}
11157
11219
  function QuestionMark(ctx, state) {
11158
11220
  return $EVENT(ctx, state, "QuestionMark", QuestionMark$0);
11159
11221
  }
11160
- var Readonly$0 = $TS($S($EXPECT($L167, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11222
+ var Readonly$0 = $TS($S($EXPECT($L168, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11161
11223
  return { $loc, token: $1, ts: true };
11162
11224
  });
11163
11225
  function Readonly(ctx, state) {
11164
11226
  return $EVENT(ctx, state, "Readonly", Readonly$0);
11165
11227
  }
11166
- var Return$0 = $TS($S($EXPECT($L168, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11228
+ var Return$0 = $TS($S($EXPECT($L169, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11167
11229
  return { $loc, token: $1 };
11168
11230
  });
11169
11231
  function Return(ctx, state) {
11170
11232
  return $EVENT(ctx, state, "Return", Return$0);
11171
11233
  }
11172
- var Satisfies$0 = $TS($S($EXPECT($L169, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11234
+ var Satisfies$0 = $TS($S($EXPECT($L170, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11173
11235
  return { $loc, token: $1 };
11174
11236
  });
11175
11237
  function Satisfies(ctx, state) {
@@ -11181,7 +11243,7 @@ ${input.slice(result.pos)}
11181
11243
  function Semicolon(ctx, state) {
11182
11244
  return $EVENT(ctx, state, "Semicolon", Semicolon$0);
11183
11245
  }
11184
- var SingleQuote$0 = $TV($EXPECT($L170, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
11246
+ var SingleQuote$0 = $TV($EXPECT($L171, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
11185
11247
  return { $loc, token: $1 };
11186
11248
  });
11187
11249
  function SingleQuote(ctx, state) {
@@ -11193,137 +11255,137 @@ ${input.slice(result.pos)}
11193
11255
  function Star(ctx, state) {
11194
11256
  return $EVENT(ctx, state, "Star", Star$0);
11195
11257
  }
11196
- var Static$0 = $TS($S($EXPECT($L171, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11258
+ var Static$0 = $TS($S($EXPECT($L172, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11197
11259
  return { $loc, token: $1 };
11198
11260
  });
11199
- var Static$1 = $TS($S($EXPECT($L115, 'Static "@"'), $N($C($EXPECT($L4, 'Static "("'), $EXPECT($L115, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
11261
+ var Static$1 = $TS($S($EXPECT($L116, 'Static "@"'), $N($C($EXPECT($L4, 'Static "("'), $EXPECT($L116, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
11200
11262
  return { $loc, token: "static " };
11201
11263
  });
11202
11264
  var Static$$ = [Static$0, Static$1];
11203
11265
  function Static(ctx, state) {
11204
11266
  return $EVENT_C(ctx, state, "Static", Static$$);
11205
11267
  }
11206
- var SubstitutionStart$0 = $TV($EXPECT($L172, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
11268
+ var SubstitutionStart$0 = $TV($EXPECT($L173, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
11207
11269
  return { $loc, token: $1 };
11208
11270
  });
11209
11271
  function SubstitutionStart(ctx, state) {
11210
11272
  return $EVENT(ctx, state, "SubstitutionStart", SubstitutionStart$0);
11211
11273
  }
11212
- var Super$0 = $TS($S($EXPECT($L173, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11274
+ var Super$0 = $TS($S($EXPECT($L174, 'Super "super"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11213
11275
  return { $loc, token: $1 };
11214
11276
  });
11215
11277
  function Super(ctx, state) {
11216
11278
  return $EVENT(ctx, state, "Super", Super$0);
11217
11279
  }
11218
- var Switch$0 = $TS($S($EXPECT($L174, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11280
+ var Switch$0 = $TS($S($EXPECT($L175, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11219
11281
  return { $loc, token: $1 };
11220
11282
  });
11221
11283
  function Switch(ctx, state) {
11222
11284
  return $EVENT(ctx, state, "Switch", Switch$0);
11223
11285
  }
11224
- var Target$0 = $TS($S($EXPECT($L175, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11286
+ var Target$0 = $TS($S($EXPECT($L176, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11225
11287
  return { $loc, token: $1 };
11226
11288
  });
11227
11289
  function Target(ctx, state) {
11228
11290
  return $EVENT(ctx, state, "Target", Target$0);
11229
11291
  }
11230
- var Then$0 = $TS($S(__, $EXPECT($L176, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
11292
+ var Then$0 = $TS($S(__, $EXPECT($L177, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
11231
11293
  return { $loc, token: "" };
11232
11294
  });
11233
11295
  function Then(ctx, state) {
11234
11296
  return $EVENT(ctx, state, "Then", Then$0);
11235
11297
  }
11236
- var This$0 = $TS($S($EXPECT($L177, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11298
+ var This$0 = $TS($S($EXPECT($L178, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11237
11299
  return { $loc, token: $1 };
11238
11300
  });
11239
11301
  function This(ctx, state) {
11240
11302
  return $EVENT(ctx, state, "This", This$0);
11241
11303
  }
11242
- var Throw$0 = $TS($S($EXPECT($L178, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11304
+ var Throw$0 = $TS($S($EXPECT($L179, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11243
11305
  return { $loc, token: $1 };
11244
11306
  });
11245
11307
  function Throw(ctx, state) {
11246
11308
  return $EVENT(ctx, state, "Throw", Throw$0);
11247
11309
  }
11248
- var TripleDoubleQuote$0 = $TV($EXPECT($L179, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
11310
+ var TripleDoubleQuote$0 = $TV($EXPECT($L180, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
11249
11311
  return { $loc, token: "`" };
11250
11312
  });
11251
11313
  function TripleDoubleQuote(ctx, state) {
11252
11314
  return $EVENT(ctx, state, "TripleDoubleQuote", TripleDoubleQuote$0);
11253
11315
  }
11254
- var TripleSingleQuote$0 = $TV($EXPECT($L180, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
11316
+ var TripleSingleQuote$0 = $TV($EXPECT($L181, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
11255
11317
  return { $loc, token: "`" };
11256
11318
  });
11257
11319
  function TripleSingleQuote(ctx, state) {
11258
11320
  return $EVENT(ctx, state, "TripleSingleQuote", TripleSingleQuote$0);
11259
11321
  }
11260
- var TripleSlash$0 = $TV($EXPECT($L181, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
11322
+ var TripleSlash$0 = $TV($EXPECT($L182, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
11261
11323
  return { $loc, token: "/" };
11262
11324
  });
11263
11325
  function TripleSlash(ctx, state) {
11264
11326
  return $EVENT(ctx, state, "TripleSlash", TripleSlash$0);
11265
11327
  }
11266
- var TripleTick$0 = $TV($EXPECT($L182, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
11328
+ var TripleTick$0 = $TV($EXPECT($L183, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
11267
11329
  return { $loc, token: "`" };
11268
11330
  });
11269
11331
  function TripleTick(ctx, state) {
11270
11332
  return $EVENT(ctx, state, "TripleTick", TripleTick$0);
11271
11333
  }
11272
- var Try$0 = $TS($S($EXPECT($L183, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11334
+ var Try$0 = $TS($S($EXPECT($L184, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11273
11335
  return { $loc, token: $1 };
11274
11336
  });
11275
11337
  function Try(ctx, state) {
11276
11338
  return $EVENT(ctx, state, "Try", Try$0);
11277
11339
  }
11278
- var Typeof$0 = $TS($S($EXPECT($L184, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11340
+ var Typeof$0 = $TS($S($EXPECT($L185, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11279
11341
  return { $loc, token: $1 };
11280
11342
  });
11281
11343
  function Typeof(ctx, state) {
11282
11344
  return $EVENT(ctx, state, "Typeof", Typeof$0);
11283
11345
  }
11284
- var Unless$0 = $TS($S($EXPECT($L185, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11346
+ var Unless$0 = $TS($S($EXPECT($L186, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11285
11347
  return { $loc, token: $1 };
11286
11348
  });
11287
11349
  function Unless(ctx, state) {
11288
11350
  return $EVENT(ctx, state, "Unless", Unless$0);
11289
11351
  }
11290
- var Until$0 = $TS($S($EXPECT($L186, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11352
+ var Until$0 = $TS($S($EXPECT($L187, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11291
11353
  return { $loc, token: $1 };
11292
11354
  });
11293
11355
  function Until(ctx, state) {
11294
11356
  return $EVENT(ctx, state, "Until", Until$0);
11295
11357
  }
11296
- var Using$0 = $TS($S($EXPECT($L187, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11358
+ var Using$0 = $TS($S($EXPECT($L188, 'Using "using"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11297
11359
  return { $loc, token: $1 };
11298
11360
  });
11299
11361
  function Using(ctx, state) {
11300
11362
  return $EVENT(ctx, state, "Using", Using$0);
11301
11363
  }
11302
- var Var$0 = $TS($S($EXPECT($L188, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11364
+ var Var$0 = $TS($S($EXPECT($L189, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11303
11365
  return { $loc, token: $1 };
11304
11366
  });
11305
11367
  function Var(ctx, state) {
11306
11368
  return $EVENT(ctx, state, "Var", Var$0);
11307
11369
  }
11308
- var Void$0 = $TS($S($EXPECT($L189, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11370
+ var Void$0 = $TS($S($EXPECT($L190, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11309
11371
  return { $loc, token: $1 };
11310
11372
  });
11311
11373
  function Void(ctx, state) {
11312
11374
  return $EVENT(ctx, state, "Void", Void$0);
11313
11375
  }
11314
- var When$0 = $TS($S($EXPECT($L190, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11376
+ var When$0 = $TS($S($EXPECT($L191, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11315
11377
  return { $loc, token: "case" };
11316
11378
  });
11317
11379
  function When(ctx, state) {
11318
11380
  return $EVENT(ctx, state, "When", When$0);
11319
11381
  }
11320
- var While$0 = $TS($S($EXPECT($L191, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11382
+ var While$0 = $TS($S($EXPECT($L192, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11321
11383
  return { $loc, token: $1 };
11322
11384
  });
11323
11385
  function While(ctx, state) {
11324
11386
  return $EVENT(ctx, state, "While", While$0);
11325
11387
  }
11326
- var Yield$0 = $TS($S($EXPECT($L192, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11388
+ var Yield$0 = $TS($S($EXPECT($L193, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
11327
11389
  return { $loc, token: $1, type: "Yield" };
11328
11390
  });
11329
11391
  function Yield(ctx, state) {
@@ -11402,7 +11464,7 @@ ${input.slice(result.pos)}
11402
11464
  function JSXElement(ctx, state) {
11403
11465
  return $EVENT_C(ctx, state, "JSXElement", JSXElement$$);
11404
11466
  }
11405
- var JSXSelfClosingElement$0 = $TS($S($EXPECT($L13, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L193, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
11467
+ 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) {
11406
11468
  return { type: "JSXElement", children: $0, tag: $2 };
11407
11469
  });
11408
11470
  function JSXSelfClosingElement(ctx, state) {
@@ -11436,7 +11498,7 @@ ${input.slice(result.pos)}
11436
11498
  function JSXOptionalClosingElement(ctx, state) {
11437
11499
  return $EVENT_C(ctx, state, "JSXOptionalClosingElement", JSXOptionalClosingElement$$);
11438
11500
  }
11439
- var JSXClosingElement$0 = $S($EXPECT($L194, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L34, 'JSXClosingElement ">"'));
11501
+ var JSXClosingElement$0 = $S($EXPECT($L195, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L34, 'JSXClosingElement ">"'));
11440
11502
  function JSXClosingElement(ctx, state) {
11441
11503
  return $EVENT(ctx, state, "JSXClosingElement", JSXClosingElement$0);
11442
11504
  }
@@ -11457,7 +11519,7 @@ ${input.slice(result.pos)}
11457
11519
  ];
11458
11520
  return { type: "JSXFragment", children: parts, jsxChildren: children.jsxChildren };
11459
11521
  });
11460
- var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L195, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11522
+ var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L196, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
11461
11523
  var children = $3;
11462
11524
  $0 = $0.slice(1);
11463
11525
  return {
@@ -11470,7 +11532,7 @@ ${input.slice(result.pos)}
11470
11532
  function JSXFragment(ctx, state) {
11471
11533
  return $EVENT_C(ctx, state, "JSXFragment", JSXFragment$$);
11472
11534
  }
11473
- var PushJSXOpeningFragment$0 = $TV($EXPECT($L195, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
11535
+ var PushJSXOpeningFragment$0 = $TV($EXPECT($L196, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
11474
11536
  module.JSXTagStack.push("");
11475
11537
  return $1;
11476
11538
  });
@@ -11487,11 +11549,11 @@ ${input.slice(result.pos)}
11487
11549
  function JSXOptionalClosingFragment(ctx, state) {
11488
11550
  return $EVENT_C(ctx, state, "JSXOptionalClosingFragment", JSXOptionalClosingFragment$$);
11489
11551
  }
11490
- var JSXClosingFragment$0 = $EXPECT($L196, 'JSXClosingFragment "</>"');
11552
+ var JSXClosingFragment$0 = $EXPECT($L197, 'JSXClosingFragment "</>"');
11491
11553
  function JSXClosingFragment(ctx, state) {
11492
11554
  return $EVENT(ctx, state, "JSXClosingFragment", JSXClosingFragment$0);
11493
11555
  }
11494
- var JSXElementName$0 = $TV($Y($S($C($EXPECT($L145, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
11556
+ var JSXElementName$0 = $TV($Y($S($C($EXPECT($L146, 'JSXElementName "#"'), Dot), JSXShorthandString)), function($skip, $loc, $0, $1) {
11495
11557
  return module.config.defaultElement;
11496
11558
  });
11497
11559
  var JSXElementName$1 = $TEXT($S(JSXIdentifierName, $C($S(Colon, JSXIdentifierName), $Q($S(Dot, JSXIdentifierName)))));
@@ -11663,7 +11725,7 @@ ${input.slice(result.pos)}
11663
11725
  }
11664
11726
  return $skip;
11665
11727
  });
11666
- var JSXAttribute$5 = $TS($S($EXPECT($L145, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
11728
+ var JSXAttribute$5 = $TS($S($EXPECT($L146, 'JSXAttribute "#"'), JSXShorthandString), function($skip, $loc, $0, $1, $2) {
11667
11729
  return [" ", "id=", $2];
11668
11730
  });
11669
11731
  var JSXAttribute$6 = $TS($S(Dot, JSXShorthandString), function($skip, $loc, $0, $1, $2) {
@@ -11956,7 +12018,7 @@ ${input.slice(result.pos)}
11956
12018
  function JSXChild(ctx, state) {
11957
12019
  return $EVENT_C(ctx, state, "JSXChild", JSXChild$$);
11958
12020
  }
11959
- var JSXComment$0 = $TS($S($EXPECT($L197, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L198, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
12021
+ var JSXComment$0 = $TS($S($EXPECT($L198, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L199, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
11960
12022
  return ["{/*", $2, "*/}"];
11961
12023
  });
11962
12024
  function JSXComment(ctx, state) {
@@ -12088,37 +12150,37 @@ ${input.slice(result.pos)}
12088
12150
  function InterfaceExtendsTarget(ctx, state) {
12089
12151
  return $EVENT(ctx, state, "InterfaceExtendsTarget", InterfaceExtendsTarget$0);
12090
12152
  }
12091
- var TypeKeyword$0 = $TS($S($EXPECT($L199, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12153
+ var TypeKeyword$0 = $TS($S($EXPECT($L200, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12092
12154
  return { $loc, token: $1 };
12093
12155
  });
12094
12156
  function TypeKeyword(ctx, state) {
12095
12157
  return $EVENT(ctx, state, "TypeKeyword", TypeKeyword$0);
12096
12158
  }
12097
- var Enum$0 = $TS($S($EXPECT($L200, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12159
+ var Enum$0 = $TS($S($EXPECT($L201, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12098
12160
  return { $loc, token: $1 };
12099
12161
  });
12100
12162
  function Enum(ctx, state) {
12101
12163
  return $EVENT(ctx, state, "Enum", Enum$0);
12102
12164
  }
12103
- var Interface$0 = $TS($S($EXPECT($L201, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12165
+ var Interface$0 = $TS($S($EXPECT($L202, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12104
12166
  return { $loc, token: $1 };
12105
12167
  });
12106
12168
  function Interface(ctx, state) {
12107
12169
  return $EVENT(ctx, state, "Interface", Interface$0);
12108
12170
  }
12109
- var Global$0 = $TS($S($EXPECT($L202, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12171
+ var Global$0 = $TS($S($EXPECT($L203, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12110
12172
  return { $loc, token: $1 };
12111
12173
  });
12112
12174
  function Global(ctx, state) {
12113
12175
  return $EVENT(ctx, state, "Global", Global$0);
12114
12176
  }
12115
- var Module$0 = $TS($S($EXPECT($L203, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12177
+ var Module$0 = $TS($S($EXPECT($L204, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12116
12178
  return { $loc, token: $1 };
12117
12179
  });
12118
12180
  function Module(ctx, state) {
12119
12181
  return $EVENT(ctx, state, "Module", Module$0);
12120
12182
  }
12121
- var Namespace$0 = $TS($S($EXPECT($L204, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12183
+ var Namespace$0 = $TS($S($EXPECT($L205, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12122
12184
  return { $loc, token: $1 };
12123
12185
  });
12124
12186
  function Namespace(ctx, state) {
@@ -12363,7 +12425,7 @@ ${input.slice(result.pos)}
12363
12425
  function ReturnTypeSuffix(ctx, state) {
12364
12426
  return $EVENT(ctx, state, "ReturnTypeSuffix", ReturnTypeSuffix$0);
12365
12427
  }
12366
- var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L205, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
12428
+ var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L206, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
12367
12429
  var asserts = $1;
12368
12430
  var t = $2;
12369
12431
  if (asserts) {
@@ -12384,7 +12446,7 @@ ${input.slice(result.pos)}
12384
12446
  function ReturnType(ctx, state) {
12385
12447
  return $EVENT(ctx, state, "ReturnType", ReturnType$0);
12386
12448
  }
12387
- var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L150, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
12449
+ var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L151, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
12388
12450
  var lhs = $1;
12389
12451
  var rhs = $2;
12390
12452
  if (!rhs)
@@ -12432,10 +12494,10 @@ ${input.slice(result.pos)}
12432
12494
  function TypeUnarySuffix(ctx, state) {
12433
12495
  return $EVENT_C(ctx, state, "TypeUnarySuffix", TypeUnarySuffix$$);
12434
12496
  }
12435
- var TypeUnaryOp$0 = $S($EXPECT($L206, 'TypeUnaryOp "keyof"'), NonIdContinue);
12436
- var TypeUnaryOp$1 = $S($EXPECT($L184, 'TypeUnaryOp "typeof"'), NonIdContinue);
12437
- var TypeUnaryOp$2 = $S($EXPECT($L207, 'TypeUnaryOp "infer"'), NonIdContinue);
12438
- var TypeUnaryOp$3 = $S($EXPECT($L167, 'TypeUnaryOp "readonly"'), NonIdContinue);
12497
+ var TypeUnaryOp$0 = $S($EXPECT($L207, 'TypeUnaryOp "keyof"'), NonIdContinue);
12498
+ var TypeUnaryOp$1 = $S($EXPECT($L185, 'TypeUnaryOp "typeof"'), NonIdContinue);
12499
+ var TypeUnaryOp$2 = $S($EXPECT($L208, 'TypeUnaryOp "infer"'), NonIdContinue);
12500
+ var TypeUnaryOp$3 = $S($EXPECT($L168, 'TypeUnaryOp "readonly"'), NonIdContinue);
12439
12501
  var TypeUnaryOp$$ = [TypeUnaryOp$0, TypeUnaryOp$1, TypeUnaryOp$2, TypeUnaryOp$3];
12440
12502
  function TypeUnaryOp(ctx, state) {
12441
12503
  return $EVENT_C(ctx, state, "TypeUnaryOp", TypeUnaryOp$$);
@@ -12444,7 +12506,7 @@ ${input.slice(result.pos)}
12444
12506
  function TypeIndexedAccess(ctx, state) {
12445
12507
  return $EVENT(ctx, state, "TypeIndexedAccess", TypeIndexedAccess$0);
12446
12508
  }
12447
- var UnknownAlias$0 = $TV($EXPECT($L208, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
12509
+ var UnknownAlias$0 = $TV($EXPECT($L209, 'UnknownAlias "???"'), function($skip, $loc, $0, $1) {
12448
12510
  return { $loc, token: "unknown" };
12449
12511
  });
12450
12512
  function UnknownAlias(ctx, state) {
@@ -12546,7 +12608,7 @@ ${input.slice(result.pos)}
12546
12608
  function NestedType(ctx, state) {
12547
12609
  return $EVENT(ctx, state, "NestedType", NestedType$0);
12548
12610
  }
12549
- var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L138, 'TypeConditional "extends"'), NonIdContinue, Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
12611
+ 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) {
12550
12612
  if ($2)
12551
12613
  return $0;
12552
12614
  return $1;
@@ -12584,10 +12646,10 @@ ${input.slice(result.pos)}
12584
12646
  }
12585
12647
  var TypeLiteral$0 = TypeTemplateLiteral;
12586
12648
  var TypeLiteral$1 = Literal;
12587
- var TypeLiteral$2 = $TS($S($EXPECT($L189, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12649
+ var TypeLiteral$2 = $TS($S($EXPECT($L190, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
12588
12650
  return { type: "VoidType", $loc, token: $1 };
12589
12651
  });
12590
- var TypeLiteral$3 = $TV($EXPECT($L209, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
12652
+ var TypeLiteral$3 = $TV($EXPECT($L210, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
12591
12653
  return { $loc, token: "[]" };
12592
12654
  });
12593
12655
  var TypeLiteral$$ = [TypeLiteral$0, TypeLiteral$1, TypeLiteral$2, TypeLiteral$3];
@@ -12606,7 +12668,7 @@ ${input.slice(result.pos)}
12606
12668
  var InlineInterfacePropertyDelimiter$1 = $T($S($Y($S($C(IndentedFurther, $E(_)), InlineBasicInterfaceProperty)), InsertComma), function(value) {
12607
12669
  return value[1];
12608
12670
  });
12609
- var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L11, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L112, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L35, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L26, 'InlineInterfacePropertyDelimiter "}"'))));
12671
+ var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L11, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L113, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L35, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L26, 'InlineInterfacePropertyDelimiter "}"'))));
12610
12672
  var InlineInterfacePropertyDelimiter$3 = $Y(EOS);
12611
12673
  var InlineInterfacePropertyDelimiter$$ = [InlineInterfacePropertyDelimiter$0, InlineInterfacePropertyDelimiter$1, InlineInterfacePropertyDelimiter$2, InlineInterfacePropertyDelimiter$3];
12612
12674
  function InlineInterfacePropertyDelimiter(ctx, state) {
@@ -12670,11 +12732,11 @@ ${input.slice(result.pos)}
12670
12732
  function TypeParameters(ctx, state) {
12671
12733
  return $EVENT(ctx, state, "TypeParameters", TypeParameters$0);
12672
12734
  }
12673
- var TypeParameter$0 = $S(__, $E($S($EXPECT($L149, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
12735
+ var TypeParameter$0 = $S(__, $E($S($EXPECT($L150, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
12674
12736
  function TypeParameter(ctx, state) {
12675
12737
  return $EVENT(ctx, state, "TypeParameter", TypeParameter$0);
12676
12738
  }
12677
- var TypeConstraint$0 = $S(__, $EXPECT($L138, 'TypeConstraint "extends"'), NonIdContinue, Type);
12739
+ var TypeConstraint$0 = $S(__, $EXPECT($L139, 'TypeConstraint "extends"'), NonIdContinue, Type);
12678
12740
  function TypeConstraint(ctx, state) {
12679
12741
  return $EVENT(ctx, state, "TypeConstraint", TypeConstraint$0);
12680
12742
  }
@@ -12713,7 +12775,7 @@ ${input.slice(result.pos)}
12713
12775
  function CivetPrologue(ctx, state) {
12714
12776
  return $EVENT_C(ctx, state, "CivetPrologue", CivetPrologue$$);
12715
12777
  }
12716
- var CivetPrologueContent$0 = $TS($S($EXPECT($L210, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R82, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
12778
+ var CivetPrologueContent$0 = $TS($S($EXPECT($L211, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R82, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
12717
12779
  var options = $3;
12718
12780
  return {
12719
12781
  type: "CivetPrologue",
@@ -13495,6 +13557,7 @@ ${input.slice(result.pos)}
13495
13557
  exports.OptionalDot = OptionalDot;
13496
13558
  exports.NonNullAssertion = NonNullAssertion;
13497
13559
  exports.MemberExpression = MemberExpression;
13560
+ exports.ActualMemberExpression = ActualMemberExpression;
13498
13561
  exports.MemberBase = MemberBase;
13499
13562
  exports.MemberExpressionRest = MemberExpressionRest;
13500
13563
  exports.MemberExpressionRestBody = MemberExpressionRestBody;
@@ -13707,6 +13770,7 @@ ${input.slice(result.pos)}
13707
13770
  exports.Condition = Condition;
13708
13771
  exports.DeclarationCondition = DeclarationCondition;
13709
13772
  exports.ExpressionWithIndentedApplicationForbidden = ExpressionWithIndentedApplicationForbidden;
13773
+ exports.SingleLineExpressionWithIndentedApplicationForbidden = SingleLineExpressionWithIndentedApplicationForbidden;
13710
13774
  exports.ExpressionWithObjectApplicationForbidden = ExpressionWithObjectApplicationForbidden;
13711
13775
  exports.LeftHandSideExpressionWithObjectApplicationForbidden = LeftHandSideExpressionWithObjectApplicationForbidden;
13712
13776
  exports.ForbidClassImplicitCall = ForbidClassImplicitCall;
@@ -13841,6 +13905,7 @@ ${input.slice(result.pos)}
13841
13905
  exports.Await = Await;
13842
13906
  exports.Backtick = Backtick;
13843
13907
  exports.By = By;
13908
+ exports.Caret = Caret;
13844
13909
  exports.Case = Case;
13845
13910
  exports.Catch = Catch;
13846
13911
  exports.Class = Class;