@danielx/civet 0.4.19-pre.12 → 0.4.19-pre.13

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
@@ -528,6 +528,7 @@ ${input.slice(result.pos)}
528
528
  PrivateIdentifier,
529
529
  AssignmentOp,
530
530
  AssignmentOpSymbol,
531
+ CoffeeWordAssignmentOp,
531
532
  BinaryOp,
532
533
  BinaryOpSymbol,
533
534
  UnaryOp,
@@ -814,6 +815,7 @@ ${input.slice(result.pos)}
814
815
  CoffeeLineContinuationEnabled,
815
816
  CoffeeNotEnabled,
816
817
  CoffeeOfEnabled,
818
+ CoffeeWordAssignmentEnabled,
817
819
  Reset,
818
820
  Init,
819
821
  Indent,
@@ -868,119 +870,121 @@ ${input.slice(result.pos)}
868
870
  var $L41 = $L("??=");
869
871
  var $L42 = $L("?=");
870
872
  var $L43 = $L("=");
871
- var $L44 = $L("**");
872
- var $L45 = $L("*");
873
- var $L46 = $L("/");
874
- var $L47 = $L("%");
875
- var $L48 = $L("+");
876
- var $L49 = $L("-");
877
- var $L50 = $L("<=");
878
- var $L51 = $L(">=");
879
- var $L52 = $L("<<");
880
- var $L53 = $L(">>>");
881
- var $L54 = $L(">>");
882
- var $L55 = $L(">");
883
- var $L56 = $L("!==");
884
- var $L57 = $L("!=");
885
- var $L58 = $L("isnt");
886
- var $L59 = $L("is");
887
- var $L60 = $L("===");
888
- var $L61 = $L("==");
889
- var $L62 = $L("and");
890
- var $L63 = $L("&&");
891
- var $L64 = $L("of");
892
- var $L65 = $L("or");
893
- var $L66 = $L("||");
894
- var $L67 = $L("??");
895
- var $L68 = $L("?");
896
- var $L69 = $L("instanceof");
897
- var $L70 = $L("in");
898
- var $L71 = $L("not");
899
- var $L72 = $L("&");
900
- var $L73 = $L("^");
901
- var $L74 = $L("|");
902
- var $L75 = $L(";");
903
- var $L76 = $L("own");
904
- var $L77 = $L("finally");
905
- var $L78 = $L("break");
906
- var $L79 = $L("continue");
907
- var $L80 = $L("debugger");
908
- var $L81 = $L("import type");
909
- var $L82 = $L("default");
910
- var $L83 = $L(":=");
911
- var $L84 = $L("/*");
912
- var $L85 = $L("*/");
913
- var $L86 = $L("###");
914
- var $L87 = $L("\\");
915
- var $L88 = $L("as");
916
- var $L89 = $L("@");
917
- var $L90 = $L("async");
918
- var $L91 = $L("await");
919
- var $L92 = $L("`");
920
- var $L93 = $L("by");
921
- var $L94 = $L("case");
922
- var $L95 = $L("catch");
923
- var $L96 = $L("class");
924
- var $L97 = $L("#{");
925
- var $L98 = $L(":");
926
- var $L99 = $L("delete");
927
- var $L100 = $L("do");
928
- var $L101 = $L("..");
929
- var $L102 = $L("...");
930
- var $L103 = $L("::");
931
- var $L104 = $L('"');
932
- var $L105 = $L("else");
933
- var $L106 = $L("export");
934
- var $L107 = $L("for");
935
- var $L108 = $L("from");
936
- var $L109 = $L("function");
937
- var $L110 = $L("get");
938
- var $L111 = $L("set");
939
- var $L112 = $L("if");
940
- var $L113 = $L("let");
941
- var $L114 = $L("const");
942
- var $L115 = $L("loop");
943
- var $L116 = $L("new");
944
- var $L117 = $L("{");
945
- var $L118 = $L("[");
946
- var $L119 = $L("(");
947
- var $L120 = $L("return");
948
- var $L121 = $L("'");
949
- var $L122 = $L("static");
950
- var $L123 = $L("${");
951
- var $L124 = $L("switch");
952
- var $L125 = $L("target");
953
- var $L126 = $L("then");
954
- var $L127 = $L("throw");
955
- var $L128 = $L('"""');
956
- var $L129 = $L("'''");
957
- var $L130 = $L("///");
958
- var $L131 = $L("```");
959
- var $L132 = $L("try");
960
- var $L133 = $L("typeof");
961
- var $L134 = $L("unless");
962
- var $L135 = $L("until");
963
- var $L136 = $L("var");
964
- var $L137 = $L("void");
965
- var $L138 = $L("when");
966
- var $L139 = $L("while");
967
- var $L140 = $L("yield");
968
- var $L141 = $L("/>");
969
- var $L142 = $L("</");
970
- var $L143 = $L("<>");
971
- var $L144 = $L("</>");
972
- var $L145 = $L("declare");
973
- var $L146 = $L("type");
974
- var $L147 = $L("interface");
975
- var $L148 = $L("namespace");
976
- var $L149 = $L("readonly");
977
- var $L150 = $L("asserts");
978
- var $L151 = $L("keyof");
979
- var $L152 = $L("infer");
980
- var $L153 = $L("[]");
981
- var $L154 = $L("civet");
982
- var $L155 = $L(" ");
983
- var $L156 = $L(" ");
873
+ var $L44 = $L("and=");
874
+ var $L45 = $L("or=");
875
+ var $L46 = $L("**");
876
+ var $L47 = $L("*");
877
+ var $L48 = $L("/");
878
+ var $L49 = $L("%");
879
+ var $L50 = $L("+");
880
+ var $L51 = $L("-");
881
+ var $L52 = $L("<=");
882
+ var $L53 = $L(">=");
883
+ var $L54 = $L("<<");
884
+ var $L55 = $L(">>>");
885
+ var $L56 = $L(">>");
886
+ var $L57 = $L(">");
887
+ var $L58 = $L("!==");
888
+ var $L59 = $L("!=");
889
+ var $L60 = $L("isnt");
890
+ var $L61 = $L("is");
891
+ var $L62 = $L("===");
892
+ var $L63 = $L("==");
893
+ var $L64 = $L("and");
894
+ var $L65 = $L("&&");
895
+ var $L66 = $L("of");
896
+ var $L67 = $L("or");
897
+ var $L68 = $L("||");
898
+ var $L69 = $L("??");
899
+ var $L70 = $L("?");
900
+ var $L71 = $L("instanceof");
901
+ var $L72 = $L("in");
902
+ var $L73 = $L("not");
903
+ var $L74 = $L("&");
904
+ var $L75 = $L("^");
905
+ var $L76 = $L("|");
906
+ var $L77 = $L(";");
907
+ var $L78 = $L("own");
908
+ var $L79 = $L("finally");
909
+ var $L80 = $L("break");
910
+ var $L81 = $L("continue");
911
+ var $L82 = $L("debugger");
912
+ var $L83 = $L("import type");
913
+ var $L84 = $L("default");
914
+ var $L85 = $L(":=");
915
+ var $L86 = $L("/*");
916
+ var $L87 = $L("*/");
917
+ var $L88 = $L("###");
918
+ var $L89 = $L("\\");
919
+ var $L90 = $L("as");
920
+ var $L91 = $L("@");
921
+ var $L92 = $L("async");
922
+ var $L93 = $L("await");
923
+ var $L94 = $L("`");
924
+ var $L95 = $L("by");
925
+ var $L96 = $L("case");
926
+ var $L97 = $L("catch");
927
+ var $L98 = $L("class");
928
+ var $L99 = $L("#{");
929
+ var $L100 = $L(":");
930
+ var $L101 = $L("delete");
931
+ var $L102 = $L("do");
932
+ var $L103 = $L("..");
933
+ var $L104 = $L("...");
934
+ var $L105 = $L("::");
935
+ var $L106 = $L('"');
936
+ var $L107 = $L("else");
937
+ var $L108 = $L("export");
938
+ var $L109 = $L("for");
939
+ var $L110 = $L("from");
940
+ var $L111 = $L("function");
941
+ var $L112 = $L("get");
942
+ var $L113 = $L("set");
943
+ var $L114 = $L("if");
944
+ var $L115 = $L("let");
945
+ var $L116 = $L("const");
946
+ var $L117 = $L("loop");
947
+ var $L118 = $L("new");
948
+ var $L119 = $L("{");
949
+ var $L120 = $L("[");
950
+ var $L121 = $L("(");
951
+ var $L122 = $L("return");
952
+ var $L123 = $L("'");
953
+ var $L124 = $L("static");
954
+ var $L125 = $L("${");
955
+ var $L126 = $L("switch");
956
+ var $L127 = $L("target");
957
+ var $L128 = $L("then");
958
+ var $L129 = $L("throw");
959
+ var $L130 = $L('"""');
960
+ var $L131 = $L("'''");
961
+ var $L132 = $L("///");
962
+ var $L133 = $L("```");
963
+ var $L134 = $L("try");
964
+ var $L135 = $L("typeof");
965
+ var $L136 = $L("unless");
966
+ var $L137 = $L("until");
967
+ var $L138 = $L("var");
968
+ var $L139 = $L("void");
969
+ var $L140 = $L("when");
970
+ var $L141 = $L("while");
971
+ var $L142 = $L("yield");
972
+ var $L143 = $L("/>");
973
+ var $L144 = $L("</");
974
+ var $L145 = $L("<>");
975
+ var $L146 = $L("</>");
976
+ var $L147 = $L("declare");
977
+ var $L148 = $L("type");
978
+ var $L149 = $L("interface");
979
+ var $L150 = $L("namespace");
980
+ var $L151 = $L("readonly");
981
+ var $L152 = $L("asserts");
982
+ var $L153 = $L("keyof");
983
+ var $L154 = $L("infer");
984
+ var $L155 = $L("[]");
985
+ var $L156 = $L("civet");
986
+ var $L157 = $L(" ");
987
+ var $L158 = $L(" ");
984
988
  var $R0 = $R(new RegExp("(for|of|then|when)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
985
989
  var $R1 = $R(new RegExp("[&]", "suy"));
986
990
  var $R2 = $R(new RegExp("[!~+-]+", "suy"));
@@ -2693,10 +2697,25 @@ ${input.slice(result.pos)}
2693
2697
  return result;
2694
2698
  }
2695
2699
  }
