@danielx/civet 0.6.20 → 0.6.21

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/main.js CHANGED
@@ -343,11 +343,7 @@ var require_lib = __commonJS({
343
343
  exp.children.splice(i, 1, ...wrapIIFE(exp.children, exp.async));
344
344
  return;
345
345
  }
346
- const resultsRef = {
347
- type: "Ref",
348
- base: "results",
349
- id: "results"
350
- };
346
+ const resultsRef = makeRef("results");
351
347
  insertPush(exp.block, resultsRef);
352
348
  exp.children.splice(
353
349
  i,
@@ -425,10 +421,7 @@ var require_lib = __commonJS({
425
421
  const parts = [];
426
422
  let hoistDec, refAssignment;
427
423
  if (prefix.length > 1) {
428
- const ref = {
429
- type: "Ref",
430
- base: "ref"
431
- };
424
+ const ref = makeRef();
432
425
  hoistDec = {
433
426
  type: "Declaration",
434
427
  children: ["let ", ref],
@@ -530,11 +523,7 @@ var require_lib = __commonJS({
530
523
  }
531
524
  return;
532
525
  }
533
- const resultsRef = {
534
- type: "Ref",
535
- base: "results",
536
- id: "results"
537
- };
526
+ const resultsRef = makeRef("results");
538
527
  const declaration = {
539
528
  type: "Declaration",
540
529
  children: ["const ", resultsRef, "=[];"]
@@ -1039,13 +1028,123 @@ var require_lib = __commonJS({
1039
1028
  if (target.token)
1040
1029
  return target.token.match(/^ ?/)[0];
1041
1030
  }
1031
+ function processForInOf($0) {
1032
+ let [awaits, each, open, declaration, declaration2, ws, inOf, exp, step, close] = $0;
1033
+ if (exp.type === "RangeExpression" && inOf.token === "of" && !declaration2) {
1034
+ return forRange(open, declaration, exp, step, close);
1035
+ } else if (step) {
1036
+ throw new Error("for..of/in cannot use 'by' except with range literals");
1037
+ }
1038
+ let eachError;
1039
+ let hoistDec, blockPrefix = [];
1040
+ if (each) {
1041
+ if (inOf.token === "of") {
1042
+ const counterRef = makeRef("i");
1043
+ const lenRef = makeRef("len");
1044
+ const expRef = maybeRef(exp);
1045
+ const increment = "++";
1046
+ let indexAssignment, assignmentNames = [...declaration.names];
1047
+ if (declaration2) {
1048
+ const [, , ws22, decl22] = declaration2;
1049
+ blockPrefix.push(["", [
1050
+ insertTrimmingSpace(ws22, ""),
1051
+ decl22,
1052
+ " = ",
1053
+ counterRef
1054
+ ], ";"]);
1055
+ assignmentNames.push(...decl22.names);
1056
+ }
1057
+ const expRefDec = expRef !== exp ? [insertTrimmingSpace(expRef, " "), " = ", insertTrimmingSpace(exp, ""), ", "] : [];
1058
+ blockPrefix.push(["", {
1059
+ type: "AssignmentExpression",
1060
+ children: [declaration, " = ", insertTrimmingSpace(expRef, ""), "[", counterRef, "]"],
1061
+ names: assignmentNames
1062
+ }, ";"]);
1063
+ declaration = {
1064
+ type: "Declaration",
1065
+ children: ["let ", ...expRefDec, counterRef, " = 0, ", lenRef, " = ", insertTrimmingSpace(expRef, ""), ".length"],
1066
+ names: []
1067
+ };
1068
+ const condition = [counterRef, " < ", lenRef, "; "];
1069
+ const children = [open, declaration, "; ", condition, counterRef, increment, close];
1070
+ return { declaration, children, blockPrefix };
1071
+ } else {
1072
+ eachError = {
1073
+ type: "Error",
1074
+ message: "'each' is only meaningful in for..of loops"
1075
+ };
1076
+ }
1077
+ }
1078
+ if (!declaration2) {
1079
+ return {
1080
+ declaration,
1081
+ children: [awaits, eachError, open, declaration, ws, inOf, exp, step, close]
1082
+ };
1083
+ }
1084
+ const [, , ws2, decl2] = declaration2;
1085
+ switch (inOf.token) {
1086
+ case "of": {
1087
+ const counterRef = makeRef("i");
1088
+ hoistDec = {
1089
+ type: "Declaration",
1090
+ children: ["let ", counterRef, " = 0"],
1091
+ names: []
1092
+ };
1093
+ blockPrefix.push(["", {
1094
+ type: "Declaration",
1095
+ children: [insertTrimmingSpace(ws2, ""), decl2, " = ", counterRef, "++"],
1096
+ names: decl2.names
1097
+ }, ";"]);
1098
+ break;
1099
+ }
1100
+ case "in": {
1101
+ const expRef = maybeRef(exp);
1102
+ if (expRef !== exp) {
1103
+ hoistDec = {
1104
+ type: "Declaration",
1105
+ children: ["let ", expRef],
1106
+ names: []
1107
+ };
1108
+ exp = {
1109
+ type: "AssignmentExpression",
1110
+ children: [" ", expRef, " =", exp]
1111
+ };
1112
+ }
1113
+ let { binding } = declaration;
1114
+ if (binding?.type !== "Identifier") {
1115
+ const keyRef = makeRef("key");
1116
+ blockPrefix.push(["", [
1117
+ declaration,
1118
+ " = ",
1119
+ keyRef
1120
+ ], ";"]);
1121
+ declaration = {
1122
+ type: "ForDeclaration",
1123
+ binding: binding = keyRef,
1124
+ children: ["const ", keyRef],
1125
+ names: []
1126
+ };
1127
+ }
1128
+ blockPrefix.push(["", {
1129
+ type: "Declaration",
1130
+ children: [insertTrimmingSpace(ws2, ""), decl2, " = ", insertTrimmingSpace(expRef, ""), "[", insertTrimmingSpace(binding, ""), "]"],
1131
+ names: decl2.names
1132
+ }, ";"]);
1133
+ break;
1134
+ }
1135
+ default:
1136
+ throw new Error(`for item, index must use 'of' or 'in' instead of '${inOf.token}'`);
1137
+ }
1138
+ return {
1139
+ declaration,
1140
+ children: [awaits, eachError, open, declaration, ws, inOf, exp, step, close],
1141
+ blockPrefix,
1142
+ hoistDec
1143
+ };
1144
+ }
1042
1145
  function forRange(open, forDeclaration, range, stepExp, close) {
1043
1146
  const { start, end, inclusive } = range;
1044
- const counterRef = {
1045
- type: "Ref",
1046
- base: "i",
1047
- id: "i"
1048
- };
1147
+ const counterRef = makeRef("i");
1049
1148
  let stepRef;
1050
1149
  if (stepExp) {
1051
1150
  stepExp = insertTrimmingSpace(stepExp, "");
@@ -1063,11 +1162,7 @@ var require_lib = __commonJS({
1063
1162
  } else if (start.type === "Literal" && end.type === "Literal") {
1064
1163
  asc = literalValue(start) <= literalValue(end);
1065
1164
  } else {
1066
- ascRef = {
1067
- type: "Ref",
1068
- base: "asc",
1069
- id: "asc"
1070
- };
1165
+ ascRef = makeRef("asc");
1071
1166
  ascDec = [", ", ascRef, " = ", startRef, " <= ", endRef];
1072
1167
  }
1073
1168
  let varAssign = [], varLetAssign = varAssign, varLet = varAssign, blockPrefix;
@@ -1207,15 +1302,6 @@ var require_lib = __commonJS({
1207
1302
  };
1208
1303
  }
1209
1304
  }
1210
- function maybeRef(exp, base = "ref") {
1211
- if (!needsRef(exp))
1212
- return exp;
1213
- return {
1214
- type: "Ref",
1215
- base,
1216
- id: base
1217
- };
1218
- }
1219
1305
  function modifyString(str) {
1220
1306
  return str.replace(/(^.?|[^\\]{2})(\\\\)*\n/g, "$1$2\\n");
1221
1307
  }
@@ -1311,13 +1397,20 @@ var require_lib = __commonJS({
1311
1397
  case "Identifier":
1312
1398
  case "Literal":
1313
1399
  return;
1314
- default:
1315
- return {
1316
- type: "Ref",
1317
- base,
1318
- id: base
1319
- };
1320
1400
  }
1401
+ return makeRef(base);
1402
+ }
1403
+ function makeRef(base = "ref") {
1404
+ return {
1405
+ type: "Ref",
1406
+ base,
1407
+ id: base
1408
+ };
1409
+ }
1410
+ function maybeRef(exp, base = "ref") {
1411
+ if (!needsRef(exp))
1412
+ return exp;
1413
+ return makeRef(base);
1321
1414
  }
1322
1415
  function processCoffeeInterpolation(s, parts, e, $loc) {
1323
1416
  if (parts.length === 0 || parts.length === 1 && parts[0].token != null) {
@@ -1810,11 +1903,7 @@ var require_lib = __commonJS({
1810
1903
  if (shared.length === 1)
1811
1904
  return;
1812
1905
  const refs = shared.map((p) => {
1813
- const ref = {
1814
- type: "Ref",
1815
- base: key,
1816
- id: key
1817
- };
1906
+ const ref = makeRef(key);
1818
1907
  aliasBinding(p, ref);
1819
1908
  return ref;
1820
1909
  });
@@ -1848,7 +1937,7 @@ var require_lib = __commonJS({
1848
1937
  if (expression.type === "ParenthesizedExpression") {
1849
1938
  expression = expression.expression;
1850
1939
  }
1851
- let hoistDec, refAssignment = [], ref = needsRef(expression, "m") || expression;
1940
+ let hoistDec, refAssignment = [], ref = maybeRef(expression, "m");
1852
1941
  if (ref !== expression) {
1853
1942
  hoistDec = {
1854
1943
  type: "Declaration",
@@ -1974,7 +2063,7 @@ var require_lib = __commonJS({
1974
2063
  arg.children.push(access);
1975
2064
  break outer;
1976
2065
  }
1977
- usingRef = needsRef({});
2066
+ usingRef = makeRef();
1978
2067
  initRef = {
1979
2068
  type: "AssignmentExpression",
1980
2069
  children: [usingRef, " = ", arg, ","]
@@ -2249,11 +2338,7 @@ var require_lib = __commonJS({
2249
2338
  );
2250
2339
  if (!values.length)
2251
2340
  return false;
2252
- const ref = {
2253
- type: "Ref",
2254
- base: "ret",
2255
- id: "ret"
2256
- };
2341
+ const ref = makeRef("ret");
2257
2342
  let declared;
2258
2343
  values.forEach((value) => {
2259
2344
  value.children = [ref];
@@ -2582,13 +2667,15 @@ var require_lib = __commonJS({
2582
2667
  makeAsConst,
2583
2668
  makeEmptyBlock,
2584
2669
  makeLeftHandSideExpression,
2670
+ makeRef,
2585
2671
  maybeRef,
2586
2672
  modifyString,
2587
2673
  needsRef,
2674
+ processAssignmentDeclaration,
2588
2675
  processBinaryOpExpression,
2589
2676
  processCallMemberExpression,
2590
2677
  processCoffeeInterpolation,
2591
- processAssignmentDeclaration,
2678
+ processForInOf,
2592
2679
  processParams,
2593
2680
  processProgram,
2594
2681
  processReturnValue,
@@ -3429,6 +3516,7 @@ ${input.slice(result.pos)}
3429
3516
  DotDotDot,
3430
3517
  DoubleColon,
3431
3518
  DoubleQuote,
3519
+ Each,
3432
3520
  Else,
3433
3521
  Equals,
3434
3522
  Export,
@@ -3795,75 +3883,76 @@ ${input.slice(result.pos)}
3795
3883
  var $L135 = $L("\u2026");
3796
3884
  var $L136 = $L("::");
3797
3885
  var $L137 = $L('"');
3798
- var $L138 = $L("else");
3799
- var $L139 = $L("export");
3800
- var $L140 = $L("extends");
3801
- var $L141 = $L("finally");
3802
- var $L142 = $L("for");
3803
- var $L143 = $L("from");
3804
- var $L144 = $L("function");
3805
- var $L145 = $L("get");
3806
- var $L146 = $L("set");
3807
- var $L147 = $L("if");
3808
- var $L148 = $L("in");
3809
- var $L149 = $L("let");
3810
- var $L150 = $L("const");
3811
- var $L151 = $L("is");
3812
- var $L152 = $L("loop");
3813
- var $L153 = $L("new");
3814
- var $L154 = $L("not");
3815
- var $L155 = $L("<");
3816
- var $L156 = $L("operator");
3817
- var $L157 = $L("public");
3818
- var $L158 = $L("private");
3819
- var $L159 = $L("protected");
3820
- var $L160 = $L("||>");
3821
- var $L161 = $L("|\u25B7");
3822
- var $L162 = $L("|>=");
3823
- var $L163 = $L("\u25B7=");
3824
- var $L164 = $L("|>");
3825
- var $L165 = $L("\u25B7");
3826
- var $L166 = $L("readonly");
3827
- var $L167 = $L("return");
3828
- var $L168 = $L("satisfies");
3829
- var $L169 = $L("'");
3830
- var $L170 = $L("static");
3831
- var $L171 = $L("${");
3832
- var $L172 = $L("switch");
3833
- var $L173 = $L("target");
3834
- var $L174 = $L("then");
3835
- var $L175 = $L("this");
3836
- var $L176 = $L("throw");
3837
- var $L177 = $L('"""');
3838
- var $L178 = $L("'''");
3839
- var $L179 = $L("///");
3840
- var $L180 = $L("```");
3841
- var $L181 = $L("try");
3842
- var $L182 = $L("typeof");
3843
- var $L183 = $L("unless");
3844
- var $L184 = $L("until");
3845
- var $L185 = $L("var");
3846
- var $L186 = $L("void");
3847
- var $L187 = $L("when");
3848
- var $L188 = $L("while");
3849
- var $L189 = $L("yield");
3850
- var $L190 = $L("/>");
3851
- var $L191 = $L("</");
3852
- var $L192 = $L("<>");
3853
- var $L193 = $L("</>");
3854
- var $L194 = $L("<!--");
3855
- var $L195 = $L("-->");
3856
- var $L196 = $L("type");
3857
- var $L197 = $L("enum");
3858
- var $L198 = $L("interface");
3859
- var $L199 = $L("global");
3860
- var $L200 = $L("module");
3861
- var $L201 = $L("namespace");
3862
- var $L202 = $L("asserts");
3863
- var $L203 = $L("keyof");
3864
- var $L204 = $L("infer");
3865
- var $L205 = $L("[]");
3866
- var $L206 = $L("civet");
3886
+ var $L138 = $L("each");
3887
+ var $L139 = $L("else");
3888
+ var $L140 = $L("export");
3889
+ var $L141 = $L("extends");
3890
+ var $L142 = $L("finally");
3891
+ var $L143 = $L("for");
3892
+ var $L144 = $L("from");
3893
+ var $L145 = $L("function");
3894
+ var $L146 = $L("get");
3895
+ var $L147 = $L("set");
3896
+ var $L148 = $L("if");
3897
+ var $L149 = $L("in");
3898
+ var $L150 = $L("let");
3899
+ var $L151 = $L("const");
3900
+ var $L152 = $L("is");
3901
+ var $L153 = $L("loop");
3902
+ var $L154 = $L("new");
3903
+ var $L155 = $L("not");
3904
+ var $L156 = $L("<");
3905
+ var $L157 = $L("operator");
3906
+ var $L158 = $L("public");
3907
+ var $L159 = $L("private");
3908
+ var $L160 = $L("protected");
3909
+ var $L161 = $L("||>");
3910
+ var $L162 = $L("|\u25B7");
3911
+ var $L163 = $L("|>=");
3912
+ var $L164 = $L("\u25B7=");
3913
+ var $L165 = $L("|>");
3914
+ var $L166 = $L("\u25B7");
3915
+ var $L167 = $L("readonly");
3916
+ var $L168 = $L("return");
3917
+ var $L169 = $L("satisfies");
3918
+ var $L170 = $L("'");
3919
+ var $L171 = $L("static");
3920
+ var $L172 = $L("${");
3921
+ var $L173 = $L("switch");
3922
+ var $L174 = $L("target");
3923
+ var $L175 = $L("then");
3924
+ var $L176 = $L("this");
3925
+ var $L177 = $L("throw");
3926
+ var $L178 = $L('"""');
3927
+ var $L179 = $L("'''");
3928
+ var $L180 = $L("///");
3929
+ var $L181 = $L("```");
3930
+ var $L182 = $L("try");
3931
+ var $L183 = $L("typeof");
3932
+ var $L184 = $L("unless");
3933
+ var $L185 = $L("until");
3934
+ var $L186 = $L("var");
3935
+ var $L187 = $L("void");
3936
+ var $L188 = $L("when");
3937
+ var $L189 = $L("while");
3938
+ var $L190 = $L("yield");
3939
+ var $L191 = $L("/>");
3940
+ var $L192 = $L("</");
3941
+ var $L193 = $L("<>");
3942
+ var $L194 = $L("</>");
3943
+ var $L195 = $L("<!--");
3944
+ var $L196 = $L("-->");
3945
+ var $L197 = $L("type");
3946
+ var $L198 = $L("enum");
3947
+ var $L199 = $L("interface");
3948
+ var $L200 = $L("global");
3949
+ var $L201 = $L("module");
3950
+ var $L202 = $L("namespace");
3951
+ var $L203 = $L("asserts");
3952
+ var $L204 = $L("keyof");
3953
+ var $L205 = $L("infer");
3954
+ var $L206 = $L("[]");
3955
+ var $L207 = $L("civet");
3867
3956
  var $R0 = $R(new RegExp("(as|of|satisfies|then|when|implements|xor|xnor)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
3868
3957
  var $R1 = $R(new RegExp("[0-9]", "suy"));
3869
3958
  var $R2 = $R(new RegExp("[)}]", "suy"));
@@ -3874,7 +3963,7 @@ ${input.slice(result.pos)}
3874
3963
  var $R7 = $R(new RegExp("<(?!\\p{ID_Start}|[_$])", "suy"));
3875
3964
  var $R8 = $R(new RegExp("!\\^\\^?", "suy"));
3876
3965
  var $R9 = $R(new RegExp("(?!\\+\\+|--)[!~+-](?!\\s|[!~+-]*[&.])", "suy"));
3877
- var $R10 = $R(new RegExp("(?=[\\s\\)])", "suy"));
3966
+ var $R10 = $R(new RegExp("(?=[\\s\\),])", "suy"));
3878
3967
  var $R11 = $R(new RegExp('[^;"\\s]+', "suy"));
3879
3968
  var $R12 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
3880
3969
  var $R13 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))", "suy"));
@@ -5508,10 +5597,7 @@ ${input.slice(result.pos)}
5508
5597
  var head = $2;
5509
5598
  var body = $3;
5510
5599
  if (head.token === "&") {
5511
- const ref = {
5512
- type: "Ref",
5513
- base: "$"
5514
- };
5600
+ const ref = makeRef("$");
5515
5601
  const arrowBody = {
5516
5602
  type: "PipelineExpression",
5517
5603
  children: [ws, ref, body]
@@ -7282,11 +7368,7 @@ ${input.slice(result.pos)}
7282
7368
  });
7283
7369
  var AtIdentifierRef$1 = $TV(IdentifierName, function($skip, $loc, $0, $1) {
7284
7370
  var id = $0;
7285
- return {
7286
- type: "Ref",
7287
- base: id.name,
7288
- id: id.name
7289
- };
7371
+ return makeRef(id.name);
7290
7372
  });
7291
7373
  function AtIdentifierRef(state) {
7292
7374
  let eventData;
@@ -7908,11 +7990,7 @@ ${input.slice(result.pos)}
7908
7990
  }
7909
7991
  }
7910
7992
  var EmptyBindingPattern$0 = $TV($EXPECT($L0, fail, 'EmptyBindingPattern ""'), function($skip, $loc, $0, $1) {
7911
- const ref = {
7912
- type: "Ref",
7913
- base: "ref",
7914
- id: "ref"
7915
- };
7993
+ const ref = makeRef();
7916
7994
  return {
7917
7995
  type: "EmptyBinding",
7918
7996
  children: [ref],
@@ -8070,11 +8148,7 @@ ${input.slice(result.pos)}
8070
8148
  return $skip;
8071
8149
  let body, ref;
8072
8150
  if (!rhs) {
8073
- body = ref = {
8074
- type: "Ref",
8075
- base: "$",
8076
- id: "$"
8077
- };
8151
+ body = ref = makeRef("$");
8078
8152
  } else {
8079
8153
  let exp = rhs;
8080
8154
  while (!exp.ref && exp.expression) {
@@ -8254,11 +8328,7 @@ ${input.slice(result.pos)}
8254
8328
  var binopRHS = $3;
8255
8329
  if (!callExpRest && !binopRHS && !unaryPostfix)
8256
8330
  return $skip;
8257
- const ref = {
8258
- type: "Ref",
8259
- base: "$",
8260
- id: "$"
8261
- };
8331
+ const ref = makeRef("$");
8262
8332
  let exp = {
8263
8333
  type: "AmpersandRef",
8264
8334
  children: [ref],
@@ -9636,12 +9706,7 @@ ${input.slice(result.pos)}
9636
9706
  var ws = $2;
9637
9707
  var dots = $3;
9638
9708
  if (!exp) {
9639
- exp = {
9640
- type: "Ref",
9641
- base: "ref",
9642
- id: "ref",
9643
- names: []
9644
- };
9709
+ exp = { ...makeRef(), names: [] };
9645
9710
  }
9646
9711
  return {
9647
9712
  type: "SpreadElement",
@@ -12237,7 +12302,8 @@ ${input.slice(result.pos)}
12237
12302
  children: [$1, ...$2, ...children],
12238
12303
  declaration,
12239
12304
  block: null,
12240
- blockPrefix: c.blockPrefix
12305
+ blockPrefix: c.blockPrefix,
12306
+ hoistDec: c.hoistDec
12241
12307
  };
12242
12308
  });
12243
12309
  function ForClause(state) {
@@ -12345,7 +12411,7 @@ ${input.slice(result.pos)}
12345
12411
  if (step) {
12346
12412
  throw new Error("Can't use 'by' with 'from' in CoffeeScript for loops");
12347
12413
  }
12348
- kind.token = "of";
12414
+ kind = { ...kind, token: "of" };
12349
12415
  } else if (kind.token === "of") {
12350
12416
  if (step) {
12351
12417
  throw new Error("Can't use 'by' with 'of' in CoffeeScript for loops");
@@ -12363,30 +12429,12 @@ ${input.slice(result.pos)}
12363
12429
  }
12364
12430
  kind.token = "in";
12365
12431
  } else if (kind.token === "in") {
12366
- const counterRef = {
12367
- type: "Ref",
12368
- base: "i",
12369
- id: "i"
12370
- };
12371
- const lenRef = {
12372
- type: "Ref",
12373
- base: "len",
12374
- id: "len"
12375
- };
12376
- let expRef;
12377
- switch (exp.type) {
12378
- case "Identifier":
12379
- expRef = exp;
12380
- break;
12381
- case "RangeExpression":
12382
- return forRange(open, declaration, exp, step?.[2], close);
12383
- default:
12384
- expRef = {
12385
- type: "Ref",
12386
- base: "ref",
12387
- id: "ref"
12388
- };
12432
+ const counterRef = makeRef("i");
12433
+ const lenRef = makeRef("len");
12434
+ if (exp.type === "RangeExpression") {
12435
+ return forRange(open, declaration, exp, step?.[2], close);
12389
12436
  }
12437
+ const expRef = maybeRef(exp);
12390
12438
  const varRef = declaration;
12391
12439
  let increment = "++", indexAssignment, assignmentNames = [...varRef.names];
12392
12440
  if (index) {
@@ -12541,39 +12589,11 @@ ${input.slice(result.pos)}
12541
12589
  children: $0
12542
12590
  };
12543
12591
  });
12544
- var ForStatementParameters$2 = $TS($S($E($S(Await, __)), OpenParen, __, ForInOfDeclaration, __, $C(In, Of), ExpressionWithObjectApplicationForbidden, $E($S(__, By, ExpressionWithObjectApplicationForbidden)), __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
12545
- var open = $2;
12546
- var declaration = $4;
12547
- var op = $6;
12548
- var exp = $7;
12549
- var step = $8;
12550
- var close = $10;
12551
- if (exp.type === "RangeExpression" && op.token === "of") {
12552
- return forRange(open, declaration, exp, step, close);
12553
- } else if (step) {
12554
- throw new Error("for..of/in cannot use 'by' except with range literals");
12555
- }
12556
- return {
12557
- declaration,
12558
- children: $0
12559
- };
12592
+ var ForStatementParameters$2 = $TS($S($E($S(Await, __)), $E($S(Each, __)), $S(OpenParen, __), ForInOfDeclaration, $E($S(__, Comma, __, ForInOfDeclaration)), __, $C(In, Of), ExpressionWithObjectApplicationForbidden, $E($S(__, By, ExpressionWithObjectApplicationForbidden)), $S(__, CloseParen)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
12593
+ return processForInOf($0);
12560
12594
  });
12561
- var ForStatementParameters$3 = $TS($S($E($S(Await, __)), InsertOpenParen, ForInOfDeclaration, __, $C(In, Of), ExpressionWithObjectApplicationForbidden, $E($S(__, By, ExpressionWithObjectApplicationForbidden)), InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
12562
- var open = $2;
12563
- var declaration = $3;
12564
- var op = $5;
12565
- var exp = $6;
12566
- var step = $7;
12567
- var close = $8;
12568
- if (exp.type === "RangeExpression" && op.token === "of") {
12569
- return forRange(open, declaration, exp, step, close);
12570
- } else if (step) {
12571
- throw new Error("for..of/in cannot use 'by' except with range literals");
12572
- }
12573
- return {
12574
- declaration,
12575
- children: $0
12576
- };
12595
+ var ForStatementParameters$3 = $TS($S($E($S(Await, __)), $E($S(Each, __)), InsertOpenParen, ForInOfDeclaration, $E($S(__, Comma, __, ForInOfDeclaration)), __, $C(In, Of), ExpressionWithObjectApplicationForbidden, $E($S(__, By, ExpressionWithObjectApplicationForbidden)), InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
12596
+ return processForInOf($0);
12577
12597
  });
12578
12598
  var ForStatementParameters$4 = ForRangeParameters;
12579
12599
  function ForStatementParameters(state) {
@@ -12640,6 +12660,7 @@ ${input.slice(result.pos)}
12640
12660
  type: "ForDeclaration",
12641
12661
  children: $0,
12642
12662
  declare: $1,
12663
+ binding,
12643
12664
  names: binding.names
12644
12665
  };
12645
12666
  });
@@ -12674,16 +12695,18 @@ ${input.slice(result.pos)}
12674
12695
  type: "ForDeclaration",
12675
12696
  children: [c, binding],
12676
12697
  declare: c,
12698
+ binding,
12677
12699
  names: binding.names
12678
12700
  };
12679
12701
  });
12680
- var ForDeclaration$1 = $TS($S(InsertConst, ForBinding, $EXPECT($R10, fail, "ForDeclaration /(?=[\\s\\)])/")), function($skip, $loc, $0, $1, $2, $3) {
12702
+ var ForDeclaration$1 = $TS($S(InsertConst, ForBinding, $EXPECT($R10, fail, "ForDeclaration /(?=[\\s\\),])/")), function($skip, $loc, $0, $1, $2, $3) {
12681
12703
  var c = $1;
12682
12704
  var binding = $2;
12683
12705
  return {
12684
12706
  type: "ForDeclaration",
12685
12707
  children: [c, binding],
12686
12708
  declare: c,
12709
+ binding,
12687
12710
  names: binding.names
12688
12711
  };
12689
12712
  });
@@ -13418,10 +13441,7 @@ ${input.slice(result.pos)}
13418
13441
  }
13419
13442
  var DeclarationCondition$0 = $TV(LexicalDeclaration, function($skip, $loc, $0, $1) {
13420
13443
  var dec = $0;
13421
- const ref = {
13422
- type: "Ref",
13423
- base: "ref"
13424
- };
13444
+ const ref = makeRef();
13425
13445
  const { decl, bindings } = dec;
13426
13446
  const binding = bindings[0];
13427
13447
  const { pattern, suffix, initializer, splices, thisAssignments } = binding;
@@ -17477,7 +17497,32 @@ ${input.slice(result.pos)}
17477
17497
  return result;
17478
17498
  }
17479
17499
  }
17480
- var Else$0 = $TS($S($EXPECT($L138, fail, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17500
+ var Each$0 = $TS($S($EXPECT($L138, fail, 'Each "each"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17501
+ return { $loc, token: $1 };
17502
+ });
17503
+ function Each(state) {
17504
+ let eventData;
17505
+ if (state.events) {
17506
+ const result = state.events.enter?.("Each", state);
17507
+ if (result) {
17508
+ if (result.cache)
17509
+ return result.cache;
17510
+ eventData = result.data;
17511
+ }
17512
+ }
17513
+ if (state.tokenize) {
17514
+ const result = $TOKEN("Each", state, Each$0(state));
17515
+ if (state.events)
17516
+ state.events.exit?.("Each", state, result, eventData);
17517
+ return result;
17518
+ } else {
17519
+ const result = Each$0(state);
17520
+ if (state.events)
17521
+ state.events.exit?.("Each", state, result, eventData);
17522
+ return result;
17523
+ }
17524
+ }
17525
+ var Else$0 = $TS($S($EXPECT($L139, fail, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17481
17526
  return { $loc, token: $1 };
17482
17527
  });
17483
17528
  function Else(state) {
@@ -17527,7 +17572,7 @@ ${input.slice(result.pos)}
17527
17572
  return result;
17528
17573
  }
17529
17574
  }
17530
- var Export$0 = $TS($S($EXPECT($L139, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17575
+ var Export$0 = $TS($S($EXPECT($L140, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17531
17576
  return { $loc, token: $1 };
17532
17577
  });
17533
17578
  function Export(state) {
@@ -17552,7 +17597,7 @@ ${input.slice(result.pos)}
17552
17597
  return result;
17553
17598
  }
17554
17599
  }
17555
- var Extends$0 = $TS($S($EXPECT($L140, fail, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17600
+ var Extends$0 = $TS($S($EXPECT($L141, fail, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17556
17601
  return { $loc, token: $1 };
17557
17602
  });
17558
17603
  function Extends(state) {
@@ -17577,7 +17622,7 @@ ${input.slice(result.pos)}
17577
17622
  return result;
17578
17623
  }
17579
17624
  }
17580
- var Finally$0 = $TS($S($EXPECT($L141, fail, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17625
+ var Finally$0 = $TS($S($EXPECT($L142, fail, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17581
17626
  return { $loc, token: $1 };
17582
17627
  });
17583
17628
  function Finally(state) {
@@ -17602,7 +17647,7 @@ ${input.slice(result.pos)}
17602
17647
  return result;
17603
17648
  }
17604
17649
  }
17605
- var For$0 = $TS($S($EXPECT($L142, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17650
+ var For$0 = $TS($S($EXPECT($L143, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17606
17651
  return { $loc, token: $1 };
17607
17652
  });
17608
17653
  function For(state) {
@@ -17627,7 +17672,7 @@ ${input.slice(result.pos)}
17627
17672
  return result;
17628
17673
  }
17629
17674
  }
17630
- var From$0 = $TS($S($EXPECT($L143, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17675
+ var From$0 = $TS($S($EXPECT($L144, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17631
17676
  return { $loc, token: $1 };
17632
17677
  });
17633
17678
  function From(state) {
@@ -17652,7 +17697,7 @@ ${input.slice(result.pos)}
17652
17697
  return result;
17653
17698
  }
17654
17699
  }
17655
- var Function$0 = $TS($S($EXPECT($L144, fail, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17700
+ var Function$0 = $TS($S($EXPECT($L145, fail, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17656
17701
  return { $loc, token: $1 };
17657
17702
  });
17658
17703
  function Function(state) {
@@ -17677,7 +17722,7 @@ ${input.slice(result.pos)}
17677
17722
  return result;
17678
17723
  }
17679
17724
  }
17680
- var GetOrSet$0 = $TS($S($C($EXPECT($L145, fail, 'GetOrSet "get"'), $EXPECT($L146, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17725
+ var GetOrSet$0 = $TS($S($C($EXPECT($L146, fail, 'GetOrSet "get"'), $EXPECT($L147, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17681
17726
  return { $loc, token: $1, type: "GetOrSet" };
17682
17727
  });
17683
17728
  function GetOrSet(state) {
@@ -17702,7 +17747,7 @@ ${input.slice(result.pos)}
17702
17747
  return result;
17703
17748
  }
17704
17749
  }
17705
- var If$0 = $TV($TEXT($S($EXPECT($L147, fail, 'If "if"'), NonIdContinue, $E($EXPECT($L11, fail, 'If " "')))), function($skip, $loc, $0, $1) {
17750
+ var If$0 = $TV($TEXT($S($EXPECT($L148, fail, 'If "if"'), NonIdContinue, $E($EXPECT($L11, fail, 'If " "')))), function($skip, $loc, $0, $1) {
17706
17751
  return { $loc, token: $1 };
17707
17752
  });
17708
17753
  function If(state) {
@@ -17752,7 +17797,7 @@ ${input.slice(result.pos)}
17752
17797
  return result;
17753
17798
  }
17754
17799
  }
17755
- var In$0 = $TS($S($EXPECT($L148, fail, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17800
+ var In$0 = $TS($S($EXPECT($L149, fail, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17756
17801
  return { $loc, token: $1 };
17757
17802
  });
17758
17803
  function In(state) {
@@ -17777,7 +17822,7 @@ ${input.slice(result.pos)}
17777
17822
  return result;
17778
17823
  }
17779
17824
  }
17780
- var LetOrConst$0 = $TS($S($C($EXPECT($L149, fail, 'LetOrConst "let"'), $EXPECT($L150, fail, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17825
+ var LetOrConst$0 = $TS($S($C($EXPECT($L150, fail, 'LetOrConst "let"'), $EXPECT($L151, fail, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17781
17826
  return { $loc, token: $1 };
17782
17827
  });
17783
17828
  function LetOrConst(state) {
@@ -17802,7 +17847,7 @@ ${input.slice(result.pos)}
17802
17847
  return result;
17803
17848
  }
17804
17849
  }
17805
- var Const$0 = $TS($S($EXPECT($L150, fail, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17850
+ var Const$0 = $TS($S($EXPECT($L151, fail, 'Const "const"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17806
17851
  return { $loc, token: $1 };
17807
17852
  });
17808
17853
  function Const(state) {
@@ -17827,7 +17872,7 @@ ${input.slice(result.pos)}
17827
17872
  return result;
17828
17873
  }
17829
17874
  }
17830
- var Is$0 = $TS($S($EXPECT($L151, fail, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17875
+ var Is$0 = $TS($S($EXPECT($L152, fail, 'Is "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17831
17876
  return { $loc, token: $1 };
17832
17877
  });
17833
17878
  function Is(state) {
@@ -17876,7 +17921,7 @@ ${input.slice(result.pos)}
17876
17921
  return result;
17877
17922
  }
17878
17923
  }
17879
- var Loop$0 = $TS($S($EXPECT($L152, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17924
+ var Loop$0 = $TS($S($EXPECT($L153, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17880
17925
  return { $loc, token: "while(true)" };
17881
17926
  });
17882
17927
  function Loop(state) {
@@ -17901,7 +17946,7 @@ ${input.slice(result.pos)}
17901
17946
  return result;
17902
17947
  }
17903
17948
  }
17904
- var New$0 = $TS($S($EXPECT($L153, fail, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17949
+ var New$0 = $TS($S($EXPECT($L154, fail, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17905
17950
  return { $loc, token: $1 };
17906
17951
  });
17907
17952
  function New(state) {
@@ -17926,7 +17971,7 @@ ${input.slice(result.pos)}
17926
17971
  return result;
17927
17972
  }
17928
17973
  }
17929
- var Not$0 = $TS($S($EXPECT($L154, fail, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L12, fail, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
17974
+ var Not$0 = $TS($S($EXPECT($L155, fail, 'Not "not"'), NonIdContinue, $N($S($E(_), $EXPECT($L12, fail, 'Not ":"')))), function($skip, $loc, $0, $1, $2, $3) {
17930
17975
  return { $loc, token: "!" };
17931
17976
  });
17932
17977
  function Not(state) {
@@ -17976,7 +18021,7 @@ ${input.slice(result.pos)}
17976
18021
  return result;
17977
18022
  }
17978
18023
  }
17979
- var OpenAngleBracket$0 = $TV($EXPECT($L155, fail, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
18024
+ var OpenAngleBracket$0 = $TV($EXPECT($L156, fail, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
17980
18025
  return { $loc, token: $1 };
17981
18026
  });
17982
18027
  function OpenAngleBracket(state) {
@@ -18076,7 +18121,7 @@ ${input.slice(result.pos)}
18076
18121
  return result;
18077
18122
  }
18078
18123
  }
18079
- var Operator$0 = $TS($S($EXPECT($L156, fail, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18124
+ var Operator$0 = $TS($S($EXPECT($L157, fail, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18080
18125
  return { $loc, token: $1 };
18081
18126
  });
18082
18127
  function Operator(state) {
@@ -18101,7 +18146,7 @@ ${input.slice(result.pos)}
18101
18146
  return result;
18102
18147
  }
18103
18148
  }
18104
- var Public$0 = $TS($S($EXPECT($L157, fail, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18149
+ var Public$0 = $TS($S($EXPECT($L158, fail, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18105
18150
  return { $loc, token: $1 };
18106
18151
  });
18107
18152
  function Public(state) {
@@ -18126,7 +18171,7 @@ ${input.slice(result.pos)}
18126
18171
  return result;
18127
18172
  }
18128
18173
  }
18129
- var Private$0 = $TS($S($EXPECT($L158, fail, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18174
+ var Private$0 = $TS($S($EXPECT($L159, fail, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18130
18175
  return { $loc, token: $1 };
18131
18176
  });
18132
18177
  function Private(state) {
@@ -18151,7 +18196,7 @@ ${input.slice(result.pos)}
18151
18196
  return result;
18152
18197
  }
18153
18198
  }
18154
- var Protected$0 = $TS($S($EXPECT($L159, fail, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18199
+ var Protected$0 = $TS($S($EXPECT($L160, fail, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18155
18200
  return { $loc, token: $1 };
18156
18201
  });
18157
18202
  function Protected(state) {
@@ -18176,13 +18221,13 @@ ${input.slice(result.pos)}
18176
18221
  return result;
18177
18222
  }
18178
18223
  }
18179
- var Pipe$0 = $TV($C($EXPECT($L160, fail, 'Pipe "||>"'), $EXPECT($L161, fail, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
18224
+ var Pipe$0 = $TV($C($EXPECT($L161, fail, 'Pipe "||>"'), $EXPECT($L162, fail, 'Pipe "|\u25B7"')), function($skip, $loc, $0, $1) {
18180
18225
  return { $loc, token: "||>" };
18181
18226
  });
18182
- var Pipe$1 = $TV($C($EXPECT($L162, fail, 'Pipe "|>="'), $EXPECT($L163, fail, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
18227
+ var Pipe$1 = $TV($C($EXPECT($L163, fail, 'Pipe "|>="'), $EXPECT($L164, fail, 'Pipe "\u25B7="')), function($skip, $loc, $0, $1) {
18183
18228
  return { $loc, token: "|>=" };
18184
18229
  });
18185
- var Pipe$2 = $TV($C($EXPECT($L164, fail, 'Pipe "|>"'), $EXPECT($L165, fail, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
18230
+ var Pipe$2 = $TV($C($EXPECT($L165, fail, 'Pipe "|>"'), $EXPECT($L166, fail, 'Pipe "\u25B7"')), function($skip, $loc, $0, $1) {
18186
18231
  return { $loc, token: "|>" };
18187
18232
  });
18188
18233
  function Pipe(state) {
@@ -18232,7 +18277,7 @@ ${input.slice(result.pos)}
18232
18277
  return result;
18233
18278
  }
18234
18279
  }
18235
- var Readonly$0 = $TS($S($EXPECT($L166, fail, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18280
+ var Readonly$0 = $TS($S($EXPECT($L167, fail, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18236
18281
  return { $loc, token: $1, ts: true };
18237
18282
  });
18238
18283
  function Readonly(state) {
@@ -18257,7 +18302,7 @@ ${input.slice(result.pos)}
18257
18302
  return result;
18258
18303
  }
18259
18304
  }
18260
- var Return$0 = $TS($S($EXPECT($L167, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18305
+ var Return$0 = $TS($S($EXPECT($L168, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18261
18306
  return { $loc, token: $1 };
18262
18307
  });
18263
18308
  function Return(state) {
@@ -18282,7 +18327,7 @@ ${input.slice(result.pos)}
18282
18327
  return result;
18283
18328
  }
18284
18329
  }
18285
- var Satisfies$0 = $TS($S($EXPECT($L168, fail, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18330
+ var Satisfies$0 = $TS($S($EXPECT($L169, fail, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18286
18331
  return { $loc, token: $1 };
18287
18332
  });
18288
18333
  function Satisfies(state) {
@@ -18332,7 +18377,7 @@ ${input.slice(result.pos)}
18332
18377
  return result;
18333
18378
  }
18334
18379
  }
18335
- var SingleQuote$0 = $TV($EXPECT($L169, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
18380
+ var SingleQuote$0 = $TV($EXPECT($L170, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
18336
18381
  return { $loc, token: $1 };
18337
18382
  });
18338
18383
  function SingleQuote(state) {
@@ -18382,7 +18427,7 @@ ${input.slice(result.pos)}
18382
18427
  return result;
18383
18428
  }
18384
18429
  }
18385
- var Static$0 = $TS($S($EXPECT($L170, fail, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18430
+ var Static$0 = $TS($S($EXPECT($L171, fail, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18386
18431
  return { $loc, token: $1 };
18387
18432
  });
18388
18433
  var Static$1 = $TS($S($EXPECT($L118, fail, 'Static "@"'), $N($C($EXPECT($L4, fail, 'Static "("'), $EXPECT($L118, fail, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
@@ -18410,7 +18455,7 @@ ${input.slice(result.pos)}
18410
18455
  return result;
18411
18456
  }
18412
18457
  }
18413
- var SubstitutionStart$0 = $TV($EXPECT($L171, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
18458
+ var SubstitutionStart$0 = $TV($EXPECT($L172, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
18414
18459
  return { $loc, token: $1 };
18415
18460
  });
18416
18461
  function SubstitutionStart(state) {
@@ -18435,7 +18480,7 @@ ${input.slice(result.pos)}
18435
18480
  return result;
18436
18481
  }
18437
18482
  }
18438
- var Switch$0 = $TS($S($EXPECT($L172, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18483
+ var Switch$0 = $TS($S($EXPECT($L173, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18439
18484
  return { $loc, token: $1 };
18440
18485
  });
18441
18486
  function Switch(state) {
@@ -18460,7 +18505,7 @@ ${input.slice(result.pos)}
18460
18505
  return result;
18461
18506
  }
18462
18507
  }
18463
- var Target$0 = $TS($S($EXPECT($L173, fail, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18508
+ var Target$0 = $TS($S($EXPECT($L174, fail, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18464
18509
  return { $loc, token: $1 };
18465
18510
  });
18466
18511
  function Target(state) {
@@ -18485,7 +18530,7 @@ ${input.slice(result.pos)}
18485
18530
  return result;
18486
18531
  }
18487
18532
  }
18488
- var Then$0 = $TS($S(__, $EXPECT($L174, fail, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
18533
+ var Then$0 = $TS($S(__, $EXPECT($L175, fail, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
18489
18534
  return { $loc, token: "" };
18490
18535
  });
18491
18536
  function Then(state) {
@@ -18510,7 +18555,7 @@ ${input.slice(result.pos)}
18510
18555
  return result;
18511
18556
  }
18512
18557
  }
18513
- var This$0 = $TS($S($EXPECT($L175, fail, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18558
+ var This$0 = $TS($S($EXPECT($L176, fail, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18514
18559
  return { $loc, token: $1 };
18515
18560
  });
18516
18561
  function This(state) {
@@ -18535,7 +18580,7 @@ ${input.slice(result.pos)}
18535
18580
  return result;
18536
18581
  }
18537
18582
  }
18538
- var Throw$0 = $TS($S($EXPECT($L176, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18583
+ var Throw$0 = $TS($S($EXPECT($L177, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18539
18584
  return { $loc, token: $1 };
18540
18585
  });
18541
18586
  function Throw(state) {
@@ -18560,7 +18605,7 @@ ${input.slice(result.pos)}
18560
18605
  return result;
18561
18606
  }
18562
18607
  }
18563
- var TripleDoubleQuote$0 = $TV($EXPECT($L177, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
18608
+ var TripleDoubleQuote$0 = $TV($EXPECT($L178, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
18564
18609
  return { $loc, token: "`" };
18565
18610
  });
18566
18611
  function TripleDoubleQuote(state) {
@@ -18585,7 +18630,7 @@ ${input.slice(result.pos)}
18585
18630
  return result;
18586
18631
  }
18587
18632
  }
18588
- var TripleSingleQuote$0 = $TV($EXPECT($L178, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
18633
+ var TripleSingleQuote$0 = $TV($EXPECT($L179, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
18589
18634
  return { $loc, token: "`" };
18590
18635
  });
18591
18636
  function TripleSingleQuote(state) {
@@ -18610,7 +18655,7 @@ ${input.slice(result.pos)}
18610
18655
  return result;
18611
18656
  }
18612
18657
  }
18613
- var TripleSlash$0 = $TV($EXPECT($L179, fail, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
18658
+ var TripleSlash$0 = $TV($EXPECT($L180, fail, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
18614
18659
  return { $loc, token: "/" };
18615
18660
  });
18616
18661
  function TripleSlash(state) {
@@ -18635,7 +18680,7 @@ ${input.slice(result.pos)}
18635
18680
  return result;
18636
18681
  }
18637
18682
  }
18638
- var TripleTick$0 = $TV($EXPECT($L180, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
18683
+ var TripleTick$0 = $TV($EXPECT($L181, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
18639
18684
  return { $loc, token: "`" };
18640
18685
  });
18641
18686
  function TripleTick(state) {
@@ -18660,7 +18705,7 @@ ${input.slice(result.pos)}
18660
18705
  return result;
18661
18706
  }
18662
18707
  }
18663
- var Try$0 = $TS($S($EXPECT($L181, fail, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18708
+ var Try$0 = $TS($S($EXPECT($L182, fail, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18664
18709
  return { $loc, token: $1 };
18665
18710
  });
18666
18711
  function Try(state) {
@@ -18685,7 +18730,7 @@ ${input.slice(result.pos)}
18685
18730
  return result;
18686
18731
  }
18687
18732
  }
18688
- var Typeof$0 = $TS($S($EXPECT($L182, fail, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18733
+ var Typeof$0 = $TS($S($EXPECT($L183, fail, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18689
18734
  return { $loc, token: $1 };
18690
18735
  });
18691
18736
  function Typeof(state) {
@@ -18710,7 +18755,7 @@ ${input.slice(result.pos)}
18710
18755
  return result;
18711
18756
  }
18712
18757
  }
18713
- var Unless$0 = $TS($S($EXPECT($L183, fail, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18758
+ var Unless$0 = $TS($S($EXPECT($L184, fail, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18714
18759
  return { $loc, token: $1 };
18715
18760
  });
18716
18761
  function Unless(state) {
@@ -18735,7 +18780,7 @@ ${input.slice(result.pos)}
18735
18780
  return result;
18736
18781
  }
18737
18782
  }
18738
- var Until$0 = $TS($S($EXPECT($L184, fail, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18783
+ var Until$0 = $TS($S($EXPECT($L185, fail, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18739
18784
  return { $loc, token: $1 };
18740
18785
  });
18741
18786
  function Until(state) {
@@ -18760,7 +18805,7 @@ ${input.slice(result.pos)}
18760
18805
  return result;
18761
18806
  }
18762
18807
  }
18763
- var Var$0 = $TS($S($EXPECT($L185, fail, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18808
+ var Var$0 = $TS($S($EXPECT($L186, fail, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18764
18809
  return { $loc, token: $1 };
18765
18810
  });
18766
18811
  function Var(state) {
@@ -18785,7 +18830,7 @@ ${input.slice(result.pos)}
18785
18830
  return result;
18786
18831
  }
18787
18832
  }
18788
- var Void$0 = $TS($S($EXPECT($L186, fail, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18833
+ var Void$0 = $TS($S($EXPECT($L187, fail, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18789
18834
  return { $loc, token: $1 };
18790
18835
  });
18791
18836
  function Void(state) {
@@ -18810,7 +18855,7 @@ ${input.slice(result.pos)}
18810
18855
  return result;
18811
18856
  }
18812
18857
  }
18813
- var When$0 = $TS($S($EXPECT($L187, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18858
+ var When$0 = $TS($S($EXPECT($L188, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18814
18859
  return { $loc, token: "case" };
18815
18860
  });
18816
18861
  function When(state) {
@@ -18835,7 +18880,7 @@ ${input.slice(result.pos)}
18835
18880
  return result;
18836
18881
  }
18837
18882
  }
18838
- var While$0 = $TS($S($EXPECT($L188, fail, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18883
+ var While$0 = $TS($S($EXPECT($L189, fail, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18839
18884
  return { $loc, token: $1 };
18840
18885
  });
18841
18886
  function While(state) {
@@ -18860,7 +18905,7 @@ ${input.slice(result.pos)}
18860
18905
  return result;
18861
18906
  }
18862
18907
  }
18863
- var Yield$0 = $TS($S($EXPECT($L189, fail, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18908
+ var Yield$0 = $TS($S($EXPECT($L190, fail, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
18864
18909
  return { $loc, token: $1, type: "Yield" };
18865
18910
  });
18866
18911
  function Yield(state) {
@@ -19005,7 +19050,7 @@ ${input.slice(result.pos)}
19005
19050
  return result;
19006
19051
  }
19007
19052
  }
19008
- var JSXSelfClosingElement$0 = $TS($S($EXPECT($L155, fail, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L190, fail, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
19053
+ var JSXSelfClosingElement$0 = $TS($S($EXPECT($L156, fail, 'JSXSelfClosingElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L191, fail, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
19009
19054
  return { type: "JSXElement", children: $0, tag: $2 };
19010
19055
  });
19011
19056
  function JSXSelfClosingElement(state) {
@@ -19081,7 +19126,7 @@ ${input.slice(result.pos)}
19081
19126
  return result;
19082
19127
  }
19083
19128
  }
19084
- var JSXOpeningElement$0 = $S($EXPECT($L155, fail, 'JSXOpeningElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L34, fail, 'JSXOpeningElement ">"'));
19129
+ var JSXOpeningElement$0 = $S($EXPECT($L156, fail, 'JSXOpeningElement "<"'), JSXElementName, $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L34, fail, 'JSXOpeningElement ">"'));
19085
19130
  function JSXOpeningElement(state) {
19086
19131
  let eventData;
19087
19132
  if (state.events) {
@@ -19133,7 +19178,7 @@ ${input.slice(result.pos)}
19133
19178
  return result;
19134
19179
  }
19135
19180
  }
19136
- var JSXClosingElement$0 = $S($EXPECT($L191, fail, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L34, fail, 'JSXClosingElement ">"'));
19181
+ var JSXClosingElement$0 = $S($EXPECT($L192, fail, 'JSXClosingElement "</"'), $E(Whitespace), JSXElementName, $E(Whitespace), $EXPECT($L34, fail, 'JSXClosingElement ">"'));
19137
19182
  function JSXClosingElement(state) {
19138
19183
  let eventData;
19139
19184
  if (state.events) {
@@ -19171,7 +19216,7 @@ ${input.slice(result.pos)}
19171
19216
  ];
19172
19217
  return { type: "JSXFragment", children: parts, jsxChildren: children.jsxChildren };
19173
19218
  });
19174
- var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L192, fail, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
19219
+ var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L193, fail, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
19175
19220
  var children = $3;
19176
19221
  $0 = $0.slice(1);
19177
19222
  return {
@@ -19202,7 +19247,7 @@ ${input.slice(result.pos)}
19202
19247
  return result;
19203
19248
  }
19204
19249
  }
19205
- var PushJSXOpeningFragment$0 = $TV($EXPECT($L192, fail, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
19250
+ var PushJSXOpeningFragment$0 = $TV($EXPECT($L193, fail, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
19206
19251
  module2.JSXTagStack.push("");
19207
19252
  return $1;
19208
19253
  });
@@ -19256,7 +19301,7 @@ ${input.slice(result.pos)}
19256
19301
  return result;
19257
19302
  }
19258
19303
  }
19259
- var JSXClosingFragment$0 = $EXPECT($L193, fail, 'JSXClosingFragment "</>"');
19304
+ var JSXClosingFragment$0 = $EXPECT($L194, fail, 'JSXClosingFragment "</>"');
19260
19305
  function JSXClosingFragment(state) {
19261
19306
  let eventData;
19262
19307
  if (state.events) {
@@ -20225,7 +20270,7 @@ ${input.slice(result.pos)}
20225
20270
  return result;
20226
20271
  }
20227
20272
  }
20228
- var JSXComment$0 = $TS($S($EXPECT($L194, fail, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L195, fail, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
20273
+ var JSXComment$0 = $TS($S($EXPECT($L195, fail, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L196, fail, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
20229
20274
  return ["{/*", $2, "*/}"];
20230
20275
  });
20231
20276
  function JSXComment(state) {
@@ -20554,7 +20599,7 @@ ${input.slice(result.pos)}
20554
20599
  return result;
20555
20600
  }
20556
20601
  }
20557
- var TypeKeyword$0 = $TS($S($EXPECT($L196, fail, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20602
+ var TypeKeyword$0 = $TS($S($EXPECT($L197, fail, 'TypeKeyword "type"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20558
20603
  return { $loc, token: $1 };
20559
20604
  });
20560
20605
  function TypeKeyword(state) {
@@ -20579,7 +20624,7 @@ ${input.slice(result.pos)}
20579
20624
  return result;
20580
20625
  }
20581
20626
  }
20582
- var Enum$0 = $TS($S($EXPECT($L197, fail, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20627
+ var Enum$0 = $TS($S($EXPECT($L198, fail, 'Enum "enum"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20583
20628
  return { $loc, token: $1 };
20584
20629
  });
20585
20630
  function Enum(state) {
@@ -20604,7 +20649,7 @@ ${input.slice(result.pos)}
20604
20649
  return result;
20605
20650
  }
20606
20651
  }
20607
- var Interface$0 = $TS($S($EXPECT($L198, fail, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20652
+ var Interface$0 = $TS($S($EXPECT($L199, fail, 'Interface "interface"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20608
20653
  return { $loc, token: $1 };
20609
20654
  });
20610
20655
  function Interface(state) {
@@ -20629,7 +20674,7 @@ ${input.slice(result.pos)}
20629
20674
  return result;
20630
20675
  }
20631
20676
  }
20632
- var Global$0 = $TS($S($EXPECT($L199, fail, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20677
+ var Global$0 = $TS($S($EXPECT($L200, fail, 'Global "global"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20633
20678
  return { $loc, token: $1 };
20634
20679
  });
20635
20680
  function Global(state) {
@@ -20654,7 +20699,7 @@ ${input.slice(result.pos)}
20654
20699
  return result;
20655
20700
  }
20656
20701
  }
20657
- var Module$0 = $TS($S($EXPECT($L200, fail, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20702
+ var Module$0 = $TS($S($EXPECT($L201, fail, 'Module "module"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20658
20703
  return { $loc, token: $1 };
20659
20704
  });
20660
20705
  function Module(state) {
@@ -20679,7 +20724,7 @@ ${input.slice(result.pos)}
20679
20724
  return result;
20680
20725
  }
20681
20726
  }
20682
- var Namespace$0 = $TS($S($EXPECT($L201, fail, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20727
+ var Namespace$0 = $TS($S($EXPECT($L202, fail, 'Namespace "namespace"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
20683
20728
  return { $loc, token: $1 };
20684
20729
  });
20685
20730
  function Namespace(state) {
@@ -21373,7 +21418,7 @@ ${input.slice(result.pos)}
21373
21418
  return result;
21374
21419
  }
21375
21420
  }
21376
- var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L202, fail, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
21421
+ var ReturnType$0 = $TS($S($E($S(__, $EXPECT($L203, fail, 'ReturnType "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2) {
21377
21422
  var asserts = $1;
21378
21423
  var t = $2;
21379
21424
  if (asserts) {
@@ -21413,7 +21458,7 @@ ${input.slice(result.pos)}
21413
21458
  return result;
21414
21459
  }
21415
21460
  }
21416
- var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L151, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
21461
+ var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L152, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
21417
21462
  var lhs = $1;
21418
21463
  var rhs = $2;
21419
21464
  if (!rhs)
@@ -21555,10 +21600,10 @@ ${input.slice(result.pos)}
21555
21600
  return result;
21556
21601
  }
21557
21602
  }
21558
- var TypeUnaryOp$0 = $S($EXPECT($L203, fail, 'TypeUnaryOp "keyof"'), NonIdContinue);
21559
- var TypeUnaryOp$1 = $S($EXPECT($L182, fail, 'TypeUnaryOp "typeof"'), NonIdContinue);
21560
- var TypeUnaryOp$2 = $S($EXPECT($L204, fail, 'TypeUnaryOp "infer"'), NonIdContinue);
21561
- var TypeUnaryOp$3 = $S($EXPECT($L166, fail, 'TypeUnaryOp "readonly"'), NonIdContinue);
21603
+ var TypeUnaryOp$0 = $S($EXPECT($L204, fail, 'TypeUnaryOp "keyof"'), NonIdContinue);
21604
+ var TypeUnaryOp$1 = $S($EXPECT($L183, fail, 'TypeUnaryOp "typeof"'), NonIdContinue);
21605
+ var TypeUnaryOp$2 = $S($EXPECT($L205, fail, 'TypeUnaryOp "infer"'), NonIdContinue);
21606
+ var TypeUnaryOp$3 = $S($EXPECT($L167, fail, 'TypeUnaryOp "readonly"'), NonIdContinue);
21562
21607
  function TypeUnaryOp(state) {
21563
21608
  let eventData;
21564
21609
  if (state.events) {
@@ -21821,7 +21866,7 @@ ${input.slice(result.pos)}
21821
21866
  return result;
21822
21867
  }
21823
21868
  }
21824
- var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L140, fail, 'TypeConditional "extends"'), NonIdContinue, Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
21869
+ var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L141, fail, 'TypeConditional "extends"'), NonIdContinue, Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
21825
21870
  if ($2)
21826
21871
  return $0;
21827
21872
  return $1;
@@ -21953,10 +21998,10 @@ ${input.slice(result.pos)}
21953
21998
  }
21954
21999
  var TypeLiteral$0 = TypeTemplateLiteral;
21955
22000
  var TypeLiteral$1 = Literal;
21956
- var TypeLiteral$2 = $TS($S($EXPECT($L186, fail, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
22001
+ var TypeLiteral$2 = $TS($S($EXPECT($L187, fail, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
21957
22002
  return { type: "VoidType", $loc, token: $1 };
21958
22003
  });
21959
- var TypeLiteral$3 = $TV($EXPECT($L205, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
22004
+ var TypeLiteral$3 = $TV($EXPECT($L206, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
21960
22005
  return { $loc, token: "[]" };
21961
22006
  });
21962
22007
  function TypeLiteral(state) {
@@ -22137,7 +22182,7 @@ ${input.slice(result.pos)}
22137
22182
  return result;
22138
22183
  }
22139
22184
  }
22140
- var TypeArguments$0 = $TS($S($EXPECT($L155, fail, 'TypeArguments "<"'), $P(TypeArgument), __, $EXPECT($L34, fail, 'TypeArguments ">"')), function($skip, $loc, $0, $1, $2, $3, $4) {
22185
+ var TypeArguments$0 = $TS($S($EXPECT($L156, fail, 'TypeArguments "<"'), $P(TypeArgument), __, $EXPECT($L34, fail, 'TypeArguments ">"')), function($skip, $loc, $0, $1, $2, $3, $4) {
22141
22186
  var args = $2;
22142
22187
  return { ts: true, types: args.map(([, t]) => t), children: $0 };
22143
22188
  });
@@ -22209,7 +22254,7 @@ ${input.slice(result.pos)}
22209
22254
  return result;
22210
22255
  }
22211
22256
  }
22212
- var TypeParameters$0 = $TS($S($E(_), $EXPECT($L155, fail, 'TypeParameters "<"'), $P(TypeParameter), __, $EXPECT($L34, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
22257
+ var TypeParameters$0 = $TS($S($E(_), $EXPECT($L156, fail, 'TypeParameters "<"'), $P(TypeParameter), __, $EXPECT($L34, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
22213
22258
  var parameters = $3;
22214
22259
  return {
22215
22260
  type: "TypeParameters",
@@ -22240,7 +22285,7 @@ ${input.slice(result.pos)}
22240
22285
  return result;
22241
22286
  }
22242
22287
  }
22243
- var TypeParameter$0 = $S(__, $E($S($EXPECT($L150, fail, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
22288
+ var TypeParameter$0 = $S(__, $E($S($EXPECT($L151, fail, 'TypeParameter "const"'), $E(_))), Identifier, $E(TypeConstraint), $E(TypeInitializer), TypeParameterDelimiter);
22244
22289
  function TypeParameter(state) {
22245
22290
  let eventData;
22246
22291
  if (state.events) {
@@ -22263,7 +22308,7 @@ ${input.slice(result.pos)}
22263
22308
  return result;
22264
22309
  }
22265
22310
  }
22266
- var TypeConstraint$0 = $S(__, $EXPECT($L140, fail, 'TypeConstraint "extends"'), NonIdContinue, Type);
22311
+ var TypeConstraint$0 = $S(__, $EXPECT($L141, fail, 'TypeConstraint "extends"'), NonIdContinue, Type);
22267
22312
  function TypeConstraint(state) {
22268
22313
  let eventData;
22269
22314
  if (state.events) {
@@ -22414,7 +22459,7 @@ ${input.slice(result.pos)}
22414
22459
  return result;
22415
22460
  }
22416
22461
  }
22417
- var CivetPrologueContent$0 = $TS($S($EXPECT($L206, fail, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R63, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
22462
+ var CivetPrologueContent$0 = $TS($S($EXPECT($L207, fail, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R63, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
22418
22463
  var options = $3;
22419
22464
  return {
22420
22465
  type: "CivetPrologue",
@@ -23657,11 +23702,7 @@ ${input.slice(result.pos)}
23657
23702
  module2.getRef = function(base) {
23658
23703
  if (refs.hasOwnProperty(base))
23659
23704
  return refs[base];
23660
- const ref = {
23661
- type: "Ref",
23662
- base,
23663
- id: base
23664
- };
23705
+ const ref = makeRef(base);
23665
23706
  if (declareRef.hasOwnProperty(base))
23666
23707
  declareRef[base](ref);
23667
23708
  return refs[base] = ref;
@@ -24042,12 +24083,14 @@ ${input.slice(result.pos)}
24042
24083
  literalValue,
24043
24084
  makeEmptyBlock,
24044
24085
  makeLeftHandSideExpression,
24086
+ makeRef,
24045
24087
  maybeRef,
24046
24088
  modifyString,
24089
+ processAssignmentDeclaration,
24047
24090
  processBinaryOpExpression,
24048
24091
  processCallMemberExpression,
24049
24092
  processCoffeeInterpolation,
24050
- processAssignmentDeclaration,
24093
+ processForInOf,
24051
24094
  processProgram,
24052
24095
  processUnaryExpression,
24053
24096
  quoteString,