@danielx/civet 0.5.70 → 0.5.71

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
@@ -499,6 +499,8 @@ ${input.slice(result.pos)}
499
499
  AtThis,
500
500
  LeftHandSideExpression,
501
501
  CallExpression,
502
+ ReturnValue,
503
+ AfterReturnShorthand,
502
504
  CallExpressionRest,
503
505
  OptionalShorthand,
504
506
  OptionalDot,
@@ -1041,170 +1043,171 @@ ${input.slice(result.pos)}
1041
1043
  var $L11 = $L("#");
1042
1044
  var $L12 = $L("super");
1043
1045
  var $L13 = $L("import");
1044
- var $L14 = $L("!");
1045
- var $L15 = $L("^");
1046
- var $L16 = $L("-");
1047
- var $L17 = $L("import.meta");
1048
- var $L18 = $L("");
1049
- var $L19 = $L(",");
1050
- var $L20 = $L("->");
1051
- var $L21 = $L("}");
1052
- var $L22 = $L("null");
1053
- var $L23 = $L("true");
1054
- var $L24 = $L("false");
1055
- var $L25 = $L("yes");
1056
- var $L26 = $L("on");
1057
- var $L27 = $L("no");
1058
- var $L28 = $L("off");
1059
- var $L29 = $L(">");
1060
- var $L30 = $L("]");
1061
- var $L31 = $L(":");
1062
- var $L32 = $L(")");
1063
- var $L33 = $L("**=");
1064
- var $L34 = $L("*=");
1065
- var $L35 = $L("/=");
1066
- var $L36 = $L("%=");
1067
- var $L37 = $L("+=");
1068
- var $L38 = $L("-=");
1069
- var $L39 = $L("<<=");
1070
- var $L40 = $L(">>>=");
1071
- var $L41 = $L(">>=");
1072
- var $L42 = $L("&&=");
1073
- var $L43 = $L("&=");
1074
- var $L44 = $L("^=");
1075
- var $L45 = $L("||=");
1076
- var $L46 = $L("|=");
1077
- var $L47 = $L("??=");
1078
- var $L48 = $L("?=");
1079
- var $L49 = $L("and=");
1080
- var $L50 = $L("or=");
1081
- var $L51 = $L("not");
1082
- var $L52 = $L("**");
1083
- var $L53 = $L("*");
1084
- var $L54 = $L("/");
1085
- var $L55 = $L("%%");
1086
- var $L56 = $L("%");
1087
- var $L57 = $L("+");
1088
- var $L58 = $L("<=");
1089
- var $L59 = $L(">=");
1090
- var $L60 = $L("<?");
1091
- var $L61 = $L("!<?");
1092
- var $L62 = $L("<<");
1093
- var $L63 = $L(">>>");
1094
- var $L64 = $L(">>");
1095
- var $L65 = $L("!==");
1096
- var $L66 = $L("!=");
1097
- var $L67 = $L("isnt");
1098
- var $L68 = $L("===");
1099
- var $L69 = $L("==");
1100
- var $L70 = $L("and");
1101
- var $L71 = $L("&&");
1102
- var $L72 = $L("of");
1103
- var $L73 = $L("or");
1104
- var $L74 = $L("||");
1105
- var $L75 = $L("^^");
1106
- var $L76 = $L("xor");
1107
- var $L77 = $L("xnor");
1108
- var $L78 = $L("??");
1109
- var $L79 = $L("instanceof");
1110
- var $L80 = $L("in");
1111
- var $L81 = $L("is");
1112
- var $L82 = $L("&");
1113
- var $L83 = $L("|");
1114
- var $L84 = $L(";");
1115
- var $L85 = $L("$:");
1116
- var $L86 = $L("own");
1117
- var $L87 = $L("break");
1118
- var $L88 = $L("continue");
1119
- var $L89 = $L("debugger");
1120
- var $L90 = $L("assert");
1121
- var $L91 = $L(":=");
1122
- var $L92 = $L(".=");
1123
- var $L93 = $L("/*");
1124
- var $L94 = $L("*/");
1125
- var $L95 = $L("\\");
1126
- var $L96 = $L("[");
1127
- var $L97 = $L("`");
1128
- var $L98 = $L("abstract");
1129
- var $L99 = $L("as");
1130
- var $L100 = $L("@");
1131
- var $L101 = $L("@@");
1132
- var $L102 = $L("async");
1133
- var $L103 = $L("await");
1134
- var $L104 = $L("by");
1135
- var $L105 = $L("case");
1136
- var $L106 = $L("catch");
1137
- var $L107 = $L("class");
1138
- var $L108 = $L("#{");
1139
- var $L109 = $L("declare");
1140
- var $L110 = $L("default");
1141
- var $L111 = $L("delete");
1142
- var $L112 = $L("do");
1143
- var $L113 = $L("..");
1144
- var $L114 = $L("...");
1145
- var $L115 = $L("::");
1146
- var $L116 = $L('"');
1147
- var $L117 = $L("else");
1148
- var $L118 = $L("export");
1149
- var $L119 = $L("extends");
1150
- var $L120 = $L("finally");
1151
- var $L121 = $L("for");
1152
- var $L122 = $L("from");
1153
- var $L123 = $L("function");
1154
- var $L124 = $L("get");
1155
- var $L125 = $L("set");
1156
- var $L126 = $L("if");
1157
- var $L127 = $L("let");
1158
- var $L128 = $L("const");
1159
- var $L129 = $L("loop");
1160
- var $L130 = $L("new");
1161
- var $L131 = $L("<");
1162
- var $L132 = $L("{");
1163
- var $L133 = $L("operator");
1164
- var $L134 = $L("public");
1165
- var $L135 = $L("private");
1166
- var $L136 = $L("protected");
1167
- var $L137 = $L("||>");
1168
- var $L138 = $L("|>=");
1169
- var $L139 = $L("|>");
1170
- var $L140 = $L("readonly");
1171
- var $L141 = $L("return");
1172
- var $L142 = $L("satisfies");
1173
- var $L143 = $L("'");
1174
- var $L144 = $L("static");
1175
- var $L145 = $L("${");
1176
- var $L146 = $L("switch");
1177
- var $L147 = $L("target");
1178
- var $L148 = $L("then");
1179
- var $L149 = $L("this");
1180
- var $L150 = $L("throw");
1181
- var $L151 = $L('"""');
1182
- var $L152 = $L("'''");
1183
- var $L153 = $L("///");
1184
- var $L154 = $L("```");
1185
- var $L155 = $L("try");
1186
- var $L156 = $L("typeof");
1187
- var $L157 = $L("unless");
1188
- var $L158 = $L("until");
1189
- var $L159 = $L("var");
1190
- var $L160 = $L("void");
1191
- var $L161 = $L("when");
1192
- var $L162 = $L("while");
1193
- var $L163 = $L("yield");
1194
- var $L164 = $L("/>");
1195
- var $L165 = $L("</");
1196
- var $L166 = $L("<>");
1197
- var $L167 = $L("</>");
1198
- var $L168 = $L("<!--");
1199
- var $L169 = $L("-->");
1200
- var $L170 = $L("type");
1201
- var $L171 = $L("interface");
1202
- var $L172 = $L("namespace");
1203
- var $L173 = $L("asserts");
1204
- var $L174 = $L("keyof");
1205
- var $L175 = $L("infer");
1206
- var $L176 = $L("[]");
1207
- var $L177 = $L("civet");
1046
+ var $L14 = $L("return.value");
1047
+ var $L15 = $L("!");
1048
+ var $L16 = $L("^");
1049
+ var $L17 = $L("-");
1050
+ var $L18 = $L("import.meta");
1051
+ var $L19 = $L("");
1052
+ var $L20 = $L(",");
1053
+ var $L21 = $L("->");
1054
+ var $L22 = $L("}");
1055
+ var $L23 = $L("null");
1056
+ var $L24 = $L("true");
1057
+ var $L25 = $L("false");
1058
+ var $L26 = $L("yes");
1059
+ var $L27 = $L("on");
1060
+ var $L28 = $L("no");
1061
+ var $L29 = $L("off");
1062
+ var $L30 = $L(">");
1063
+ var $L31 = $L("]");
1064
+ var $L32 = $L(":");
1065
+ var $L33 = $L(")");
1066
+ var $L34 = $L("**=");
1067
+ var $L35 = $L("*=");
1068
+ var $L36 = $L("/=");
1069
+ var $L37 = $L("%=");
1070
+ var $L38 = $L("+=");
1071
+ var $L39 = $L("-=");
1072
+ var $L40 = $L("<<=");
1073
+ var $L41 = $L(">>>=");
1074
+ var $L42 = $L(">>=");
1075
+ var $L43 = $L("&&=");
1076
+ var $L44 = $L("&=");
1077
+ var $L45 = $L("^=");
1078
+ var $L46 = $L("||=");
1079
+ var $L47 = $L("|=");
1080
+ var $L48 = $L("??=");
1081
+ var $L49 = $L("?=");
1082
+ var $L50 = $L("and=");
1083
+ var $L51 = $L("or=");
1084
+ var $L52 = $L("not");
1085
+ var $L53 = $L("**");
1086
+ var $L54 = $L("*");
1087
+ var $L55 = $L("/");
1088
+ var $L56 = $L("%%");
1089
+ var $L57 = $L("%");
1090
+ var $L58 = $L("+");
1091
+ var $L59 = $L("<=");
1092
+ var $L60 = $L(">=");
1093
+ var $L61 = $L("<?");
1094
+ var $L62 = $L("!<?");
1095
+ var $L63 = $L("<<");
1096
+ var $L64 = $L(">>>");
1097
+ var $L65 = $L(">>");
1098
+ var $L66 = $L("!==");
1099
+ var $L67 = $L("!=");
1100
+ var $L68 = $L("isnt");
1101
+ var $L69 = $L("===");
1102
+ var $L70 = $L("==");
1103
+ var $L71 = $L("and");
1104
+ var $L72 = $L("&&");
1105
+ var $L73 = $L("of");
1106
+ var $L74 = $L("or");
1107
+ var $L75 = $L("||");
1108
+ var $L76 = $L("^^");
1109
+ var $L77 = $L("xor");
1110
+ var $L78 = $L("xnor");
1111
+ var $L79 = $L("??");
1112
+ var $L80 = $L("instanceof");
1113
+ var $L81 = $L("in");
1114
+ var $L82 = $L("is");
1115
+ var $L83 = $L("&");
1116
+ var $L84 = $L("|");
1117
+ var $L85 = $L(";");
1118
+ var $L86 = $L("$:");
1119
+ var $L87 = $L("own");
1120
+ var $L88 = $L("break");
1121
+ var $L89 = $L("continue");
1122
+ var $L90 = $L("debugger");
1123
+ var $L91 = $L("assert");
1124
+ var $L92 = $L(":=");
1125
+ var $L93 = $L(".=");
1126
+ var $L94 = $L("/*");
1127
+ var $L95 = $L("*/");
1128
+ var $L96 = $L("\\");
1129
+ var $L97 = $L("[");
1130
+ var $L98 = $L("`");
1131
+ var $L99 = $L("abstract");
1132
+ var $L100 = $L("as");
1133
+ var $L101 = $L("@");
1134
+ var $L102 = $L("@@");
1135
+ var $L103 = $L("async");
1136
+ var $L104 = $L("await");
1137
+ var $L105 = $L("by");
1138
+ var $L106 = $L("case");
1139
+ var $L107 = $L("catch");
1140
+ var $L108 = $L("class");
1141
+ var $L109 = $L("#{");
1142
+ var $L110 = $L("declare");
1143
+ var $L111 = $L("default");
1144
+ var $L112 = $L("delete");
1145
+ var $L113 = $L("do");
1146
+ var $L114 = $L("..");
1147
+ var $L115 = $L("...");
1148
+ var $L116 = $L("::");
1149
+ var $L117 = $L('"');
1150
+ var $L118 = $L("else");
1151
+ var $L119 = $L("export");
1152
+ var $L120 = $L("extends");
1153
+ var $L121 = $L("finally");
1154
+ var $L122 = $L("for");
1155
+ var $L123 = $L("from");
1156
+ var $L124 = $L("function");
1157
+ var $L125 = $L("get");
1158
+ var $L126 = $L("set");
1159
+ var $L127 = $L("if");
1160
+ var $L128 = $L("let");
1161
+ var $L129 = $L("const");
1162
+ var $L130 = $L("loop");
1163
+ var $L131 = $L("new");
1164
+ var $L132 = $L("<");
1165
+ var $L133 = $L("{");
1166
+ var $L134 = $L("operator");
1167
+ var $L135 = $L("public");
1168
+ var $L136 = $L("private");
1169
+ var $L137 = $L("protected");
1170
+ var $L138 = $L("||>");
1171
+ var $L139 = $L("|>=");
1172
+ var $L140 = $L("|>");
1173
+ var $L141 = $L("readonly");
1174
+ var $L142 = $L("return");
1175
+ var $L143 = $L("satisfies");
1176
+ var $L144 = $L("'");
1177
+ var $L145 = $L("static");
1178
+ var $L146 = $L("${");
1179
+ var $L147 = $L("switch");
1180
+ var $L148 = $L("target");
1181
+ var $L149 = $L("then");
1182
+ var $L150 = $L("this");
1183
+ var $L151 = $L("throw");
1184
+ var $L152 = $L('"""');
1185
+ var $L153 = $L("'''");
1186
+ var $L154 = $L("///");
1187
+ var $L155 = $L("```");
1188
+ var $L156 = $L("try");
1189
+ var $L157 = $L("typeof");
1190
+ var $L158 = $L("unless");
1191
+ var $L159 = $L("until");
1192
+ var $L160 = $L("var");
1193
+ var $L161 = $L("void");
1194
+ var $L162 = $L("when");
1195
+ var $L163 = $L("while");
1196
+ var $L164 = $L("yield");
1197
+ var $L165 = $L("/>");
1198
+ var $L166 = $L("</");
1199
+ var $L167 = $L("<>");
1200
+ var $L168 = $L("</>");
1201
+ var $L169 = $L("<!--");
1202
+ var $L170 = $L("-->");
1203
+ var $L171 = $L("type");
1204
+ var $L172 = $L("interface");
1205
+ var $L173 = $L("namespace");
1206
+ var $L174 = $L("asserts");
1207
+ var $L175 = $L("keyof");
1208
+ var $L176 = $L("infer");
1209
+ var $L177 = $L("[]");
1210
+ var $L178 = $L("civet");
1208
1211
  var $R0 = $R(new RegExp("(as|for|while|until|of|satisfies|then|when|implements|xor|xnor)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
1209
1212
  var $R1 = $R(new RegExp("[0-9]", "suy"));
1210
1213
  var $R2 = $R(new RegExp("[)}]", "suy"));
@@ -2374,7 +2377,7 @@ ${input.slice(result.pos)}
2374
2377
  return {
2375
2378
  type: "ArrowFunction",
2376
2379
  parameters,
2377
- returnType: suffix?.children?.[1]?.[0]?.[1]?.token,
2380
+ returnType: suffix,
2378
2381
  ts: false,
2379
2382
  block: expOrBlock,
2380
2383
  children: $0
@@ -3162,7 +3165,7 @@ ${input.slice(result.pos)}
3162
3165
  return result;
3163
3166
  }
3164
3167
  }
3165
- var FieldDefinition$0 = $TS($S(CoffeeClassesEnabled, ClassElementName, __, Colon, __, AssignmentExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
3168
+ var FieldDefinition$0 = $TS($S(CoffeeClassesEnabled, ClassElementName, $E(_), Colon, __, AssignmentExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
3166
3169
  var id = $2;
3167
3170
  var exp = $6;
3168
3171
  switch (exp.type) {
@@ -3307,7 +3310,8 @@ ${input.slice(result.pos)}
3307
3310
  children: [$1, ...$2, ...rest.flat()]
3308
3311
  });
3309
3312
  });
3310
- var CallExpression$2 = $TS($S(MemberExpression, AllowedTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
3313
+ var CallExpression$2 = ReturnValue;
3314
+ var CallExpression$3 = $TS($S(MemberExpression, AllowedTrailingMemberExpressions, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2, $3) {
3311
3315
  var member = $1;
3312
3316
  var trailing = $2;
3313
3317
  var rest = $3;
@@ -3331,17 +3335,69 @@ ${input.slice(result.pos)}
3331
3335
  }
3332
3336
  }
3333
3337
  if (state.tokenize) {
3334
- const result = $TOKEN("CallExpression", state, CallExpression$0(state) || CallExpression$1(state) || CallExpression$2(state));
3338
+ const result = $TOKEN("CallExpression", state, CallExpression$0(state) || CallExpression$1(state) || CallExpression$2(state) || CallExpression$3(state));
3335
3339
  if (state.events)
3336
3340
  state.events.exit?.("CallExpression", state, result, eventData);
3337
3341
  return result;
3338
3342
  } else {
3339
- const result = CallExpression$0(state) || CallExpression$1(state) || CallExpression$2(state);
3343
+ const result = CallExpression$0(state) || CallExpression$1(state) || CallExpression$2(state) || CallExpression$3(state);
3340
3344
  if (state.events)
3341
3345
  state.events.exit?.("CallExpression", state, result, eventData);
3342
3346
  return result;
3343
3347
  }
3344
3348
  }
3349
+ var ReturnValue$0 = $TV($C($S($EXPECT($L14, fail, 'ReturnValue "return.value"'), NonIdContinue), $S(Return, $Y(AfterReturnShorthand))), function($skip, $loc, $0, $1) {
3350
+ return { type: "ReturnValue", children: [$1[0]] };
3351
+ });
3352
+ function ReturnValue(state) {
3353
+ let eventData;
3354
+ if (state.events) {
3355
+ const result = state.events.enter?.("ReturnValue", state);
3356
+ if (result) {
3357
+ if (result.cache)
3358
+ return result.cache;
3359
+ eventData = result.data;
3360
+ }
3361
+ }
3362
+ if (state.tokenize) {
3363
+ const result = $TOKEN("ReturnValue", state, ReturnValue$0(state));
3364
+ if (state.events)
3365
+ state.events.exit?.("ReturnValue", state, result, eventData);
3366
+ return result;
3367
+ } else {
3368
+ const result = ReturnValue$0(state);
3369
+ if (state.events)
3370
+ state.events.exit?.("ReturnValue", state, result, eventData);
3371
+ return result;
3372
+ }
3373
+ }
3374
+ var AfterReturnShorthand$0 = WAssignmentOp;
3375
+ var AfterReturnShorthand$1 = UpdateExpressionSymbol;
3376
+ var AfterReturnShorthand$2 = TypeSuffix;
3377
+ var AfterReturnShorthand$3 = $S(__, LetAssignment);
3378
+ var AfterReturnShorthand$4 = $S(__, ConstAssignment);
3379
+ function AfterReturnShorthand(state) {
3380
+ let eventData;
3381
+ if (state.events) {
3382
+ const result = state.events.enter?.("AfterReturnShorthand", state);
3383
+ if (result) {
3384
+ if (result.cache)
3385
+ return result.cache;
3386
+ eventData = result.data;
3387
+ }
3388
+ }
3389
+ if (state.tokenize) {
3390
+ const result = $TOKEN("AfterReturnShorthand", state, AfterReturnShorthand$0(state) || AfterReturnShorthand$1(state) || AfterReturnShorthand$2(state) || AfterReturnShorthand$3(state) || AfterReturnShorthand$4(state));
3391
+ if (state.events)
3392
+ state.events.exit?.("AfterReturnShorthand", state, result, eventData);
3393
+ return result;
3394
+ } else {
3395
+ const result = AfterReturnShorthand$0(state) || AfterReturnShorthand$1(state) || AfterReturnShorthand$2(state) || AfterReturnShorthand$3(state) || AfterReturnShorthand$4(state);
3396
+ if (state.events)
3397
+ state.events.exit?.("AfterReturnShorthand", state, result, eventData);
3398
+ return result;
3399
+ }
3400
+ }
3345
3401
  var CallExpressionRest$0 = MemberExpressionRest;
3346
3402
  var CallExpressionRest$1 = $TV($C(TemplateLiteral, StringLiteral), function($skip, $loc, $0, $1) {
3347
3403
  if ($1.type === "StringLiteral") {
@@ -3428,7 +3484,7 @@ ${input.slice(result.pos)}
3428
3484
  return result;
3429
3485
  }
3430
3486
  }
3431
- var NonNullAssertion$0 = $T($S($EXPECT($L14, fail, 'NonNullAssertion "!"'), $N($EXPECT($L15, fail, 'NonNullAssertion "^"'))), function(value) {
3487
+ var NonNullAssertion$0 = $T($S($EXPECT($L15, fail, 'NonNullAssertion "!"'), $N($EXPECT($L16, fail, 'NonNullAssertion "^"'))), function(value) {
3432
3488
  return { "type": "NonNullAssertion", "ts": true, "children": value[0] };
3433
3489
  });
3434
3490
  function NonNullAssertion(state) {
@@ -3566,7 +3622,7 @@ ${input.slice(result.pos)}
3566
3622
  ]
3567
3623
  };
3568
3624
  });
3569
- var MemberBracketContent$3 = $TS($S(Dot, $EXPECT($L16, fail, 'MemberBracketContent "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
3625
+ var MemberBracketContent$3 = $TS($S(Dot, $EXPECT($L17, fail, 'MemberBracketContent "-"'), IntegerLiteral), function($skip, $loc, $0, $1, $2, $3) {
3570
3626
  var dot = $1;
3571
3627
  var neg = $2;
3572
3628
  var num = $3;
@@ -3763,7 +3819,7 @@ ${input.slice(result.pos)}
3763
3819
  }
3764
3820
  }
3765
3821
  var MetaProperty$0 = $S(New, Dot, Target);
3766
- var MetaProperty$1 = $TS($S($EXPECT($L17, fail, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3822
+ var MetaProperty$1 = $TS($S($EXPECT($L18, fail, 'MetaProperty "import.meta"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
3767
3823
  return { $loc, token: $1 };
3768
3824
  });
3769
3825
  function MetaProperty(state) {
@@ -3789,7 +3845,7 @@ ${input.slice(result.pos)}
3789
3845
  }
3790
3846
  }
3791
3847
  var Parameters$0 = NonEmptyParameters;
3792
- var Parameters$1 = $TV($EXPECT($L18, fail, 'Parameters ""'), function($skip, $loc, $0, $1) {
3848
+ var Parameters$1 = $TV($EXPECT($L19, fail, 'Parameters ""'), function($skip, $loc, $0, $1) {
3793
3849
  return {
3794
3850
  type: "Parameters",
3795
3851
  children: [{ $loc, token: "()" }],
@@ -4012,6 +4068,9 @@ ${input.slice(result.pos)}
4012
4068
  };
4013
4069
  });
4014
4070
  var NWBindingIdentifier$1 = Identifier;
4071
+ var NWBindingIdentifier$2 = $TS($S(ReturnValue), function($skip, $loc, $0, $1) {
4072
+ return { children: [$1], names: [] };
4073
+ });
4015
4074
  function NWBindingIdentifier(state) {
4016
4075
  let eventData;
4017
4076
  if (state.events) {
@@ -4023,12 +4082,12 @@ ${input.slice(result.pos)}
4023
4082
  }
4024
4083
  }
4025
4084
  if (state.tokenize) {
4026
- const result = $TOKEN("NWBindingIdentifier", state, NWBindingIdentifier$0(state) || NWBindingIdentifier$1(state));
4085
+ const result = $TOKEN("NWBindingIdentifier", state, NWBindingIdentifier$0(state) || NWBindingIdentifier$1(state) || NWBindingIdentifier$2(state));
4027
4086
  if (state.events)
4028
4087
  state.events.exit?.("NWBindingIdentifier", state, result, eventData);
4029
4088
  return result;
4030
4089
  } else {
4031
- const result = NWBindingIdentifier$0(state) || NWBindingIdentifier$1(state);
4090
+ const result = NWBindingIdentifier$0(state) || NWBindingIdentifier$1(state) || NWBindingIdentifier$2(state);
4032
4091
  if (state.events)
4033
4092
  state.events.exit?.("NWBindingIdentifier", state, result, eventData);
4034
4093
  return result;
@@ -4409,7 +4468,7 @@ ${input.slice(result.pos)}
4409
4468
  }
4410
4469
  }
4411
4470
  var BindingProperty$0 = BindingRestProperty;
4412
- var BindingProperty$1 = $TS($S($E(_), PropertyName, __, Colon, $C(BindingIdentifier, BindingPattern), $E(Initializer)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
4471
+ var BindingProperty$1 = $TS($S($E(_), PropertyName, $E(_), Colon, $C(BindingIdentifier, BindingPattern), $E(Initializer)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
4413
4472
  var name = $2;
4414
4473
  var b = $5;
4415
4474
  var init = $6;
@@ -4570,7 +4629,7 @@ ${input.slice(result.pos)}
4570
4629
  children: $0
4571
4630
  };
4572
4631
  });
4573
- var BindingElement$2 = $TV($Y($S($E(_), $EXPECT($L19, fail, 'BindingElement ","'))), function($skip, $loc, $0, $1) {
4632
+ var BindingElement$2 = $TV($Y($S($E(_), $EXPECT($L20, fail, 'BindingElement ","'))), function($skip, $loc, $0, $1) {
4574
4633
  return {
4575
4634
  children: [{
4576
4635
  type: "ElisionElement",
@@ -4643,7 +4702,7 @@ ${input.slice(result.pos)}
4643
4702
  return result;
4644
4703
  }
4645
4704
  }
4646
- var EmptyBindingPattern$0 = $TV($EXPECT($L18, fail, 'EmptyBindingPattern ""'), function($skip, $loc, $0, $1) {
4705
+ var EmptyBindingPattern$0 = $TV($EXPECT($L19, fail, 'EmptyBindingPattern ""'), function($skip, $loc, $0, $1) {
4647
4706
  const ref = {
4648
4707
  type: "Ref",
4649
4708
  base: "ref",
@@ -4861,7 +4920,7 @@ ${input.slice(result.pos)}
4861
4920
  }
4862
4921
  }
4863
4922
  var MatchingProperty$0 = MatchingRestProperty;
4864
- var MatchingProperty$1 = $TS($S($E(_), PropertyName, __, Colon, $E(_), $C(BindingIdentifier, MatchingPattern)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
4923
+ var MatchingProperty$1 = $TS($S($E(_), PropertyName, $E(_), Colon, $E(_), $C(BindingIdentifier, MatchingPattern)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
4865
4924
  var name = $2;
4866
4925
  var match = $6;
4867
4926
  return {
@@ -5087,7 +5146,7 @@ ${input.slice(result.pos)}
5087
5146
  }
5088
5147
  }
5089
5148
  var MatchingElement$0 = MatchingRestElement;
5090
- var MatchingElement$1 = $TS($S($E(_), BindingIdentifier, __, Colon, $E(_), $C(BindingIdentifier, MatchingPattern)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
5149
+ var MatchingElement$1 = $TS($S($E(_), BindingIdentifier, $E(_), Colon, $E(_), $C(BindingIdentifier, MatchingPattern)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
5091
5150
  var ws = $1;
5092
5151
  var name = $2;
5093
5152
  var match = $6;
@@ -5119,7 +5178,7 @@ ${input.slice(result.pos)}
5119
5178
  children: [ws, binding]
5120
5179
  };
5121
5180
  });
5122
- var MatchingElement$3 = $TV($Y($S($E(_), $EXPECT($L19, fail, 'MatchingElement ","'))), function($skip, $loc, $0, $1) {
5181
+ var MatchingElement$3 = $TV($Y($S($E(_), $EXPECT($L20, fail, 'MatchingElement ","'))), function($skip, $loc, $0, $1) {
5123
5182
  return {
5124
5183
  children: [{
5125
5184
  type: "ElisionElement",
@@ -5212,7 +5271,7 @@ ${input.slice(result.pos)}
5212
5271
  type: "FunctionSignature",
5213
5272
  id: wid?.[1],
5214
5273
  parameters,
5215
- returnType: suffix?.children?.[1]?.[0]?.[1]?.token,
5274
+ returnType: suffix,
5216
5275
  ts: false,
5217
5276
  block: null,
5218
5277
  children: !parameters.implicit ? $0 : [async, func, star, wid, parameters, w, suffix]
@@ -5371,7 +5430,7 @@ ${input.slice(result.pos)}
5371
5430
  type: "FunctionSignature",
5372
5431
  id,
5373
5432
  parameters,
5374
- returnType: suffix?.children?.[1]?.[0]?.[1]?.token,
5433
+ returnType: suffix,
5375
5434
  ts: false,
5376
5435
  block: null,
5377
5436
  children: [func, w1, id, w2, parameters, suffix]
@@ -5480,7 +5539,7 @@ ${input.slice(result.pos)}
5480
5539
  type: "FunctionExpression",
5481
5540
  id: void 0,
5482
5541
  parameters,
5483
- returnType: suffix?.children?.[1]?.[0]?.[1]?.token,
5542
+ returnType: suffix,
5484
5543
  ts: false,
5485
5544
  block,
5486
5545
  children: [
@@ -5513,7 +5572,7 @@ ${input.slice(result.pos)}
5513
5572
  return result;
5514
5573
  }
5515
5574
  }
5516
- var Arrow$0 = $TV($EXPECT($L20, fail, 'Arrow "->"'), function($skip, $loc, $0, $1) {
5575
+ var Arrow$0 = $TV($EXPECT($L21, fail, 'Arrow "->"'), function($skip, $loc, $0, $1) {
5517
5576
  return { $loc, token: $1 };
5518
5577
  });
5519
5578
  function Arrow(state) {
@@ -5577,12 +5636,16 @@ ${input.slice(result.pos)}
5577
5636
  return result;
5578
5637
  }
5579
5638
  }
5580
- var ImplicitNestedBlock$0 = $TS($S(InsertOpenBrace, NestedBlockStatements, InsertNewline, InsertIndent, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
5581
- var block = $2;
5582
- return Object.assign({}, block, {
5583
- children: [$1, ...block.children, $3, $4, $5],
5639
+ var ImplicitNestedBlock$0 = $TS($S($Y(EOS), InsertOpenBrace, AllowAll, $E($S(NestedBlockStatements, InsertNewline, InsertIndent, InsertCloseBrace)), RestoreAll), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
5640
+ var open = $2;
5641
+ if (!$4)
5642
+ return $skip;
5643
+ const [block, ...tail] = $4;
5644
+ return {
5645
+ ...block,
5646
+ children: [open, ...block.children, ...tail],
5584
5647
  bare: false
5585
- });
5648
+ };
5586
5649
  });
5587
5650
  function ImplicitNestedBlock(state) {
5588
5651
  let eventData;
@@ -5747,7 +5810,7 @@ ${input.slice(result.pos)}
5747
5810
  return result;
5748
5811
  }
5749
5812
  }
5750
- var EmptyBareBlock$0 = $TV($EXPECT($L18, fail, 'EmptyBareBlock ""'), function($skip, $loc, $0, $1) {
5813
+ var EmptyBareBlock$0 = $TV($EXPECT($L19, fail, 'EmptyBareBlock ""'), function($skip, $loc, $0, $1) {
5751
5814
  const expressions = [];
5752
5815
  return {
5753
5816
  type: "BlockStatement",
@@ -5850,12 +5913,16 @@ ${input.slice(result.pos)}
5850
5913
  return result;
5851
5914
  }
5852
5915
  }
5853
- var NonSingleBracedBlock$0 = $TS($S($Q(TrailingComment), OpenBrace, BracedContent, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
5854
- var block = $3;
5916
+ var NonSingleBracedBlock$0 = $TS($S($Q(TrailingComment), OpenBrace, AllowAll, $E($S(BracedContent, __, CloseBrace)), RestoreAll), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
5917
+ var ws1 = $1;
5918
+ var open = $2;
5919
+ if (!$4)
5920
+ return $skip;
5921
+ const [block, ws2, close] = $4;
5855
5922
  return {
5856
5923
  type: "BlockStatement",
5857
5924
  expressions: block.expressions,
5858
- children: [$1, $2, ...block.children, $4, $5],
5925
+ children: [ws1, open, ...block.children, ws2, close],
5859
5926
  bare: false
5860
5927
  };
5861
5928
  return block;
@@ -5970,7 +6037,7 @@ ${input.slice(result.pos)}
5970
6037
  children: [$1, expressions]
5971
6038
  };
5972
6039
  });
5973
- var BracedContent$2 = $TV($Y($S(__, $EXPECT($L21, fail, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
6040
+ var BracedContent$2 = $TV($Y($S(__, $EXPECT($L22, fail, 'BracedContent "}"'))), function($skip, $loc, $0, $1) {
5974
6041
  const expressions = [];
5975
6042
  return {
5976
6043
  type: "BlockStatement",
@@ -6115,7 +6182,7 @@ ${input.slice(result.pos)}
6115
6182
  return result;
6116
6183
  }
6117
6184
  }
6118
- var NullLiteral$0 = $TS($S($EXPECT($L22, fail, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6185
+ var NullLiteral$0 = $TS($S($EXPECT($L23, fail, 'NullLiteral "null"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6119
6186
  return { $loc, token: $1 };
6120
6187
  });
6121
6188
  function NullLiteral(state) {
@@ -6143,7 +6210,7 @@ ${input.slice(result.pos)}
6143
6210
  var BooleanLiteral$0 = $T($S(CoffeeBooleansEnabled, CoffeeScriptBooleanLiteral), function(value) {
6144
6211
  return value[1];
6145
6212
  });
6146
- var BooleanLiteral$1 = $TS($S($C($EXPECT($L23, fail, 'BooleanLiteral "true"'), $EXPECT($L24, fail, 'BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6213
+ var BooleanLiteral$1 = $TS($S($C($EXPECT($L24, fail, 'BooleanLiteral "true"'), $EXPECT($L25, fail, 'BooleanLiteral "false"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6147
6214
  return { $loc, token: $1 };
6148
6215
  });
6149
6216
  function BooleanLiteral(state) {
@@ -6168,10 +6235,10 @@ ${input.slice(result.pos)}
6168
6235
  return result;
6169
6236
  }
6170
6237
  }
6171
- var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L25, fail, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L26, fail, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6238
+ var CoffeeScriptBooleanLiteral$0 = $TS($S($C($EXPECT($L26, fail, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L27, fail, 'CoffeeScriptBooleanLiteral "on"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6172
6239
  return { $loc, token: "true" };
6173
6240
  });
6174
- var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L27, fail, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L28, fail, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6241
+ var CoffeeScriptBooleanLiteral$1 = $TS($S($C($EXPECT($L28, fail, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L29, fail, 'CoffeeScriptBooleanLiteral "off"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6175
6242
  return { $loc, token: "false" };
6176
6243
  });
6177
6244
  function CoffeeScriptBooleanLiteral(state) {
@@ -6277,7 +6344,7 @@ ${input.slice(result.pos)}
6277
6344
  return result;
6278
6345
  }
6279
6346
  }
6280
- var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L1, fail, 'UpcomingAssignment "="'), $N($C($EXPECT($L1, fail, 'UpcomingAssignment "="'), $EXPECT($L29, fail, 'UpcomingAssignment ">"')))));
6347
+ var UpcomingAssignment$0 = $Y($S(__, $EXPECT($L1, fail, 'UpcomingAssignment "="'), $N($C($EXPECT($L1, fail, 'UpcomingAssignment "="'), $EXPECT($L30, fail, 'UpcomingAssignment ">"')))));
6281
6348
  function UpcomingAssignment(state) {
6282
6349
  let eventData;
6283
6350
  if (state.events) {
@@ -6543,7 +6610,7 @@ ${input.slice(result.pos)}
6543
6610
  }
6544
6611
  }
6545
6612
  var ArrayElementDelimiter$0 = $S(__, Comma);
6546
- var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L30, fail, 'ArrayElementDelimiter "]"')));
6613
+ var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L31, fail, 'ArrayElementDelimiter "]"')));
6547
6614
  var ArrayElementDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
6548
6615
  return value[1];
6549
6616
  });
@@ -6970,7 +7037,7 @@ ${input.slice(result.pos)}
6970
7037
  var ImplicitInlineObjectPropertyDelimiter$1 = $T($S($Y($S($C(Samedent, $Q(_)), NamedProperty)), InsertComma), function(value) {
6971
7038
  return value[1];
6972
7039
  });
6973
- var ImplicitInlineObjectPropertyDelimiter$2 = $T($Y($S(__, $C($EXPECT($L31, fail, 'ImplicitInlineObjectPropertyDelimiter ":"'), $EXPECT($L32, fail, 'ImplicitInlineObjectPropertyDelimiter ")"'), $EXPECT($L30, fail, 'ImplicitInlineObjectPropertyDelimiter "]"'), $EXPECT($L21, fail, 'ImplicitInlineObjectPropertyDelimiter "}"'), ReservedWord))), function(value) {
7040
+ var ImplicitInlineObjectPropertyDelimiter$2 = $T($Y($S(__, $C($EXPECT($L32, fail, 'ImplicitInlineObjectPropertyDelimiter ":"'), $EXPECT($L33, fail, 'ImplicitInlineObjectPropertyDelimiter ")"'), $EXPECT($L31, fail, 'ImplicitInlineObjectPropertyDelimiter "]"'), $EXPECT($L22, fail, 'ImplicitInlineObjectPropertyDelimiter "}"'), ReservedWord))), function(value) {
6974
7041
  return "";
6975
7042
  });
6976
7043
  var ImplicitInlineObjectPropertyDelimiter$3 = $T($Y(EOS), function(value) {
@@ -6999,7 +7066,7 @@ ${input.slice(result.pos)}
6999
7066
  }
7000
7067
  }
7001
7068
  var ObjectPropertyDelimiter$0 = $S($Q(_), Comma);
7002
- var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L21, fail, 'ObjectPropertyDelimiter "}"')));
7069
+ var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L22, fail, 'ObjectPropertyDelimiter "}"')));
7003
7070
  var ObjectPropertyDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
7004
7071
  return value[1];
7005
7072
  });
@@ -7169,7 +7236,7 @@ ${input.slice(result.pos)}
7169
7236
  return result;
7170
7237
  }
7171
7238
  }
7172
- var NamedProperty$0 = $TS($S(PropertyName, __, Colon, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4) {
7239
+ var NamedProperty$0 = $TS($S(PropertyName, $E(_), Colon, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4) {
7173
7240
  var name = $1;
7174
7241
  var exp = $4;
7175
7242
  return {
@@ -7202,7 +7269,7 @@ ${input.slice(result.pos)}
7202
7269
  return result;
7203
7270
  }
7204
7271
  }
7205
- var ImplicitNamedProperty$0 = $TS($S(PropertyName, __, Colon, $C(MultiLineImplicitObjectLiteralAllowed, $N(EOS)), ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7272
+ var ImplicitNamedProperty$0 = $TS($S(PropertyName, $E(_), Colon, $C(MultiLineImplicitObjectLiteralAllowed, $N(EOS)), ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7206
7273
  var name = $1;
7207
7274
  var exp = $5;
7208
7275
  return {
@@ -7309,7 +7376,7 @@ ${input.slice(result.pos)}
7309
7376
  expression
7310
7377
  };
7311
7378
  });
7312
- var ComputedPropertyName$2 = $TS($S(InsertOpenBracket, $EXPECT($L16, fail, 'ComputedPropertyName "-"'), NumericLiteral, InsertCloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
7379
+ var ComputedPropertyName$2 = $TS($S(InsertOpenBracket, $EXPECT($L17, fail, 'ComputedPropertyName "-"'), NumericLiteral, InsertCloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
7313
7380
  return {
7314
7381
  type: "ComputedPropertyName",
7315
7382
  children: $0
@@ -7477,7 +7544,7 @@ ${input.slice(result.pos)}
7477
7544
  children: $0,
7478
7545
  name,
7479
7546
  modifier: $1?.[0]?.token,
7480
- returnType: void 0,
7547
+ returnType: suffix,
7481
7548
  parameters
7482
7549
  };
7483
7550
  });
@@ -7658,22 +7725,22 @@ ${input.slice(result.pos)}
7658
7725
  return result;
7659
7726
  }
7660
7727
  }
7661
- var AssignmentOpSymbol$0 = $EXPECT($L33, fail, 'AssignmentOpSymbol "**="');
7662
- var AssignmentOpSymbol$1 = $EXPECT($L34, fail, 'AssignmentOpSymbol "*="');
7663
- var AssignmentOpSymbol$2 = $EXPECT($L35, fail, 'AssignmentOpSymbol "/="');
7664
- var AssignmentOpSymbol$3 = $EXPECT($L36, fail, 'AssignmentOpSymbol "%="');
7665
- var AssignmentOpSymbol$4 = $EXPECT($L37, fail, 'AssignmentOpSymbol "+="');
7666
- var AssignmentOpSymbol$5 = $EXPECT($L38, fail, 'AssignmentOpSymbol "-="');
7667
- var AssignmentOpSymbol$6 = $EXPECT($L39, fail, 'AssignmentOpSymbol "<<="');
7668
- var AssignmentOpSymbol$7 = $EXPECT($L40, fail, 'AssignmentOpSymbol ">>>="');
7669
- var AssignmentOpSymbol$8 = $EXPECT($L41, fail, 'AssignmentOpSymbol ">>="');
7670
- var AssignmentOpSymbol$9 = $EXPECT($L42, fail, 'AssignmentOpSymbol "&&="');
7671
- var AssignmentOpSymbol$10 = $EXPECT($L43, fail, 'AssignmentOpSymbol "&="');
7672
- var AssignmentOpSymbol$11 = $EXPECT($L44, fail, 'AssignmentOpSymbol "^="');
7673
- var AssignmentOpSymbol$12 = $EXPECT($L45, fail, 'AssignmentOpSymbol "||="');
7674
- var AssignmentOpSymbol$13 = $EXPECT($L46, fail, 'AssignmentOpSymbol "|="');
7675
- var AssignmentOpSymbol$14 = $EXPECT($L47, fail, 'AssignmentOpSymbol "??="');
7676
- var AssignmentOpSymbol$15 = $T($EXPECT($L48, fail, 'AssignmentOpSymbol "?="'), function(value) {
7728
+ var AssignmentOpSymbol$0 = $EXPECT($L34, fail, 'AssignmentOpSymbol "**="');
7729
+ var AssignmentOpSymbol$1 = $EXPECT($L35, fail, 'AssignmentOpSymbol "*="');
7730
+ var AssignmentOpSymbol$2 = $EXPECT($L36, fail, 'AssignmentOpSymbol "/="');
7731
+ var AssignmentOpSymbol$3 = $EXPECT($L37, fail, 'AssignmentOpSymbol "%="');
7732
+ var AssignmentOpSymbol$4 = $EXPECT($L38, fail, 'AssignmentOpSymbol "+="');
7733
+ var AssignmentOpSymbol$5 = $EXPECT($L39, fail, 'AssignmentOpSymbol "-="');
7734
+ var AssignmentOpSymbol$6 = $EXPECT($L40, fail, 'AssignmentOpSymbol "<<="');
7735
+ var AssignmentOpSymbol$7 = $EXPECT($L41, fail, 'AssignmentOpSymbol ">>>="');
7736
+ var AssignmentOpSymbol$8 = $EXPECT($L42, fail, 'AssignmentOpSymbol ">>="');
7737
+ var AssignmentOpSymbol$9 = $EXPECT($L43, fail, 'AssignmentOpSymbol "&&="');
7738
+ var AssignmentOpSymbol$10 = $EXPECT($L44, fail, 'AssignmentOpSymbol "&="');
7739
+ var AssignmentOpSymbol$11 = $EXPECT($L45, fail, 'AssignmentOpSymbol "^="');
7740
+ var AssignmentOpSymbol$12 = $EXPECT($L46, fail, 'AssignmentOpSymbol "||="');
7741
+ var AssignmentOpSymbol$13 = $EXPECT($L47, fail, 'AssignmentOpSymbol "|="');
7742
+ var AssignmentOpSymbol$14 = $EXPECT($L48, fail, 'AssignmentOpSymbol "??="');
7743
+ var AssignmentOpSymbol$15 = $T($EXPECT($L49, fail, 'AssignmentOpSymbol "?="'), function(value) {
7677
7744
  return "??=";
7678
7745
  });
7679
7746
  var AssignmentOpSymbol$16 = $T($S($EXPECT($L1, fail, 'AssignmentOpSymbol "="'), $N($EXPECT($L1, fail, 'AssignmentOpSymbol "="'))), function(value) {
@@ -7704,10 +7771,10 @@ ${input.slice(result.pos)}
7704
7771
  return result;
7705
7772
  }
7706
7773
  }
7707
- var CoffeeWordAssignmentOp$0 = $T($EXPECT($L49, fail, 'CoffeeWordAssignmentOp "and="'), function(value) {
7774
+ var CoffeeWordAssignmentOp$0 = $T($EXPECT($L50, fail, 'CoffeeWordAssignmentOp "and="'), function(value) {
7708
7775
  return "&&=";
7709
7776
  });
7710
- var CoffeeWordAssignmentOp$1 = $T($EXPECT($L50, fail, 'CoffeeWordAssignmentOp "or="'), function(value) {
7777
+ var CoffeeWordAssignmentOp$1 = $T($EXPECT($L51, fail, 'CoffeeWordAssignmentOp "or="'), function(value) {
7711
7778
  return "||=";
7712
7779
  });
7713
7780
  function CoffeeWordAssignmentOp(state) {
@@ -7746,7 +7813,7 @@ ${input.slice(result.pos)}
7746
7813
  special: true
7747
7814
  };
7748
7815
  });
7749
- var BinaryOp$2 = $TS($S($EXPECT($L51, fail, 'BinaryOp "not"'), NonIdContinue, __, Identifier), function($skip, $loc, $0, $1, $2, $3, $4) {
7816
+ var BinaryOp$2 = $TS($S($EXPECT($L52, fail, 'BinaryOp "not"'), NonIdContinue, __, Identifier), function($skip, $loc, $0, $1, $2, $3, $4) {
7750
7817
  var id = $4;
7751
7818
  if (!module2.operators.has(id.name))
7752
7819
  return $skip;
@@ -7778,21 +7845,21 @@ ${input.slice(result.pos)}
7778
7845
  return result;
7779
7846
  }
7780
7847
  }
7781
- var BinaryOpSymbol$0 = $EXPECT($L52, fail, 'BinaryOpSymbol "**"');
7782
- var BinaryOpSymbol$1 = $EXPECT($L53, fail, 'BinaryOpSymbol "*"');
7783
- var BinaryOpSymbol$2 = $EXPECT($L54, fail, 'BinaryOpSymbol "/"');
7784
- var BinaryOpSymbol$3 = $TV($EXPECT($L55, fail, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
7848
+ var BinaryOpSymbol$0 = $EXPECT($L53, fail, 'BinaryOpSymbol "**"');
7849
+ var BinaryOpSymbol$1 = $EXPECT($L54, fail, 'BinaryOpSymbol "*"');
7850
+ var BinaryOpSymbol$2 = $EXPECT($L55, fail, 'BinaryOpSymbol "/"');
7851
+ var BinaryOpSymbol$3 = $TV($EXPECT($L56, fail, 'BinaryOpSymbol "%%"'), function($skip, $loc, $0, $1) {
7785
7852
  return {
7786
7853
  call: module2.getRef("modulo"),
7787
7854
  special: true
7788
7855
  };
7789
7856
  });
7790
- var BinaryOpSymbol$4 = $EXPECT($L56, fail, 'BinaryOpSymbol "%"');
7791
- var BinaryOpSymbol$5 = $EXPECT($L57, fail, 'BinaryOpSymbol "+"');
7792
- var BinaryOpSymbol$6 = $EXPECT($L16, fail, 'BinaryOpSymbol "-"');
7793
- var BinaryOpSymbol$7 = $EXPECT($L58, fail, 'BinaryOpSymbol "<="');
7794
- var BinaryOpSymbol$8 = $EXPECT($L59, fail, 'BinaryOpSymbol ">="');
7795
- var BinaryOpSymbol$9 = $TV($EXPECT($L60, fail, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
7857
+ var BinaryOpSymbol$4 = $EXPECT($L57, fail, 'BinaryOpSymbol "%"');
7858
+ var BinaryOpSymbol$5 = $EXPECT($L58, fail, 'BinaryOpSymbol "+"');
7859
+ var BinaryOpSymbol$6 = $EXPECT($L17, fail, 'BinaryOpSymbol "-"');
7860
+ var BinaryOpSymbol$7 = $EXPECT($L59, fail, 'BinaryOpSymbol "<="');
7861
+ var BinaryOpSymbol$8 = $EXPECT($L60, fail, 'BinaryOpSymbol ">="');
7862
+ var BinaryOpSymbol$9 = $TV($EXPECT($L61, fail, 'BinaryOpSymbol "<?"'), function($skip, $loc, $0, $1) {
7796
7863
  return {
7797
7864
  $loc,
7798
7865
  token: "instanceof",
@@ -7800,7 +7867,7 @@ ${input.slice(result.pos)}
7800
7867
  special: true
7801
7868
  };
7802
7869
  });
7803
- var BinaryOpSymbol$10 = $TV($EXPECT($L61, fail, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
7870
+ var BinaryOpSymbol$10 = $TV($EXPECT($L62, fail, 'BinaryOpSymbol "!<?"'), function($skip, $loc, $0, $1) {
7804
7871
  return {
7805
7872
  $loc,
7806
7873
  token: "instanceof",
@@ -7809,58 +7876,58 @@ ${input.slice(result.pos)}
7809
7876
  negated: true
7810
7877
  };
7811
7878
  });
7812
- var BinaryOpSymbol$11 = $EXPECT($L62, fail, 'BinaryOpSymbol "<<"');
7879
+ var BinaryOpSymbol$11 = $EXPECT($L63, fail, 'BinaryOpSymbol "<<"');
7813
7880
  var BinaryOpSymbol$12 = $TR($EXPECT($R7, fail, "BinaryOpSymbol /<(?!\\p{ID_Start}|[_$])/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
7814
7881
  return "<";
7815
7882
  });
7816
- var BinaryOpSymbol$13 = $EXPECT($L63, fail, 'BinaryOpSymbol ">>>"');
7817
- var BinaryOpSymbol$14 = $EXPECT($L64, fail, 'BinaryOpSymbol ">>"');
7818
- var BinaryOpSymbol$15 = $EXPECT($L29, fail, 'BinaryOpSymbol ">"');
7819
- var BinaryOpSymbol$16 = $EXPECT($L65, fail, 'BinaryOpSymbol "!=="');
7820
- var BinaryOpSymbol$17 = $TV($EXPECT($L66, fail, 'BinaryOpSymbol "!="'), function($skip, $loc, $0, $1) {
7883
+ var BinaryOpSymbol$13 = $EXPECT($L64, fail, 'BinaryOpSymbol ">>>"');
7884
+ var BinaryOpSymbol$14 = $EXPECT($L65, fail, 'BinaryOpSymbol ">>"');
7885
+ var BinaryOpSymbol$15 = $EXPECT($L30, fail, 'BinaryOpSymbol ">"');
7886
+ var BinaryOpSymbol$16 = $EXPECT($L66, fail, 'BinaryOpSymbol "!=="');
7887
+ var BinaryOpSymbol$17 = $TV($EXPECT($L67, fail, 'BinaryOpSymbol "!="'), function($skip, $loc, $0, $1) {
7821
7888
  if (module2.config.coffeeEq)
7822
7889
  return "!==";
7823
7890
  return $1;
7824
7891
  });
7825
- var BinaryOpSymbol$18 = $TS($S($EXPECT($L67, fail, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7892
+ var BinaryOpSymbol$18 = $TS($S($EXPECT($L68, fail, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7826
7893
  if (module2.config.coffeeIsnt)
7827
7894
  return "!==";
7828
7895
  return $skip;
7829
7896
  });
7830
- var BinaryOpSymbol$19 = $EXPECT($L68, fail, 'BinaryOpSymbol "==="');
7831
- var BinaryOpSymbol$20 = $TV($EXPECT($L69, fail, 'BinaryOpSymbol "=="'), function($skip, $loc, $0, $1) {
7897
+ var BinaryOpSymbol$19 = $EXPECT($L69, fail, 'BinaryOpSymbol "==="');
7898
+ var BinaryOpSymbol$20 = $TV($EXPECT($L70, fail, 'BinaryOpSymbol "=="'), function($skip, $loc, $0, $1) {
7832
7899
  if (module2.config.coffeeEq)
7833
7900
  return "===";
7834
7901
  return $1;
7835
7902
  });
7836
- var BinaryOpSymbol$21 = $T($S($EXPECT($L70, fail, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
7903
+ var BinaryOpSymbol$21 = $T($S($EXPECT($L71, fail, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
7837
7904
  return "&&";
7838
7905
  });
7839
- var BinaryOpSymbol$22 = $EXPECT($L71, fail, 'BinaryOpSymbol "&&"');
7840
- var BinaryOpSymbol$23 = $T($S(CoffeeOfEnabled, $EXPECT($L72, fail, 'BinaryOpSymbol "of"'), NonIdContinue), function(value) {
7906
+ var BinaryOpSymbol$22 = $EXPECT($L72, fail, 'BinaryOpSymbol "&&"');
7907
+ var BinaryOpSymbol$23 = $T($S(CoffeeOfEnabled, $EXPECT($L73, fail, 'BinaryOpSymbol "of"'), NonIdContinue), function(value) {
7841
7908
  return "in";
7842
7909
  });
7843
- var BinaryOpSymbol$24 = $T($S($EXPECT($L73, fail, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
7910
+ var BinaryOpSymbol$24 = $T($S($EXPECT($L74, fail, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
7844
7911
  return "||";
7845
7912
  });
7846
- var BinaryOpSymbol$25 = $EXPECT($L74, fail, 'BinaryOpSymbol "||"');
7847
- var BinaryOpSymbol$26 = $TV($C($EXPECT($L75, fail, 'BinaryOpSymbol "^^"'), $S($EXPECT($L76, fail, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7913
+ var BinaryOpSymbol$25 = $EXPECT($L75, fail, 'BinaryOpSymbol "||"');
7914
+ var BinaryOpSymbol$26 = $TV($C($EXPECT($L76, fail, 'BinaryOpSymbol "^^"'), $S($EXPECT($L77, fail, 'BinaryOpSymbol "xor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7848
7915
  return {
7849
7916
  call: module2.getRef("xor"),
7850
7917
  special: true
7851
7918
  };
7852
7919
  });
7853
- var BinaryOpSymbol$27 = $TV($C($EXPECT($R8, fail, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L77, fail, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7920
+ var BinaryOpSymbol$27 = $TV($C($EXPECT($R8, fail, "BinaryOpSymbol /!\\^\\^?/"), $S($EXPECT($L78, fail, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7854
7921
  return {
7855
7922
  call: module2.getRef("xnor"),
7856
7923
  special: true
7857
7924
  };
7858
7925
  });
7859
- var BinaryOpSymbol$28 = $EXPECT($L78, fail, 'BinaryOpSymbol "??"');
7926
+ var BinaryOpSymbol$28 = $EXPECT($L79, fail, 'BinaryOpSymbol "??"');
7860
7927
  var BinaryOpSymbol$29 = $T($S(CoffeeBinaryExistentialEnabled, $EXPECT($L3, fail, 'BinaryOpSymbol "?"')), function(value) {
7861
7928
  return "??";
7862
7929
  });
7863
- var BinaryOpSymbol$30 = $TS($S($EXPECT($L79, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7930
+ var BinaryOpSymbol$30 = $TS($S($EXPECT($L80, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7864
7931
  return {
7865
7932
  $loc,
7866
7933
  token: $1,
@@ -7868,7 +7935,7 @@ ${input.slice(result.pos)}
7868
7935
  special: true
7869
7936
  };
7870
7937
  });
7871
- var BinaryOpSymbol$31 = $TS($S($EXPECT($L51, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L79, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7938
+ var BinaryOpSymbol$31 = $TS($S($EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L80, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7872
7939
  return {
7873
7940
  $loc,
7874
7941
  token: "instanceof",
@@ -7877,7 +7944,7 @@ ${input.slice(result.pos)}
7877
7944
  negated: true
7878
7945
  };
7879
7946
  });
7880
- var BinaryOpSymbol$32 = $TV($C($S($N(CoffeeOfEnabled), $EXPECT($L51, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L80, fail, 'BinaryOpSymbol "in"'), NonIdContinue), $S(CoffeeOfEnabled, $EXPECT($L51, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L72, fail, 'BinaryOpSymbol "of"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7947
+ var BinaryOpSymbol$32 = $TV($C($S($N(CoffeeOfEnabled), $EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), $S(CoffeeOfEnabled, $EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L73, fail, 'BinaryOpSymbol "of"'), NonIdContinue)), function($skip, $loc, $0, $1) {
7881
7948
  return {
7882
7949
  $loc,
7883
7950
  token: "in",
@@ -7885,7 +7952,7 @@ ${input.slice(result.pos)}
7885
7952
  negated: true
7886
7953
  };
7887
7954
  });
7888
- var BinaryOpSymbol$33 = $TS($S($EXPECT($L81, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L80, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7955
+ var BinaryOpSymbol$33 = $TS($S($EXPECT($L82, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
7889
7956
  return {
7890
7957
  method: "includes",
7891
7958
  relational: true,
@@ -7893,7 +7960,7 @@ ${input.slice(result.pos)}
7893
7960
  special: true
7894
7961
  };
7895
7962
  });
7896
- var BinaryOpSymbol$34 = $TS($S(CoffeeOfEnabled, $EXPECT($L80, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
7963
+ var BinaryOpSymbol$34 = $TS($S(CoffeeOfEnabled, $EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
7897
7964
  return {
7898
7965
  call: [module2.getRef("indexOf"), ".call"],
7899
7966
  relational: true,
@@ -7902,7 +7969,7 @@ ${input.slice(result.pos)}
7902
7969
  special: true
7903
7970
  };
7904
7971
  });
7905
- var BinaryOpSymbol$35 = $TS($S($EXPECT($L81, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L51, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L80, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
7972
+ var BinaryOpSymbol$35 = $TS($S($EXPECT($L82, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
7906
7973
  return {
7907
7974
  method: "includes",
7908
7975
  relational: true,
@@ -7911,7 +7978,7 @@ ${input.slice(result.pos)}
7911
7978
  negated: true
7912
7979
  };
7913
7980
  });
7914
- var BinaryOpSymbol$36 = $TS($S(CoffeeOfEnabled, $EXPECT($L51, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L80, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
7981
+ var BinaryOpSymbol$36 = $TS($S(CoffeeOfEnabled, $EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
7915
7982
  return {
7916
7983
  call: [module2.getRef("indexOf"), ".call"],
7917
7984
  relational: true,
@@ -7920,7 +7987,7 @@ ${input.slice(result.pos)}
7920
7987
  special: true
7921
7988
  };
7922
7989
  });
7923
- var BinaryOpSymbol$37 = $TS($S($N(CoffeeNotEnabled), $EXPECT($L81, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L51, fail, 'BinaryOpSymbol "not"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
7990
+ var BinaryOpSymbol$37 = $TS($S($N(CoffeeNotEnabled), $EXPECT($L82, fail, 'BinaryOpSymbol "is"'), NonIdContinue, __, $EXPECT($L52, fail, 'BinaryOpSymbol "not"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
7924
7991
  if (module2.config.objectIs) {
7925
7992
  return {
7926
7993
  call: module2.getRef("is"),
@@ -7932,7 +7999,7 @@ ${input.slice(result.pos)}
7932
7999
  }
7933
8000
  return "!==";
7934
8001
  });
7935
- var BinaryOpSymbol$38 = $TS($S($EXPECT($L81, fail, 'BinaryOpSymbol "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8002
+ var BinaryOpSymbol$38 = $TS($S($EXPECT($L82, fail, 'BinaryOpSymbol "is"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7936
8003
  if (module2.config.objectIs) {
7937
8004
  return {
7938
8005
  call: module2.getRef("is"),
@@ -7943,12 +8010,12 @@ ${input.slice(result.pos)}
7943
8010
  }
7944
8011
  return "===";
7945
8012
  });
7946
- var BinaryOpSymbol$39 = $TS($S($EXPECT($L80, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8013
+ var BinaryOpSymbol$39 = $TS($S($EXPECT($L81, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
7947
8014
  return $1;
7948
8015
  });
7949
- var BinaryOpSymbol$40 = $EXPECT($L82, fail, 'BinaryOpSymbol "&"');
7950
- var BinaryOpSymbol$41 = $EXPECT($L15, fail, 'BinaryOpSymbol "^"');
7951
- var BinaryOpSymbol$42 = $EXPECT($L83, fail, 'BinaryOpSymbol "|"');
8016
+ var BinaryOpSymbol$40 = $EXPECT($L83, fail, 'BinaryOpSymbol "&"');
8017
+ var BinaryOpSymbol$41 = $EXPECT($L16, fail, 'BinaryOpSymbol "^"');
8018
+ var BinaryOpSymbol$42 = $EXPECT($L84, fail, 'BinaryOpSymbol "|"');
7952
8019
  function BinaryOpSymbol(state) {
7953
8020
  let eventData;
7954
8021
  if (state.events) {
@@ -7971,8 +8038,8 @@ ${input.slice(result.pos)}
7971
8038
  return result;
7972
8039
  }
7973
8040
  }
7974
- var Xor$0 = $EXPECT($L75, fail, 'Xor "^^"');
7975
- var Xor$1 = $S($EXPECT($L76, fail, 'Xor "xor"'), NonIdContinue);
8041
+ var Xor$0 = $EXPECT($L76, fail, 'Xor "^^"');
8042
+ var Xor$1 = $S($EXPECT($L77, fail, 'Xor "xor"'), NonIdContinue);
7976
8043
  function Xor(state) {
7977
8044
  let eventData;
7978
8045
  if (state.events) {
@@ -7996,7 +8063,7 @@ ${input.slice(result.pos)}
7996
8063
  }
7997
8064
  }
7998
8065
  var Xnor$0 = $R$0($EXPECT($R8, fail, "Xnor /!\\^\\^?/"));
7999
- var Xnor$1 = $EXPECT($L77, fail, 'Xnor "xnor"');
8066
+ var Xnor$1 = $EXPECT($L78, fail, 'Xnor "xnor"');
8000
8067
  function Xnor(state) {
8001
8068
  let eventData;
8002
8069
  if (state.events) {
@@ -8217,7 +8284,7 @@ ${input.slice(result.pos)}
8217
8284
  return result;
8218
8285
  }
8219
8286
  }
8220
- var EmptyStatement$0 = $T($S($Q(TrailingComment), $Y($EXPECT($L84, fail, 'EmptyStatement ";"'))), function(value) {
8287
+ var EmptyStatement$0 = $T($S($Q(TrailingComment), $Y($EXPECT($L85, fail, 'EmptyStatement ";"'))), function(value) {
8221
8288
  return { "type": "EmptyStatement", "children": value[0] };
8222
8289
  });
8223
8290
  function EmptyStatement(state) {
@@ -8296,7 +8363,7 @@ ${input.slice(result.pos)}
8296
8363
  var w = $3;
8297
8364
  return [id, colon, w];
8298
8365
  });
8299
- var Label$1 = $S($EXPECT($L85, fail, 'Label "$:"'), Whitespace);
8366
+ var Label$1 = $S($EXPECT($L86, fail, 'Label "$:"'), Whitespace);
8300
8367
  function Label(state) {
8301
8368
  let eventData;
8302
8369
  if (state.events) {
@@ -9248,7 +9315,7 @@ ${input.slice(result.pos)}
9248
9315
  return result;
9249
9316
  }
9250
9317
  }
9251
- var CoffeeForDeclaration$0 = $TS($S($E($S(__, $EXPECT($L86, fail, 'CoffeeForDeclaration "own"'), NonIdContinue)), ForBinding), function($skip, $loc, $0, $1, $2) {
9318
+ var CoffeeForDeclaration$0 = $TS($S($E($S(__, $EXPECT($L87, fail, 'CoffeeForDeclaration "own"'), NonIdContinue)), ForBinding), function($skip, $loc, $0, $1, $2) {
9252
9319
  var own = $1;
9253
9320
  var binding = $2;
9254
9321
  return {
@@ -9732,8 +9799,8 @@ ${input.slice(result.pos)}
9732
9799
  return result;
9733
9800
  }
9734
9801
  }
9735
- var ImpliedColon$0 = $S(__, Colon);
9736
- var ImpliedColon$1 = $TV($EXPECT($L18, fail, 'ImpliedColon ""'), function($skip, $loc, $0, $1) {
9802
+ var ImpliedColon$0 = $S($E(_), Colon);
9803
+ var ImpliedColon$1 = $TV($EXPECT($L19, fail, 'ImpliedColon ""'), function($skip, $loc, $0, $1) {
9737
9804
  return { $loc, token: ":" };
9738
9805
  });
9739
9806
  function ImpliedColon(state) {
@@ -9986,7 +10053,7 @@ ${input.slice(result.pos)}
9986
10053
  return result;
9987
10054
  }
9988
10055
  }
9989
- var ForbidIndentedApplication$0 = $TV($EXPECT($L18, fail, 'ForbidIndentedApplication ""'), function($skip, $loc, $0, $1) {
10056
+ var ForbidIndentedApplication$0 = $TV($EXPECT($L19, fail, 'ForbidIndentedApplication ""'), function($skip, $loc, $0, $1) {
9990
10057
  module2.forbidIndentedApplication.push(true);
9991
10058
  });
9992
10059
  function ForbidIndentedApplication(state) {
@@ -10011,7 +10078,7 @@ ${input.slice(result.pos)}
10011
10078
  return result;
10012
10079
  }
10013
10080
  }
10014
- var AllowIndentedApplication$0 = $TV($EXPECT($L18, fail, 'AllowIndentedApplication ""'), function($skip, $loc, $0, $1) {
10081
+ var AllowIndentedApplication$0 = $TV($EXPECT($L19, fail, 'AllowIndentedApplication ""'), function($skip, $loc, $0, $1) {
10015
10082
  module2.forbidIndentedApplication.push(false);
10016
10083
  });
10017
10084
  function AllowIndentedApplication(state) {
@@ -10036,7 +10103,7 @@ ${input.slice(result.pos)}
10036
10103
  return result;
10037
10104
  }
10038
10105
  }
10039
- var RestoreIndentedApplication$0 = $TV($EXPECT($L18, fail, 'RestoreIndentedApplication ""'), function($skip, $loc, $0, $1) {
10106
+ var RestoreIndentedApplication$0 = $TV($EXPECT($L19, fail, 'RestoreIndentedApplication ""'), function($skip, $loc, $0, $1) {
10040
10107
  module2.forbidIndentedApplication.pop();
10041
10108
  });
10042
10109
  function RestoreIndentedApplication(state) {
@@ -10061,7 +10128,7 @@ ${input.slice(result.pos)}
10061
10128
  return result;
10062
10129
  }
10063
10130
  }
10064
- var IndentedApplicationAllowed$0 = $TV($EXPECT($L18, fail, 'IndentedApplicationAllowed ""'), function($skip, $loc, $0, $1) {
10131
+ var IndentedApplicationAllowed$0 = $TV($EXPECT($L19, fail, 'IndentedApplicationAllowed ""'), function($skip, $loc, $0, $1) {
10065
10132
  if (module2.config.verbose) {
10066
10133
  console.log("forbidIndentedApplication:", module2.forbidIndentedApplication);
10067
10134
  }
@@ -10091,7 +10158,7 @@ ${input.slice(result.pos)}
10091
10158
  return result;
10092
10159
  }
10093
10160
  }
10094
- var ForbidTrailingMemberProperty$0 = $TV($EXPECT($L18, fail, 'ForbidTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10161
+ var ForbidTrailingMemberProperty$0 = $TV($EXPECT($L19, fail, 'ForbidTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10095
10162
  module2.forbidTrailingMemberProperty.push(true);
10096
10163
  });
10097
10164
  function ForbidTrailingMemberProperty(state) {
@@ -10116,7 +10183,7 @@ ${input.slice(result.pos)}
10116
10183
  return result;
10117
10184
  }
10118
10185
  }
10119
- var AllowTrailingMemberProperty$0 = $TV($EXPECT($L18, fail, 'AllowTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10186
+ var AllowTrailingMemberProperty$0 = $TV($EXPECT($L19, fail, 'AllowTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10120
10187
  module2.forbidTrailingMemberProperty.push(false);
10121
10188
  });
10122
10189
  function AllowTrailingMemberProperty(state) {
@@ -10141,7 +10208,7 @@ ${input.slice(result.pos)}
10141
10208
  return result;
10142
10209
  }
10143
10210
  }
10144
- var RestoreTrailingMemberProperty$0 = $TV($EXPECT($L18, fail, 'RestoreTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10211
+ var RestoreTrailingMemberProperty$0 = $TV($EXPECT($L19, fail, 'RestoreTrailingMemberProperty ""'), function($skip, $loc, $0, $1) {
10145
10212
  module2.forbidTrailingMemberProperty.pop();
10146
10213
  });
10147
10214
  function RestoreTrailingMemberProperty(state) {
@@ -10166,7 +10233,7 @@ ${input.slice(result.pos)}
10166
10233
  return result;
10167
10234
  }
10168
10235
  }
10169
- var TrailingMemberPropertyAllowed$0 = $TV($EXPECT($L18, fail, 'TrailingMemberPropertyAllowed ""'), function($skip, $loc, $0, $1) {
10236
+ var TrailingMemberPropertyAllowed$0 = $TV($EXPECT($L19, fail, 'TrailingMemberPropertyAllowed ""'), function($skip, $loc, $0, $1) {
10170
10237
  if (module2.config.verbose) {
10171
10238
  console.log("forbidTrailingMemberProperty:", module2.forbidTrailingMemberProperty);
10172
10239
  }
@@ -10195,7 +10262,7 @@ ${input.slice(result.pos)}
10195
10262
  return result;
10196
10263
  }
10197
10264
  }
10198
- var ForbidMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L18, fail, 'ForbidMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10265
+ var ForbidMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L19, fail, 'ForbidMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10199
10266
  module2.forbidMultiLineImplicitObjectLiteral.push(true);
10200
10267
  });
10201
10268
  function ForbidMultiLineImplicitObjectLiteral(state) {
@@ -10220,7 +10287,7 @@ ${input.slice(result.pos)}
10220
10287
  return result;
10221
10288
  }
10222
10289
  }
10223
- var AllowMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L18, fail, 'AllowMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10290
+ var AllowMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L19, fail, 'AllowMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10224
10291
  module2.forbidMultiLineImplicitObjectLiteral.push(false);
10225
10292
  });
10226
10293
  function AllowMultiLineImplicitObjectLiteral(state) {
@@ -10245,7 +10312,7 @@ ${input.slice(result.pos)}
10245
10312
  return result;
10246
10313
  }
10247
10314
  }
10248
- var RestoreMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L18, fail, 'RestoreMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10315
+ var RestoreMultiLineImplicitObjectLiteral$0 = $TV($EXPECT($L19, fail, 'RestoreMultiLineImplicitObjectLiteral ""'), function($skip, $loc, $0, $1) {
10249
10316
  module2.forbidMultiLineImplicitObjectLiteral.pop();
10250
10317
  });
10251
10318
  function RestoreMultiLineImplicitObjectLiteral(state) {
@@ -10270,7 +10337,7 @@ ${input.slice(result.pos)}
10270
10337
  return result;
10271
10338
  }
10272
10339
  }
10273
- var MultiLineImplicitObjectLiteralAllowed$0 = $TV($EXPECT($L18, fail, 'MultiLineImplicitObjectLiteralAllowed ""'), function($skip, $loc, $0, $1) {
10340
+ var MultiLineImplicitObjectLiteralAllowed$0 = $TV($EXPECT($L19, fail, 'MultiLineImplicitObjectLiteralAllowed ""'), function($skip, $loc, $0, $1) {
10274
10341
  if (module2.config.verbose) {
10275
10342
  console.log("forbidMultiLineImplicitObjectLiteral:", module2.forbidMultiLineImplicitObjectLiteral);
10276
10343
  }
@@ -10383,8 +10450,9 @@ ${input.slice(result.pos)}
10383
10450
  var KeywordStatement$2 = $T($S(Debugger), function(value) {
10384
10451
  return { "type": "DebuggerStatement", "children": value };
10385
10452
  });
10386
- var KeywordStatement$3 = $T($S(Return, $E(MaybeNestedExpression)), function(value) {
10387
- return { "type": "ReturnStatement", "children": value };
10453
+ var KeywordStatement$3 = $T($S(Return, $N($C($EXPECT($L4, fail, 'KeywordStatement "."'), AfterReturnShorthand)), $E(MaybeNestedExpression)), function(value) {
10454
+ var expression = value[2];
10455
+ return { "type": "ReturnStatement", "expression": expression, "children": value };
10388
10456
  });
10389
10457
  var KeywordStatement$4 = $T($S(Throw, ExtendedExpression), function(value) {
10390
10458
  return { "type": "ThrowStatement", "children": value };
@@ -10411,7 +10479,7 @@ ${input.slice(result.pos)}
10411
10479
  return result;
10412
10480
  }
10413
10481
  }
10414
- var Break$0 = $TS($S($EXPECT($L87, fail, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10482
+ var Break$0 = $TS($S($EXPECT($L88, fail, 'Break "break"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10415
10483
  return { $loc, token: $1 };
10416
10484
  });
10417
10485
  function Break(state) {
@@ -10436,7 +10504,7 @@ ${input.slice(result.pos)}
10436
10504
  return result;
10437
10505
  }
10438
10506
  }
10439
- var Continue$0 = $TS($S($EXPECT($L88, fail, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10507
+ var Continue$0 = $TS($S($EXPECT($L89, fail, 'Continue "continue"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10440
10508
  return { $loc, token: $1 };
10441
10509
  });
10442
10510
  function Continue(state) {
@@ -10461,7 +10529,7 @@ ${input.slice(result.pos)}
10461
10529
  return result;
10462
10530
  }
10463
10531
  }
10464
- var Debugger$0 = $TS($S($EXPECT($L89, fail, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10532
+ var Debugger$0 = $TS($S($EXPECT($L90, fail, 'Debugger "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
10465
10533
  return { $loc, token: $1 };
10466
10534
  });
10467
10535
  function Debugger(state) {
@@ -10614,7 +10682,7 @@ ${input.slice(result.pos)}
10614
10682
  return result;
10615
10683
  }
10616
10684
  }
10617
- var ImpliedImport$0 = $TV($EXPECT($L18, fail, 'ImpliedImport ""'), function($skip, $loc, $0, $1) {
10685
+ var ImpliedImport$0 = $TV($EXPECT($L19, fail, 'ImpliedImport ""'), function($skip, $loc, $0, $1) {
10618
10686
  return { $loc, token: "import " };
10619
10687
  });
10620
10688
  function ImpliedImport(state) {
@@ -10763,7 +10831,7 @@ ${input.slice(result.pos)}
10763
10831
  return result;
10764
10832
  }
10765
10833
  }
10766
- var ImportAssertion$0 = $S($E(_), $EXPECT($L90, fail, 'ImportAssertion "assert"'), NonIdContinue, $E(_), ObjectLiteral);
10834
+ var ImportAssertion$0 = $S($E(_), $EXPECT($L91, fail, 'ImportAssertion "assert"'), NonIdContinue, $E(_), ObjectLiteral);
10767
10835
  function ImportAssertion(state) {
10768
10836
  let eventData;
10769
10837
  if (state.events) {
@@ -11367,7 +11435,7 @@ ${input.slice(result.pos)}
11367
11435
  return result;
11368
11436
  }
11369
11437
  }
11370
- var ConstAssignment$0 = $TV($EXPECT($L91, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
11438
+ var ConstAssignment$0 = $TV($EXPECT($L92, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
11371
11439
  return { $loc, token: "=" };
11372
11440
  });
11373
11441
  function ConstAssignment(state) {
@@ -11392,7 +11460,7 @@ ${input.slice(result.pos)}
11392
11460
  return result;
11393
11461
  }
11394
11462
  }
11395
- var LetAssignment$0 = $TV($EXPECT($L92, fail, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
11463
+ var LetAssignment$0 = $TV($EXPECT($L93, fail, 'LetAssignment ".="'), function($skip, $loc, $0, $1) {
11396
11464
  return { $loc, token: "=" };
11397
11465
  });
11398
11466
  function LetAssignment(state) {
@@ -12090,7 +12158,7 @@ ${input.slice(result.pos)}
12090
12158
  }
12091
12159
  }
12092
12160
  var RegularExpressionLiteral$0 = HeregexLiteral;
12093
- var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L54, fail, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L54, fail, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
12161
+ var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L55, fail, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L55, fail, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
12094
12162
  return { type: "RegularExpressionLiteral", $loc, token: $1 };
12095
12163
  });
12096
12164
  function RegularExpressionLiteral(state) {
@@ -12657,7 +12725,7 @@ ${input.slice(result.pos)}
12657
12725
  return result;
12658
12726
  }
12659
12727
  }
12660
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L93, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L94, fail, 'JSMultiLineComment "*/"')), $EXPECT($R42, fail, "JSMultiLineComment /./"))), $EXPECT($L94, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
12728
+ var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L94, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L95, fail, 'JSMultiLineComment "*/"')), $EXPECT($R42, fail, "JSMultiLineComment /./"))), $EXPECT($L95, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
12661
12729
  return { $loc, token: $1 };
12662
12730
  });
12663
12731
  function JSMultiLineComment(state) {
@@ -12756,7 +12824,7 @@ ${input.slice(result.pos)}
12756
12824
  return result;
12757
12825
  }
12758
12826
  }
12759
- var InlineComment$0 = $TV($TEXT($S($EXPECT($L93, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L94, fail, 'InlineComment "*/"')), $EXPECT($R46, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L94, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
12827
+ var InlineComment$0 = $TV($TEXT($S($EXPECT($L94, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L95, fail, 'InlineComment "*/"')), $EXPECT($R46, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L95, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
12760
12828
  return { $loc, token: $1 };
12761
12829
  });
12762
12830
  function InlineComment(state) {
@@ -12855,7 +12923,7 @@ ${input.slice(result.pos)}
12855
12923
  var NonNewlineWhitespace$0 = $TR($EXPECT($R47, fail, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
12856
12924
  return { $loc, token: $0 };
12857
12925
  });
12858
- var NonNewlineWhitespace$1 = $T($S(CoffeeLineContinuationEnabled, $EXPECT($L95, fail, 'NonNewlineWhitespace "\\\\\\\\"'), EOL), function(value) {
12926
+ var NonNewlineWhitespace$1 = $T($S(CoffeeLineContinuationEnabled, $EXPECT($L96, fail, 'NonNewlineWhitespace "\\\\\\\\"'), EOL), function(value) {
12859
12927
  return "";
12860
12928
  });
12861
12929
  function NonNewlineWhitespace(state) {
@@ -13007,7 +13075,7 @@ ${input.slice(result.pos)}
13007
13075
  }
13008
13076
  }
13009
13077
  var StatementDelimiter$0 = SemicolonDelimiter;
13010
- var StatementDelimiter$1 = $S($Y($S(Samedent, $C($EXPECT($L2, fail, 'StatementDelimiter "("'), $EXPECT($L96, fail, 'StatementDelimiter "["'), $EXPECT($L97, fail, 'StatementDelimiter "`"'), $EXPECT($L57, fail, 'StatementDelimiter "+"'), $EXPECT($L16, fail, 'StatementDelimiter "-"'), $EXPECT($L53, fail, 'StatementDelimiter "*"'), $EXPECT($L54, fail, 'StatementDelimiter "/"'), ObjectLiteral, Arrow, $S(Function, $E($S($E(_), Star)), $E(_), $EXPECT($L2, fail, 'StatementDelimiter "("'))))), InsertSemicolon);
13078
+ var StatementDelimiter$1 = $S($Y($S(Samedent, $C($EXPECT($L2, fail, 'StatementDelimiter "("'), $EXPECT($L97, fail, 'StatementDelimiter "["'), $EXPECT($L98, fail, 'StatementDelimiter "`"'), $EXPECT($L58, fail, 'StatementDelimiter "+"'), $EXPECT($L17, fail, 'StatementDelimiter "-"'), $EXPECT($L54, fail, 'StatementDelimiter "*"'), $EXPECT($L55, fail, 'StatementDelimiter "/"'), ObjectLiteral, Arrow, $S(Function, $E($S($E(_), Star)), $E(_), $EXPECT($L2, fail, 'StatementDelimiter "("'))))), InsertSemicolon);
13011
13079
  var StatementDelimiter$2 = $Y(EOS);
13012
13080
  function StatementDelimiter(state) {
13013
13081
  let eventData;
@@ -13082,7 +13150,7 @@ ${input.slice(result.pos)}
13082
13150
  return result;
13083
13151
  }
13084
13152
  }
13085
- var Loc$0 = $TV($EXPECT($L18, fail, 'Loc ""'), function($skip, $loc, $0, $1) {
13153
+ var Loc$0 = $TV($EXPECT($L19, fail, 'Loc ""'), function($skip, $loc, $0, $1) {
13086
13154
  return { $loc, token: "" };
13087
13155
  });
13088
13156
  function Loc(state) {
@@ -13107,7 +13175,7 @@ ${input.slice(result.pos)}
13107
13175
  return result;
13108
13176
  }
13109
13177
  }
13110
- var Abstract$0 = $TV($TEXT($S($EXPECT($L98, fail, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L8, fail, 'Abstract " "')))), function($skip, $loc, $0, $1) {
13178
+ var Abstract$0 = $TV($TEXT($S($EXPECT($L99, fail, 'Abstract "abstract"'), NonIdContinue, $E($EXPECT($L8, fail, 'Abstract " "')))), function($skip, $loc, $0, $1) {
13111
13179
  return { $loc, token: $1, ts: true };
13112
13180
  });
13113
13181
  function Abstract(state) {
@@ -13132,7 +13200,7 @@ ${input.slice(result.pos)}
13132
13200
  return result;
13133
13201
  }
13134
13202
  }
13135
- var Ampersand$0 = $TV($EXPECT($L82, fail, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
13203
+ var Ampersand$0 = $TV($EXPECT($L83, fail, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
13136
13204
  return { $loc, token: $1 };
13137
13205
  });
13138
13206
  function Ampersand(state) {
@@ -13157,7 +13225,7 @@ ${input.slice(result.pos)}
13157
13225
  return result;
13158
13226
  }
13159
13227
  }
13160
- var As$0 = $TS($S($EXPECT($L99, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13228
+ var As$0 = $TS($S($EXPECT($L100, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13161
13229
  return { $loc, token: $1 };
13162
13230
  });
13163
13231
  function As(state) {
@@ -13182,7 +13250,7 @@ ${input.slice(result.pos)}
13182
13250
  return result;
13183
13251
  }
13184
13252
  }
13185
- var At$0 = $TV($EXPECT($L100, fail, 'At "@"'), function($skip, $loc, $0, $1) {
13253
+ var At$0 = $TV($EXPECT($L101, fail, 'At "@"'), function($skip, $loc, $0, $1) {
13186
13254
  return { $loc, token: $1 };
13187
13255
  });
13188
13256
  function At(state) {
@@ -13207,7 +13275,7 @@ ${input.slice(result.pos)}
13207
13275
  return result;
13208
13276
  }
13209
13277
  }
13210
- var AtAt$0 = $TV($EXPECT($L101, fail, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
13278
+ var AtAt$0 = $TV($EXPECT($L102, fail, 'AtAt "@@"'), function($skip, $loc, $0, $1) {
13211
13279
  return { $loc, token: "@" };
13212
13280
  });
13213
13281
  function AtAt(state) {
@@ -13232,7 +13300,7 @@ ${input.slice(result.pos)}
13232
13300
  return result;
13233
13301
  }
13234
13302
  }
13235
- var Async$0 = $TS($S($EXPECT($L102, fail, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13303
+ var Async$0 = $TS($S($EXPECT($L103, fail, 'Async "async"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13236
13304
  return { $loc, token: $1, type: "Async" };
13237
13305
  });
13238
13306
  function Async(state) {
@@ -13257,7 +13325,7 @@ ${input.slice(result.pos)}
13257
13325
  return result;
13258
13326
  }
13259
13327
  }
13260
- var Await$0 = $TS($S($EXPECT($L103, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13328
+ var Await$0 = $TS($S($EXPECT($L104, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13261
13329
  return { $loc, token: $1 };
13262
13330
  });
13263
13331
  function Await(state) {
@@ -13282,7 +13350,7 @@ ${input.slice(result.pos)}
13282
13350
  return result;
13283
13351
  }
13284
13352
  }
13285
- var Backtick$0 = $TV($EXPECT($L97, fail, 'Backtick "`"'), function($skip, $loc, $0, $1) {
13353
+ var Backtick$0 = $TV($EXPECT($L98, fail, 'Backtick "`"'), function($skip, $loc, $0, $1) {
13286
13354
  return { $loc, token: $1 };
13287
13355
  });
13288
13356
  function Backtick(state) {
@@ -13307,7 +13375,7 @@ ${input.slice(result.pos)}
13307
13375
  return result;
13308
13376
  }
13309
13377
  }
13310
- var By$0 = $TS($S($EXPECT($L104, fail, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13378
+ var By$0 = $TS($S($EXPECT($L105, fail, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13311
13379
  return { $loc, token: $1 };
13312
13380
  });
13313
13381
  function By(state) {
@@ -13332,7 +13400,7 @@ ${input.slice(result.pos)}
13332
13400
  return result;
13333
13401
  }
13334
13402
  }
13335
- var Case$0 = $TS($S($EXPECT($L105, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13403
+ var Case$0 = $TS($S($EXPECT($L106, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13336
13404
  return { $loc, token: $1 };
13337
13405
  });
13338
13406
  function Case(state) {
@@ -13357,7 +13425,7 @@ ${input.slice(result.pos)}
13357
13425
  return result;
13358
13426
  }
13359
13427
  }
13360
- var Catch$0 = $TS($S($EXPECT($L106, fail, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13428
+ var Catch$0 = $TS($S($EXPECT($L107, fail, 'Catch "catch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13361
13429
  return { $loc, token: $1 };
13362
13430
  });
13363
13431
  function Catch(state) {
@@ -13382,7 +13450,7 @@ ${input.slice(result.pos)}
13382
13450
  return result;
13383
13451
  }
13384
13452
  }
13385
- var Class$0 = $TS($S($EXPECT($L107, fail, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13453
+ var Class$0 = $TS($S($EXPECT($L108, fail, 'Class "class"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13386
13454
  return { $loc, token: $1 };
13387
13455
  });
13388
13456
  function Class(state) {
@@ -13407,7 +13475,7 @@ ${input.slice(result.pos)}
13407
13475
  return result;
13408
13476
  }
13409
13477
  }
13410
- var CloseBrace$0 = $TV($EXPECT($L21, fail, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
13478
+ var CloseBrace$0 = $TV($EXPECT($L22, fail, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
13411
13479
  return { $loc, token: $1 };
13412
13480
  });
13413
13481
  function CloseBrace(state) {
@@ -13432,7 +13500,7 @@ ${input.slice(result.pos)}
13432
13500
  return result;
13433
13501
  }
13434
13502
  }
13435
- var CloseBracket$0 = $TV($EXPECT($L30, fail, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
13503
+ var CloseBracket$0 = $TV($EXPECT($L31, fail, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
13436
13504
  return { $loc, token: $1 };
13437
13505
  });
13438
13506
  function CloseBracket(state) {
@@ -13457,7 +13525,7 @@ ${input.slice(result.pos)}
13457
13525
  return result;
13458
13526
  }
13459
13527
  }
13460
- var CloseParen$0 = $TV($EXPECT($L32, fail, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
13528
+ var CloseParen$0 = $TV($EXPECT($L33, fail, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
13461
13529
  return { $loc, token: $1 };
13462
13530
  });
13463
13531
  function CloseParen(state) {
@@ -13482,7 +13550,7 @@ ${input.slice(result.pos)}
13482
13550
  return result;
13483
13551
  }
13484
13552
  }
13485
- var CoffeeSubstitutionStart$0 = $TV($EXPECT($L108, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
13553
+ var CoffeeSubstitutionStart$0 = $TV($EXPECT($L109, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
13486
13554
  return { $loc, token: "${" };
13487
13555
  });
13488
13556
  function CoffeeSubstitutionStart(state) {
@@ -13507,7 +13575,7 @@ ${input.slice(result.pos)}
13507
13575
  return result;
13508
13576
  }
13509
13577
  }
13510
- var Colon$0 = $TV($EXPECT($L31, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
13578
+ var Colon$0 = $TV($EXPECT($L32, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
13511
13579
  return { $loc, token: $1 };
13512
13580
  });
13513
13581
  function Colon(state) {
@@ -13532,7 +13600,7 @@ ${input.slice(result.pos)}
13532
13600
  return result;
13533
13601
  }
13534
13602
  }
13535
- var Comma$0 = $TV($EXPECT($L19, fail, 'Comma ","'), function($skip, $loc, $0, $1) {
13603
+ var Comma$0 = $TV($EXPECT($L20, fail, 'Comma ","'), function($skip, $loc, $0, $1) {
13536
13604
  return { $loc, token: $1 };
13537
13605
  });
13538
13606
  function Comma(state) {
@@ -13557,7 +13625,7 @@ ${input.slice(result.pos)}
13557
13625
  return result;
13558
13626
  }
13559
13627
  }
13560
- var ConstructorShorthand$0 = $TV($EXPECT($L100, fail, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
13628
+ var ConstructorShorthand$0 = $TV($EXPECT($L101, fail, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
13561
13629
  return { $loc, token: "constructor" };
13562
13630
  });
13563
13631
  function ConstructorShorthand(state) {
@@ -13582,7 +13650,7 @@ ${input.slice(result.pos)}
13582
13650
  return result;
13583
13651
  }
13584
13652
  }
13585
- var Declare$0 = $TS($S($EXPECT($L109, fail, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13653
+ var Declare$0 = $TS($S($EXPECT($L110, fail, 'Declare "declare"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13586
13654
  return { $loc, token: $1 };
13587
13655
  });
13588
13656
  function Declare(state) {
@@ -13607,7 +13675,7 @@ ${input.slice(result.pos)}
13607
13675
  return result;
13608
13676
  }
13609
13677
  }
13610
- var Default$0 = $TS($S($EXPECT($L110, fail, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13678
+ var Default$0 = $TS($S($EXPECT($L111, fail, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13611
13679
  return { $loc, token: $1 };
13612
13680
  });
13613
13681
  function Default(state) {
@@ -13632,7 +13700,7 @@ ${input.slice(result.pos)}
13632
13700
  return result;
13633
13701
  }
13634
13702
  }
13635
- var Delete$0 = $TS($S($EXPECT($L111, fail, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13703
+ var Delete$0 = $TS($S($EXPECT($L112, fail, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13636
13704
  return { $loc, token: $1 };
13637
13705
  });
13638
13706
  function Delete(state) {
@@ -13657,7 +13725,7 @@ ${input.slice(result.pos)}
13657
13725
  return result;
13658
13726
  }
13659
13727
  }
13660
- var Do$0 = $TS($S($EXPECT($L112, fail, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13728
+ var Do$0 = $TS($S($EXPECT($L113, fail, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13661
13729
  return { $loc, token: $1 };
13662
13730
  });
13663
13731
  function Do(state) {
@@ -13707,7 +13775,7 @@ ${input.slice(result.pos)}
13707
13775
  return result;
13708
13776
  }
13709
13777
  }
13710
- var DotDot$0 = $TV($EXPECT($L113, fail, 'DotDot ".."'), function($skip, $loc, $0, $1) {
13778
+ var DotDot$0 = $TV($EXPECT($L114, fail, 'DotDot ".."'), function($skip, $loc, $0, $1) {
13711
13779
  return { $loc, token: $1 };
13712
13780
  });
13713
13781
  function DotDot(state) {
@@ -13732,7 +13800,7 @@ ${input.slice(result.pos)}
13732
13800
  return result;
13733
13801
  }
13734
13802
  }
13735
- var DotDotDot$0 = $TV($EXPECT($L114, fail, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
13803
+ var DotDotDot$0 = $TV($EXPECT($L115, fail, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
13736
13804
  return { $loc, token: $1 };
13737
13805
  });
13738
13806
  function DotDotDot(state) {
@@ -13757,7 +13825,7 @@ ${input.slice(result.pos)}
13757
13825
  return result;
13758
13826
  }
13759
13827
  }
13760
- var DoubleColon$0 = $TV($EXPECT($L115, fail, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
13828
+ var DoubleColon$0 = $TV($EXPECT($L116, fail, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
13761
13829
  return { $loc, token: $1 };
13762
13830
  });
13763
13831
  function DoubleColon(state) {
@@ -13782,7 +13850,7 @@ ${input.slice(result.pos)}
13782
13850
  return result;
13783
13851
  }
13784
13852
  }
13785
- var DoubleQuote$0 = $TV($EXPECT($L116, fail, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
13853
+ var DoubleQuote$0 = $TV($EXPECT($L117, fail, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
13786
13854
  return { $loc, token: $1 };
13787
13855
  });
13788
13856
  function DoubleQuote(state) {
@@ -13807,7 +13875,7 @@ ${input.slice(result.pos)}
13807
13875
  return result;
13808
13876
  }
13809
13877
  }
13810
- var Else$0 = $TS($S($EXPECT($L117, fail, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13878
+ var Else$0 = $TS($S($EXPECT($L118, fail, 'Else "else"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13811
13879
  return { $loc, token: $1 };
13812
13880
  });
13813
13881
  function Else(state) {
@@ -13857,7 +13925,7 @@ ${input.slice(result.pos)}
13857
13925
  return result;
13858
13926
  }
13859
13927
  }
13860
- var Export$0 = $TS($S($EXPECT($L118, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13928
+ var Export$0 = $TS($S($EXPECT($L119, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13861
13929
  return { $loc, token: $1 };
13862
13930
  });
13863
13931
  function Export(state) {
@@ -13882,7 +13950,7 @@ ${input.slice(result.pos)}
13882
13950
  return result;
13883
13951
  }
13884
13952
  }
13885
- var Extends$0 = $TS($S($EXPECT($L119, fail, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13953
+ var Extends$0 = $TS($S($EXPECT($L120, fail, 'Extends "extends"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13886
13954
  return { $loc, token: $1 };
13887
13955
  });
13888
13956
  function Extends(state) {
@@ -13907,7 +13975,7 @@ ${input.slice(result.pos)}
13907
13975
  return result;
13908
13976
  }
13909
13977
  }
13910
- var Finally$0 = $TS($S($EXPECT($L120, fail, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13978
+ var Finally$0 = $TS($S($EXPECT($L121, fail, 'Finally "finally"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13911
13979
  return { $loc, token: $1 };
13912
13980
  });
13913
13981
  function Finally(state) {
@@ -13932,7 +14000,7 @@ ${input.slice(result.pos)}
13932
14000
  return result;
13933
14001
  }
13934
14002
  }
13935
- var For$0 = $TS($S($EXPECT($L121, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14003
+ var For$0 = $TS($S($EXPECT($L122, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13936
14004
  return { $loc, token: $1 };
13937
14005
  });
13938
14006
  function For(state) {
@@ -13957,7 +14025,7 @@ ${input.slice(result.pos)}
13957
14025
  return result;
13958
14026
  }
13959
14027
  }
13960
- var From$0 = $TS($S($EXPECT($L122, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14028
+ var From$0 = $TS($S($EXPECT($L123, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13961
14029
  return { $loc, token: $1 };
13962
14030
  });
13963
14031
  function From(state) {
@@ -13982,7 +14050,7 @@ ${input.slice(result.pos)}
13982
14050
  return result;
13983
14051
  }
13984
14052
  }
13985
- var Function$0 = $TS($S($EXPECT($L123, fail, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14053
+ var Function$0 = $TS($S($EXPECT($L124, fail, 'Function "function"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
13986
14054
  return { $loc, token: $1 };
13987
14055
  });
13988
14056
  function Function(state) {
@@ -14007,7 +14075,7 @@ ${input.slice(result.pos)}
14007
14075
  return result;
14008
14076
  }
14009
14077
  }
14010
- var GetOrSet$0 = $TS($S($C($EXPECT($L124, fail, 'GetOrSet "get"'), $EXPECT($L125, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14078
+ var GetOrSet$0 = $TS($S($C($EXPECT($L125, fail, 'GetOrSet "get"'), $EXPECT($L126, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14011
14079
  return { $loc, token: $1, type: "GetOrSet" };
14012
14080
  });
14013
14081
  function GetOrSet(state) {
@@ -14032,7 +14100,7 @@ ${input.slice(result.pos)}
14032
14100
  return result;
14033
14101
  }
14034
14102
  }
14035
- var If$0 = $TV($TEXT($S($EXPECT($L126, fail, 'If "if"'), NonIdContinue, $E($EXPECT($L8, fail, 'If " "')))), function($skip, $loc, $0, $1) {
14103
+ var If$0 = $TV($TEXT($S($EXPECT($L127, fail, 'If "if"'), NonIdContinue, $E($EXPECT($L8, fail, 'If " "')))), function($skip, $loc, $0, $1) {
14036
14104
  return { $loc, token: $1 };
14037
14105
  });
14038
14106
  function If(state) {
@@ -14082,7 +14150,7 @@ ${input.slice(result.pos)}
14082
14150
  return result;
14083
14151
  }
14084
14152
  }
14085
- var In$0 = $TS($S($EXPECT($L80, fail, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14153
+ var In$0 = $TS($S($EXPECT($L81, fail, 'In "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14086
14154
  return { $loc, token: $1 };
14087
14155
  });
14088
14156
  function In(state) {
@@ -14107,7 +14175,7 @@ ${input.slice(result.pos)}
14107
14175
  return result;
14108
14176
  }
14109
14177
  }
14110
- var LetOrConst$0 = $TS($S($C($EXPECT($L127, fail, 'LetOrConst "let"'), $EXPECT($L128, fail, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14178
+ var LetOrConst$0 = $TS($S($C($EXPECT($L128, fail, 'LetOrConst "let"'), $EXPECT($L129, fail, 'LetOrConst "const"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14111
14179
  return { $loc, token: $1 };
14112
14180
  });
14113
14181
  function LetOrConst(state) {
@@ -14132,7 +14200,7 @@ ${input.slice(result.pos)}
14132
14200
  return result;
14133
14201
  }
14134
14202
  }
14135
- var Loop$0 = $TS($S($EXPECT($L129, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14203
+ var Loop$0 = $TS($S($EXPECT($L130, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14136
14204
  return { $loc, token: "while(true)" };
14137
14205
  });
14138
14206
  function Loop(state) {
@@ -14157,7 +14225,7 @@ ${input.slice(result.pos)}
14157
14225
  return result;
14158
14226
  }
14159
14227
  }
14160
- var New$0 = $TS($S($EXPECT($L130, fail, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14228
+ var New$0 = $TS($S($EXPECT($L131, fail, 'New "new"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14161
14229
  return { $loc, token: $1 };
14162
14230
  });
14163
14231
  function New(state) {
@@ -14182,7 +14250,7 @@ ${input.slice(result.pos)}
14182
14250
  return result;
14183
14251
  }
14184
14252
  }
14185
- var Not$0 = $TS($S(CoffeeNotEnabled, $EXPECT($L51, fail, 'Not "not"'), NonIdContinue, $E($EXPECT($L8, fail, 'Not " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
14253
+ var Not$0 = $TS($S(CoffeeNotEnabled, $EXPECT($L52, fail, 'Not "not"'), NonIdContinue, $E($EXPECT($L8, fail, 'Not " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
14186
14254
  return { $loc, token: "!" };
14187
14255
  });
14188
14256
  function Not(state) {
@@ -14207,7 +14275,7 @@ ${input.slice(result.pos)}
14207
14275
  return result;
14208
14276
  }
14209
14277
  }
14210
- var Of$0 = $TS($S($EXPECT($L72, fail, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14278
+ var Of$0 = $TS($S($EXPECT($L73, fail, 'Of "of"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14211
14279
  return { $loc, token: $1 };
14212
14280
  });
14213
14281
  function Of(state) {
@@ -14232,7 +14300,7 @@ ${input.slice(result.pos)}
14232
14300
  return result;
14233
14301
  }
14234
14302
  }
14235
- var OpenAngleBracket$0 = $TV($EXPECT($L131, fail, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
14303
+ var OpenAngleBracket$0 = $TV($EXPECT($L132, fail, 'OpenAngleBracket "<"'), function($skip, $loc, $0, $1) {
14236
14304
  return { $loc, token: $1 };
14237
14305
  });
14238
14306
  function OpenAngleBracket(state) {
@@ -14257,7 +14325,7 @@ ${input.slice(result.pos)}
14257
14325
  return result;
14258
14326
  }
14259
14327
  }
14260
- var OpenBrace$0 = $TV($EXPECT($L132, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
14328
+ var OpenBrace$0 = $TV($EXPECT($L133, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
14261
14329
  return { $loc, token: $1 };
14262
14330
  });
14263
14331
  function OpenBrace(state) {
@@ -14282,7 +14350,7 @@ ${input.slice(result.pos)}
14282
14350
  return result;
14283
14351
  }
14284
14352
  }
14285
- var OpenBracket$0 = $TV($EXPECT($L96, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
14353
+ var OpenBracket$0 = $TV($EXPECT($L97, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
14286
14354
  return { $loc, token: $1 };
14287
14355
  });
14288
14356
  function OpenBracket(state) {
@@ -14332,7 +14400,7 @@ ${input.slice(result.pos)}
14332
14400
  return result;
14333
14401
  }
14334
14402
  }
14335
- var Operator$0 = $TS($S($EXPECT($L133, fail, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14403
+ var Operator$0 = $TS($S($EXPECT($L134, fail, 'Operator "operator"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14336
14404
  return { $loc, token: $1 };
14337
14405
  });
14338
14406
  function Operator(state) {
@@ -14357,7 +14425,7 @@ ${input.slice(result.pos)}
14357
14425
  return result;
14358
14426
  }
14359
14427
  }
14360
- var Public$0 = $TS($S($EXPECT($L134, fail, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14428
+ var Public$0 = $TS($S($EXPECT($L135, fail, 'Public "public"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14361
14429
  return { $loc, token: $1 };
14362
14430
  });
14363
14431
  function Public(state) {
@@ -14382,7 +14450,7 @@ ${input.slice(result.pos)}
14382
14450
  return result;
14383
14451
  }
14384
14452
  }
14385
- var Private$0 = $TS($S($EXPECT($L135, fail, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14453
+ var Private$0 = $TS($S($EXPECT($L136, fail, 'Private "private"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14386
14454
  return { $loc, token: $1 };
14387
14455
  });
14388
14456
  function Private(state) {
@@ -14407,7 +14475,7 @@ ${input.slice(result.pos)}
14407
14475
  return result;
14408
14476
  }
14409
14477
  }
14410
- var Protected$0 = $TS($S($EXPECT($L136, fail, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14478
+ var Protected$0 = $TS($S($EXPECT($L137, fail, 'Protected "protected"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14411
14479
  return { $loc, token: $1 };
14412
14480
  });
14413
14481
  function Protected(state) {
@@ -14432,13 +14500,13 @@ ${input.slice(result.pos)}
14432
14500
  return result;
14433
14501
  }
14434
14502
  }
14435
- var Pipe$0 = $TV($EXPECT($L137, fail, 'Pipe "||>"'), function($skip, $loc, $0, $1) {
14503
+ var Pipe$0 = $TV($EXPECT($L138, fail, 'Pipe "||>"'), function($skip, $loc, $0, $1) {
14436
14504
  return { $loc, token: $1 };
14437
14505
  });
14438
- var Pipe$1 = $TV($EXPECT($L138, fail, 'Pipe "|>="'), function($skip, $loc, $0, $1) {
14506
+ var Pipe$1 = $TV($EXPECT($L139, fail, 'Pipe "|>="'), function($skip, $loc, $0, $1) {
14439
14507
  return { $loc, token: $1 };
14440
14508
  });
14441
- var Pipe$2 = $TV($EXPECT($L139, fail, 'Pipe "|>"'), function($skip, $loc, $0, $1) {
14509
+ var Pipe$2 = $TV($EXPECT($L140, fail, 'Pipe "|>"'), function($skip, $loc, $0, $1) {
14442
14510
  return { $loc, token: $1 };
14443
14511
  });
14444
14512
  function Pipe(state) {
@@ -14488,7 +14556,7 @@ ${input.slice(result.pos)}
14488
14556
  return result;
14489
14557
  }
14490
14558
  }
14491
- var Readonly$0 = $TS($S($EXPECT($L140, fail, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14559
+ var Readonly$0 = $TS($S($EXPECT($L141, fail, 'Readonly "readonly"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14492
14560
  return { $loc, token: $1, ts: true };
14493
14561
  });
14494
14562
  function Readonly(state) {
@@ -14513,7 +14581,7 @@ ${input.slice(result.pos)}
14513
14581
  return result;
14514
14582
  }
14515
14583
  }
14516
- var Return$0 = $TS($S($EXPECT($L141, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14584
+ var Return$0 = $TS($S($EXPECT($L142, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14517
14585
  return { $loc, token: $1 };
14518
14586
  });
14519
14587
  function Return(state) {
@@ -14538,7 +14606,7 @@ ${input.slice(result.pos)}
14538
14606
  return result;
14539
14607
  }
14540
14608
  }
14541
- var Satisfies$0 = $TS($S($EXPECT($L142, fail, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14609
+ var Satisfies$0 = $TS($S($EXPECT($L143, fail, 'Satisfies "satisfies"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14542
14610
  return { $loc, token: $1 };
14543
14611
  });
14544
14612
  function Satisfies(state) {
@@ -14563,7 +14631,7 @@ ${input.slice(result.pos)}
14563
14631
  return result;
14564
14632
  }
14565
14633
  }
14566
- var Semicolon$0 = $TV($EXPECT($L84, fail, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
14634
+ var Semicolon$0 = $TV($EXPECT($L85, fail, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
14567
14635
  return { $loc, token: $1 };
14568
14636
  });
14569
14637
  function Semicolon(state) {
@@ -14588,7 +14656,7 @@ ${input.slice(result.pos)}
14588
14656
  return result;
14589
14657
  }
14590
14658
  }
14591
- var SingleQuote$0 = $TV($EXPECT($L143, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
14659
+ var SingleQuote$0 = $TV($EXPECT($L144, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
14592
14660
  return { $loc, token: $1 };
14593
14661
  });
14594
14662
  function SingleQuote(state) {
@@ -14613,7 +14681,7 @@ ${input.slice(result.pos)}
14613
14681
  return result;
14614
14682
  }
14615
14683
  }
14616
- var Star$0 = $TV($EXPECT($L53, fail, 'Star "*"'), function($skip, $loc, $0, $1) {
14684
+ var Star$0 = $TV($EXPECT($L54, fail, 'Star "*"'), function($skip, $loc, $0, $1) {
14617
14685
  return { $loc, token: $1 };
14618
14686
  });
14619
14687
  function Star(state) {
@@ -14638,10 +14706,10 @@ ${input.slice(result.pos)}
14638
14706
  return result;
14639
14707
  }
14640
14708
  }
14641
- var Static$0 = $TS($S($EXPECT($L144, fail, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14709
+ var Static$0 = $TS($S($EXPECT($L145, fail, 'Static "static"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14642
14710
  return { $loc, token: $1 };
14643
14711
  });
14644
- var Static$1 = $TS($S($EXPECT($L100, fail, 'Static "@"'), $N($C($EXPECT($L2, fail, 'Static "("'), $EXPECT($L100, fail, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
14712
+ var Static$1 = $TS($S($EXPECT($L101, fail, 'Static "@"'), $N($C($EXPECT($L2, fail, 'Static "("'), $EXPECT($L101, fail, 'Static "@"')))), function($skip, $loc, $0, $1, $2) {
14645
14713
  return { $loc, token: "static " };
14646
14714
  });
14647
14715
  function Static(state) {
@@ -14666,7 +14734,7 @@ ${input.slice(result.pos)}
14666
14734
  return result;
14667
14735
  }
14668
14736
  }
14669
- var SubstitutionStart$0 = $TV($EXPECT($L145, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
14737
+ var SubstitutionStart$0 = $TV($EXPECT($L146, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
14670
14738
  return { $loc, token: $1 };
14671
14739
  });
14672
14740
  function SubstitutionStart(state) {
@@ -14691,7 +14759,7 @@ ${input.slice(result.pos)}
14691
14759
  return result;
14692
14760
  }
14693
14761
  }
14694
- var Switch$0 = $TS($S($EXPECT($L146, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14762
+ var Switch$0 = $TS($S($EXPECT($L147, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14695
14763
  return { $loc, token: $1 };
14696
14764
  });
14697
14765
  function Switch(state) {
@@ -14716,7 +14784,7 @@ ${input.slice(result.pos)}
14716
14784
  return result;
14717
14785
  }
14718
14786
  }
14719
- var Target$0 = $TS($S($EXPECT($L147, fail, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14787
+ var Target$0 = $TS($S($EXPECT($L148, fail, 'Target "target"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14720
14788
  return { $loc, token: $1 };
14721
14789
  });
14722
14790
  function Target(state) {
@@ -14741,7 +14809,7 @@ ${input.slice(result.pos)}
14741
14809
  return result;
14742
14810
  }
14743
14811
  }
14744
- var Then$0 = $TS($S(__, $EXPECT($L148, fail, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
14812
+ var Then$0 = $TS($S(__, $EXPECT($L149, fail, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
14745
14813
  return { $loc, token: "" };
14746
14814
  });
14747
14815
  function Then(state) {
@@ -14766,7 +14834,7 @@ ${input.slice(result.pos)}
14766
14834
  return result;
14767
14835
  }
14768
14836
  }
14769
- var This$0 = $TS($S($EXPECT($L149, fail, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14837
+ var This$0 = $TS($S($EXPECT($L150, fail, 'This "this"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14770
14838
  return { $loc, token: $1 };
14771
14839
  });
14772
14840
  function This(state) {
@@ -14791,7 +14859,7 @@ ${input.slice(result.pos)}
14791
14859
  return result;
14792
14860
  }
14793
14861
  }
14794
- var Throw$0 = $TS($S($EXPECT($L150, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14862
+ var Throw$0 = $TS($S($EXPECT($L151, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14795
14863
  return { $loc, token: $1 };
14796
14864
  });
14797
14865
  function Throw(state) {
@@ -14816,7 +14884,7 @@ ${input.slice(result.pos)}
14816
14884
  return result;
14817
14885
  }
14818
14886
  }
14819
- var TripleDoubleQuote$0 = $TV($EXPECT($L151, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
14887
+ var TripleDoubleQuote$0 = $TV($EXPECT($L152, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
14820
14888
  return { $loc, token: "`" };
14821
14889
  });
14822
14890
  function TripleDoubleQuote(state) {
@@ -14841,7 +14909,7 @@ ${input.slice(result.pos)}
14841
14909
  return result;
14842
14910
  }
14843
14911
  }
14844
- var TripleSingleQuote$0 = $TV($EXPECT($L152, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
14912
+ var TripleSingleQuote$0 = $TV($EXPECT($L153, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
14845
14913
  return { $loc, token: "`" };
14846
14914
  });
14847
14915
  function TripleSingleQuote(state) {
@@ -14866,7 +14934,7 @@ ${input.slice(result.pos)}
14866
14934
  return result;
14867
14935
  }
14868
14936
  }
14869
- var TripleSlash$0 = $TV($EXPECT($L153, fail, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
14937
+ var TripleSlash$0 = $TV($EXPECT($L154, fail, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
14870
14938
  return { $loc, token: "/" };
14871
14939
  });
14872
14940
  function TripleSlash(state) {
@@ -14891,7 +14959,7 @@ ${input.slice(result.pos)}
14891
14959
  return result;
14892
14960
  }
14893
14961
  }
14894
- var TripleTick$0 = $TV($EXPECT($L154, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
14962
+ var TripleTick$0 = $TV($EXPECT($L155, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
14895
14963
  return { $loc, token: "`" };
14896
14964
  });
14897
14965
  function TripleTick(state) {
@@ -14916,7 +14984,7 @@ ${input.slice(result.pos)}
14916
14984
  return result;
14917
14985
  }
14918
14986
  }
14919
- var Try$0 = $TS($S($EXPECT($L155, fail, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14987
+ var Try$0 = $TS($S($EXPECT($L156, fail, 'Try "try"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14920
14988
  return { $loc, token: $1 };
14921
14989
  });
14922
14990
  function Try(state) {
@@ -14941,7 +15009,7 @@ ${input.slice(result.pos)}
14941
15009
  return result;
14942
15010
  }
14943
15011
  }
14944
- var Typeof$0 = $TS($S($EXPECT($L156, fail, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15012
+ var Typeof$0 = $TS($S($EXPECT($L157, fail, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14945
15013
  return { $loc, token: $1 };
14946
15014
  });
14947
15015
  function Typeof(state) {
@@ -14966,7 +15034,7 @@ ${input.slice(result.pos)}
14966
15034
  return result;
14967
15035
  }
14968
15036
  }
14969
- var Unless$0 = $TS($S($EXPECT($L157, fail, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15037
+ var Unless$0 = $TS($S($EXPECT($L158, fail, 'Unless "unless"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14970
15038
  return { $loc, token: $1 };
14971
15039
  });
14972
15040
  function Unless(state) {
@@ -14991,7 +15059,7 @@ ${input.slice(result.pos)}
14991
15059
  return result;
14992
15060
  }
14993
15061
  }
14994
- var Until$0 = $TS($S($EXPECT($L158, fail, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15062
+ var Until$0 = $TS($S($EXPECT($L159, fail, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
14995
15063
  return { $loc, token: $1 };
14996
15064
  });
14997
15065
  function Until(state) {
@@ -15016,7 +15084,7 @@ ${input.slice(result.pos)}
15016
15084
  return result;
15017
15085
  }
15018
15086
  }
15019
- var Var$0 = $TS($S($EXPECT($L159, fail, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15087
+ var Var$0 = $TS($S($EXPECT($L160, fail, 'Var "var"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15020
15088
  return { $loc, token: $1 };
15021
15089
  });
15022
15090
  function Var(state) {
@@ -15041,7 +15109,7 @@ ${input.slice(result.pos)}
15041
15109
  return result;
15042
15110
  }
15043
15111
  }
15044
- var Void$0 = $TS($S($EXPECT($L160, fail, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15112
+ var Void$0 = $TS($S($EXPECT($L161, fail, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15045
15113
  return { $loc, token: $1 };
15046
15114
  });
15047
15115
  function Void(state) {
@@ -15066,7 +15134,7 @@ ${input.slice(result.pos)}
15066
15134
  return result;
15067
15135
  }
15068
15136
  }
15069
- var When$0 = $TS($S($EXPECT($L161, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15137
+ var When$0 = $TS($S($EXPECT($L162, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15070
15138
  return { $loc, token: "case" };
15071
15139
  });
15072
15140
  function When(state) {
@@ -15091,7 +15159,7 @@ ${input.slice(result.pos)}
15091
15159
  return result;
15092
15160
  }
15093
15161
  }
15094
- var While$0 = $TS($S($EXPECT($L162, fail, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15162
+ var While$0 = $TS($S($EXPECT($L163, fail, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15095
15163
  return { $loc, token: $1 };
15096
15164
  });
15097
15165
  function While(state) {
@@ -15116,7 +15184,7 @@ ${input.slice(result.pos)}
15116
15184
  return result;
15117
15185
  }
15118
15186
  }
15119
- var Yield$0 = $TS($S($EXPECT($L163, fail, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15187
+ var Yield$0 = $TS($S($EXPECT($L164, fail, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
15120
15188
  return { $loc, token: $1 };
15121
15189
  });
15122
15190
  function Yield(state) {
@@ -15261,7 +15329,7 @@ ${input.slice(result.pos)}
15261
15329
  return result;
15262
15330
  }
15263
15331
  }
15264
- var JSXSelfClosingElement$0 = $TS($S($EXPECT($L131, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L164, fail, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
15332
+ var JSXSelfClosingElement$0 = $TS($S($EXPECT($L132, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L165, fail, 'JSXSelfClosingElement "/>"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
15265
15333
  return { type: "JSXElement", children: $0, tag: $2 };
15266
15334
  });
15267
15335
  function JSXSelfClosingElement(state) {
@@ -15312,7 +15380,7 @@ ${input.slice(result.pos)}
15312
15380
  return result;
15313
15381
  }
15314
15382
  }
15315
- var PopJSXStack$0 = $TV($EXPECT($L18, fail, 'PopJSXStack ""'), function($skip, $loc, $0, $1) {
15383
+ var PopJSXStack$0 = $TV($EXPECT($L19, fail, 'PopJSXStack ""'), function($skip, $loc, $0, $1) {
15316
15384
  module2.JSXTagStack.pop();
15317
15385
  });
15318
15386
  function PopJSXStack(state) {
@@ -15337,7 +15405,7 @@ ${input.slice(result.pos)}
15337
15405
  return result;
15338
15406
  }
15339
15407
  }
15340
- var JSXOpeningElement$0 = $S($EXPECT($L131, fail, 'JSXOpeningElement "<"'), $TEXT(JSXElementName), $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L29, fail, 'JSXOpeningElement ">"'));
15408
+ var JSXOpeningElement$0 = $S($EXPECT($L132, fail, 'JSXOpeningElement "<"'), $TEXT(JSXElementName), $E(TypeArguments), $E(JSXAttributes), $E(Whitespace), $EXPECT($L30, fail, 'JSXOpeningElement ">"'));
15341
15409
  function JSXOpeningElement(state) {
15342
15410
  let eventData;
15343
15411
  if (state.events) {
@@ -15366,7 +15434,7 @@ ${input.slice(result.pos)}
15366
15434
  return $skip;
15367
15435
  return $0;
15368
15436
  });
15369
- var JSXOptionalClosingElement$1 = $EXPECT($L18, fail, 'JSXOptionalClosingElement ""');
15437
+ var JSXOptionalClosingElement$1 = $EXPECT($L19, fail, 'JSXOptionalClosingElement ""');
15370
15438
  function JSXOptionalClosingElement(state) {
15371
15439
  let eventData;
15372
15440
  if (state.events) {
@@ -15389,7 +15457,7 @@ ${input.slice(result.pos)}
15389
15457
  return result;
15390
15458
  }
15391
15459
  }
15392
- var JSXClosingElement$0 = $S($EXPECT($L165, fail, 'JSXClosingElement "</"'), $E(Whitespace), $TEXT(JSXElementName), $E(Whitespace), $EXPECT($L29, fail, 'JSXClosingElement ">"'));
15460
+ var JSXClosingElement$0 = $S($EXPECT($L166, fail, 'JSXClosingElement "</"'), $E(Whitespace), $TEXT(JSXElementName), $E(Whitespace), $EXPECT($L30, fail, 'JSXClosingElement ">"'));
15393
15461
  function JSXClosingElement(state) {
15394
15462
  let eventData;
15395
15463
  if (state.events) {
@@ -15427,7 +15495,7 @@ ${input.slice(result.pos)}
15427
15495
  ];
15428
15496
  return { type: "JSXFragment", children: parts, jsxChildren: children.jsxChildren };
15429
15497
  });
15430
- var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L166, fail, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
15498
+ var JSXFragment$1 = $TS($S(CoffeeJSXEnabled, $EXPECT($L167, fail, 'JSXFragment "<>"'), $E(JSXChildren), $E(Whitespace), JSXClosingFragment), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
15431
15499
  var children = $3;
15432
15500
  $0 = $0.slice(1);
15433
15501
  return {
@@ -15458,7 +15526,7 @@ ${input.slice(result.pos)}
15458
15526
  return result;
15459
15527
  }
15460
15528
  }
15461
- var PushJSXOpeningFragment$0 = $TV($EXPECT($L166, fail, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
15529
+ var PushJSXOpeningFragment$0 = $TV($EXPECT($L167, fail, 'PushJSXOpeningFragment "<>"'), function($skip, $loc, $0, $1) {
15462
15530
  module2.JSXTagStack.push("");
15463
15531
  return $1;
15464
15532
  });
@@ -15489,7 +15557,7 @@ ${input.slice(result.pos)}
15489
15557
  return $skip;
15490
15558
  return $0;
15491
15559
  });
15492
- var JSXOptionalClosingFragment$1 = $EXPECT($L18, fail, 'JSXOptionalClosingFragment ""');
15560
+ var JSXOptionalClosingFragment$1 = $EXPECT($L19, fail, 'JSXOptionalClosingFragment ""');
15493
15561
  function JSXOptionalClosingFragment(state) {
15494
15562
  let eventData;
15495
15563
  if (state.events) {
@@ -15512,7 +15580,7 @@ ${input.slice(result.pos)}
15512
15580
  return result;
15513
15581
  }
15514
15582
  }
15515
- var JSXClosingFragment$0 = $EXPECT($L167, fail, 'JSXClosingFragment "</>"');
15583
+ var JSXClosingFragment$0 = $EXPECT($L168, fail, 'JSXClosingFragment "</>"');
15516
15584
  function JSXClosingFragment(state) {
15517
15585
  let eventData;
15518
15586
  if (state.events) {
@@ -16279,7 +16347,7 @@ ${input.slice(result.pos)}
16279
16347
  }
16280
16348
  return $skip;
16281
16349
  });
16282
- var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L21, fail, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
16350
+ var JSXNestedChildren$1 = $TV($Y($C(JSXEOS, $EXPECT($L22, fail, 'JSXNestedChildren "}"'), JSXClosingElement, JSXClosingFragment)), function($skip, $loc, $0, $1) {
16283
16351
  return { children: [], jsxChildren: [] };
16284
16352
  });
16285
16353
  function JSXNestedChildren(state) {
@@ -16408,7 +16476,7 @@ ${input.slice(result.pos)}
16408
16476
  return result;
16409
16477
  }
16410
16478
  }
16411
- var JSXComment$0 = $TS($S($EXPECT($L168, fail, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L169, fail, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
16479
+ var JSXComment$0 = $TS($S($EXPECT($L169, fail, 'JSXComment "<!--"'), JSXCommentContent, $EXPECT($L170, fail, 'JSXComment "-->"')), function($skip, $loc, $0, $1, $2, $3) {
16412
16480
  return ["{/*", $2, "*/}"];
16413
16481
  });
16414
16482
  function JSXComment(state) {
@@ -16706,7 +16774,7 @@ ${input.slice(result.pos)}
16706
16774
  return result;
16707
16775
  }
16708
16776
  }
16709
- var TypeKeyword$0 = $S($EXPECT($L170, fail, 'TypeKeyword "type"'), NonIdContinue);
16777
+ var TypeKeyword$0 = $S($EXPECT($L171, fail, 'TypeKeyword "type"'), NonIdContinue);
16710
16778
  function TypeKeyword(state) {
16711
16779
  let eventData;
16712
16780
  if (state.events) {
@@ -16729,7 +16797,7 @@ ${input.slice(result.pos)}
16729
16797
  return result;
16730
16798
  }
16731
16799
  }
16732
- var Interface$0 = $S($EXPECT($L171, fail, 'Interface "interface"'), NonIdContinue);
16800
+ var Interface$0 = $S($EXPECT($L172, fail, 'Interface "interface"'), NonIdContinue);
16733
16801
  function Interface(state) {
16734
16802
  let eventData;
16735
16803
  if (state.events) {
@@ -16752,7 +16820,7 @@ ${input.slice(result.pos)}
16752
16820
  return result;
16753
16821
  }
16754
16822
  }
16755
- var Namespace$0 = $S($EXPECT($L172, fail, 'Namespace "namespace"'), NonIdContinue);
16823
+ var Namespace$0 = $S($EXPECT($L173, fail, 'Namespace "namespace"'), NonIdContinue);
16756
16824
  function Namespace(state) {
16757
16825
  let eventData;
16758
16826
  if (state.events) {
@@ -17000,7 +17068,7 @@ ${input.slice(result.pos)}
17000
17068
  return result;
17001
17069
  }
17002
17070
  }
17003
- var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R57, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L140, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R58, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
17071
+ var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R57, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L141, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R58, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
17004
17072
  function TypeIndexSignature(state) {
17005
17073
  let eventData;
17006
17074
  if (state.events) {
@@ -17047,7 +17115,7 @@ ${input.slice(result.pos)}
17047
17115
  return result;
17048
17116
  }
17049
17117
  }
17050
- var TypeSuffix$0 = $T($S($E(QuestionMark), __, Colon, Type), function(value) {
17118
+ var TypeSuffix$0 = $T($S($E(QuestionMark), $E(_), Colon, Type), function(value) {
17051
17119
  return { "type": "TypeSuffix", "ts": true, "children": value };
17052
17120
  });
17053
17121
  function TypeSuffix(state) {
@@ -17072,14 +17140,20 @@ ${input.slice(result.pos)}
17072
17140
  return result;
17073
17141
  }
17074
17142
  }
17075
- var ReturnTypeSuffix$0 = $TS($S(__, Colon, $E($S(__, $EXPECT($L173, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2, $3, $4) {
17076
- const children = [...$1, $2];
17077
- if ($3)
17078
- children.push($3);
17079
- children.push($4);
17143
+ var ReturnTypeSuffix$0 = $TS($S($E(_), Colon, $E($S(__, $EXPECT($L174, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2, $3, $4) {
17144
+ var asserts = $3;
17145
+ var t = $4;
17146
+ if (asserts) {
17147
+ t = {
17148
+ type: "AssertsType",
17149
+ t,
17150
+ children: [asserts[0], asserts[1], t]
17151
+ };
17152
+ }
17080
17153
  return {
17081
17154
  type: "ReturnTypeAnnotation",
17082
- children,
17155
+ children: [$1, $2, t],
17156
+ t,
17083
17157
  ts: true
17084
17158
  };
17085
17159
  });
@@ -17105,10 +17179,17 @@ ${input.slice(result.pos)}
17105
17179
  return result;
17106
17180
  }
17107
17181
  }
17108
- var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L81, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
17109
- if (!$2)
17110
- return $1;
17111
- return $0;
17182
+ var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L82, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
17183
+ var lhs = $1;
17184
+ var rhs = $2;
17185
+ if (!rhs)
17186
+ return lhs;
17187
+ return {
17188
+ type: "TypePredicate",
17189
+ lhs,
17190
+ rhs: rhs[3],
17191
+ children: [lhs, ...rhs]
17192
+ };
17112
17193
  });
17113
17194
  function TypePredicate(state) {
17114
17195
  let eventData;
@@ -17183,6 +17264,8 @@ ${input.slice(result.pos)}
17183
17264
  }
17184
17265
  }
17185
17266
  var TypeUnary$0 = $TS($S($Q($S(__, TypeUnaryOp, NonIdContinue)), TypePrimary, $Q(TypeUnarySuffix)), function($skip, $loc, $0, $1, $2, $3) {
17267
+ if (!$1.length && !$3.length)
17268
+ return $2;
17186
17269
  return [...$1, $2, ...$3];
17187
17270
  });
17188
17271
  function TypeUnary(state) {
@@ -17231,10 +17314,10 @@ ${input.slice(result.pos)}
17231
17314
  return result;
17232
17315
  }
17233
17316
  }
17234
- var TypeUnaryOp$0 = $S($EXPECT($L174, fail, 'TypeUnaryOp "keyof"'), NonIdContinue);
17235
- var TypeUnaryOp$1 = $S($EXPECT($L156, fail, 'TypeUnaryOp "typeof"'), NonIdContinue);
17236
- var TypeUnaryOp$2 = $S($EXPECT($L175, fail, 'TypeUnaryOp "infer"'), NonIdContinue);
17237
- var TypeUnaryOp$3 = $S($EXPECT($L140, fail, 'TypeUnaryOp "readonly"'), NonIdContinue);
17317
+ var TypeUnaryOp$0 = $S($EXPECT($L175, fail, 'TypeUnaryOp "keyof"'), NonIdContinue);
17318
+ var TypeUnaryOp$1 = $S($EXPECT($L157, fail, 'TypeUnaryOp "typeof"'), NonIdContinue);
17319
+ var TypeUnaryOp$2 = $S($EXPECT($L176, fail, 'TypeUnaryOp "infer"'), NonIdContinue);
17320
+ var TypeUnaryOp$3 = $S($EXPECT($L141, fail, 'TypeUnaryOp "readonly"'), NonIdContinue);
17238
17321
  function TypeUnaryOp(state) {
17239
17322
  let eventData;
17240
17323
  if (state.events) {
@@ -17285,8 +17368,23 @@ ${input.slice(result.pos)}
17285
17368
  var TypePrimary$2 = $S($E(_), InlineInterfaceLiteral);
17286
17369
  var TypePrimary$3 = $S($E(_), TypeTuple);
17287
17370
  var TypePrimary$4 = $S($E(_), ImportType);
17288
- var TypePrimary$5 = $S($E(_), TypeLiteral);
17289
- var TypePrimary$6 = $S($E(_), IdentifierName, $Q($S(Dot, IdentifierName)), $E(TypeArguments));
17371
+ var TypePrimary$5 = $TS($S($E(_), TypeLiteral), function($skip, $loc, $0, $1, $2) {
17372
+ var t = $2;
17373
+ return {
17374
+ type: "LiteralType",
17375
+ t,
17376
+ children: $0
17377
+ };
17378
+ });
17379
+ var TypePrimary$6 = $TS($S($E(_), IdentifierName, $Q($S(Dot, IdentifierName)), $E(TypeArguments)), function($skip, $loc, $0, $1, $2, $3, $4) {
17380
+ var args = $4;
17381
+ return {
17382
+ type: "IdentifierType",
17383
+ children: $0,
17384
+ raw: [$2.name, ...$3.map(([dot, id]) => dot.token + id.name)].join(""),
17385
+ args
17386
+ };
17387
+ });
17290
17388
  var TypePrimary$7 = $S(__, OpenParen, $C(Type, $S(EOS, Type)), __, CloseParen);
17291
17389
  function TypePrimary(state) {
17292
17390
  let eventData;
@@ -17432,7 +17530,7 @@ ${input.slice(result.pos)}
17432
17530
  return result;
17433
17531
  }
17434
17532
  }
17435
- var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L119, fail, 'TypeConditional "extends"'), NonIdContinue, Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
17533
+ var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L120, fail, 'TypeConditional "extends"'), NonIdContinue, Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
17436
17534
  if ($2)
17437
17535
  return $0;
17438
17536
  return $1;
@@ -17461,10 +17559,10 @@ ${input.slice(result.pos)}
17461
17559
  }
17462
17560
  var TypeLiteral$0 = TemplateLiteral;
17463
17561
  var TypeLiteral$1 = Literal;
17464
- var TypeLiteral$2 = $TS($S($EXPECT($L160, fail, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17465
- return { $loc, token: "void" };
17562
+ var TypeLiteral$2 = $TS($S($EXPECT($L161, fail, 'TypeLiteral "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
17563
+ return { type: "VoidType", $loc, token: $1 };
17466
17564
  });
17467
- var TypeLiteral$3 = $TV($EXPECT($L176, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
17565
+ var TypeLiteral$3 = $TV($EXPECT($L177, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
17468
17566
  return { $loc, token: "[]" };
17469
17567
  });
17470
17568
  function TypeLiteral(state) {
@@ -17539,7 +17637,7 @@ ${input.slice(result.pos)}
17539
17637
  var InlineInterfacePropertyDelimiter$1 = $T($S($Y($S($C(IndentedFurther, $E(_)), InlineBasicInterfaceProperty)), InsertComma), function(value) {
17540
17638
  return value[1];
17541
17639
  });
17542
- var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L31, fail, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L32, fail, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L30, fail, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L21, fail, 'InlineInterfacePropertyDelimiter "}"'))));
17640
+ var InlineInterfacePropertyDelimiter$2 = $Y($S(__, $C($EXPECT($L32, fail, 'InlineInterfacePropertyDelimiter ":"'), $EXPECT($L33, fail, 'InlineInterfacePropertyDelimiter ")"'), $EXPECT($L31, fail, 'InlineInterfacePropertyDelimiter "]"'), $EXPECT($L22, fail, 'InlineInterfacePropertyDelimiter "}"'))));
17543
17641
  var InlineInterfacePropertyDelimiter$3 = $Y(EOS);
17544
17642
  function InlineInterfacePropertyDelimiter(state) {
17545
17643
  let eventData;
@@ -17563,10 +17661,10 @@ ${input.slice(result.pos)}
17563
17661
  return result;
17564
17662
  }
17565
17663
  }
17566
- var TypeBinaryOp$0 = $TV($EXPECT($L83, fail, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
17664
+ var TypeBinaryOp$0 = $TV($EXPECT($L84, fail, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
17567
17665
  return { $loc, token: "|" };
17568
17666
  });
17569
- var TypeBinaryOp$1 = $TV($EXPECT($L82, fail, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
17667
+ var TypeBinaryOp$1 = $TV($EXPECT($L83, fail, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
17570
17668
  return { $loc, token: "&" };
17571
17669
  });
17572
17670
  function TypeBinaryOp(state) {
@@ -17623,7 +17721,7 @@ ${input.slice(result.pos)}
17623
17721
  var TypeArrowFunction$0 = $TV($EXPECT($L7, fail, 'TypeArrowFunction "=>"'), function($skip, $loc, $0, $1) {
17624
17722
  return { $loc, token: "=>" };
17625
17723
  });
17626
- var TypeArrowFunction$1 = $TV($EXPECT($L20, fail, 'TypeArrowFunction "->"'), function($skip, $loc, $0, $1) {
17724
+ var TypeArrowFunction$1 = $TV($EXPECT($L21, fail, 'TypeArrowFunction "->"'), function($skip, $loc, $0, $1) {
17627
17725
  return { $loc, token: "=>" };
17628
17726
  });
17629
17727
  function TypeArrowFunction(state) {
@@ -17648,7 +17746,7 @@ ${input.slice(result.pos)}
17648
17746
  return result;
17649
17747
  }
17650
17748
  }
17651
- var TypeArguments$0 = $TS($S($EXPECT($L131, fail, 'TypeArguments "<"'), $P(TypeArgument), __, $EXPECT($L29, fail, 'TypeArguments ">"')), function($skip, $loc, $0, $1, $2, $3, $4) {
17749
+ var TypeArguments$0 = $TS($S($EXPECT($L132, fail, 'TypeArguments "<"'), $P(TypeArgument), __, $EXPECT($L30, fail, 'TypeArguments ">"')), function($skip, $loc, $0, $1, $2, $3, $4) {
17652
17750
  return { ts: true, children: $0 };
17653
17751
  });
17654
17752
  function TypeArguments(state) {
@@ -17719,7 +17817,7 @@ ${input.slice(result.pos)}
17719
17817
  return result;
17720
17818
  }
17721
17819
  }
17722
- var TypeParameters$0 = $TS($S(__, $EXPECT($L131, fail, 'TypeParameters "<"'), $P(TypeParameter), __, $EXPECT($L29, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
17820
+ var TypeParameters$0 = $TS($S(__, $EXPECT($L132, fail, 'TypeParameters "<"'), $P(TypeParameter), __, $EXPECT($L30, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
17723
17821
  var parameters = $3;
17724
17822
  return {
17725
17823
  type: "TypeParameters",
@@ -17773,7 +17871,7 @@ ${input.slice(result.pos)}
17773
17871
  return result;
17774
17872
  }
17775
17873
  }
17776
- var TypeConstraint$0 = $S(__, $EXPECT($L119, fail, 'TypeConstraint "extends"'), NonIdContinue, Type);
17874
+ var TypeConstraint$0 = $S(__, $EXPECT($L120, fail, 'TypeConstraint "extends"'), NonIdContinue, Type);
17777
17875
  function TypeConstraint(state) {
17778
17876
  let eventData;
17779
17877
  if (state.events) {
@@ -17820,7 +17918,7 @@ ${input.slice(result.pos)}
17820
17918
  }
17821
17919
  }
17822
17920
  var TypeParameterDelimiter$0 = $S($Q(_), Comma);
17823
- var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L29, fail, 'TypeParameterDelimiter ">"')));
17921
+ var TypeParameterDelimiter$1 = $Y($S(__, $EXPECT($L30, fail, 'TypeParameterDelimiter ">"')));
17824
17922
  var TypeParameterDelimiter$2 = $T($S($Y(EOS), InsertComma), function(value) {
17825
17923
  return value[1];
17826
17924
  });
@@ -17924,7 +18022,7 @@ ${input.slice(result.pos)}
17924
18022
  return result;
17925
18023
  }
17926
18024
  }
17927
- var CivetPrologueContent$0 = $TS($S($EXPECT($L177, fail, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R61, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
18025
+ var CivetPrologueContent$0 = $TS($S($EXPECT($L178, fail, 'CivetPrologueContent "civet"'), NonIdContinue, $Q(CivetOption), $EXPECT($R61, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
17928
18026
  var options = $3;
17929
18027
  return {
17930
18028
  type: "CivetPrologue",
@@ -18085,7 +18183,7 @@ ${input.slice(result.pos)}
18085
18183
  return result;
18086
18184
  }
18087
18185
  }
18088
- var DebugHere$0 = $TV($EXPECT($L18, fail, 'DebugHere ""'), function($skip, $loc, $0, $1) {
18186
+ var DebugHere$0 = $TV($EXPECT($L19, fail, 'DebugHere ""'), function($skip, $loc, $0, $1) {
18089
18187
  debugger;
18090
18188
  });
18091
18189
  function DebugHere(state) {
@@ -18110,7 +18208,7 @@ ${input.slice(result.pos)}
18110
18208
  return result;
18111
18209
  }
18112
18210
  }
18113
- var InsertSemicolon$0 = $TV($EXPECT($L18, fail, 'InsertSemicolon ""'), function($skip, $loc, $0, $1) {
18211
+ var InsertSemicolon$0 = $TV($EXPECT($L19, fail, 'InsertSemicolon ""'), function($skip, $loc, $0, $1) {
18114
18212
  return { $loc, token: ";" };
18115
18213
  });
18116
18214
  function InsertSemicolon(state) {
@@ -18135,7 +18233,7 @@ ${input.slice(result.pos)}
18135
18233
  return result;
18136
18234
  }
18137
18235
  }
18138
- var InsertOpenParen$0 = $TV($EXPECT($L18, fail, 'InsertOpenParen ""'), function($skip, $loc, $0, $1) {
18236
+ var InsertOpenParen$0 = $TV($EXPECT($L19, fail, 'InsertOpenParen ""'), function($skip, $loc, $0, $1) {
18139
18237
  return { $loc, token: "(" };
18140
18238
  });
18141
18239
  function InsertOpenParen(state) {
@@ -18160,7 +18258,7 @@ ${input.slice(result.pos)}
18160
18258
  return result;
18161
18259
  }
18162
18260
  }
18163
- var InsertCloseParen$0 = $TV($EXPECT($L18, fail, 'InsertCloseParen ""'), function($skip, $loc, $0, $1) {
18261
+ var InsertCloseParen$0 = $TV($EXPECT($L19, fail, 'InsertCloseParen ""'), function($skip, $loc, $0, $1) {
18164
18262
  return { $loc, token: ")" };
18165
18263
  });
18166
18264
  function InsertCloseParen(state) {
@@ -18185,7 +18283,7 @@ ${input.slice(result.pos)}
18185
18283
  return result;
18186
18284
  }
18187
18285
  }
18188
- var InsertOpenBrace$0 = $TV($EXPECT($L18, fail, 'InsertOpenBrace ""'), function($skip, $loc, $0, $1) {
18286
+ var InsertOpenBrace$0 = $TV($EXPECT($L19, fail, 'InsertOpenBrace ""'), function($skip, $loc, $0, $1) {
18189
18287
  return [{ $loc, token: " " }, { $loc, token: "{" }];
18190
18288
  });
18191
18289
  function InsertOpenBrace(state) {
@@ -18210,7 +18308,7 @@ ${input.slice(result.pos)}
18210
18308
  return result;
18211
18309
  }
18212
18310
  }
18213
- var InsertInlineOpenBrace$0 = $TV($EXPECT($L18, fail, 'InsertInlineOpenBrace ""'), function($skip, $loc, $0, $1) {
18311
+ var InsertInlineOpenBrace$0 = $TV($EXPECT($L19, fail, 'InsertInlineOpenBrace ""'), function($skip, $loc, $0, $1) {
18214
18312
  return { $loc, token: "{" };
18215
18313
  });
18216
18314
  function InsertInlineOpenBrace(state) {
@@ -18235,7 +18333,7 @@ ${input.slice(result.pos)}
18235
18333
  return result;
18236
18334
  }
18237
18335
  }
18238
- var InsertCloseBrace$0 = $TV($EXPECT($L18, fail, 'InsertCloseBrace ""'), function($skip, $loc, $0, $1) {
18336
+ var InsertCloseBrace$0 = $TV($EXPECT($L19, fail, 'InsertCloseBrace ""'), function($skip, $loc, $0, $1) {
18239
18337
  return { $loc, token: "}" };
18240
18338
  });
18241
18339
  function InsertCloseBrace(state) {
@@ -18260,7 +18358,7 @@ ${input.slice(result.pos)}
18260
18358
  return result;
18261
18359
  }
18262
18360
  }
18263
- var InsertOpenBracket$0 = $TV($EXPECT($L18, fail, 'InsertOpenBracket ""'), function($skip, $loc, $0, $1) {
18361
+ var InsertOpenBracket$0 = $TV($EXPECT($L19, fail, 'InsertOpenBracket ""'), function($skip, $loc, $0, $1) {
18264
18362
  return { $loc, token: "[" };
18265
18363
  });
18266
18364
  function InsertOpenBracket(state) {
@@ -18285,7 +18383,7 @@ ${input.slice(result.pos)}
18285
18383
  return result;
18286
18384
  }
18287
18385
  }
18288
- var InsertCloseBracket$0 = $TV($EXPECT($L18, fail, 'InsertCloseBracket ""'), function($skip, $loc, $0, $1) {
18386
+ var InsertCloseBracket$0 = $TV($EXPECT($L19, fail, 'InsertCloseBracket ""'), function($skip, $loc, $0, $1) {
18289
18387
  return { $loc, token: "]" };
18290
18388
  });
18291
18389
  function InsertCloseBracket(state) {
@@ -18310,7 +18408,7 @@ ${input.slice(result.pos)}
18310
18408
  return result;
18311
18409
  }
18312
18410
  }
18313
- var InsertComma$0 = $TV($EXPECT($L18, fail, 'InsertComma ""'), function($skip, $loc, $0, $1) {
18411
+ var InsertComma$0 = $TV($EXPECT($L19, fail, 'InsertComma ""'), function($skip, $loc, $0, $1) {
18314
18412
  return { $loc, token: "," };
18315
18413
  });
18316
18414
  function InsertComma(state) {
@@ -18335,7 +18433,7 @@ ${input.slice(result.pos)}
18335
18433
  return result;
18336
18434
  }
18337
18435
  }
18338
- var InsertConst$0 = $TV($EXPECT($L18, fail, 'InsertConst ""'), function($skip, $loc, $0, $1) {
18436
+ var InsertConst$0 = $TV($EXPECT($L19, fail, 'InsertConst ""'), function($skip, $loc, $0, $1) {
18339
18437
  return { $loc, token: "const " };
18340
18438
  });
18341
18439
  function InsertConst(state) {
@@ -18360,7 +18458,7 @@ ${input.slice(result.pos)}
18360
18458
  return result;
18361
18459
  }
18362
18460
  }
18363
- var InsertLet$0 = $TV($EXPECT($L18, fail, 'InsertLet ""'), function($skip, $loc, $0, $1) {
18461
+ var InsertLet$0 = $TV($EXPECT($L19, fail, 'InsertLet ""'), function($skip, $loc, $0, $1) {
18364
18462
  return { $loc, token: "let " };
18365
18463
  });
18366
18464
  function InsertLet(state) {
@@ -18385,7 +18483,7 @@ ${input.slice(result.pos)}
18385
18483
  return result;
18386
18484
  }
18387
18485
  }
18388
- var InsertReadonly$0 = $TV($EXPECT($L18, fail, 'InsertReadonly ""'), function($skip, $loc, $0, $1) {
18486
+ var InsertReadonly$0 = $TV($EXPECT($L19, fail, 'InsertReadonly ""'), function($skip, $loc, $0, $1) {
18389
18487
  return { ts: true, children: [{ $loc, token: "readonly " }] };
18390
18488
  });
18391
18489
  function InsertReadonly(state) {
@@ -18410,7 +18508,7 @@ ${input.slice(result.pos)}
18410
18508
  return result;
18411
18509
  }
18412
18510
  }
18413
- var InsertNewline$0 = $TV($EXPECT($L18, fail, 'InsertNewline ""'), function($skip, $loc, $0, $1) {
18511
+ var InsertNewline$0 = $TV($EXPECT($L19, fail, 'InsertNewline ""'), function($skip, $loc, $0, $1) {
18414
18512
  return "\n";
18415
18513
  });
18416
18514
  function InsertNewline(state) {
@@ -18435,7 +18533,7 @@ ${input.slice(result.pos)}
18435
18533
  return result;
18436
18534
  }
18437
18535
  }
18438
- var InsertIndent$0 = $TV($EXPECT($L18, fail, 'InsertIndent ""'), function($skip, $loc, $0, $1) {
18536
+ var InsertIndent$0 = $TV($EXPECT($L19, fail, 'InsertIndent ""'), function($skip, $loc, $0, $1) {
18439
18537
  return module2.currentIndent.token;
18440
18538
  });
18441
18539
  function InsertIndent(state) {
@@ -18460,7 +18558,7 @@ ${input.slice(result.pos)}
18460
18558
  return result;
18461
18559
  }
18462
18560
  }
18463
- var InsertSpace$0 = $TV($EXPECT($L18, fail, 'InsertSpace ""'), function($skip, $loc, $0, $1) {
18561
+ var InsertSpace$0 = $TV($EXPECT($L19, fail, 'InsertSpace ""'), function($skip, $loc, $0, $1) {
18464
18562
  return { $loc, token: " " };
18465
18563
  });
18466
18564
  function InsertSpace(state) {
@@ -18485,7 +18583,7 @@ ${input.slice(result.pos)}
18485
18583
  return result;
18486
18584
  }
18487
18585
  }
18488
- var InsertDot$0 = $TV($EXPECT($L18, fail, 'InsertDot ""'), function($skip, $loc, $0, $1) {
18586
+ var InsertDot$0 = $TV($EXPECT($L19, fail, 'InsertDot ""'), function($skip, $loc, $0, $1) {
18489
18587
  return { $loc, token: "." };
18490
18588
  });
18491
18589
  function InsertDot(state) {
@@ -18510,7 +18608,7 @@ ${input.slice(result.pos)}
18510
18608
  return result;
18511
18609
  }
18512
18610
  }
18513
- var InsertBreak$0 = $TV($EXPECT($L18, fail, 'InsertBreak ""'), function($skip, $loc, $0, $1) {
18611
+ var InsertBreak$0 = $TV($EXPECT($L19, fail, 'InsertBreak ""'), function($skip, $loc, $0, $1) {
18514
18612
  return { $loc, token: ";break;" };
18515
18613
  });
18516
18614
  function InsertBreak(state) {
@@ -18535,7 +18633,7 @@ ${input.slice(result.pos)}
18535
18633
  return result;
18536
18634
  }
18537
18635
  }
18538
- var InsertVar$0 = $TV($EXPECT($L18, fail, 'InsertVar ""'), function($skip, $loc, $0, $1) {
18636
+ var InsertVar$0 = $TV($EXPECT($L19, fail, 'InsertVar ""'), function($skip, $loc, $0, $1) {
18539
18637
  return { $loc, token: "var " };
18540
18638
  });
18541
18639
  function InsertVar(state) {
@@ -18560,7 +18658,7 @@ ${input.slice(result.pos)}
18560
18658
  return result;
18561
18659
  }
18562
18660
  }
18563
- var CoffeeBinaryExistentialEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeBinaryExistentialEnabled ""'), function($skip, $loc, $0, $1) {
18661
+ var CoffeeBinaryExistentialEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeBinaryExistentialEnabled ""'), function($skip, $loc, $0, $1) {
18564
18662
  if (module2.config.coffeeBinaryExistential)
18565
18663
  return;
18566
18664
  return $skip;
@@ -18587,7 +18685,7 @@ ${input.slice(result.pos)}
18587
18685
  return result;
18588
18686
  }
18589
18687
  }
18590
- var CoffeeBooleansEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeBooleansEnabled ""'), function($skip, $loc, $0, $1) {
18688
+ var CoffeeBooleansEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeBooleansEnabled ""'), function($skip, $loc, $0, $1) {
18591
18689
  if (module2.config.coffeeBooleans)
18592
18690
  return;
18593
18691
  return $skip;
@@ -18614,7 +18712,7 @@ ${input.slice(result.pos)}
18614
18712
  return result;
18615
18713
  }
18616
18714
  }
18617
- var CoffeeClassesEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeClassesEnabled ""'), function($skip, $loc, $0, $1) {
18715
+ var CoffeeClassesEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeClassesEnabled ""'), function($skip, $loc, $0, $1) {
18618
18716
  if (module2.config.coffeeClasses)
18619
18717
  return;
18620
18718
  return $skip;
@@ -18641,7 +18739,7 @@ ${input.slice(result.pos)}
18641
18739
  return result;
18642
18740
  }
18643
18741
  }
18644
- var CoffeeCommentEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeCommentEnabled ""'), function($skip, $loc, $0, $1) {
18742
+ var CoffeeCommentEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeCommentEnabled ""'), function($skip, $loc, $0, $1) {
18645
18743
  if (module2.config.coffeeComment)
18646
18744
  return;
18647
18745
  return $skip;
@@ -18668,7 +18766,7 @@ ${input.slice(result.pos)}
18668
18766
  return result;
18669
18767
  }
18670
18768
  }
18671
- var CoffeeDoEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeDoEnabled ""'), function($skip, $loc, $0, $1) {
18769
+ var CoffeeDoEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeDoEnabled ""'), function($skip, $loc, $0, $1) {
18672
18770
  if (module2.config.coffeeDo)
18673
18771
  return;
18674
18772
  return $skip;
@@ -18695,7 +18793,7 @@ ${input.slice(result.pos)}
18695
18793
  return result;
18696
18794
  }
18697
18795
  }
18698
- var CoffeeForLoopsEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeForLoopsEnabled ""'), function($skip, $loc, $0, $1) {
18796
+ var CoffeeForLoopsEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeForLoopsEnabled ""'), function($skip, $loc, $0, $1) {
18699
18797
  if (module2.config.coffeeForLoops)
18700
18798
  return;
18701
18799
  return $skip;
@@ -18722,7 +18820,7 @@ ${input.slice(result.pos)}
18722
18820
  return result;
18723
18821
  }
18724
18822
  }
18725
- var CoffeeInterpolationEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeInterpolationEnabled ""'), function($skip, $loc, $0, $1) {
18823
+ var CoffeeInterpolationEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeInterpolationEnabled ""'), function($skip, $loc, $0, $1) {
18726
18824
  if (module2.config.coffeeInterpolation)
18727
18825
  return;
18728
18826
  return $skip;
@@ -18749,7 +18847,7 @@ ${input.slice(result.pos)}
18749
18847
  return result;
18750
18848
  }
18751
18849
  }
18752
- var CoffeeIsntEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeIsntEnabled ""'), function($skip, $loc, $0, $1) {
18850
+ var CoffeeIsntEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeIsntEnabled ""'), function($skip, $loc, $0, $1) {
18753
18851
  if (module2.config.coffeeIsnt)
18754
18852
  return;
18755
18853
  return $skip;
@@ -18776,7 +18874,7 @@ ${input.slice(result.pos)}
18776
18874
  return result;
18777
18875
  }
18778
18876
  }
18779
- var CoffeeJSXEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeJSXEnabled ""'), function($skip, $loc, $0, $1) {
18877
+ var CoffeeJSXEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeJSXEnabled ""'), function($skip, $loc, $0, $1) {
18780
18878
  if (module2.config.coffeeJSX)
18781
18879
  return;
18782
18880
  return $skip;
@@ -18803,7 +18901,7 @@ ${input.slice(result.pos)}
18803
18901
  return result;
18804
18902
  }
18805
18903
  }
18806
- var CoffeeLineContinuationEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeLineContinuationEnabled ""'), function($skip, $loc, $0, $1) {
18904
+ var CoffeeLineContinuationEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeLineContinuationEnabled ""'), function($skip, $loc, $0, $1) {
18807
18905
  if (module2.config.coffeeLineContinuation)
18808
18906
  return;
18809
18907
  return $skip;
@@ -18830,7 +18928,7 @@ ${input.slice(result.pos)}
18830
18928
  return result;
18831
18929
  }
18832
18930
  }
18833
- var CoffeeNotEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeNotEnabled ""'), function($skip, $loc, $0, $1) {
18931
+ var CoffeeNotEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeNotEnabled ""'), function($skip, $loc, $0, $1) {
18834
18932
  if (module2.config.coffeeNot)
18835
18933
  return;
18836
18934
  return $skip;
@@ -18857,7 +18955,7 @@ ${input.slice(result.pos)}
18857
18955
  return result;
18858
18956
  }
18859
18957
  }
18860
- var CoffeeOfEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeeOfEnabled ""'), function($skip, $loc, $0, $1) {
18958
+ var CoffeeOfEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeeOfEnabled ""'), function($skip, $loc, $0, $1) {
18861
18959
  if (module2.config.coffeeOf)
18862
18960
  return;
18863
18961
  return $skip;
@@ -18884,7 +18982,7 @@ ${input.slice(result.pos)}
18884
18982
  return result;
18885
18983
  }
18886
18984
  }
18887
- var CoffeePrototypeEnabled$0 = $TV($EXPECT($L18, fail, 'CoffeePrototypeEnabled ""'), function($skip, $loc, $0, $1) {
18985
+ var CoffeePrototypeEnabled$0 = $TV($EXPECT($L19, fail, 'CoffeePrototypeEnabled ""'), function($skip, $loc, $0, $1) {
18888
18986
  if (module2.config.coffeePrototype)
18889
18987
  return;
18890
18988
  return $skip;
@@ -18911,7 +19009,7 @@ ${input.slice(result.pos)}
18911
19009
  return result;
18912
19010
  }
18913
19011
  }
18914
- var ObjectIsEnabled$0 = $TV($EXPECT($L18, fail, 'ObjectIsEnabled ""'), function($skip, $loc, $0, $1) {
19012
+ var ObjectIsEnabled$0 = $TV($EXPECT($L19, fail, 'ObjectIsEnabled ""'), function($skip, $loc, $0, $1) {
18915
19013
  if (module2.config.objectIs)
18916
19014
  return;
18917
19015
  return $skip;
@@ -18938,7 +19036,7 @@ ${input.slice(result.pos)}
18938
19036
  return result;
18939
19037
  }
18940
19038
  }
18941
- var Reset$0 = $TV($EXPECT($L18, fail, 'Reset ""'), function($skip, $loc, $0, $1) {
19039
+ var Reset$0 = $TV($EXPECT($L19, fail, 'Reset ""'), function($skip, $loc, $0, $1) {
18942
19040
  module2.indentLevels = [{
18943
19041
  level: 0,
18944
19042
  token: ""
@@ -19245,7 +19343,7 @@ ${input.slice(result.pos)}
19245
19343
  return result;
19246
19344
  }
19247
19345
  }
19248
- var Init$0 = $TS($S($E(Shebang), $Q(DirectivePrologue), $EXPECT($L18, fail, 'Init ""')), function($skip, $loc, $0, $1, $2, $3) {
19346
+ var Init$0 = $TS($S($E(Shebang), $Q(DirectivePrologue), $EXPECT($L19, fail, 'Init ""')), function($skip, $loc, $0, $1, $2, $3) {
19249
19347
  var directives = $2;
19250
19348
  directives.forEach((directive) => {
19251
19349
  if (directive.type === "CivetPrologue") {
@@ -19548,6 +19646,12 @@ ${input.slice(result.pos)}
19548
19646
  return;
19549
19647
  }
19550
19648
  }
19649
+ function getIndent(statement) {
19650
+ let indent = statement?.[0];
19651
+ if (Array.isArray(indent))
19652
+ indent = indent[indent.length - 1];
19653
+ return indent;
19654
+ }
19551
19655
  function insertReturn(node) {
19552
19656
  if (!node)
19553
19657
  return;
@@ -19572,9 +19676,7 @@ ${input.slice(result.pos)}
19572
19676
  const [, exp, semi] = node;
19573
19677
  if (semi?.type === "SemicolonDelimiter")
19574
19678
  return;
19575
- let indent = node[0];
19576
- if (Array.isArray(indent))
19577
- indent = indent[indent.length - 1];
19679
+ let indent = getIndent(node);
19578
19680
  if (!exp)
19579
19681
  return;
19580
19682
  switch (exp.type) {
@@ -19994,12 +20096,14 @@ ${input.slice(result.pos)}
19994
20096
  }
19995
20097
  return [];
19996
20098
  }
19997
- function gatherRecursive(node, predicate) {
20099
+ function gatherRecursive(node, predicate, skipPredicate) {
19998
20100
  if (node == null)
19999
20101
  return [];
20000
20102
  if (Array.isArray(node)) {
20001
20103
  return node.flatMap((n) => gatherRecursive(n, predicate));
20002
20104
  }
20105
+ if (skipPredicate?.(node))
20106
+ return [];
20003
20107
  if (predicate(node)) {
20004
20108
  return [node];
20005
20109
  }
@@ -20017,6 +20121,36 @@ ${input.slice(result.pos)}
20017
20121
  }
20018
20122
  return nodes;
20019
20123
  }
20124
+ function isFunction({ type }) {
20125
+ return type === "FunctionExpression" || type === "ArrowFunction" || type === "MethodDefinition";
20126
+ }
20127
+ function gatherRecursiveWithinFunction(node, predicate) {
20128
+ return gatherRecursive(node, predicate, isFunction);
20129
+ }
20130
+ function addParentPointers(node, parent) {
20131
+ if (node == null)
20132
+ return;
20133
+ if (typeof node !== "object")
20134
+ return;
20135
+ node.parent = parent;
20136
+ if (Array.isArray(node)) {
20137
+ for (const child of node) {
20138
+ addParentPointers(child, node);
20139
+ }
20140
+ } else if (node.children) {
20141
+ for (const child of node.children) {
20142
+ addParentPointers(child, node);
20143
+ }
20144
+ }
20145
+ }
20146
+ function findAncestor(node, predicate, stopPredicate) {
20147
+ node = node.parent;
20148
+ while (node && !stopPredicate?.(node)) {
20149
+ if (predicate(node))
20150
+ return node;
20151
+ node = node.parent;
20152
+ }
20153
+ }
20020
20154
  function processParams(f) {
20021
20155
  const { type, parameters, block } = f;
20022
20156
  if (type === "ArrowFunction" && parameters && parameters.tp && parameters.tp.parameters.length === 1) {
@@ -20062,26 +20196,89 @@ ${input.slice(result.pos)}
20062
20196
  }
20063
20197
  });
20064
20198
  }
20199
+ function processReturnValue(func) {
20200
+ const { block } = func;
20201
+ const values = gatherRecursiveWithinFunction(
20202
+ block,
20203
+ ({ type }) => type === "ReturnValue"
20204
+ );
20205
+ if (!values.length)
20206
+ return false;
20207
+ const ref = {
20208
+ type: "Ref",
20209
+ base: "ret",
20210
+ id: "ret"
20211
+ };
20212
+ let declared;
20213
+ values.forEach((value) => {
20214
+ value.children = [ref];
20215
+ const ancestor = findAncestor(
20216
+ value,
20217
+ ({ type }) => type === "Declaration",
20218
+ isFunction
20219
+ );
20220
+ if (ancestor)
20221
+ declared = true;
20222
+ });
20223
+ if (!declared) {
20224
+ let returnType = func.returnType ?? func.signature?.returnType;
20225
+ if (returnType) {
20226
+ const { t } = returnType;
20227
+ if (t.type === "TypePredicate") {
20228
+ returnType = ": boolean";
20229
+ } else if (t.type === "AssertsType") {
20230
+ returnType = void 0;
20231
+ }
20232
+ }
20233
+ block.expressions.unshift([
20234
+ getIndent(block.expressions[0]),
20235
+ {
20236
+ type: "Declaration",
20237
+ children: ["let ", ref, returnType, ";\n"],
20238
+ names: []
20239
+ }
20240
+ ]);
20241
+ }
20242
+ gatherRecursiveWithinFunction(
20243
+ block,
20244
+ (r) => r.type === "ReturnStatement" && !r.expression
20245
+ ).forEach((r) => {
20246
+ r.expression = ref;
20247
+ r.children.splice(-1, 1, " ", ref);
20248
+ });
20249
+ if (block.children.at(-2)?.type !== "ReturnStatement") {
20250
+ block.expressions.push([
20251
+ ["\n", getIndent(block.expressions.at(-1))],
20252
+ {
20253
+ type: "ReturnStatement",
20254
+ expression: ref,
20255
+ children: ["return ", ref]
20256
+ }
20257
+ ]);
20258
+ }
20259
+ return true;
20260
+ }
20261
+ function isVoidType(t) {
20262
+ return t?.type === "LiteralType" && t.t.type === "VoidType";
20263
+ }
20065
20264
  function processFunctions(statements) {
20066
- gatherRecursiveAll(statements, (n) => {
20067
- return n.type === "FunctionExpression" || n.type === "ArrowFunction";
20068
- }).forEach((f) => {
20265
+ gatherRecursiveAll(statements, ({ type }) => type === "FunctionExpression" || type === "ArrowFunction").forEach((f) => {
20069
20266
  processParams(f);
20070
- const { block, returnType } = f;
20071
- if (module2.config.implicitReturns) {
20072
- const isVoid = returnType === "void";
20267
+ if (!processReturnValue(f) && module2.config.implicitReturns) {
20268
+ const { block, returnType } = f;
20269
+ const isVoid = isVoidType(returnType?.t);
20073
20270
  const isBlock = block?.type === "BlockStatement";
20074
20271
  if (!isVoid && isBlock) {
20075
20272
  insertReturn(block);
20076
20273
  }
20077
20274
  }
20078
20275
  });
20079
- gatherRecursiveAll(statements, (n) => n.type === "MethodDefinition").forEach((f) => {
20276
+ gatherRecursiveAll(statements, ({ type }) => type === "MethodDefinition").forEach((f) => {
20080
20277
  processParams(f);
20081
- const { signature, block } = f;
20082
- if (module2.config.implicitReturns) {
20278
+ if (!processReturnValue(f) && module2.config.implicitReturns) {
20279
+ const { signature, block } = f;
20083
20280
  const isConstructor = signature.name === "constructor";
20084
- const isVoid = signature.returnType === "void";
20281
+ const isVoid = isVoidType(signature.returnType?.t);
20085
20282
  const isSet = signature.modifier === "set";
20086
20283
  if (!isConstructor && !isSet && !isVoid) {
20087
20284
  insertReturn(block);
@@ -20569,6 +20766,7 @@ ${input.slice(result.pos)}
20569
20766
  });
20570
20767
  }
20571
20768
  module2.processProgram = function(statements) {
20769
+ addParentPointers(statements);
20572
20770
  processPipelineExpressions(statements);
20573
20771
  processAssignments(statements);
20574
20772
  processFunctions(statements);
@@ -20595,18 +20793,7 @@ ${input.slice(result.pos)}
20595
20793
  return new Set(declarationNames);
20596
20794
  }
20597
20795
  function populateRefs(statements) {
20598
- const refNodes = gatherNodes(statements, ({ type }) => type === "Ref");
20599
- const blockNodes = new Set(gatherNodes(statements, ({ type }) => type === "BlockStatement"));
20600
- const forNodes = gatherNodes(statements, ({ type }) => type === "ForStatement");
20601
- forNodes.forEach(({ declaration, block }) => {
20602
- if (block.type === "BlockStatement") {
20603
- populateRefs([declaration, ...block.children]);
20604
- } else {
20605
- populateRefs([declaration, ...block]);
20606
- }
20607
- blockNodes.delete(block);
20608
- });
20609
- blockNodes.forEach(({ expressions }) => populateRefs(expressions));
20796
+ const refNodes = gatherRecursive(statements, ({ type }) => type === "Ref");
20610
20797
  if (refNodes.length) {
20611
20798
  const ids = gatherRecursive(statements, (s) => s.type === "Identifier");
20612
20799
  const names = new Set(ids.flatMap(({ names: names2 }) => names2 || []));
@@ -21012,7 +21199,7 @@ ${input.slice(result.pos)}
21012
21199
  return result;
21013
21200
  }
21014
21201
  }
21015
- var PopIndent$0 = $TV($EXPECT($L18, fail, 'PopIndent ""'), function($skip, $loc, $0, $1) {
21202
+ var PopIndent$0 = $TV($EXPECT($L19, fail, 'PopIndent ""'), function($skip, $loc, $0, $1) {
21016
21203
  if (module2.config.verbose) {
21017
21204
  console.log("popping indent", module2.indentLevels[module2.indentLevels.length - 1], "->", module2.indentLevels[module2.indentLevels.length - 2]);
21018
21205
  }
@@ -21161,6 +21348,9 @@ var prune = function(node) {
21161
21348
  if (node.length === 0) {
21162
21349
  return;
21163
21350
  }
21351
+ if (node.parent != null) {
21352
+ delete node.parent;
21353
+ }
21164
21354
  if (Array.isArray(node)) {
21165
21355
  a = node.map(function(n) {
21166
21356
  return prune(n);