2696
- var BindingIdentifier$0 = $TS($S(__, Identifier), function($skip, $loc, $0, $1, $2) {
2697
- return Object.assign({}, $2, {
2698
- children: [...$1, ...$2.children]
2699
- });
2700
+ var BindingIdentifier$0 = $TS($S(__, $E(At), Identifier), function($skip, $loc, $0, $1, $2, $3) {
2701
+ var ws = $1;
2702
+ var at = $2;
2703
+ var id = $3;
2704
+ if (at) {
2705
+ const ref = {
2706
+ type: "Ref",
2707
+ base: id.name
2708
+ };
2709
+ return {
2710
+ type: "AtBinding",
2711
+ children: [...ws, ref],
2712
+ ref
2713
+ };
2714
+ }
2715
+ return {
2716
+ ...id,
2717
+ children: [...ws, ...id.children]
2718
+ };
2700
2719
  });
2701
2720
  function BindingIdentifier(state) {
2702
2721
  if (state.events) {
@@ -2917,13 +2936,7 @@ ${input.slice(result.pos)}
2917
2936
  return result;
2918
2937
  }
2919
2938
  }
2920
- var NestedBindingProperty$0 = $TS($S(Nested, BindingProperty), function($skip, $loc, $0, $1, $2) {
2921
- var indent = $1;
2922
- var prop = $2;
2923
- return Object.assign({}, prop, {
2924
- children: [indent, ...prop.children]
2925
- });
2926
- });
2939
+ var NestedBindingProperty$0 = $S(Nested, BindingProperty);
2927
2940
  function NestedBindingProperty(state) {
2928
2941
  if (state.events) {
2929
2942
  const result = state.events.enter?.("NestedBindingProperty", state);
@@ -2951,6 +2964,14 @@ ${input.slice(result.pos)}
2951
2964
  });
2952
2965
  var BindingProperty$1 = $TS($S(BindingIdentifier, $E(Initializer), ObjectPropertyDelimiter), function($skip, $loc, $0, $1, $2, $3) {
2953
2966
  var b = $1;
2967
+ if (b.type === "AtBinding") {
2968
+ return {
2969
+ type: "AtBindingProperty",
2970
+ ref: b.ref,
2971
+ names: [],
2972
+ children: $0
2973
+ };
2974
+ }
2954
2975
  return {
2955
2976
  names: b.names,
2956
2977
  children: $0
@@ -2977,9 +2998,10 @@ ${input.slice(result.pos)}
2977
2998
  var NestedBindingRestProperty$0 = $TS($S(Nested, BindingRestProperty), function($skip, $loc, $0, $1, $2) {
2978
2999
  var indent = $1;
2979
3000
  var prop = $2;
2980
- return Object.assign({}, prop, {
3001
+ return {
3002
+ ...prop,
2981
3003
  children: [indent, ...prop.children]
2982
- });
3004
+ };
2983
3005
  });
2984
3006
  function NestedBindingRestProperty(state) {
2985
3007
  if (state.events) {
@@ -3002,9 +3024,10 @@ ${input.slice(result.pos)}
3002
3024
  var BindingRestProperty$0 = $TS($S(DotDotDot, BindingIdentifier), function($skip, $loc, $0, $1, $2) {
3003
3025
  var d = $1;
3004
3026
  var id = $2;
3005
- return Object.assign({}, id, {
3027
+ return {
3028
+ ...id,
3006
3029
  children: [d, ...id.children]
3007
- });
3030
+ };
3008
3031
  });
3009
3032
  function BindingRestProperty(state) {
3010
3033
  if (state.events) {
@@ -3427,8 +3450,14 @@ ${input.slice(result.pos)}
3427
3450
  return result;
3428
3451
  }
3429
3452
  }
3430
- var EmptyBlock$0 = $T($S(InsertOpenBrace, InsertCloseBrace), function(value) {
3431
- return { "type": "BlockStatement", "expressions": [], "children": value, "bare": false };
3453
+ var EmptyBlock$0 = $TS($S(InsertOpenBrace, InsertCloseBrace), function($skip, $loc, $0, $1, $2) {
3454
+ const expressions = [];
3455
+ return {
3456
+ type: "BlockStatement",
3457
+ expressions,
3458
+ children: [$1, expressions, $2],
3459
+ bare: false
3460
+ };
3432
3461
  });
3433
3462
  function EmptyBlock(state) {
3434
3463
  if (state.events) {
@@ -4373,10 +4402,9 @@ ${input.slice(result.pos)}
4373
4402
  var PropertyDefinition$0 = $TS($S(At, IdentifierReference, $Y(ObjectPropertyDelimiter)), function($skip, $loc, $0, $1, $2, $3) {
4374
4403
  var at = $1;
4375
4404
  var id = $2;
4376
- at.token = "this.";
4377
4405
  return {
4378
4406
  type: "Property",
4379
- children: [id, ": ", at, id],
4407
+ children: [id, ": ", { ...at, token: "this." }, id],
4380
4408
  names: id.names
4381
4409
  };
4382
4410
  });
@@ -4661,6 +4689,9 @@ ${input.slice(result.pos)}
4661
4689
  return "??=";
4662
4690
  });
4663
4691
  var AssignmentOpSymbol$16 = $EXPECT($L43, fail, 'AssignmentOpSymbol "="');
4692
+ var AssignmentOpSymbol$17 = $T($S(CoffeeWordAssignmentEnabled, CoffeeWordAssignmentOp), function(value) {
4693
+ return value[1];
4694
+ });
4664
4695
  function AssignmentOpSymbol(state) {
4665
4696
  if (state.events) {
4666
4697
  const result = state.events.enter?.("AssignmentOpSymbol", state);
@@ -4668,17 +4699,41 @@ ${input.slice(result.pos)}
4668
4699
  return result.cache;
4669
4700
  }
4670
4701
  if (state.tokenize) {
4671
- const result = $TOKEN("AssignmentOpSymbol", state, AssignmentOpSymbol$0(state) || AssignmentOpSymbol$1(state) || AssignmentOpSymbol$2(state) || AssignmentOpSymbol$3(state) || AssignmentOpSymbol$4(state) || AssignmentOpSymbol$5(state) || AssignmentOpSymbol$6(state) || AssignmentOpSymbol$7(state) || AssignmentOpSymbol$8(state) || AssignmentOpSymbol$9(state) || AssignmentOpSymbol$10(state) || AssignmentOpSymbol$11(state) || AssignmentOpSymbol$12(state) || AssignmentOpSymbol$13(state) || AssignmentOpSymbol$14(state) || AssignmentOpSymbol$15(state) || AssignmentOpSymbol$16(state));
4702
+ const result = $TOKEN("AssignmentOpSymbol", state, AssignmentOpSymbol$0(state) || AssignmentOpSymbol$1(state) || AssignmentOpSymbol$2(state) || AssignmentOpSymbol$3(state) || AssignmentOpSymbol$4(state) || AssignmentOpSymbol$5(state) || AssignmentOpSymbol$6(state) || AssignmentOpSymbol$7(state) || AssignmentOpSymbol$8(state) || AssignmentOpSymbol$9(state) || AssignmentOpSymbol$10(state) || AssignmentOpSymbol$11(state) || AssignmentOpSymbol$12(state) || AssignmentOpSymbol$13(state) || AssignmentOpSymbol$14(state) || AssignmentOpSymbol$15(state) || AssignmentOpSymbol$16(state) || AssignmentOpSymbol$17(state));
4672
4703
  if (state.events)
4673
4704
  state.events.exit?.("AssignmentOpSymbol", state, result);
4674
4705
  return result;
4675
4706
  } else {
4676
- const result = AssignmentOpSymbol$0(state) || AssignmentOpSymbol$1(state) || AssignmentOpSymbol$2(state) || AssignmentOpSymbol$3(state) || AssignmentOpSymbol$4(state) || AssignmentOpSymbol$5(state) || AssignmentOpSymbol$6(state) || AssignmentOpSymbol$7(state) || AssignmentOpSymbol$8(state) || AssignmentOpSymbol$9(state) || AssignmentOpSymbol$10(state) || AssignmentOpSymbol$11(state) || AssignmentOpSymbol$12(state) || AssignmentOpSymbol$13(state) || AssignmentOpSymbol$14(state) || AssignmentOpSymbol$15(state) || AssignmentOpSymbol$16(state);
4707
+ const result = AssignmentOpSymbol$0(state) || AssignmentOpSymbol$1(state) || AssignmentOpSymbol$2(state) || AssignmentOpSymbol$3(state) || AssignmentOpSymbol$4(state) || AssignmentOpSymbol$5(state) || AssignmentOpSymbol$6(state) || AssignmentOpSymbol$7(state) || AssignmentOpSymbol$8(state) || AssignmentOpSymbol$9(state) || AssignmentOpSymbol$10(state) || AssignmentOpSymbol$11(state) || AssignmentOpSymbol$12(state) || AssignmentOpSymbol$13(state) || AssignmentOpSymbol$14(state) || AssignmentOpSymbol$15(state) || AssignmentOpSymbol$16(state) || AssignmentOpSymbol$17(state);
4677
4708
  if (state.events)
4678
4709
  state.events.exit?.("AssignmentOpSymbol", state, result);
4679
4710
  return result;
4680
4711
  }
4681
4712
  }
4713
+ var CoffeeWordAssignmentOp$0 = $T($EXPECT($L44, fail, 'CoffeeWordAssignmentOp "and="'), function(value) {
4714
+ return "&&=";
4715
+ });
4716
+ var CoffeeWordAssignmentOp$1 = $T($EXPECT($L45, fail, 'CoffeeWordAssignmentOp "or="'), function(value) {
4717
+ return "||=";
4718
+ });
4719
+ function CoffeeWordAssignmentOp(state) {
4720
+ if (state.events) {
4721
+ const result = state.events.enter?.("CoffeeWordAssignmentOp", state);
4722
+ if (result)
4723
+ return result.cache;
4724
+ }
4725
+ if (state.tokenize) {
4726
+ const result = $TOKEN("CoffeeWordAssignmentOp", state, CoffeeWordAssignmentOp$0(state) || CoffeeWordAssignmentOp$1(state));
4727
+ if (state.events)
4728
+ state.events.exit?.("CoffeeWordAssignmentOp", state, result);
4729
+ return result;
4730
+ } else {
4731
+ const result = CoffeeWordAssignmentOp$0(state) || CoffeeWordAssignmentOp$1(state);
4732
+ if (state.events)
4733
+ state.events.exit?.("CoffeeWordAssignmentOp", state, result);
4734
+ return result;
4735
+ }
4736
+ }
4682
4737
  var BinaryOp$0 = $TS($S(BinaryOpSymbol), function($skip, $loc, $0, $1) {
4683
4738
  if (typeof $1 === "string")
4684
4739
  return { $loc, token: $1 };
@@ -4702,75 +4757,75 @@ ${input.slice(result.pos)}
4702
4757
  return result;
4703
4758
  }
4704
4759
  }
4705
- var BinaryOpSymbol$0 = $EXPECT($L44, fail, 'BinaryOpSymbol "**"');
4706
- var BinaryOpSymbol$1 = $EXPECT($L45, fail, 'BinaryOpSymbol "*"');
4707
- var BinaryOpSymbol$2 = $EXPECT($L46, fail, 'BinaryOpSymbol "/"');
4708
- var BinaryOpSymbol$3 = $EXPECT($L47, fail, 'BinaryOpSymbol "%"');
4709
- var BinaryOpSymbol$4 = $EXPECT($L48, fail, 'BinaryOpSymbol "+"');
4710
- var BinaryOpSymbol$5 = $EXPECT($L49, fail, 'BinaryOpSymbol "-"');
4711
- var BinaryOpSymbol$6 = $EXPECT($L50, fail, 'BinaryOpSymbol "<="');
4712
- var BinaryOpSymbol$7 = $EXPECT($L51, fail, 'BinaryOpSymbol ">="');
4713
- var BinaryOpSymbol$8 = $EXPECT($L52, fail, 'BinaryOpSymbol "<<"');
4760
+ var BinaryOpSymbol$0 = $EXPECT($L46, fail, 'BinaryOpSymbol "**"');
4761
+ var BinaryOpSymbol$1 = $EXPECT($L47, fail, 'BinaryOpSymbol "*"');
4762
+ var BinaryOpSymbol$2 = $EXPECT($L48, fail, 'BinaryOpSymbol "/"');
4763
+ var BinaryOpSymbol$3 = $EXPECT($L49, fail, 'BinaryOpSymbol "%"');
4764
+ var BinaryOpSymbol$4 = $EXPECT($L50, fail, 'BinaryOpSymbol "+"');
4765
+ var BinaryOpSymbol$5 = $EXPECT($L51, fail, 'BinaryOpSymbol "-"');
4766
+ var BinaryOpSymbol$6 = $EXPECT($L52, fail, 'BinaryOpSymbol "<="');
4767
+ var BinaryOpSymbol$7 = $EXPECT($L53, fail, 'BinaryOpSymbol ">="');
4768
+ var BinaryOpSymbol$8 = $EXPECT($L54, fail, 'BinaryOpSymbol "<<"');
4714
4769
  var BinaryOpSymbol$9 = $EXPECT($L4, fail, 'BinaryOpSymbol "<"');
4715
- var BinaryOpSymbol$10 = $EXPECT($L53, fail, 'BinaryOpSymbol ">>>"');
4716
- var BinaryOpSymbol$11 = $EXPECT($L54, fail, 'BinaryOpSymbol ">>"');
4717
- var BinaryOpSymbol$12 = $EXPECT($L55, fail, 'BinaryOpSymbol ">"');
4718
- var BinaryOpSymbol$13 = $EXPECT($L56, fail, 'BinaryOpSymbol "!=="');
4719
- var BinaryOpSymbol$14 = $TV($EXPECT($L57, fail, 'BinaryOpSymbol "!="'), function($skip, $loc, $0, $1) {
4770
+ var BinaryOpSymbol$10 = $EXPECT($L55, fail, 'BinaryOpSymbol ">>>"');
4771
+ var BinaryOpSymbol$11 = $EXPECT($L56, fail, 'BinaryOpSymbol ">>"');
4772
+ var BinaryOpSymbol$12 = $EXPECT($L57, fail, 'BinaryOpSymbol ">"');
4773
+ var BinaryOpSymbol$13 = $EXPECT($L58, fail, 'BinaryOpSymbol "!=="');
4774
+ var BinaryOpSymbol$14 = $TV($EXPECT($L59, fail, 'BinaryOpSymbol "!="'), function($skip, $loc, $0, $1) {
4720
4775
  if (module2.config.coffeeEq)
4721
4776
  return "!==";
4722
4777
  return $1;
4723
4778
  });
4724
- var BinaryOpSymbol$15 = $TS($S($EXPECT($L58, fail, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
4779
+ var BinaryOpSymbol$15 = $TS($S($EXPECT($L60, fail, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
4725
4780
  if (module2.config.coffeeIsnt)
4726
4781
  return "!==";
4727
4782
  return $skip;
4728
4783
  });
4729
- var BinaryOpSymbol$16 = $T($S($EXPECT($L59, fail, 'BinaryOpSymbol "is"'), NonIdContinue), function(value) {
4784
+ var BinaryOpSymbol$16 = $T($S($EXPECT($L61, fail, 'BinaryOpSymbol "is"'), NonIdContinue), function(value) {
4730
4785
  return "===";
4731
4786
  });
4732
- var BinaryOpSymbol$17 = $EXPECT($L60, fail, 'BinaryOpSymbol "==="');
4733
- var BinaryOpSymbol$18 = $TV($EXPECT($L61, fail, 'BinaryOpSymbol "=="'), function($skip, $loc, $0, $1) {
4787
+ var BinaryOpSymbol$17 = $EXPECT($L62, fail, 'BinaryOpSymbol "==="');
4788
+ var BinaryOpSymbol$18 = $TV($EXPECT($L63, fail, 'BinaryOpSymbol "=="'), function($skip, $loc, $0, $1) {
4734
4789
  if (module2.config.coffeeEq)
4735
4790
  return "===";
4736
4791
  return $1;
4737
4792
  });
4738
- var BinaryOpSymbol$19 = $T($S($EXPECT($L62, fail, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
4793
+ var BinaryOpSymbol$19 = $T($S($EXPECT($L64, fail, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
4739
4794
  return "&&";
4740
4795
  });
4741
- var BinaryOpSymbol$20 = $EXPECT($L63, fail, 'BinaryOpSymbol "&&"');
4742
- var BinaryOpSymbol$21 = $T($S(CoffeeOfEnabled, $EXPECT($L64, fail, 'BinaryOpSymbol "of"'), NonIdContinue), function(value) {
4796
+ var BinaryOpSymbol$20 = $EXPECT($L65, fail, 'BinaryOpSymbol "&&"');
4797
+ var BinaryOpSymbol$21 = $T($S(CoffeeOfEnabled, $EXPECT($L66, fail, 'BinaryOpSymbol "of"'), NonIdContinue), function(value) {
4743
4798
  return "in";
4744
4799
  });
4745
- var BinaryOpSymbol$22 = $T($S($EXPECT($L65, fail, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
4800
+ var BinaryOpSymbol$22 = $T($S($EXPECT($L67, fail, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
4746
4801
  return "||";
4747
4802
  });
4748
- var BinaryOpSymbol$23 = $EXPECT($L66, fail, 'BinaryOpSymbol "||"');
4749
- var BinaryOpSymbol$24 = $EXPECT($L67, fail, 'BinaryOpSymbol "??"');
4750
- var BinaryOpSymbol$25 = $T($S(CoffeeBinaryExistentialEnabled, $EXPECT($L68, fail, 'BinaryOpSymbol "?"')), function(value) {
4803
+ var BinaryOpSymbol$23 = $EXPECT($L68, fail, 'BinaryOpSymbol "||"');
4804
+ var BinaryOpSymbol$24 = $EXPECT($L69, fail, 'BinaryOpSymbol "??"');
4805
+ var BinaryOpSymbol$25 = $T($S(CoffeeBinaryExistentialEnabled, $EXPECT($L70, fail, 'BinaryOpSymbol "?"')), function(value) {
4751
4806
  return "??";
4752
4807
  });
4753
- var BinaryOpSymbol$26 = $TS($S($EXPECT($L69, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
4808
+ var BinaryOpSymbol$26 = $TS($S($EXPECT($L71, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
4754
4809
  return $1;
4755
4810
  });
4756
- var BinaryOpSymbol$27 = $TS($S(CoffeeOfEnabled, $EXPECT($L70, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
4811
+ var BinaryOpSymbol$27 = $TS($S(CoffeeOfEnabled, $EXPECT($L72, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
4757
4812
  return {
4758
4813
  ref: module2.getIndexOfRef(),
4759
4814
  suffix: " >= 0"
4760
4815
  };
4761
4816
  });
4762
- var BinaryOpSymbol$28 = $TS($S(CoffeeOfEnabled, $EXPECT($L71, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L70, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
4817
+ var BinaryOpSymbol$28 = $TS($S(CoffeeOfEnabled, $EXPECT($L73, fail, 'BinaryOpSymbol "not"'), NonIdContinue, __, $EXPECT($L72, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
4763
4818
  return {
4764
4819
  ref: module2.getIndexOfRef(),
4765
4820
  suffix: " < 0"
4766
4821
  };
4767
4822
  });
4768
- var BinaryOpSymbol$29 = $TS($S($EXPECT($L70, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
4823
+ var BinaryOpSymbol$29 = $TS($S($EXPECT($L72, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
4769
4824
  return $1;
4770
4825
  });
4771
- var BinaryOpSymbol$30 = $EXPECT($L72, fail, 'BinaryOpSymbol "&"');
4772
- var BinaryOpSymbol$31 = $EXPECT($L73, fail, 'BinaryOpSymbol "^"');
4773
- var BinaryOpSymbol$32 = $EXPECT($L74, fail, 'BinaryOpSymbol "|"');
4826
+ var BinaryOpSymbol$30 = $EXPECT($L74, fail, 'BinaryOpSymbol "&"');
4827
+ var BinaryOpSymbol$31 = $EXPECT($L75, fail, 'BinaryOpSymbol "^"');
4828
+ var BinaryOpSymbol$32 = $EXPECT($L76, fail, 'BinaryOpSymbol "|"');
4774
4829
  function BinaryOpSymbol(state) {
4775
4830
  if (state.events) {
4776
4831
  const result = state.events.enter?.("BinaryOpSymbol", state);
@@ -4909,7 +4964,7 @@ ${input.slice(result.pos)}
4909
4964
  return result;
4910
4965
  }
4911
4966
  }
4912
- var EmptyStatement$0 = $T($S($Q(TrailingComment), $Y($EXPECT($L75, fail, 'EmptyStatement ";"'))), function(value) {
4967
+ var EmptyStatement$0 = $T($S($Q(TrailingComment), $Y($EXPECT($L77, fail, 'EmptyStatement ";"'))), function(value) {
4913
4968
  return { "type": "EmptyStatement", "children": value[0] };
4914
4969
  });
4915
4970
  function EmptyStatement(state) {
@@ -5707,7 +5762,7 @@ ${input.slice(result.pos)}
5707
5762
  return result;
5708
5763
  }
5709
5764
  }
5710
- var CoffeeForDeclaration$0 = $TS($S($E($S(__, $EXPECT($L76, fail, 'CoffeeForDeclaration "own"'))), ForBinding), function($skip, $loc, $0, $1, $2) {
5765
+ var CoffeeForDeclaration$0 = $TS($S($E($S(__, $EXPECT($L78, fail, 'CoffeeForDeclaration "own"'))), ForBinding), function($skip, $loc, $0, $1, $2) {
5711
5766
  var own = $1;
5712
5767
  var binding = $2;
5713
5768
  if (own) {
@@ -6244,7 +6299,7 @@ ${input.slice(result.pos)}
6244
6299
  return result;
6245
6300
  }
6246
6301
  }
6247
- var Finally$0 = $S(__, $EXPECT($L77, fail, 'Finally "finally"'), BracedBlock);
6302
+ var Finally$0 = $S(__, $EXPECT($L79, fail, 'Finally "finally"'), BracedBlock);
6248
6303
  function Finally(state) {
6249
6304
  if (state.events) {
6250
6305
  const result = state.events.enter?.("Finally", state);
@@ -6334,13 +6389,13 @@ ${input.slice(result.pos)}
6334
6389
  return result;
6335
6390
  }
6336
6391
  }
6337
- var KeywordStatement$0 = $T($S($EXPECT($L78, fail, 'KeywordStatement "break"'), NonIdContinue), function(value) {
6392
+ var KeywordStatement$0 = $T($S($EXPECT($L80, fail, 'KeywordStatement "break"'), NonIdContinue), function(value) {
6338
6393
  return { "type": "BreakStatement", "children": value };
6339
6394
  });
6340
- var KeywordStatement$1 = $T($S($EXPECT($L79, fail, 'KeywordStatement "continue"'), NonIdContinue), function(value) {
6395
+ var KeywordStatement$1 = $T($S($EXPECT($L81, fail, 'KeywordStatement "continue"'), NonIdContinue), function(value) {
6341
6396
  return { "type": "ContinueStatement", "children": value };
6342
6397
  });
6343
- var KeywordStatement$2 = $T($S($EXPECT($L80, fail, 'KeywordStatement "debugger"'), NonIdContinue), function(value) {
6398
+ var KeywordStatement$2 = $T($S($EXPECT($L82, fail, 'KeywordStatement "debugger"'), NonIdContinue), function(value) {
6344
6399
  return { "type": "DebuggerStatement", "children": value };
6345
6400
  });
6346
6401
  var KeywordStatement$3 = $T($S(Return, $E(MaybeNestedExpression)), function(value) {
@@ -6367,7 +6422,7 @@ ${input.slice(result.pos)}
6367
6422
  return result;
6368
6423
  }
6369
6424
  }
6370
- var DebuggerExpression$0 = $TS($S($EXPECT($L80, fail, 'DebuggerExpression "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6425
+ var DebuggerExpression$0 = $TS($S($EXPECT($L82, fail, 'DebuggerExpression "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
6371
6426
  return {
6372
6427
  type: "DebuggerExpression",
6373
6428
  children: ["(()=>{", $1, "})()"]
@@ -6439,7 +6494,7 @@ ${input.slice(result.pos)}
6439
6494
  return result;
6440
6495
  }
6441
6496
  }
6442
- var ImportDeclaration$0 = $T($S($EXPECT($L81, fail, 'ImportDeclaration "import type"'), NonIdContinue, __, ImportClause, __, FromClause), function(value) {
6497
+ var ImportDeclaration$0 = $T($S($EXPECT($L83, fail, 'ImportDeclaration "import type"'), NonIdContinue, __, ImportClause, __, FromClause), function(value) {
6443
6498
  return { "ts": true, "children": value };
6444
6499
  });
6445
6500
  var ImportDeclaration$1 = $S(Import, __, ImportClause, __, FromClause);
@@ -6739,7 +6794,7 @@ ${input.slice(result.pos)}
6739
6794
  return result;
6740
6795
  }
6741
6796
  }
6742
- var ExportDeclaration$0 = $S(Export, __, $EXPECT($L82, fail, 'ExportDeclaration "default"'), NonIdContinue, __, $C(HoistableDeclaration, ClassDeclaration, ExtendedExpression));
6797
+ var ExportDeclaration$0 = $S(Export, __, $EXPECT($L84, fail, 'ExportDeclaration "default"'), NonIdContinue, __, $C(HoistableDeclaration, ClassDeclaration, ExtendedExpression));
6743
6798
  var ExportDeclaration$1 = $S(Export, __, ExportFromClause, __, FromClause);
6744
6799
  var ExportDeclaration$2 = $S(Export, __, $C(NamedExports, VariableStatement, Declaration));
6745
6800
  function ExportDeclaration(state) {
@@ -6924,7 +6979,7 @@ ${input.slice(result.pos)}
6924
6979
  return result;
6925
6980
  }
6926
6981
  }
6927
- var ConstAssignment$0 = $TV($EXPECT($L83, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
6982
+ var ConstAssignment$0 = $TV($EXPECT($L85, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
6928
6983
  return { $loc, token: "=" };
6929
6984
  });
6930
6985
  function ConstAssignment(state) {
@@ -7483,7 +7538,7 @@ ${input.slice(result.pos)}
7483
7538
  }
7484
7539
  }
7485
7540
  var RegularExpressionLiteral$0 = HeregexLiteral;
7486
- var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L46, fail, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L46, fail, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
7541
+ var RegularExpressionLiteral$1 = $TV($TEXT($S($EXPECT($L48, fail, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L48, fail, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
7487
7542
  return { $loc, token: $1 };
7488
7543
  });
7489
7544
  function RegularExpressionLiteral(state) {
@@ -7551,7 +7606,6 @@ ${input.slice(result.pos)}
7551
7606
  var body = $2;
7552
7607
  var close = $3;
7553
7608
  var flags = $4;
7554
- debugger;
7555
7609
  let hasSubstitutions = body.some((part) => part.type === "Substitution");
7556
7610
  if (hasSubstitutions) {
7557
7611
  const result = [
@@ -7929,7 +7983,7 @@ ${input.slice(result.pos)}
7929
7983
  return result;
7930
7984
  }
7931
7985
  }
7932
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L84, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L85, fail, 'JSMultiLineComment "*/"')), $EXPECT($R35, fail, "JSMultiLineComment /./"))), $EXPECT($L85, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
7986
+ var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L86, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L87, fail, 'JSMultiLineComment "*/"')), $EXPECT($R35, fail, "JSMultiLineComment /./"))), $EXPECT($L87, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
7933
7987
  return { $loc, token: $1 };
7934
7988
  });
7935
7989
  function JSMultiLineComment(state) {
@@ -7971,7 +8025,7 @@ ${input.slice(result.pos)}
7971
8025
  return result;
7972
8026
  }
7973
8027
  }
7974
- var CoffeeMultiLineComment$0 = $TS($S($EXPECT($L86, fail, 'CoffeeMultiLineComment "###"'), $TEXT($Q($S($N($C($EXPECT($L86, fail, 'CoffeeMultiLineComment "###"'), $EXPECT($L85, fail, 'CoffeeMultiLineComment "*/"'))), $EXPECT($R35, fail, "CoffeeMultiLineComment /./")))), $EXPECT($L86, fail, 'CoffeeMultiLineComment "###"')), function($skip, $loc, $0, $1, $2, $3) {
8028
+ var CoffeeMultiLineComment$0 = $TS($S($EXPECT($L88, fail, 'CoffeeMultiLineComment "###"'), $TEXT($Q($S($N($C($EXPECT($L88, fail, 'CoffeeMultiLineComment "###"'), $EXPECT($L87, fail, 'CoffeeMultiLineComment "*/"'))), $EXPECT($R35, fail, "CoffeeMultiLineComment /./")))), $EXPECT($L88, fail, 'CoffeeMultiLineComment "###"')), function($skip, $loc, $0, $1, $2, $3) {
7975
8029
  return { $loc, token: `/*${$2}*/` };
7976
8030
  });
7977
8031
  function CoffeeMultiLineComment(state) {
@@ -7992,7 +8046,7 @@ ${input.slice(result.pos)}
7992
8046
  return result;
7993
8047
  }
7994
8048
  }
7995
- var InlineComment$0 = $TV($TEXT($S($EXPECT($L84, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L85, fail, 'InlineComment "*/"')), $EXPECT($R37, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L85, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
8049
+ var InlineComment$0 = $TV($TEXT($S($EXPECT($L86, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L87, fail, 'InlineComment "*/"')), $EXPECT($R37, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L87, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
7996
8050
  return { $loc, token: $1 };
7997
8051
  });
7998
8052
  function InlineComment(state) {
@@ -8075,7 +8129,7 @@ ${input.slice(result.pos)}
8075
8129
  var NonNewlineWhitespace$0 = $TR($EXPECT($R38, fail, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
8076
8130
  return { $loc, token: $0 };
8077
8131
  });
8078
- var NonNewlineWhitespace$1 = $T($S(CoffeeLineContinuationEnabled, $EXPECT($L87, fail, 'NonNewlineWhitespace "\\\\\\\\"'), EOL), function(value) {
8132
+ var NonNewlineWhitespace$1 = $T($S(CoffeeLineContinuationEnabled, $EXPECT($L89, fail, 'NonNewlineWhitespace "\\\\\\\\"'), EOL), function(value) {
8079
8133
  return "";
8080
8134
  });
8081
8135
  function NonNewlineWhitespace(state) {
@@ -8221,7 +8275,7 @@ ${input.slice(result.pos)}
8221
8275
  return result;
8222
8276
  }
8223
8277
  }
8224
- var Ampersand$0 = $TV($EXPECT($L72, fail, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
8278
+ var Ampersand$0 = $TV($EXPECT($L74, fail, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
8225
8279
  return { $loc, token: $1 };
8226
8280
  });
8227
8281
  function Ampersand(state) {
@@ -8242,7 +8296,7 @@ ${input.slice(result.pos)}
8242
8296
  return result;
8243
8297
  }
8244
8298
  }
8245
- var As$0 = $TS($S($EXPECT($L88, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8299
+ var As$0 = $TS($S($EXPECT($L90, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8246
8300
  return { $loc, token: $1 };
8247
8301
  });
8248
8302
  function As(state) {
@@ -8263,7 +8317,7 @@ ${input.slice(result.pos)}
8263
8317
  return result;
8264
8318
  }
8265
8319
  }
8266
- var At$0 = $TV($EXPECT($L89, fail, 'At "@"'), function($skip, $loc, $0, $1) {
8320
+ var At$0 = $TV($EXPECT($L91, fail, 'At "@"'), function($skip, $loc, $0, $1) {
8267
8321
  return { $loc, token: $1 };
8268
8322
  });
8269
8323
  function At(state) {
@@ -8284,7 +8338,7 @@ ${input.slice(result.pos)}
8284
8338
  return result;
8285
8339
  }
8286
8340
  }
8287
- var Async$0 = $TV($EXPECT($L90, fail, 'Async "async"'), function($skip, $loc, $0, $1) {
8341
+ var Async$0 = $TV($EXPECT($L92, fail, 'Async "async"'), function($skip, $loc, $0, $1) {
8288
8342
  return { $loc, token: $1 };
8289
8343
  });
8290
8344
  function Async(state) {
@@ -8305,7 +8359,7 @@ ${input.slice(result.pos)}
8305
8359
  return result;
8306
8360
  }
8307
8361
  }
8308
- var Await$0 = $TS($S($EXPECT($L91, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8362
+ var Await$0 = $TS($S($EXPECT($L93, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8309
8363
  return { $loc, token: $1 };
8310
8364
  });
8311
8365
  function Await(state) {
@@ -8326,7 +8380,7 @@ ${input.slice(result.pos)}
8326
8380
  return result;
8327
8381
  }
8328
8382
  }
8329
- var Backtick$0 = $TV($EXPECT($L92, fail, 'Backtick "`"'), function($skip, $loc, $0, $1) {
8383
+ var Backtick$0 = $TV($EXPECT($L94, fail, 'Backtick "`"'), function($skip, $loc, $0, $1) {
8330
8384
  return { $loc, token: $1 };
8331
8385
  });
8332
8386
  function Backtick(state) {
@@ -8347,7 +8401,7 @@ ${input.slice(result.pos)}
8347
8401
  return result;
8348
8402
  }
8349
8403
  }
8350
- var By$0 = $TS($S($EXPECT($L93, fail, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8404
+ var By$0 = $TS($S($EXPECT($L95, fail, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8351
8405
  return { $loc, token: $1 };
8352
8406
  });
8353
8407
  function By(state) {
@@ -8368,7 +8422,7 @@ ${input.slice(result.pos)}
8368
8422
  return result;
8369
8423
  }
8370
8424
  }
8371
- var Case$0 = $TS($S($EXPECT($L94, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8425
+ var Case$0 = $TS($S($EXPECT($L96, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8372
8426
  return { $loc, token: $1 };
8373
8427
  });
8374
8428
  function Case(state) {
@@ -8389,7 +8443,7 @@ ${input.slice(result.pos)}
8389
8443
  return result;
8390
8444
  }
8391
8445
  }
8392
- var Catch$0 = $TV($EXPECT($L95, fail, 'Catch "catch"'), function($skip, $loc, $0, $1) {
8446
+ var Catch$0 = $TV($EXPECT($L97, fail, 'Catch "catch"'), function($skip, $loc, $0, $1) {
8393
8447
  return { $loc, token: $1 };
8394
8448
  });
8395
8449
  function Catch(state) {
@@ -8410,7 +8464,7 @@ ${input.slice(result.pos)}
8410
8464
  return result;
8411
8465
  }
8412
8466
  }
8413
- var Class$0 = $TV($EXPECT($L96, fail, 'Class "class"'), function($skip, $loc, $0, $1) {
8467
+ var Class$0 = $TV($EXPECT($L98, fail, 'Class "class"'), function($skip, $loc, $0, $1) {
8414
8468
  return { $loc, token: $1 };
8415
8469
  });
8416
8470
  function Class(state) {
@@ -8494,7 +8548,7 @@ ${input.slice(result.pos)}
8494
8548
  return result;
8495
8549
  }
8496
8550
  }
8497
- var CoffeeSubstitutionStart$0 = $TV($EXPECT($L97, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
8551
+ var CoffeeSubstitutionStart$0 = $TV($EXPECT($L99, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
8498
8552
  return { $loc, token: "${" };
8499
8553
  });
8500
8554
  function CoffeeSubstitutionStart(state) {
@@ -8515,7 +8569,7 @@ ${input.slice(result.pos)}
8515
8569
  return result;
8516
8570
  }
8517
8571
  }
8518
- var Colon$0 = $TV($EXPECT($L98, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
8572
+ var Colon$0 = $TV($EXPECT($L100, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
8519
8573
  return { $loc, token: $1 };
8520
8574
  });
8521
8575
  function Colon(state) {
@@ -8536,7 +8590,7 @@ ${input.slice(result.pos)}
8536
8590
  return result;
8537
8591
  }
8538
8592
  }
8539
- var ConstructorShorthand$0 = $TV($EXPECT($L89, fail, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
8593
+ var ConstructorShorthand$0 = $TV($EXPECT($L91, fail, 'ConstructorShorthand "@"'), function($skip, $loc, $0, $1) {
8540
8594
  return { $loc, token: "constructor" };
8541
8595
  });
8542
8596
  function ConstructorShorthand(state) {
@@ -8557,7 +8611,7 @@ ${input.slice(result.pos)}
8557
8611
  return result;
8558
8612
  }
8559
8613
  }
8560
- var Default$0 = $TS($S($EXPECT($L82, fail, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8614
+ var Default$0 = $TS($S($EXPECT($L84, fail, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8561
8615
  return { $loc, token: $1 };
8562
8616
  });
8563
8617
  function Default(state) {
@@ -8578,7 +8632,7 @@ ${input.slice(result.pos)}
8578
8632
  return result;
8579
8633
  }
8580
8634
  }
8581
- var Delete$0 = $TS($S($EXPECT($L99, fail, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8635
+ var Delete$0 = $TS($S($EXPECT($L101, fail, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8582
8636
  return { $loc, token: $1 };
8583
8637
  });
8584
8638
  function Delete(state) {
@@ -8599,7 +8653,7 @@ ${input.slice(result.pos)}
8599
8653
  return result;
8600
8654
  }
8601
8655
  }
8602
- var Do$0 = $TS($S($EXPECT($L100, fail, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8656
+ var Do$0 = $TS($S($EXPECT($L102, fail, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8603
8657
  return { $loc, token: $1 };
8604
8658
  });
8605
8659
  function Do(state) {
@@ -8641,7 +8695,7 @@ ${input.slice(result.pos)}
8641
8695
  return result;
8642
8696
  }
8643
8697
  }
8644
- var DotDot$0 = $TV($EXPECT($L101, fail, 'DotDot ".."'), function($skip, $loc, $0, $1) {
8698
+ var DotDot$0 = $TV($EXPECT($L103, fail, 'DotDot ".."'), function($skip, $loc, $0, $1) {
8645
8699
  return { $loc, token: $1 };
8646
8700
  });
8647
8701
  function DotDot(state) {
@@ -8662,7 +8716,7 @@ ${input.slice(result.pos)}
8662
8716
  return result;
8663
8717
  }
8664
8718
  }
8665
- var DotDotDot$0 = $TV($EXPECT($L102, fail, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
8719
+ var DotDotDot$0 = $TV($EXPECT($L104, fail, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
8666
8720
  return { $loc, token: $1 };
8667
8721
  });
8668
8722
  function DotDotDot(state) {
@@ -8683,7 +8737,7 @@ ${input.slice(result.pos)}
8683
8737
  return result;
8684
8738
  }
8685
8739
  }
8686
- var DoubleColon$0 = $TV($EXPECT($L103, fail, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
8740
+ var DoubleColon$0 = $TV($EXPECT($L105, fail, 'DoubleColon "::"'), function($skip, $loc, $0, $1) {
8687
8741
  return { $loc, token: $1 };
8688
8742
  });
8689
8743
  function DoubleColon(state) {
@@ -8704,7 +8758,7 @@ ${input.slice(result.pos)}
8704
8758
  return result;
8705
8759
  }
8706
8760
  }
8707
- var DoubleQuote$0 = $TV($EXPECT($L104, fail, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
8761
+ var DoubleQuote$0 = $TV($EXPECT($L106, fail, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
8708
8762
  return { $loc, token: $1 };
8709
8763
  });
8710
8764
  function DoubleQuote(state) {
@@ -8725,7 +8779,7 @@ ${input.slice(result.pos)}
8725
8779
  return result;
8726
8780
  }
8727
8781
  }
8728
- var Else$0 = $TV($EXPECT($L105, fail, 'Else "else"'), function($skip, $loc, $0, $1) {
8782
+ var Else$0 = $TV($EXPECT($L107, fail, 'Else "else"'), function($skip, $loc, $0, $1) {
8729
8783
  return { $loc, token: $1 };
8730
8784
  });
8731
8785
  function Else(state) {
@@ -8767,7 +8821,7 @@ ${input.slice(result.pos)}
8767
8821
  return result;
8768
8822
  }
8769
8823
  }
8770
- var Export$0 = $TS($S($EXPECT($L106, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8824
+ var Export$0 = $TS($S($EXPECT($L108, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8771
8825
  return { $loc, token: $1 };
8772
8826
  });
8773
8827
  function Export(state) {
@@ -8788,7 +8842,7 @@ ${input.slice(result.pos)}
8788
8842
  return result;
8789
8843
  }
8790
8844
  }
8791
- var For$0 = $TS($S($EXPECT($L107, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8845
+ var For$0 = $TS($S($EXPECT($L109, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8792
8846
  return { $loc, token: $1 };
8793
8847
  });
8794
8848
  function For(state) {
@@ -8809,7 +8863,7 @@ ${input.slice(result.pos)}
8809
8863
  return result;
8810
8864
  }
8811
8865
  }
8812
- var From$0 = $TS($S($EXPECT($L108, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8866
+ var From$0 = $TS($S($EXPECT($L110, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8813
8867
  return { $loc, token: $1 };
8814
8868
  });
8815
8869
  function From(state) {
@@ -8830,7 +8884,7 @@ ${input.slice(result.pos)}
8830
8884
  return result;
8831
8885
  }
8832
8886
  }
8833
- var Function$0 = $TV($EXPECT($L109, fail, 'Function "function"'), function($skip, $loc, $0, $1) {
8887
+ var Function$0 = $TV($EXPECT($L111, fail, 'Function "function"'), function($skip, $loc, $0, $1) {
8834
8888
  return { $loc, token: $1 };
8835
8889
  });
8836
8890
  function Function(state) {
@@ -8851,7 +8905,7 @@ ${input.slice(result.pos)}
8851
8905
  return result;
8852
8906
  }
8853
8907
  }
8854
- var GetOrSet$0 = $TS($S($C($EXPECT($L110, fail, 'GetOrSet "get"'), $EXPECT($L111, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8908
+ var GetOrSet$0 = $TS($S($C($EXPECT($L112, fail, 'GetOrSet "get"'), $EXPECT($L113, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8855
8909
  return { $loc, token: $1 };
8856
8910
  });
8857
8911
  function GetOrSet(state) {
@@ -8872,7 +8926,7 @@ ${input.slice(result.pos)}
8872
8926
  return result;
8873
8927
  }
8874
8928
  }
8875
- var If$0 = $TV($TEXT($S($EXPECT($L112, fail, 'If "if"'), $E($EXPECT($L3, fail, 'If " "')))), function($skip, $loc, $0, $1) {
8929
+ var If$0 = $TV($TEXT($S($EXPECT($L114, fail, 'If "if"'), $E($EXPECT($L3, fail, 'If " "')))), function($skip, $loc, $0, $1) {
8876
8930
  return { $loc, token: $1 };
8877
8931
  });
8878
8932
  function If(state) {
@@ -8914,7 +8968,7 @@ ${input.slice(result.pos)}
8914
8968
  return result;
8915
8969
  }
8916
8970
  }
8917
- var In$0 = $TV($EXPECT($L70, fail, 'In "in"'), function($skip, $loc, $0, $1) {
8971
+ var In$0 = $TV($EXPECT($L72, fail, 'In "in"'), function($skip, $loc, $0, $1) {
8918
8972
  return { $loc, token: $1 };
8919
8973
  });
8920
8974
  function In(state) {
@@ -8935,7 +8989,7 @@ ${input.slice(result.pos)}
8935
8989
  return result;
8936
8990
  }
8937
8991
  }
8938
- var LetOrConst$0 = $TV($C($EXPECT($L113, fail, 'LetOrConst "let"'), $EXPECT($L114, fail, 'LetOrConst "const"')), function($skip, $loc, $0, $1) {
8992
+ var LetOrConst$0 = $TV($C($EXPECT($L115, fail, 'LetOrConst "let"'), $EXPECT($L116, fail, 'LetOrConst "const"')), function($skip, $loc, $0, $1) {
8939
8993
  return { $loc, token: $1 };
8940
8994
  });
8941
8995
  function LetOrConst(state) {
@@ -8956,7 +9010,7 @@ ${input.slice(result.pos)}
8956
9010
  return result;
8957
9011
  }
8958
9012
  }
8959
- var Loop$0 = $TS($S($EXPECT($L115, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9013
+ var Loop$0 = $TS($S($EXPECT($L117, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
8960
9014
  return { $loc, token: "while(true)" };
8961
9015
  });
8962
9016
  function Loop(state) {
@@ -8977,7 +9031,7 @@ ${input.slice(result.pos)}
8977
9031
  return result;
8978
9032
  }
8979
9033
  }
8980
- var New$0 = $TV($EXPECT($L116, fail, 'New "new"'), function($skip, $loc, $0, $1) {
9034
+ var New$0 = $TV($EXPECT($L118, fail, 'New "new"'), function($skip, $loc, $0, $1) {
8981
9035
  return { $loc, token: $1 };
8982
9036
  });
8983
9037
  function New(state) {
@@ -8998,7 +9052,7 @@ ${input.slice(result.pos)}
8998
9052
  return result;
8999
9053
  }
9000
9054
  }
9001
- var Not$0 = $TS($S(CoffeeNotEnabled, $EXPECT($L71, fail, 'Not "not"'), NonIdContinue, $E($EXPECT($L3, fail, 'Not " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
9055
+ var Not$0 = $TS($S(CoffeeNotEnabled, $EXPECT($L73, fail, 'Not "not"'), NonIdContinue, $E($EXPECT($L3, fail, 'Not " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
9002
9056
  return { $loc, token: "!" };
9003
9057
  });
9004
9058
  function Not(state) {
@@ -9019,7 +9073,7 @@ ${input.slice(result.pos)}
9019
9073
  return result;
9020
9074
  }
9021
9075
  }
9022
- var Of$0 = $TV($EXPECT($L64, fail, 'Of "of"'), function($skip, $loc, $0, $1) {
9076
+ var Of$0 = $TV($EXPECT($L66, fail, 'Of "of"'), function($skip, $loc, $0, $1) {
9023
9077
  return { $loc, token: $1 };
9024
9078
  });
9025
9079
  function Of(state) {
@@ -9040,7 +9094,7 @@ ${input.slice(result.pos)}
9040
9094
  return result;
9041
9095
  }
9042
9096
  }
9043
- var OpenBrace$0 = $TV($EXPECT($L117, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
9097
+ var OpenBrace$0 = $TV($EXPECT($L119, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
9044
9098
  return { $loc, token: $1 };
9045
9099
  });
9046
9100
  function OpenBrace(state) {
@@ -9061,7 +9115,7 @@ ${input.slice(result.pos)}
9061
9115
  return result;
9062
9116
  }
9063
9117
  }
9064
- var OpenBracket$0 = $TV($EXPECT($L118, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
9118
+ var OpenBracket$0 = $TV($EXPECT($L120, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
9065
9119
  return { $loc, token: $1 };
9066
9120
  });
9067
9121
  function OpenBracket(state) {
@@ -9082,7 +9136,7 @@ ${input.slice(result.pos)}
9082
9136
  return result;
9083
9137
  }
9084
9138
  }
9085
- var OpenParen$0 = $TV($EXPECT($L119, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
9139
+ var OpenParen$0 = $TV($EXPECT($L121, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
9086
9140
  return { $loc, token: $1 };
9087
9141
  });
9088
9142
  function OpenParen(state) {
@@ -9103,7 +9157,7 @@ ${input.slice(result.pos)}
9103
9157
  return result;
9104
9158
  }
9105
9159
  }
9106
- var QuestionMark$0 = $TV($EXPECT($L68, fail, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
9160
+ var QuestionMark$0 = $TV($EXPECT($L70, fail, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
9107
9161
  return { $loc, token: $1 };
9108
9162
  });
9109
9163
  function QuestionMark(state) {
@@ -9124,7 +9178,7 @@ ${input.slice(result.pos)}
9124
9178
  return result;
9125
9179
  }
9126
9180
  }
9127
- var Return$0 = $TS($S($EXPECT($L120, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9181
+ var Return$0 = $TS($S($EXPECT($L122, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9128
9182
  return { $loc, token: $1 };
9129
9183
  });
9130
9184
  function Return(state) {
@@ -9145,7 +9199,7 @@ ${input.slice(result.pos)}
9145
9199
  return result;
9146
9200
  }
9147
9201
  }
9148
- var Semicolon$0 = $TV($EXPECT($L75, fail, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
9202
+ var Semicolon$0 = $TV($EXPECT($L77, fail, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
9149
9203
  return { $loc, token: $1 };
9150
9204
  });
9151
9205
  function Semicolon(state) {
@@ -9166,7 +9220,7 @@ ${input.slice(result.pos)}
9166
9220
  return result;
9167
9221
  }
9168
9222
  }
9169
- var SingleQuote$0 = $TV($EXPECT($L121, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
9223
+ var SingleQuote$0 = $TV($EXPECT($L123, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
9170
9224
  return { $loc, token: $1 };
9171
9225
  });
9172
9226
  function SingleQuote(state) {
@@ -9187,7 +9241,7 @@ ${input.slice(result.pos)}
9187
9241
  return result;
9188
9242
  }
9189
9243
  }
9190
- var Star$0 = $TV($EXPECT($L45, fail, 'Star "*"'), function($skip, $loc, $0, $1) {
9244
+ var Star$0 = $TV($EXPECT($L47, fail, 'Star "*"'), function($skip, $loc, $0, $1) {
9191
9245
  return { $loc, token: $1 };
9192
9246
  });
9193
9247
  function Star(state) {
@@ -9208,10 +9262,10 @@ ${input.slice(result.pos)}
9208
9262
  return result;
9209
9263
  }
9210
9264
  }
9211
- var Static$0 = $TV($EXPECT($L122, fail, 'Static "static"'), function($skip, $loc, $0, $1) {
9265
+ var Static$0 = $TV($EXPECT($L124, fail, 'Static "static"'), function($skip, $loc, $0, $1) {
9212
9266
  return { $loc, token: $1 };
9213
9267
  });
9214
- var Static$1 = $TS($S($EXPECT($L89, fail, 'Static "@"'), $N($EXPECT($L119, fail, 'Static "("'))), function($skip, $loc, $0, $1, $2) {
9268
+ var Static$1 = $TS($S($EXPECT($L91, fail, 'Static "@"'), $N($EXPECT($L121, fail, 'Static "("'))), function($skip, $loc, $0, $1, $2) {
9215
9269
  return { $loc, token: "static " };
9216
9270
  });
9217
9271
  function Static(state) {
@@ -9232,7 +9286,7 @@ ${input.slice(result.pos)}
9232
9286
  return result;
9233
9287
  }
9234
9288
  }
9235
- var SubstitutionStart$0 = $TV($EXPECT($L123, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
9289
+ var SubstitutionStart$0 = $TV($EXPECT($L125, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
9236
9290
  return { $loc, token: $1 };
9237
9291
  });
9238
9292
  function SubstitutionStart(state) {
@@ -9253,7 +9307,7 @@ ${input.slice(result.pos)}
9253
9307
  return result;
9254
9308
  }
9255
9309
  }
9256
- var Switch$0 = $TS($S($EXPECT($L124, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9310
+ var Switch$0 = $TS($S($EXPECT($L126, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9257
9311
  return { $loc, token: $1 };
9258
9312
  });
9259
9313
  function Switch(state) {
@@ -9274,7 +9328,7 @@ ${input.slice(result.pos)}
9274
9328
  return result;
9275
9329
  }
9276
9330
  }
9277
- var Target$0 = $TV($EXPECT($L125, fail, 'Target "target"'), function($skip, $loc, $0, $1) {
9331
+ var Target$0 = $TV($EXPECT($L127, fail, 'Target "target"'), function($skip, $loc, $0, $1) {
9278
9332
  return { $loc, token: $1 };
9279
9333
  });
9280
9334
  function Target(state) {
@@ -9295,7 +9349,7 @@ ${input.slice(result.pos)}
9295
9349
  return result;
9296
9350
  }
9297
9351
  }
9298
- var Then$0 = $TS($S(__, $EXPECT($L126, fail, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
9352
+ var Then$0 = $TS($S(__, $EXPECT($L128, fail, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
9299
9353
  return { $loc, token: "" };
9300
9354
  });
9301
9355
  function Then(state) {
@@ -9316,7 +9370,7 @@ ${input.slice(result.pos)}
9316
9370
  return result;
9317
9371
  }
9318
9372
  }
9319
- var Throw$0 = $TS($S($EXPECT($L127, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9373
+ var Throw$0 = $TS($S($EXPECT($L129, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9320
9374
  return { $loc, token: $1 };
9321
9375
  });
9322
9376
  function Throw(state) {
@@ -9337,7 +9391,7 @@ ${input.slice(result.pos)}
9337
9391
  return result;
9338
9392
  }
9339
9393
  }
9340
- var TripleDoubleQuote$0 = $TV($EXPECT($L128, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
9394
+ var TripleDoubleQuote$0 = $TV($EXPECT($L130, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
9341
9395
  return { $loc, token: "`" };
9342
9396
  });
9343
9397
  function TripleDoubleQuote(state) {
@@ -9358,7 +9412,7 @@ ${input.slice(result.pos)}
9358
9412
  return result;
9359
9413
  }
9360
9414
  }
9361
- var TripleSingleQuote$0 = $TV($EXPECT($L129, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
9415
+ var TripleSingleQuote$0 = $TV($EXPECT($L131, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
9362
9416
  return { $loc, token: "`" };
9363
9417
  });
9364
9418
  function TripleSingleQuote(state) {
@@ -9379,7 +9433,7 @@ ${input.slice(result.pos)}
9379
9433
  return result;
9380
9434
  }
9381
9435
  }
9382
- var TripleSlash$0 = $TV($EXPECT($L130, fail, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
9436
+ var TripleSlash$0 = $TV($EXPECT($L132, fail, 'TripleSlash "///"'), function($skip, $loc, $0, $1) {
9383
9437
  return { $loc, token: "/" };
9384
9438
  });
9385
9439
  function TripleSlash(state) {
@@ -9400,7 +9454,7 @@ ${input.slice(result.pos)}
9400
9454
  return result;
9401
9455
  }
9402
9456
  }
9403
- var TripleTick$0 = $TV($EXPECT($L131, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
9457
+ var TripleTick$0 = $TV($EXPECT($L133, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
9404
9458
  return { $loc, token: "`" };
9405
9459
  });
9406
9460
  function TripleTick(state) {
@@ -9421,7 +9475,7 @@ ${input.slice(result.pos)}
9421
9475
  return result;
9422
9476
  }
9423
9477
  }
9424
- var Try$0 = $TV($EXPECT($L132, fail, 'Try "try"'), function($skip, $loc, $0, $1) {
9478
+ var Try$0 = $TV($EXPECT($L134, fail, 'Try "try"'), function($skip, $loc, $0, $1) {
9425
9479
  return { $loc, token: $1 };
9426
9480
  });
9427
9481
  function Try(state) {
@@ -9442,7 +9496,7 @@ ${input.slice(result.pos)}
9442
9496
  return result;
9443
9497
  }
9444
9498
  }
9445
- var Typeof$0 = $TS($S($EXPECT($L133, fail, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9499
+ var Typeof$0 = $TS($S($EXPECT($L135, fail, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9446
9500
  return { $loc, token: $1 };
9447
9501
  });
9448
9502
  function Typeof(state) {
@@ -9463,7 +9517,7 @@ ${input.slice(result.pos)}
9463
9517
  return result;
9464
9518
  }
9465
9519
  }
9466
- var Unless$0 = $TV($EXPECT($L134, fail, 'Unless "unless"'), function($skip, $loc, $0, $1) {
9520
+ var Unless$0 = $TV($EXPECT($L136, fail, 'Unless "unless"'), function($skip, $loc, $0, $1) {
9467
9521
  return { $loc, token: $1 };
9468
9522
  });
9469
9523
  function Unless(state) {
@@ -9484,7 +9538,7 @@ ${input.slice(result.pos)}
9484
9538
  return result;
9485
9539
  }
9486
9540
  }
9487
- var Until$0 = $TS($S($EXPECT($L135, fail, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9541
+ var Until$0 = $TS($S($EXPECT($L137, fail, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9488
9542
  return { $loc, token: $1 };
9489
9543
  });
9490
9544
  function Until(state) {
@@ -9505,7 +9559,7 @@ ${input.slice(result.pos)}
9505
9559
  return result;
9506
9560
  }
9507
9561
  }
9508
- var Var$0 = $TV($EXPECT($L136, fail, 'Var "var"'), function($skip, $loc, $0, $1) {
9562
+ var Var$0 = $TV($EXPECT($L138, fail, 'Var "var"'), function($skip, $loc, $0, $1) {
9509
9563
  return { $loc, token: $1 };
9510
9564
  });
9511
9565
  function Var(state) {
@@ -9526,7 +9580,7 @@ ${input.slice(result.pos)}
9526
9580
  return result;
9527
9581
  }
9528
9582
  }
9529
- var Void$0 = $TS($S($EXPECT($L137, fail, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9583
+ var Void$0 = $TS($S($EXPECT($L139, fail, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9530
9584
  return { $loc, token: $1 };
9531
9585
  });
9532
9586
  function Void(state) {
@@ -9547,7 +9601,7 @@ ${input.slice(result.pos)}
9547
9601
  return result;
9548
9602
  }
9549
9603
  }
9550
- var When$0 = $TS($S($EXPECT($L138, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9604
+ var When$0 = $TS($S($EXPECT($L140, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9551
9605
  return { $loc, token: "case" };
9552
9606
  });
9553
9607
  function When(state) {
@@ -9568,7 +9622,7 @@ ${input.slice(result.pos)}
9568
9622
  return result;
9569
9623
  }
9570
9624
  }
9571
- var While$0 = $TS($S($EXPECT($L139, fail, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9625
+ var While$0 = $TS($S($EXPECT($L141, fail, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9572
9626
  return { $loc, token: $1 };
9573
9627
  });
9574
9628
  function While(state) {
@@ -9589,7 +9643,7 @@ ${input.slice(result.pos)}
9589
9643
  return result;
9590
9644
  }
9591
9645
  }
9592
- var Yield$0 = $TS($S($EXPECT($L140, fail, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9646
+ var Yield$0 = $TS($S($EXPECT($L142, fail, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
9593
9647
  return { $loc, token: $1 };
9594
9648
  });
9595
9649
  function Yield(state) {
@@ -9635,7 +9689,7 @@ ${input.slice(result.pos)}
9635
9689
  return result;
9636
9690
  }
9637
9691
  }
9638
- var JSXSelfClosingElement$0 = $S($EXPECT($L4, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L141, fail, 'JSXSelfClosingElement "/>"'));
9692
+ var JSXSelfClosingElement$0 = $S($EXPECT($L4, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L143, fail, 'JSXSelfClosingElement "/>"'));
9639
9693
  function JSXSelfClosingElement(state) {
9640
9694
  if (state.events) {
9641
9695
  const result = state.events.enter?.("JSXSelfClosingElement", state);
@@ -9654,7 +9708,7 @@ ${input.slice(result.pos)}
9654
9708
  return result;
9655
9709
  }
9656
9710
  }
9657
- var JSXOpeningElement$0 = $S($EXPECT($L4, fail, 'JSXOpeningElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L55, fail, 'JSXOpeningElement ">"'));
9711
+ var JSXOpeningElement$0 = $S($EXPECT($L4, fail, 'JSXOpeningElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L57, fail, 'JSXOpeningElement ">"'));
9658
9712
  function JSXOpeningElement(state) {
9659
9713
  if (state.events) {
9660
9714
  const result = state.events.enter?.("JSXOpeningElement", state);
@@ -9673,7 +9727,7 @@ ${input.slice(result.pos)}
9673
9727
  return result;
9674
9728
  }
9675
9729
  }
9676
- var JSXClosingElement$0 = $S($EXPECT($L142, fail, 'JSXClosingElement "</"'), __, $TEXT(JSXElementName), __, $EXPECT($L55, fail, 'JSXClosingElement ">"'));
9730
+ var JSXClosingElement$0 = $S($EXPECT($L144, fail, 'JSXClosingElement "</"'), __, $TEXT(JSXElementName), __, $EXPECT($L57, fail, 'JSXClosingElement ">"'));
9677
9731
  function JSXClosingElement(state) {
9678
9732
  if (state.events) {
9679
9733
  const result = state.events.enter?.("JSXClosingElement", state);
@@ -9692,7 +9746,7 @@ ${input.slice(result.pos)}
9692
9746
  return result;
9693
9747
  }
9694
9748
  }
9695
- var JSXFragment$0 = $S($EXPECT($L143, fail, 'JSXFragment "<>"'), $E(JSXChildren), $EXPECT($L144, fail, 'JSXFragment "</>"'));
9749
+ var JSXFragment$0 = $S($EXPECT($L145, fail, 'JSXFragment "<>"'), $E(JSXChildren), $EXPECT($L146, fail, 'JSXFragment "</>"'));
9696
9750
  function JSXFragment(state) {
9697
9751
  if (state.events) {
9698
9752
  const result = state.events.enter?.("JSXFragment", state);
@@ -9949,7 +10003,7 @@ ${input.slice(result.pos)}
9949
10003
  return result;
9950
10004
  }
9951
10005
  }
9952
- var TypeDeclarationModifier$0 = $S($EXPECT($L145, fail, 'TypeDeclarationModifier "declare"'), NonIdContinue);
10006
+ var TypeDeclarationModifier$0 = $S($EXPECT($L147, fail, 'TypeDeclarationModifier "declare"'), NonIdContinue);
9953
10007
  var TypeDeclarationModifier$1 = Export;
9954
10008
  function TypeDeclarationModifier(state) {
9955
10009
  if (state.events) {
@@ -9991,7 +10045,7 @@ ${input.slice(result.pos)}
9991
10045
  return result;
9992
10046
  }
9993
10047
  }
9994
- var TypeKeyword$0 = $S($EXPECT($L146, fail, 'TypeKeyword "type"'), NonIdContinue);
10048
+ var TypeKeyword$0 = $S($EXPECT($L148, fail, 'TypeKeyword "type"'), NonIdContinue);
9995
10049
  function TypeKeyword(state) {
9996
10050
  if (state.events) {
9997
10051
  const result = state.events.enter?.("TypeKeyword", state);
@@ -10010,7 +10064,7 @@ ${input.slice(result.pos)}
10010
10064
  return result;
10011
10065
  }
10012
10066
  }
10013
- var Interface$0 = $S($EXPECT($L147, fail, 'Interface "interface"'), NonIdContinue);
10067
+ var Interface$0 = $S($EXPECT($L149, fail, 'Interface "interface"'), NonIdContinue);
10014
10068
  function Interface(state) {
10015
10069
  if (state.events) {
10016
10070
  const result = state.events.enter?.("Interface", state);
@@ -10029,7 +10083,7 @@ ${input.slice(result.pos)}
10029
10083
  return result;
10030
10084
  }
10031
10085
  }
10032
- var Namespace$0 = $S($EXPECT($L148, fail, 'Namespace "namespace"'), NonIdContinue);
10086
+ var Namespace$0 = $S($EXPECT($L150, fail, 'Namespace "namespace"'), NonIdContinue);
10033
10087
  function Namespace(state) {
10034
10088
  if (state.events) {
10035
10089
  const result = state.events.enter?.("Namespace", state);
@@ -10218,7 +10272,7 @@ ${input.slice(result.pos)}
10218
10272
  return result;
10219
10273
  }
10220
10274
  }
10221
- var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R45, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L149, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R46, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
10275
+ var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R45, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L151, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R46, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
10222
10276
  function TypeIndexSignature(state) {
10223
10277
  if (state.events) {
10224
10278
  const result = state.events.enter?.("TypeIndexSignature", state);
@@ -10278,7 +10332,7 @@ ${input.slice(result.pos)}
10278
10332
  return result;
10279
10333
  }
10280
10334
  }
10281
- var ReturnTypeSuffix$0 = $TS($S(__, Colon, $E($S(__, $EXPECT($L150, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2, $3, $4) {
10335
+ var ReturnTypeSuffix$0 = $TS($S(__, Colon, $E($S(__, $EXPECT($L152, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2, $3, $4) {
10282
10336
  const children = [...$1, $2];
10283
10337
  if ($3)
10284
10338
  children.push($3);
@@ -10307,7 +10361,7 @@ ${input.slice(result.pos)}
10307
10361
  return result;
10308
10362
  }
10309
10363
  }
10310
- var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L59, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
10364
+ var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L61, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
10311
10365
  if (!$2)
10312
10366
  return $1;
10313
10367
  return $0;
@@ -10413,9 +10467,9 @@ ${input.slice(result.pos)}
10413
10467
  return result;
10414
10468
  }
10415
10469
  }
10416
- var TypeUnaryOp$0 = $EXPECT($L151, fail, 'TypeUnaryOp "keyof"');
10417
- var TypeUnaryOp$1 = $EXPECT($L133, fail, 'TypeUnaryOp "typeof"');
10418
- var TypeUnaryOp$2 = $EXPECT($L152, fail, 'TypeUnaryOp "infer"');
10470
+ var TypeUnaryOp$0 = $EXPECT($L153, fail, 'TypeUnaryOp "keyof"');
10471
+ var TypeUnaryOp$1 = $EXPECT($L135, fail, 'TypeUnaryOp "typeof"');
10472
+ var TypeUnaryOp$2 = $EXPECT($L154, fail, 'TypeUnaryOp "infer"');
10419
10473
  function TypeUnaryOp(state) {
10420
10474
  if (state.events) {
10421
10475
  const result = state.events.enter?.("TypeUnaryOp", state);
@@ -10583,10 +10637,10 @@ ${input.slice(result.pos)}
10583
10637
  }
10584
10638
  }
10585
10639
  var TypeLiteral$0 = Literal;
10586
- var TypeLiteral$1 = $TV($EXPECT($L137, fail, 'TypeLiteral "void"'), function($skip, $loc, $0, $1) {
10640
+ var TypeLiteral$1 = $TV($EXPECT($L139, fail, 'TypeLiteral "void"'), function($skip, $loc, $0, $1) {
10587
10641
  return { $loc, token: "void" };
10588
10642
  });
10589
- var TypeLiteral$2 = $TV($EXPECT($L153, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
10643
+ var TypeLiteral$2 = $TV($EXPECT($L155, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
10590
10644
  return { $loc, token: "[]" };
10591
10645
  });
10592
10646
  function TypeLiteral(state) {
@@ -10607,10 +10661,10 @@ ${input.slice(result.pos)}
10607
10661
  return result;
10608
10662
  }
10609
10663
  }
10610
- var TypeBinaryOp$0 = $TV($EXPECT($L74, fail, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
10664
+ var TypeBinaryOp$0 = $TV($EXPECT($L76, fail, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
10611
10665
  return { $loc, token: "|" };
10612
10666
  });
10613
- var TypeBinaryOp$1 = $TV($EXPECT($L72, fail, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
10667
+ var TypeBinaryOp$1 = $TV($EXPECT($L74, fail, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
10614
10668
  return { $loc, token: "&" };
10615
10669
  });
10616
10670
  function TypeBinaryOp(state) {
@@ -10650,7 +10704,7 @@ ${input.slice(result.pos)}
10650
10704
  return result;
10651
10705
  }
10652
10706
  }
10653
- var TypeArguments$0 = $S(__, $EXPECT($L4, fail, 'TypeArguments "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L55, fail, 'TypeArguments ">"'));
10707
+ var TypeArguments$0 = $S(__, $EXPECT($L4, fail, 'TypeArguments "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L57, fail, 'TypeArguments ">"'));
10654
10708
  function TypeArguments(state) {
10655
10709
  if (state.events) {
10656
10710
  const result = state.events.enter?.("TypeArguments", state);
@@ -10669,7 +10723,7 @@ ${input.slice(result.pos)}
10669
10723
  return result;
10670
10724
  }
10671
10725
  }
10672
- var TypeParameters$0 = $TS($S(__, $EXPECT($L4, fail, 'TypeParameters "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L55, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
10726
+ var TypeParameters$0 = $TS($S(__, $EXPECT($L4, fail, 'TypeParameters "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L57, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
10673
10727
  return { ts: true, children: $0 };
10674
10728
  });
10675
10729
  function TypeParameters(state) {
@@ -10729,8 +10783,8 @@ ${input.slice(result.pos)}
10729
10783
  }
10730
10784
  }
10731
10785
  var TypeParameterDelimiter$0 = $S($Q(_), Comma);
10732
- var TypeParameterDelimiter$1 = $Y($S($Q(_), $EXPECT($L55, fail, 'TypeParameterDelimiter ">"')));
10733
- var TypeParameterDelimiter$2 = $TV($Y($S(__, $EXPECT($L55, fail, 'TypeParameterDelimiter ">"'))), function($skip, $loc, $0, $1) {
10786
+ var TypeParameterDelimiter$1 = $Y($S($Q(_), $EXPECT($L57, fail, 'TypeParameterDelimiter ">"')));
10787
+ var TypeParameterDelimiter$2 = $TV($Y($S(__, $EXPECT($L57, fail, 'TypeParameterDelimiter ">"'))), function($skip, $loc, $0, $1) {
10734
10788
  return { $loc, token: "," };
10735
10789
  });
10736
10790
  var TypeParameterDelimiter$3 = $TV($Y(EOS), function($skip, $loc, $0, $1) {
@@ -10799,7 +10853,7 @@ ${input.slice(result.pos)}
10799
10853
  return result;
10800
10854
  }
10801
10855
  }
10802
- var CivetPrologueContent$0 = $TS($S($EXPECT($L154, fail, 'CivetPrologueContent "civet"'), $Q(CivetOption), $EXPECT($R49, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3) {
10856
+ var CivetPrologueContent$0 = $TS($S($EXPECT($L156, fail, 'CivetPrologueContent "civet"'), $Q(CivetOption), $EXPECT($R49, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3) {
10803
10857
  var options = $2;
10804
10858
  return {
10805
10859
  type: "CivetPrologue",
@@ -11436,6 +11490,29 @@ ${input.slice(result.pos)}
11436
11490
  return result;
11437
11491
  }
11438
11492
  }
11493
+ var CoffeeWordAssignmentEnabled$0 = $TV($EXPECT($L14, fail, 'CoffeeWordAssignmentEnabled ""'), function($skip, $loc, $0, $1) {
11494
+ if (module2.config.coffeeWordAssignment)
11495
+ return;
11496
+ return $skip;
11497
+ });
11498
+ function CoffeeWordAssignmentEnabled(state) {
11499
+ if (state.events) {
11500
+ const result = state.events.enter?.("CoffeeWordAssignmentEnabled", state);
11501
+ if (result)
11502
+ return result.cache;
11503
+ }
11504
+ if (state.tokenize) {
11505
+ const result = $TOKEN("CoffeeWordAssignmentEnabled", state, CoffeeWordAssignmentEnabled$0(state));
11506
+ if (state.events)
11507
+ state.events.exit?.("CoffeeWordAssignmentEnabled", state, result);
11508
+ return result;
11509
+ } else {
11510
+ const result = CoffeeWordAssignmentEnabled$0(state);
11511
+ if (state.events)
11512
+ state.events.exit?.("CoffeeWordAssignmentEnabled", state, result);
11513
+ return result;
11514
+ }
11515
+ }
11439
11516
  var Reset$0 = $TV($EXPECT($L14, fail, 'Reset ""'), function($skip, $loc, $0, $1) {
11440
11517
  module2.indentLevels = [{
11441
11518
  level: 0,
@@ -11466,6 +11543,7 @@ ${input.slice(result.pos)}
11466
11543
  coffeeLineContinuation: false,
11467
11544
  coffeeNot: false,
11468
11545
  coffeeOf: false,
11546
+ coffeeWordAssignment: false,
11469
11547
  implicitReturns: true
11470
11548
  };
11471
11549
  let indexOfRef, hasPropRef;
@@ -11522,6 +11600,7 @@ ${input.slice(result.pos)}
11522
11600
  this.coffeeLineContinuation = true;
11523
11601
  this.coffeeNot = true;
11524
11602
  this.coffeeOf = true;
11603
+ this.coffeeWordAssignment = true;
11525
11604
  } else {
11526
11605
  this.autoVar = false;
11527
11606
  this.coffeeBinaryExistential = false;
@@ -11536,6 +11615,7 @@ ${input.slice(result.pos)}
11536
11615
  this.coffeeLineContinuation = false;
11537
11616
  this.coffeeNot = false;
11538
11617
  this.coffeeOf = false;
11618
+ this.coffeeWordAssignment = false;
11539
11619
  }
11540
11620
  }
11541
11621
  });
@@ -11998,39 +12078,77 @@ ${input.slice(result.pos)}
11998
12078
  }
11999
12079
  return nodes;
12000
12080
  }
12001
- function addImplicitReturns(statements) {
12002
- let fns = gatherRecursiveAll(statements, (n) => {
12003
- return n.type === "FunctionExpression" || n.type === "ArrowFunction";
12081
+ function processAtParams(f) {
12082
+ const { parameters, block } = f;
12083
+ if (!block)
12084
+ return;
12085
+ const { expressions } = block;
12086
+ if (!expressions)
12087
+ return;
12088
+ let indent;
12089
+ if (expressions.length === 0) {
12090
+ indent = "";
12091
+ } else {
12092
+ indent = expressions[0][0];
12093
+ }
12094
+ const thisAssignments = gatherRecursiveAll(parameters, (n) => n.type === "Ref").map((ref) => {
12095
+ const { base: name } = ref;
12096
+ return [indent, [`this.${name} = `, ref], ";\n"];
12004
12097
  });
12005
- fns.forEach(({ block, returnType }) => {
12006
- const isVoid = returnType === "void";
12007
- const isBlock = block?.type === "BlockStatement";
12008
- if (!isVoid && isBlock) {
12009
- insertReturn(block);
12098
+ block.expressions.unshift(...thisAssignments);
12099
+ }
12100
+ function adjustAtBindings(statements) {
12101
+ gatherRecursiveAll(statements, (n) => n.type === "AtBindingProperty").forEach((binding) => {
12102
+ const { ref } = binding;
12103
+ if (ref.names[0] !== ref.base) {
12104
+ binding.children.unshift(ref.base, ": ");
12010
12105
  }
12011
12106
  });
12012
- gatherRecursiveAll(statements, (n) => n.type === "MethodDefinition").forEach(({ children: [sig, block] }) => {
12013
- const isConstructor = sig.name === "constructor";
12014
- const isVoid = sig.returnType === "void";
12015
- const isSet = sig.modifier === "set";
12016
- if (!isConstructor && !isSet && !isVoid) {
12017
- insertReturn(block);
12107
+ }
12108
+ function processFunctions(statements) {
12109
+ gatherRecursiveAll(statements, (n) => {
12110
+ return n.type === "FunctionExpression" || n.type === "ArrowFunction";
12111
+ }).forEach((f) => {
12112
+ processAtParams(f);
12113
+ const { block, returnType } = f;
12114
+ if (module2.config.implicitReturns) {
12115
+ const isVoid = returnType === "void";
12116
+ const isBlock = block?.type === "BlockStatement";
12117
+ if (!isVoid && isBlock) {
12118
+ insertReturn(block);
12119
+ }
12018
12120
  }
12019
12121
  });
12020
- gatherRecursiveAll(statements, (n) => n.type === "SwitchExpression").forEach(({ block }) => {
12021
- insertReturn(block);
12122
+ gatherRecursiveAll(statements, (n) => n.type === "MethodDefinition").forEach((f) => {
12123
+ processAtParams(f);
12124
+ const { children: [sig, block] } = f;
12125
+ if (module2.config.implicitReturns) {
12126
+ const isConstructor = sig.name === "constructor";
12127
+ const isVoid = sig.returnType === "void";
12128
+ const isSet = sig.modifier === "set";
12129
+ if (!isConstructor && !isSet && !isVoid) {
12130
+ insertReturn(block);
12131
+ }
12132
+ }
12022
12133
  });
12023
12134
  }
12024
- module2.processProgram = function(statements) {
12135
+ function processSwitchExpressions(statements) {
12025
12136
  if (module2.config.implicitReturns) {
12026
- addImplicitReturns(statements);
12137
+ gatherRecursiveAll(statements, (n) => n.type === "SwitchExpression").forEach(({ block }) => {
12138
+ insertReturn(block);
12139
+ });
12027
12140
  }
12141
+ }
12142
+ module2.processProgram = function(statements) {
12143
+ processFunctions(statements);
12144
+ processSwitchExpressions(statements);
12028
12145
  gatherRecursiveAll(statements, (n) => n.type === "IterationExpression").forEach((e) => expressionizeIteration(e));
12029
12146
  statements.unshift(...module2.prelude);
12030
12147
  if (module2.config.autoVar) {
12031
12148
  createVarDecs(statements, []);
12032
12149
  }
12033
12150
  populateRefs(statements);
12151
+ adjustAtBindings(statements);
12034
12152
  };
12035
12153
  function findDecs(statements) {
12036
12154
  const declarationNames = gatherNodes(statements, (node) => {
@@ -12143,7 +12261,7 @@ ${input.slice(result.pos)}
12143
12261
  return result;
12144
12262
  }
12145
12263
  }
12146
- var Indent$0 = $TV($Q($C($EXPECT($L155, fail, 'Indent " "'), $EXPECT($L156, fail, 'Indent "\\\\t"'))), function($skip, $loc, $0, $1) {
12264
+ var Indent$0 = $TV($Q($C($EXPECT($L157, fail, 'Indent " "'), $EXPECT($L158, fail, 'Indent "\\\\t"'))), function($skip, $loc, $0, $1) {
12147
12265
  const level = $1.length;
12148
12266
  return {
12149
12267
  $loc,