@danielx/civet 0.4.19-pre.0 → 0.4.19-pre.1

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.
Files changed (3) hide show
  1. package/dist/browser.js +345 -207
  2. package/dist/main.js +345 -207
  3. package/package.json +1 -1
package/dist/main.js CHANGED
@@ -434,6 +434,7 @@ var require_parser = __commonJS({
434
434
  ConditionalExpression,
435
435
  ShortCircuitExpression,
436
436
  PrimaryExpression,
437
+ ParenthesizedExpression,
437
438
  ClassDeclaration,
438
439
  ClassExpression,
439
440
  ClassHeritage,
@@ -651,6 +652,7 @@ var require_parser = __commonJS({
651
652
  Async,
652
653
  Await,
653
654
  Backtick,
655
+ By,
654
656
  Case,
655
657
  Catch,
656
658
  Class,
@@ -783,8 +785,9 @@ var require_parser = __commonJS({
783
785
  InsertSpace,
784
786
  InsertDot,
785
787
  InsertBreak,
786
- CoffeeCommentEnabled,
787
788
  CoffeeBooleansEnabled,
789
+ CoffeeCommentEnabled,
790
+ CoffeeDoEnabled,
788
791
  CoffeeForLoopsEnabled,
789
792
  CoffeeInterpolationEnabled,
790
793
  CoffeeIsntEnabled,
@@ -890,70 +893,71 @@ var require_parser = __commonJS({
890
893
  var $L87 = $L("async");
891
894
  var $L88 = $L("await");
892
895
  var $L89 = $L("`");
893
- var $L90 = $L("case");
894
- var $L91 = $L("catch");
895
- var $L92 = $L("class");
896
- var $L93 = $L("#{");
897
- var $L94 = $L(":");
898
- var $L95 = $L("delete");
899
- var $L96 = $L("do");
900
- var $L97 = $L("..");
901
- var $L98 = $L("...");
902
- var $L99 = $L('"');
903
- var $L100 = $L("else");
904
- var $L101 = $L("export");
905
- var $L102 = $L("for");
906
- var $L103 = $L("from");
907
- var $L104 = $L("function");
908
- var $L105 = $L("get");
909
- var $L106 = $L("set");
910
- var $L107 = $L("if");
911
- var $L108 = $L(" ");
912
- var $L109 = $L("let");
913
- var $L110 = $L("const");
914
- var $L111 = $L("loop");
915
- var $L112 = $L("new");
916
- var $L113 = $L("not");
917
- var $L114 = $L("{");
918
- var $L115 = $L("[");
919
- var $L116 = $L("(");
920
- var $L117 = $L("?");
921
- var $L118 = $L("return");
922
- var $L119 = $L("'");
923
- var $L120 = $L("static");
924
- var $L121 = $L("${");
925
- var $L122 = $L("switch");
926
- var $L123 = $L("target");
927
- var $L124 = $L("then");
928
- var $L125 = $L("throw");
929
- var $L126 = $L('"""');
930
- var $L127 = $L("'''");
931
- var $L128 = $L("```");
932
- var $L129 = $L("try");
933
- var $L130 = $L("typeof");
934
- var $L131 = $L("unless");
935
- var $L132 = $L("until");
936
- var $L133 = $L("var");
937
- var $L134 = $L("void");
938
- var $L135 = $L("when");
939
- var $L136 = $L("while");
940
- var $L137 = $L("yield");
941
- var $L138 = $L("/>");
942
- var $L139 = $L("</");
943
- var $L140 = $L("<>");
944
- var $L141 = $L("</>");
945
- var $L142 = $L("declare");
946
- var $L143 = $L("type");
947
- var $L144 = $L("interface");
948
- var $L145 = $L("namespace");
949
- var $L146 = $L("readonly");
950
- var $L147 = $L("asserts");
951
- var $L148 = $L("keyof");
952
- var $L149 = $L("infer");
953
- var $L150 = $L("[]");
954
- var $L151 = $L("civet");
955
- var $L152 = $L(" ");
956
- var $L153 = $L(" ");
896
+ var $L90 = $L("by");
897
+ var $L91 = $L("case");
898
+ var $L92 = $L("catch");
899
+ var $L93 = $L("class");
900
+ var $L94 = $L("#{");
901
+ var $L95 = $L(":");
902
+ var $L96 = $L("delete");
903
+ var $L97 = $L("do");
904
+ var $L98 = $L("..");
905
+ var $L99 = $L("...");
906
+ var $L100 = $L('"');
907
+ var $L101 = $L("else");
908
+ var $L102 = $L("export");
909
+ var $L103 = $L("for");
910
+ var $L104 = $L("from");
911
+ var $L105 = $L("function");
912
+ var $L106 = $L("get");
913
+ var $L107 = $L("set");
914
+ var $L108 = $L("if");
915
+ var $L109 = $L(" ");
916
+ var $L110 = $L("let");
917
+ var $L111 = $L("const");
918
+ var $L112 = $L("loop");
919
+ var $L113 = $L("new");
920
+ var $L114 = $L("not");
921
+ var $L115 = $L("{");
922
+ var $L116 = $L("[");
923
+ var $L117 = $L("(");
924
+ var $L118 = $L("?");
925
+ var $L119 = $L("return");
926
+ var $L120 = $L("'");
927
+ var $L121 = $L("static");
928
+ var $L122 = $L("${");
929
+ var $L123 = $L("switch");
930
+ var $L124 = $L("target");
931
+ var $L125 = $L("then");
932
+ var $L126 = $L("throw");
933
+ var $L127 = $L('"""');
934
+ var $L128 = $L("'''");
935
+ var $L129 = $L("```");
936
+ var $L130 = $L("try");
937
+ var $L131 = $L("typeof");
938
+ var $L132 = $L("unless");
939
+ var $L133 = $L("until");
940
+ var $L134 = $L("var");
941
+ var $L135 = $L("void");
942
+ var $L136 = $L("when");
943
+ var $L137 = $L("while");
944
+ var $L138 = $L("yield");
945
+ var $L139 = $L("/>");
946
+ var $L140 = $L("</");
947
+ var $L141 = $L("<>");
948
+ var $L142 = $L("</>");
949
+ var $L143 = $L("declare");
950
+ var $L144 = $L("type");
951
+ var $L145 = $L("interface");
952
+ var $L146 = $L("namespace");
953
+ var $L147 = $L("readonly");
954
+ var $L148 = $L("asserts");
955
+ var $L149 = $L("keyof");
956
+ var $L150 = $L("infer");
957
+ var $L151 = $L("[]");
958
+ var $L152 = $L("civet");
959
+ var $L153 = $L(" ");
960
+ var $L154 = $L(" ");
957
961
  var $R0 = $R(new RegExp("(of|then|when)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
958
962
  var $R1 = $R(new RegExp("[&]", "suy"));
959
963
  var $R2 = $R(new RegExp("[!~+-]+", "suy"));
@@ -981,26 +985,27 @@ var require_parser = __commonJS({
981
985
  var $R24 = $R(new RegExp("(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+", "suy"));
982
986
  var $R25 = $R(new RegExp("(?:on|off|yes|no)(?!\\p{ID_Continue})", "suy"));
983
987
  var $R26 = $R(new RegExp("(?:isnt)(?!\\p{ID_Continue})", "suy"));
984
- var $R27 = $R(new RegExp("(?:and|as|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|loop|new|null|or|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})", "suy"));
985
- var $R28 = $R(new RegExp("\\/\\/[^\\r\\n]*", "suy"));
986
- var $R29 = $R(new RegExp(".", "suy"));
987
- var $R30 = $R(new RegExp("#(?!##)([^\\r\\n]*)", "suy"));
988
- var $R31 = $R(new RegExp("[^\\r\\n]", "suy"));
989
- var $R32 = $R(new RegExp("[ \\t]+", "suy"));
990
- var $R33 = $R(new RegExp("[\\s]+", "suy"));
991
- var $R34 = $R(new RegExp("(?!\\p{ID_Continue})", "suy"));
992
- var $R35 = $R(new RegExp("\\s", "suy"));
993
- var $R36 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
994
- var $R37 = $R(new RegExp('"[^"]*"', "suy"));
995
- var $R38 = $R(new RegExp("'[^']*'", "suy"));
996
- var $R39 = $R(new RegExp("[^{}<>]+", "suy"));
997
- var $R40 = $R(new RegExp("[+-]?", "suy"));
998
- var $R41 = $R(new RegExp("[+-]", "suy"));
999
- var $R42 = $R(new RegExp("#![^\\r\\n]*", "suy"));
1000
- var $R43 = $R(new RegExp("[\\t ]*", "suy"));
1001
- var $R44 = $R(new RegExp("[\\s]*", "suy"));
1002
- var $R45 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)", "suy"));
1003
- var $R46 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
988
+ var $R27 = $R(new RegExp("(?:by)(?!\\p{ID_Continue})", "suy"));
989
+ var $R28 = $R(new RegExp("(?:and|as|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|loop|new|null|or|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})", "suy"));
990
+ var $R29 = $R(new RegExp("\\/\\/[^\\r\\n]*", "suy"));
991
+ var $R30 = $R(new RegExp(".", "suy"));
992
+ var $R31 = $R(new RegExp("#(?!##)([^\\r\\n]*)", "suy"));
993
+ var $R32 = $R(new RegExp("[^\\r\\n]", "suy"));
994
+ var $R33 = $R(new RegExp("[ \\t]+", "suy"));
995
+ var $R34 = $R(new RegExp("[\\s]+", "suy"));
996
+ var $R35 = $R(new RegExp("(?!\\p{ID_Continue})", "suy"));
997
+ var $R36 = $R(new RegExp("\\s", "suy"));
998
+ var $R37 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
999
+ var $R38 = $R(new RegExp('"[^"]*"', "suy"));
1000
+ var $R39 = $R(new RegExp("'[^']*'", "suy"));
1001
+ var $R40 = $R(new RegExp("[^{}<>]+", "suy"));
1002
+ var $R41 = $R(new RegExp("[+-]?", "suy"));
1003
+ var $R42 = $R(new RegExp("[+-]", "suy"));
1004
+ var $R43 = $R(new RegExp("#![^\\r\\n]*", "suy"));
1005
+ var $R44 = $R(new RegExp("[\\t ]*", "suy"));
1006
+ var $R45 = $R(new RegExp("[\\s]*", "suy"));
1007
+ var $R46 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)", "suy"));
1008
+ var $R47 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
1004
1009
  var Program$0 = $TS($S(Reset, Init, __, $Q(TopLevelStatement), __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
1005
1010
  var statements = $4;
1006
1011
  module2.processProgram(statements);
@@ -1221,13 +1226,17 @@ var require_parser = __commonJS({
1221
1226
  return result;
1222
1227
  }
1223
1228
  });
1229
+ var UnaryExpression$1 = $TS($S(CoffeeDoEnabled, Do, __, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4) {
1230
+ var ws = $3;
1231
+ var exp = $4;
1232
+ module2.insertTrimmingSpace(ws, "");
1233
+ return ["(", ws, exp, ")()"];
1234
+ });
1224
1235
  function UnaryExpression(state) {
1225
- if (state.verbose)
1226
- console.log("ENTER:", "UnaryExpression");
1227
1236
  if (state.tokenize) {
1228
- return $TOKEN("UnaryExpression", state, UnaryExpression$0(state));
1237
+ return $TOKEN("UnaryExpression", state, UnaryExpression$0(state) || UnaryExpression$1(state));
1229
1238
  } else {
1230
- return UnaryExpression$0(state);
1239
+ return UnaryExpression$0(state) || UnaryExpression$1(state);
1231
1240
  }
1232
1241
  }
1233
1242
  var UnaryPostfix$0 = QuestionMark;
@@ -1471,7 +1480,7 @@ var require_parser = __commonJS({
1471
1480
  var PrimaryExpression$6 = ClassExpression;
1472
1481
  var PrimaryExpression$7 = RegularExpressionLiteral;
1473
1482
  var PrimaryExpression$8 = TemplateLiteral;
1474
- var PrimaryExpression$9 = $S(OpenParen, ExtendedExpression, __, CloseParen);
1483
+ var PrimaryExpression$9 = ParenthesizedExpression;
1475
1484
  var PrimaryExpression$10 = JSXElement;
1476
1485
  var PrimaryExpression$11 = JSXFragment;
1477
1486
  function PrimaryExpression(state) {
@@ -1481,6 +1490,23 @@ var require_parser = __commonJS({
1481
1490
  return PrimaryExpression$0(state) || PrimaryExpression$1(state) || PrimaryExpression$2(state) || PrimaryExpression$3(state) || PrimaryExpression$4(state) || PrimaryExpression$5(state) || PrimaryExpression$6(state) || PrimaryExpression$7(state) || PrimaryExpression$8(state) || PrimaryExpression$9(state) || PrimaryExpression$10(state) || PrimaryExpression$11(state);
1482
1491
  }
1483
1492
  }
1493
+ var ParenthesizedExpression$0 = $TS($S(OpenParen, ExtendedExpression, __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4) {
1494
+ var exp = $2;
1495
+ return {
1496
+ type: "ParenthesizedExpression",
1497
+ expression: exp,
1498
+ children: $0
1499
+ };
1500
+ });
1501
+ function ParenthesizedExpression(state) {
1502
+ if (state.verbose)
1503
+ console.log("ENTER:", "ParenthesizedExpression");
1504
+ if (state.tokenize) {
1505
+ return $TOKEN("ParenthesizedExpression", state, ParenthesizedExpression$0(state));
1506
+ } else {
1507
+ return ParenthesizedExpression$0(state);
1508
+ }
1509
+ }
1484
1510
  var ClassDeclaration$0 = ClassExpression;
1485
1511
  function ClassDeclaration(state) {
1486
1512
  if (state.verbose)
@@ -3171,14 +3197,8 @@ var require_parser = __commonJS({
3171
3197
  var UnlessClause$0 = $TS($S(Unless, Condition), function($skip, $loc, $0, $1, $2) {
3172
3198
  var kind = $1;
3173
3199
  var condition = $2;
3174
- condition.forEach((c) => {
3175
- if (!c)
3176
- return;
3177
- if (c.token === "(")
3178
- c.token = "(!(";
3179
- if (c.token === ")")
3180
- c.token = "))";
3181
- });
3200
+ condition.children.unshift("(!");
3201
+ condition.children.push(")");
3182
3202
  kind.token = "if";
3183
3203
  return {
3184
3204
  type: "IfStatement",
@@ -3261,7 +3281,9 @@ var require_parser = __commonJS({
3261
3281
  }
3262
3282
  }
3263
3283
  var IterationStatement$0 = LoopStatement;
3264
- var IterationStatement$1 = DoWhileStatement;
3284
+ var IterationStatement$1 = $T($S($N(CoffeeDoEnabled), DoWhileStatement), function(value) {
3285
+ return value[1];
3286
+ });
3265
3287
  var IterationStatement$2 = WhileStatement;
3266
3288
  var IterationStatement$3 = ForStatement;
3267
3289
  function IterationStatement(state) {
@@ -3325,14 +3347,14 @@ var require_parser = __commonJS({
3325
3347
  return WhileStatement$0(state);
3326
3348
  }
3327
3349
  }
3328
- var WhileClause$0 = $TS($S($C(While, Until), Condition), function($skip, $loc, $0, $1, $2) {
3350
+ var WhileClause$0 = $TS($S($C(While, Until), $Q(TrailingComment), Condition), function($skip, $loc, $0, $1, $2, $3) {
3329
3351
  var kind = $1;
3330
- var cond = $2;
3352
+ var ws = $2;
3353
+ var cond = $3;
3331
3354
  if (kind.token === "until") {
3332
- cond[1] = "(!(";
3333
- cond[cond.length - 1] = "))";
3334
3355
  kind.token = "while";
3335
- $0 = [kind, cond];
3356
+ cond.children.unshift("(!");
3357
+ cond.children.push(")");
3336
3358
  }
3337
3359
  return {
3338
3360
  type: "IterationStatement",
@@ -3422,20 +3444,30 @@ var require_parser = __commonJS({
3422
3444
  return WhenCondition$0(state);
3423
3445
  }
3424
3446
  }
3425
- var CoffeeForStatementParameters$0 = $TS($S($E($S(Await, __)), InsertOpenParen, CoffeeForDeclaration, __, $C(In, Of, From), ExtendedExpression, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
3447
+ var CoffeeForStatementParameters$0 = $TS($S($E($S(Await, __)), InsertOpenParen, CoffeeForDeclaration, __, $C(In, Of, From), ExtendedExpression, $E($S(__, By, ExtendedExpression)), InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
3448
+ var open = $2;
3426
3449
  var declaration = $3;
3427
3450
  var kind = $5;
3428
3451
  var exp = $6;
3452
+ var step = $7;
3453
+ var close = $8;
3429
3454
  let blockPrefix = [];
3455
+ const indent = "".padStart((module2.currentIndent + 1) * 2);
3430
3456
  if (kind.token === "from") {
3457
+ if (step) {
3458
+ throw new Error("Can't use 'by' with 'from' in CoffeeScript for loops");
3459
+ }
3431
3460
  kind.token = "of";
3432
3461
  } else if (kind.token === "of") {
3462
+ if (step) {
3463
+ throw new Error("Can't use 'by' with 'of' in CoffeeScript for loops");
3464
+ }
3433
3465
  module2.insertTrimmingSpace(declaration, "");
3434
3466
  module2.insertTrimmingSpace(exp, "");
3435
3467
  if (declaration.own) {
3436
- const indent = "".padStart((module2.currentIndent + 1) * 2);
3468
+ const indent2 = "".padStart((module2.currentIndent + 1) * 2);
3437
3469
  const hasPropRef = module2.getHasPropRef();
3438
- blockPrefix.push([indent, "if (!", hasPropRef, ".call(", exp, ", ", declaration, ")) continue\n"]);
3470
+ blockPrefix.push([indent2, "if (!", hasPropRef, ".call(", exp, ", ", declaration, ")) continue\n"]);
3439
3471
  }
3440
3472
  kind.token = "in ";
3441
3473
  } else if (kind.token === "in") {
@@ -3447,10 +3479,79 @@ var require_parser = __commonJS({
3447
3479
  type: "Ref",
3448
3480
  base: "len"
3449
3481
  };
3450
- const expRef = exp.type === "Identifier" ? exp : {
3451
- type: "Ref",
3452
- base: "ref"
3453
- };
3482
+ let expRef;
3483
+ switch (exp.type) {
3484
+ case "Identifier":
3485
+ expRef = exp;
3486
+ break;
3487
+ case "RangeExpression": {
3488
+ const { start, end, inclusive } = exp;
3489
+ const stepExp = step?.[2];
3490
+ let stepRef;
3491
+ if (stepExp) {
3492
+ module2.insertTrimmingSpace(stepExp, "");
3493
+ if (stepExp.type === "Literal") {
3494
+ stepRef = stepExp;
3495
+ } else {
3496
+ stepRef = {
3497
+ type: "Ref",
3498
+ base: "step"
3499
+ };
3500
+ }
3501
+ }
3502
+ let startRef, endRef;
3503
+ if (start.type === "Literal") {
3504
+ startRef = start;
3505
+ } else if (start.type === "Identifier") {
3506
+ startRef = start;
3507
+ } else {
3508
+ startRef = {
3509
+ type: "Ref",
3510
+ base: "ref"
3511
+ };
3512
+ }
3513
+ if (end.type === "Literal") {
3514
+ endRef = end;
3515
+ } else if (end.type === "Identifier") {
3516
+ endRef = end;
3517
+ } else {
3518
+ endRef = {
3519
+ type: "Ref",
3520
+ base: "ref"
3521
+ };
3522
+ }
3523
+ const startRefDec = startRef !== start ? [startRef, " = ", start, ", "] : [];
3524
+ const endRefDec = endRef !== end ? [endRef, " = ", end, ", "] : [];
3525
+ const varRef2 = declaration;
3526
+ const ascDec = stepRef ? stepRef !== stepExp ? [", step = ", stepExp] : [] : [", asc = ", startRef, " <= ", endRef];
3527
+ declaration = {
3528
+ type: "Declaration",
3529
+ children: ["let ", ...startRefDec, ...endRefDec, counterRef, " = ", varRef2, " = ", startRef, ...ascDec],
3530
+ names: []
3531
+ };
3532
+ blockPrefix.push([{
3533
+ type: "AssignmentExpression",
3534
+ children: [],
3535
+ names: varRef2.names
3536
+ }]);
3537
+ const counterPart = inclusive ? [counterRef, " <= ", endRef, " : ", counterRef, " >= ", endRef] : [counterRef, " < ", endRef, " : ", counterRef, " > ", endRef];
3538
+ const condition = stepRef ? [stepRef, " !== 0 && (", stepRef, " > 0 ? ", ...counterPart, ")"] : ["asc ? ", ...counterPart];
3539
+ const increment = stepRef ? [varRef2, " = ", counterRef, " += ", stepRef] : [varRef2, " = asc ? ++", counterRef, " : --", counterRef];
3540
+ return {
3541
+ declaration,
3542
+ children: [$1, open, declaration, "; ", ...condition, "; ", ...increment, close],
3543
+ blockPrefix
3544
+ };
3545
+ }
3546
+ default:
3547
+ expRef = {
3548
+ type: "Ref",
3549
+ base: "ref"
3550
+ };
3551
+ }
3552
+ if (step) {
3553
+ throw new Error("by clause not yet implement in non-range for in loops");
3554
+ }
3454
3555
  const varRef = declaration;
3455
3556
  module2.insertTrimmingSpace(exp, "");
3456
3557
  const expRefDec = expRef !== exp ? [expRef, " = ", exp, ", "] : [];
@@ -3459,7 +3560,6 @@ var require_parser = __commonJS({
3459
3560
  children: ["let ", ...expRefDec, counterRef, " = 0, ", lenRef, " = ", expRef, ".length"],
3460
3561
  names: []
3461
3562
  };
3462
- const indent = "".padStart((module2.currentIndent + 1) * 2);
3463
3563
  blockPrefix.push([{
3464
3564
  type: "AssignmentExpression",
3465
3565
  children: [indent, varRef, " = ", expRef, "[", counterRef, "]\n"],
@@ -3467,7 +3567,7 @@ var require_parser = __commonJS({
3467
3567
  }]);
3468
3568
  return {
3469
3569
  declaration,
3470
- children: [$1, $2, declaration, "; ", counterRef, " < ", lenRef, "; ", counterRef, "++", $7],
3570
+ children: [$1, open, declaration, "; ", counterRef, " < ", lenRef, "; ", counterRef, "++", close],
3471
3571
  blockPrefix
3472
3572
  };
3473
3573
  }
@@ -3804,10 +3904,18 @@ var require_parser = __commonJS({
3804
3904
  return CatchParameter$0(state) || CatchParameter$1(state);
3805
3905
  }
3806
3906
  }
3807
- var Condition$0 = $S(__, OpenParen, ExtendedExpression, __, CloseParen);
3808
- var Condition$1 = $TS($S($N(EOS), __, InsertOpenParen, ExpressionWithIndentedApplicationSuppressed, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
3809
- $0.shift();
3810
- return $0;
3907
+ var Condition$0 = $T($S(ParenthesizedExpression, $N($S($Q(TrailingComment), $C(BinaryOp, AssignmentOp)))), function(value) {
3908
+ return value[0];
3909
+ });
3910
+ var Condition$1 = $TS($S(InsertOpenParen, ExpressionWithIndentedApplicationSuppressed, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3) {
3911
+ var exp = $2;
3912
+ if (exp.type === "ParenthesizedExpression")
3913
+ return exp;
3914
+ module2.insertTrimmingSpace(exp, "");
3915
+ return {
3916
+ type: "ParenthesizedExpression",
3917
+ children: $0
3918
+ };
3811
3919
  });
3812
3920
  function Condition(state) {
3813
3921
  if (state.tokenize) {
@@ -4616,12 +4724,13 @@ var require_parser = __commonJS({
4616
4724
  }
4617
4725
  var ReservedWord$0 = $S(CoffeeBooleansEnabled, $R$0($EXPECT($R25, fail, "ReservedWord /(?:on|off|yes|no)(?!\\p{ID_Continue})/")));
4618
4726
  var ReservedWord$1 = $S(CoffeeIsntEnabled, $R$0($EXPECT($R26, fail, "ReservedWord /(?:isnt)(?!\\p{ID_Continue})/")));
4619
- var ReservedWord$2 = $R$0($EXPECT($R27, fail, "ReservedWord /(?:and|as|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|loop|new|null|or|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})/"));
4727
+ var ReservedWord$2 = $S(CoffeeForLoopsEnabled, $R$0($EXPECT($R27, fail, "ReservedWord /(?:by)(?!\\p{ID_Continue})/")));
4728
+ var ReservedWord$3 = $R$0($EXPECT($R28, fail, "ReservedWord /(?:and|as|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|false|finally|for|function|if|import|in|instanceof|interface|is|loop|new|null|or|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})/"));
4620
4729
  function ReservedWord(state) {
4621
4730
  if (state.tokenize) {
4622
- return $TOKEN("ReservedWord", state, ReservedWord$0(state) || ReservedWord$1(state) || ReservedWord$2(state));
4731
+ return $TOKEN("ReservedWord", state, ReservedWord$0(state) || ReservedWord$1(state) || ReservedWord$2(state) || ReservedWord$3(state));
4623
4732
  } else {
4624
- return ReservedWord$0(state) || ReservedWord$1(state) || ReservedWord$2(state);
4733
+ return ReservedWord$0(state) || ReservedWord$1(state) || ReservedWord$2(state) || ReservedWord$3(state);
4625
4734
  }
4626
4735
  }
4627
4736
  var Comment$0 = MultiLineComment;
@@ -4633,7 +4742,7 @@ var require_parser = __commonJS({
4633
4742
  return Comment$0(state) || Comment$1(state);
4634
4743
  }
4635
4744
  }
4636
- var SingleLineComment$0 = $TR($EXPECT($R28, fail, "SingleLineComment /\\/\\/[^\\r\\n]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
4745
+ var SingleLineComment$0 = $TR($EXPECT($R29, fail, "SingleLineComment /\\/\\/[^\\r\\n]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
4637
4746
  return { $loc, token: $0 };
4638
4747
  });
4639
4748
  var SingleLineComment$1 = $S(CoffeeCommentEnabled, CoffeeSingleLineComment);
@@ -4653,7 +4762,7 @@ var require_parser = __commonJS({
4653
4762
  return MultiLineComment$0(state) || MultiLineComment$1(state);
4654
4763
  }
4655
4764
  }
4656
- var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L83, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L84, fail, 'JSMultiLineComment "*/"')), $EXPECT($R29, fail, "JSMultiLineComment /./"))), $EXPECT($L84, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
4765
+ var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L83, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L84, fail, 'JSMultiLineComment "*/"')), $EXPECT($R30, fail, "JSMultiLineComment /./"))), $EXPECT($L84, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
4657
4766
  return { $loc, token: $1 };
4658
4767
  });
4659
4768
  function JSMultiLineComment(state) {
@@ -4665,7 +4774,7 @@ var require_parser = __commonJS({
4665
4774
  return JSMultiLineComment$0(state);
4666
4775
  }
4667
4776
  }
4668
- var CoffeeSingleLineComment$0 = $TR($EXPECT($R30, fail, "CoffeeSingleLineComment /#(?!##)([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
4777
+ var CoffeeSingleLineComment$0 = $TR($EXPECT($R31, fail, "CoffeeSingleLineComment /#(?!##)([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
4669
4778
  return { $loc, token: `//${$1}` };
4670
4779
  });
4671
4780
  function CoffeeSingleLineComment(state) {
@@ -4677,7 +4786,7 @@ var require_parser = __commonJS({
4677
4786
  return CoffeeSingleLineComment$0(state);
4678
4787
  }
4679
4788
  }
4680
- var CoffeeMultiLineComment$0 = $TS($S($EXPECT($L85, fail, 'CoffeeMultiLineComment "###"'), $TEXT($Q($S($N($C($EXPECT($L85, fail, 'CoffeeMultiLineComment "###"'), $EXPECT($L84, fail, 'CoffeeMultiLineComment "*/"'))), $EXPECT($R29, fail, "CoffeeMultiLineComment /./")))), $EXPECT($L85, fail, 'CoffeeMultiLineComment "###"')), function($skip, $loc, $0, $1, $2, $3) {
4789
+ var CoffeeMultiLineComment$0 = $TS($S($EXPECT($L85, fail, 'CoffeeMultiLineComment "###"'), $TEXT($Q($S($N($C($EXPECT($L85, fail, 'CoffeeMultiLineComment "###"'), $EXPECT($L84, fail, 'CoffeeMultiLineComment "*/"'))), $EXPECT($R30, fail, "CoffeeMultiLineComment /./")))), $EXPECT($L85, fail, 'CoffeeMultiLineComment "###"')), function($skip, $loc, $0, $1, $2, $3) {
4681
4790
  return { $loc, token: `/*${$2}*/` };
4682
4791
  });
4683
4792
  function CoffeeMultiLineComment(state) {
@@ -4689,7 +4798,7 @@ var require_parser = __commonJS({
4689
4798
  return CoffeeMultiLineComment$0(state);
4690
4799
  }
4691
4800
  }
4692
- var InlineComment$0 = $TV($TEXT($S($EXPECT($L83, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L84, fail, 'InlineComment "*/"')), $EXPECT($R31, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L84, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
4801
+ var InlineComment$0 = $TV($TEXT($S($EXPECT($L83, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L84, fail, 'InlineComment "*/"')), $EXPECT($R32, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L84, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
4693
4802
  return { $loc, token: $1 };
4694
4803
  });
4695
4804
  function InlineComment(state) {
@@ -4731,7 +4840,7 @@ var require_parser = __commonJS({
4731
4840
  return _$0(state);
4732
4841
  }
4733
4842
  }
4734
- var NonNewlineWhitespace$0 = $TR($EXPECT($R32, fail, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
4843
+ var NonNewlineWhitespace$0 = $TR($EXPECT($R33, fail, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
4735
4844
  return { $loc, token: $0 };
4736
4845
  });
4737
4846
  function NonNewlineWhitespace(state) {
@@ -4753,7 +4862,7 @@ var require_parser = __commonJS({
4753
4862
  return __$0(state);
4754
4863
  }
4755
4864
  }
4756
- var Whitespace$0 = $TR($EXPECT($R33, fail, "Whitespace /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
4865
+ var Whitespace$0 = $TR($EXPECT($R34, fail, "Whitespace /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
4757
4866
  return { $loc, token: $0 };
4758
4867
  });
4759
4868
  function Whitespace(state) {
@@ -4788,7 +4897,7 @@ var require_parser = __commonJS({
4788
4897
  return StatementDelimiter$0(state) || StatementDelimiter$1(state);
4789
4898
  }
4790
4899
  }
4791
- var NonIdContinue$0 = $R$0($EXPECT($R34, fail, "NonIdContinue /(?!\\p{ID_Continue})/"));
4900
+ var NonIdContinue$0 = $R$0($EXPECT($R35, fail, "NonIdContinue /(?!\\p{ID_Continue})/"));
4792
4901
  function NonIdContinue(state) {
4793
4902
  if (state.verbose)
4794
4903
  console.log("ENTER:", "NonIdContinue");
@@ -4870,7 +4979,19 @@ var require_parser = __commonJS({
4870
4979
  return Backtick$0(state);
4871
4980
  }
4872
4981
  }
4873
- var Case$0 = $TS($S($EXPECT($L90, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
4982
+ var By$0 = $TS($S($EXPECT($L90, fail, 'By "by"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
4983
+ return { $loc, token: $1 };
4984
+ });
4985
+ function By(state) {
4986
+ if (state.verbose)
4987
+ console.log("ENTER:", "By");
4988
+ if (state.tokenize) {
4989
+ return $TOKEN("By", state, By$0(state));
4990
+ } else {
4991
+ return By$0(state);
4992
+ }
4993
+ }
4994
+ var Case$0 = $TS($S($EXPECT($L91, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
4874
4995
  return { $loc, token: $1 };
4875
4996
  });
4876
4997
  function Case(state) {
@@ -4882,7 +5003,7 @@ var require_parser = __commonJS({
4882
5003
  return Case$0(state);
4883
5004
  }
4884
5005
  }
4885
- var Catch$0 = $TV($EXPECT($L91, fail, 'Catch "catch"'), function($skip, $loc, $0, $1) {
5006
+ var Catch$0 = $TV($EXPECT($L92, fail, 'Catch "catch"'), function($skip, $loc, $0, $1) {
4886
5007
  return { $loc, token: $1 };
4887
5008
  });
4888
5009
  function Catch(state) {
@@ -4894,7 +5015,7 @@ var require_parser = __commonJS({
4894
5015
  return Catch$0(state);
4895
5016
  }
4896
5017
  }
4897
- var Class$0 = $TV($EXPECT($L92, fail, 'Class "class"'), function($skip, $loc, $0, $1) {
5018
+ var Class$0 = $TV($EXPECT($L93, fail, 'Class "class"'), function($skip, $loc, $0, $1) {
4898
5019
  return { $loc, token: $1 };
4899
5020
  });
4900
5021
  function Class(state) {
@@ -4942,7 +5063,7 @@ var require_parser = __commonJS({
4942
5063
  return CloseParen$0(state);
4943
5064
  }
4944
5065
  }
4945
- var CoffeeSubstitutionStart$0 = $TV($EXPECT($L93, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
5066
+ var CoffeeSubstitutionStart$0 = $TV($EXPECT($L94, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
4946
5067
  return { $loc, token: "${" };
4947
5068
  });
4948
5069
  function CoffeeSubstitutionStart(state) {
@@ -4954,7 +5075,7 @@ var require_parser = __commonJS({
4954
5075
  return CoffeeSubstitutionStart$0(state);
4955
5076
  }
4956
5077
  }
4957
- var Colon$0 = $TV($EXPECT($L94, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
5078
+ var Colon$0 = $TV($EXPECT($L95, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
4958
5079
  return { $loc, token: $1 };
4959
5080
  });
4960
5081
  function Colon(state) {
@@ -4990,7 +5111,7 @@ var require_parser = __commonJS({
4990
5111
  return Default$0(state);
4991
5112
  }
4992
5113
  }
4993
- var Delete$0 = $TS($S($EXPECT($L95, fail, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5114
+ var Delete$0 = $TS($S($EXPECT($L96, fail, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
4994
5115
  return { $loc, token: $1 };
4995
5116
  });
4996
5117
  function Delete(state) {
@@ -5002,7 +5123,7 @@ var require_parser = __commonJS({
5002
5123
  return Delete$0(state);
5003
5124
  }
5004
5125
  }
5005
- var Do$0 = $TS($S($EXPECT($L96, fail, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5126
+ var Do$0 = $TS($S($EXPECT($L97, fail, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5006
5127
  return { $loc, token: $1 };
5007
5128
  });
5008
5129
  function Do(state) {
@@ -5026,7 +5147,7 @@ var require_parser = __commonJS({
5026
5147
  return Dot$0(state);
5027
5148
  }
5028
5149
  }
5029
- var DotDot$0 = $TV($EXPECT($L97, fail, 'DotDot ".."'), function($skip, $loc, $0, $1) {
5150
+ var DotDot$0 = $TV($EXPECT($L98, fail, 'DotDot ".."'), function($skip, $loc, $0, $1) {
5030
5151
  return { $loc, token: $1 };
5031
5152
  });
5032
5153
  function DotDot(state) {
@@ -5038,7 +5159,7 @@ var require_parser = __commonJS({
5038
5159
  return DotDot$0(state);
5039
5160
  }
5040
5161
  }
5041
- var DotDotDot$0 = $TV($EXPECT($L98, fail, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
5162
+ var DotDotDot$0 = $TV($EXPECT($L99, fail, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
5042
5163
  return { $loc, token: $1 };
5043
5164
  });
5044
5165
  function DotDotDot(state) {
@@ -5050,7 +5171,7 @@ var require_parser = __commonJS({
5050
5171
  return DotDotDot$0(state);
5051
5172
  }
5052
5173
  }
5053
- var DoubleQuote$0 = $TV($EXPECT($L99, fail, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
5174
+ var DoubleQuote$0 = $TV($EXPECT($L100, fail, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
5054
5175
  return { $loc, token: $1 };
5055
5176
  });
5056
5177
  function DoubleQuote(state) {
@@ -5062,7 +5183,7 @@ var require_parser = __commonJS({
5062
5183
  return DoubleQuote$0(state);
5063
5184
  }
5064
5185
  }
5065
- var Else$0 = $TV($EXPECT($L100, fail, 'Else "else"'), function($skip, $loc, $0, $1) {
5186
+ var Else$0 = $TV($EXPECT($L101, fail, 'Else "else"'), function($skip, $loc, $0, $1) {
5066
5187
  return { $loc, token: $1 };
5067
5188
  });
5068
5189
  function Else(state) {
@@ -5086,7 +5207,7 @@ var require_parser = __commonJS({
5086
5207
  return Equals$0(state);
5087
5208
  }
5088
5209
  }
5089
- var Export$0 = $TS($S($EXPECT($L101, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5210
+ var Export$0 = $TS($S($EXPECT($L102, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5090
5211
  return { $loc, token: $1 };
5091
5212
  });
5092
5213
  function Export(state) {
@@ -5098,7 +5219,7 @@ var require_parser = __commonJS({
5098
5219
  return Export$0(state);
5099
5220
  }
5100
5221
  }
5101
- var For$0 = $TS($S($EXPECT($L102, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5222
+ var For$0 = $TS($S($EXPECT($L103, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5102
5223
  return { $loc, token: $1 };
5103
5224
  });
5104
5225
  function For(state) {
@@ -5110,7 +5231,7 @@ var require_parser = __commonJS({
5110
5231
  return For$0(state);
5111
5232
  }
5112
5233
  }
5113
- var From$0 = $TS($S($EXPECT($L103, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5234
+ var From$0 = $TS($S($EXPECT($L104, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5114
5235
  return { $loc, token: $1 };
5115
5236
  });
5116
5237
  function From(state) {
@@ -5122,7 +5243,7 @@ var require_parser = __commonJS({
5122
5243
  return From$0(state);
5123
5244
  }
5124
5245
  }
5125
- var Function$0 = $TV($EXPECT($L104, fail, 'Function "function"'), function($skip, $loc, $0, $1) {
5246
+ var Function$0 = $TV($EXPECT($L105, fail, 'Function "function"'), function($skip, $loc, $0, $1) {
5126
5247
  return { $loc, token: $1 };
5127
5248
  });
5128
5249
  function Function(state) {
@@ -5134,7 +5255,7 @@ var require_parser = __commonJS({
5134
5255
  return Function$0(state);
5135
5256
  }
5136
5257
  }
5137
- var GetOrSet$0 = $TS($S($C($EXPECT($L105, fail, 'GetOrSet "get"'), $EXPECT($L106, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5258
+ var GetOrSet$0 = $TS($S($C($EXPECT($L106, fail, 'GetOrSet "get"'), $EXPECT($L107, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5138
5259
  return { $loc, token: $1 };
5139
5260
  });
5140
5261
  function GetOrSet(state) {
@@ -5146,7 +5267,7 @@ var require_parser = __commonJS({
5146
5267
  return GetOrSet$0(state);
5147
5268
  }
5148
5269
  }
5149
- var If$0 = $TV($TEXT($S($EXPECT($L107, fail, 'If "if"'), $E($EXPECT($L108, fail, 'If " "')))), function($skip, $loc, $0, $1) {
5270
+ var If$0 = $TV($TEXT($S($EXPECT($L108, fail, 'If "if"'), $E($EXPECT($L109, fail, 'If " "')))), function($skip, $loc, $0, $1) {
5150
5271
  return { $loc, token: $1 };
5151
5272
  });
5152
5273
  function If(state) {
@@ -5158,7 +5279,7 @@ var require_parser = __commonJS({
5158
5279
  return If$0(state);
5159
5280
  }
5160
5281
  }
5161
- var Import$0 = $TS($S($EXPECT($L11, fail, 'Import "import"'), $Y($EXPECT($R35, fail, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
5282
+ var Import$0 = $TS($S($EXPECT($L11, fail, 'Import "import"'), $Y($EXPECT($R36, fail, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
5162
5283
  return { $loc, token: $1 };
5163
5284
  });
5164
5285
  function Import(state) {
@@ -5182,7 +5303,7 @@ var require_parser = __commonJS({
5182
5303
  return In$0(state);
5183
5304
  }
5184
5305
  }
5185
- var LetOrConst$0 = $TV($C($EXPECT($L109, fail, 'LetOrConst "let"'), $EXPECT($L110, fail, 'LetOrConst "const"')), function($skip, $loc, $0, $1) {
5306
+ var LetOrConst$0 = $TV($C($EXPECT($L110, fail, 'LetOrConst "let"'), $EXPECT($L111, fail, 'LetOrConst "const"')), function($skip, $loc, $0, $1) {
5186
5307
  return { $loc, token: $1 };
5187
5308
  });
5188
5309
  function LetOrConst(state) {
@@ -5194,7 +5315,7 @@ var require_parser = __commonJS({
5194
5315
  return LetOrConst$0(state);
5195
5316
  }
5196
5317
  }
5197
- var Loop$0 = $TS($S($EXPECT($L111, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5318
+ var Loop$0 = $TS($S($EXPECT($L112, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5198
5319
  return { $loc, token: "while(true)" };
5199
5320
  });
5200
5321
  function Loop(state) {
@@ -5206,7 +5327,7 @@ var require_parser = __commonJS({
5206
5327
  return Loop$0(state);
5207
5328
  }
5208
5329
  }
5209
- var New$0 = $TV($EXPECT($L112, fail, 'New "new"'), function($skip, $loc, $0, $1) {
5330
+ var New$0 = $TV($EXPECT($L113, fail, 'New "new"'), function($skip, $loc, $0, $1) {
5210
5331
  return { $loc, token: $1 };
5211
5332
  });
5212
5333
  function New(state) {
@@ -5218,7 +5339,7 @@ var require_parser = __commonJS({
5218
5339
  return New$0(state);
5219
5340
  }
5220
5341
  }
5221
- var Not$0 = $TS($S(CoffeeNotEnabled, $EXPECT($L113, fail, 'Not "not"'), NonIdContinue, $E($EXPECT($L108, fail, 'Not " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
5342
+ var Not$0 = $TS($S(CoffeeNotEnabled, $EXPECT($L114, fail, 'Not "not"'), NonIdContinue, $E($EXPECT($L109, fail, 'Not " "'))), function($skip, $loc, $0, $1, $2, $3, $4) {
5222
5343
  return { $loc, token: "!" };
5223
5344
  });
5224
5345
  function Not(state) {
@@ -5242,7 +5363,7 @@ var require_parser = __commonJS({
5242
5363
  return Of$0(state);
5243
5364
  }
5244
5365
  }
5245
- var OpenBrace$0 = $TV($EXPECT($L114, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
5366
+ var OpenBrace$0 = $TV($EXPECT($L115, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
5246
5367
  return { $loc, token: $1 };
5247
5368
  });
5248
5369
  function OpenBrace(state) {
@@ -5254,7 +5375,7 @@ var require_parser = __commonJS({
5254
5375
  return OpenBrace$0(state);
5255
5376
  }
5256
5377
  }
5257
- var OpenBracket$0 = $TV($EXPECT($L115, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
5378
+ var OpenBracket$0 = $TV($EXPECT($L116, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
5258
5379
  return { $loc, token: $1 };
5259
5380
  });
5260
5381
  function OpenBracket(state) {
@@ -5266,7 +5387,7 @@ var require_parser = __commonJS({
5266
5387
  return OpenBracket$0(state);
5267
5388
  }
5268
5389
  }
5269
- var OpenParen$0 = $TV($EXPECT($L116, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
5390
+ var OpenParen$0 = $TV($EXPECT($L117, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
5270
5391
  return { $loc, token: $1 };
5271
5392
  });
5272
5393
  function OpenParen(state) {
@@ -5278,7 +5399,7 @@ var require_parser = __commonJS({
5278
5399
  return OpenParen$0(state);
5279
5400
  }
5280
5401
  }
5281
- var QuestionMark$0 = $TV($EXPECT($L117, fail, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
5402
+ var QuestionMark$0 = $TV($EXPECT($L118, fail, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
5282
5403
  return { $loc, token: $1 };
5283
5404
  });
5284
5405
  function QuestionMark(state) {
@@ -5290,7 +5411,7 @@ var require_parser = __commonJS({
5290
5411
  return QuestionMark$0(state);
5291
5412
  }
5292
5413
  }
5293
- var Return$0 = $TS($S($EXPECT($L118, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5414
+ var Return$0 = $TS($S($EXPECT($L119, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5294
5415
  return { $loc, token: $1 };
5295
5416
  });
5296
5417
  function Return(state) {
@@ -5314,7 +5435,7 @@ var require_parser = __commonJS({
5314
5435
  return Semicolon$0(state);
5315
5436
  }
5316
5437
  }
5317
- var SingleQuote$0 = $TV($EXPECT($L119, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
5438
+ var SingleQuote$0 = $TV($EXPECT($L120, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
5318
5439
  return { $loc, token: $1 };
5319
5440
  });
5320
5441
  function SingleQuote(state) {
@@ -5338,10 +5459,10 @@ var require_parser = __commonJS({
5338
5459
  return Star$0(state);
5339
5460
  }
5340
5461
  }
5341
- var Static$0 = $TV($EXPECT($L120, fail, 'Static "static"'), function($skip, $loc, $0, $1) {
5462
+ var Static$0 = $TV($EXPECT($L121, fail, 'Static "static"'), function($skip, $loc, $0, $1) {
5342
5463
  return { $loc, token: $1 };
5343
5464
  });
5344
- var Static$1 = $TS($S($EXPECT($L8, fail, 'Static "@"'), $N($EXPECT($L116, fail, 'Static "("'))), function($skip, $loc, $0, $1, $2) {
5465
+ var Static$1 = $TS($S($EXPECT($L8, fail, 'Static "@"'), $N($EXPECT($L117, fail, 'Static "("'))), function($skip, $loc, $0, $1, $2) {
5345
5466
  return { $loc, token: "static " };
5346
5467
  });
5347
5468
  function Static(state) {
@@ -5351,7 +5472,7 @@ var require_parser = __commonJS({
5351
5472
  return Static$0(state) || Static$1(state);
5352
5473
  }
5353
5474
  }
5354
- var SubstitutionStart$0 = $TV($EXPECT($L121, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
5475
+ var SubstitutionStart$0 = $TV($EXPECT($L122, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
5355
5476
  return { $loc, token: $1 };
5356
5477
  });
5357
5478
  function SubstitutionStart(state) {
@@ -5363,7 +5484,7 @@ var require_parser = __commonJS({
5363
5484
  return SubstitutionStart$0(state);
5364
5485
  }
5365
5486
  }
5366
- var Switch$0 = $TS($S($EXPECT($L122, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5487
+ var Switch$0 = $TS($S($EXPECT($L123, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5367
5488
  return { $loc, token: $1 };
5368
5489
  });
5369
5490
  function Switch(state) {
@@ -5375,7 +5496,7 @@ var require_parser = __commonJS({
5375
5496
  return Switch$0(state);
5376
5497
  }
5377
5498
  }
5378
- var Target$0 = $TV($EXPECT($L123, fail, 'Target "target"'), function($skip, $loc, $0, $1) {
5499
+ var Target$0 = $TV($EXPECT($L124, fail, 'Target "target"'), function($skip, $loc, $0, $1) {
5379
5500
  return { $loc, token: $1 };
5380
5501
  });
5381
5502
  function Target(state) {
@@ -5387,7 +5508,7 @@ var require_parser = __commonJS({
5387
5508
  return Target$0(state);
5388
5509
  }
5389
5510
  }
5390
- var Then$0 = $TS($S(__, $EXPECT($L124, fail, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
5511
+ var Then$0 = $TS($S(__, $EXPECT($L125, fail, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
5391
5512
  return { $loc, token: "" };
5392
5513
  });
5393
5514
  function Then(state) {
@@ -5399,7 +5520,7 @@ var require_parser = __commonJS({
5399
5520
  return Then$0(state);
5400
5521
  }
5401
5522
  }
5402
- var Throw$0 = $TS($S($EXPECT($L125, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5523
+ var Throw$0 = $TS($S($EXPECT($L126, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5403
5524
  return { $loc, token: $1 };
5404
5525
  });
5405
5526
  function Throw(state) {
@@ -5411,7 +5532,7 @@ var require_parser = __commonJS({
5411
5532
  return Throw$0(state);
5412
5533
  }
5413
5534
  }
5414
- var TripleDoubleQuote$0 = $TV($EXPECT($L126, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
5535
+ var TripleDoubleQuote$0 = $TV($EXPECT($L127, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
5415
5536
  return { $loc, token: "`" };
5416
5537
  });
5417
5538
  function TripleDoubleQuote(state) {
@@ -5423,7 +5544,7 @@ var require_parser = __commonJS({
5423
5544
  return TripleDoubleQuote$0(state);
5424
5545
  }
5425
5546
  }
5426
- var TripleSingleQuote$0 = $TV($EXPECT($L127, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
5547
+ var TripleSingleQuote$0 = $TV($EXPECT($L128, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
5427
5548
  return { $loc, token: "`" };
5428
5549
  });
5429
5550
  function TripleSingleQuote(state) {
@@ -5435,7 +5556,7 @@ var require_parser = __commonJS({
5435
5556
  return TripleSingleQuote$0(state);
5436
5557
  }
5437
5558
  }
5438
- var TripleTick$0 = $TV($EXPECT($L128, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
5559
+ var TripleTick$0 = $TV($EXPECT($L129, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
5439
5560
  return { $loc, token: "`" };
5440
5561
  });
5441
5562
  function TripleTick(state) {
@@ -5447,7 +5568,7 @@ var require_parser = __commonJS({
5447
5568
  return TripleTick$0(state);
5448
5569
  }
5449
5570
  }
5450
- var Try$0 = $TV($EXPECT($L129, fail, 'Try "try"'), function($skip, $loc, $0, $1) {
5571
+ var Try$0 = $TV($EXPECT($L130, fail, 'Try "try"'), function($skip, $loc, $0, $1) {
5451
5572
  return { $loc, token: $1 };
5452
5573
  });
5453
5574
  function Try(state) {
@@ -5459,7 +5580,7 @@ var require_parser = __commonJS({
5459
5580
  return Try$0(state);
5460
5581
  }
5461
5582
  }
5462
- var Typeof$0 = $TS($S($EXPECT($L130, fail, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5583
+ var Typeof$0 = $TS($S($EXPECT($L131, fail, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5463
5584
  return { $loc, token: $1 };
5464
5585
  });
5465
5586
  function Typeof(state) {
@@ -5471,7 +5592,7 @@ var require_parser = __commonJS({
5471
5592
  return Typeof$0(state);
5472
5593
  }
5473
5594
  }
5474
- var Unless$0 = $TV($EXPECT($L131, fail, 'Unless "unless"'), function($skip, $loc, $0, $1) {
5595
+ var Unless$0 = $TV($EXPECT($L132, fail, 'Unless "unless"'), function($skip, $loc, $0, $1) {
5475
5596
  return { $loc, token: $1 };
5476
5597
  });
5477
5598
  function Unless(state) {
@@ -5483,7 +5604,7 @@ var require_parser = __commonJS({
5483
5604
  return Unless$0(state);
5484
5605
  }
5485
5606
  }
5486
- var Until$0 = $TS($S($EXPECT($L132, fail, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5607
+ var Until$0 = $TS($S($EXPECT($L133, fail, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5487
5608
  return { $loc, token: $1 };
5488
5609
  });
5489
5610
  function Until(state) {
@@ -5495,7 +5616,7 @@ var require_parser = __commonJS({
5495
5616
  return Until$0(state);
5496
5617
  }
5497
5618
  }
5498
- var Var$0 = $TV($EXPECT($L133, fail, 'Var "var"'), function($skip, $loc, $0, $1) {
5619
+ var Var$0 = $TV($EXPECT($L134, fail, 'Var "var"'), function($skip, $loc, $0, $1) {
5499
5620
  return { $loc, token: $1 };
5500
5621
  });
5501
5622
  function Var(state) {
@@ -5507,7 +5628,7 @@ var require_parser = __commonJS({
5507
5628
  return Var$0(state);
5508
5629
  }
5509
5630
  }
5510
- var Void$0 = $TS($S($EXPECT($L134, fail, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5631
+ var Void$0 = $TS($S($EXPECT($L135, fail, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5511
5632
  return { $loc, token: $1 };
5512
5633
  });
5513
5634
  function Void(state) {
@@ -5519,7 +5640,7 @@ var require_parser = __commonJS({
5519
5640
  return Void$0(state);
5520
5641
  }
5521
5642
  }
5522
- var When$0 = $TS($S($EXPECT($L135, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5643
+ var When$0 = $TS($S($EXPECT($L136, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5523
5644
  return { $loc, token: "case" };
5524
5645
  });
5525
5646
  function When(state) {
@@ -5531,7 +5652,7 @@ var require_parser = __commonJS({
5531
5652
  return When$0(state);
5532
5653
  }
5533
5654
  }
5534
- var While$0 = $TS($S($EXPECT($L136, fail, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5655
+ var While$0 = $TS($S($EXPECT($L137, fail, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5535
5656
  return { $loc, token: $1 };
5536
5657
  });
5537
5658
  function While(state) {
@@ -5543,7 +5664,7 @@ var require_parser = __commonJS({
5543
5664
  return While$0(state);
5544
5665
  }
5545
5666
  }
5546
- var Yield$0 = $TS($S($EXPECT($L137, fail, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5667
+ var Yield$0 = $TS($S($EXPECT($L138, fail, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
5547
5668
  return { $loc, token: $1 };
5548
5669
  });
5549
5670
  function Yield(state) {
@@ -5569,7 +5690,7 @@ var require_parser = __commonJS({
5569
5690
  return JSXElement$0(state) || JSXElement$1(state);
5570
5691
  }
5571
5692
  }
5572
- var JSXSelfClosingElement$0 = $S($EXPECT($L4, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L138, fail, 'JSXSelfClosingElement "/>"'));
5693
+ var JSXSelfClosingElement$0 = $S($EXPECT($L4, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L139, fail, 'JSXSelfClosingElement "/>"'));
5573
5694
  function JSXSelfClosingElement(state) {
5574
5695
  if (state.verbose)
5575
5696
  console.log("ENTER:", "JSXSelfClosingElement");
@@ -5589,7 +5710,7 @@ var require_parser = __commonJS({
5589
5710
  return JSXOpeningElement$0(state);
5590
5711
  }
5591
5712
  }
5592
- var JSXClosingElement$0 = $S($EXPECT($L139, fail, 'JSXClosingElement "</"'), __, $TEXT(JSXElementName), __, $EXPECT($L56, fail, 'JSXClosingElement ">"'));
5713
+ var JSXClosingElement$0 = $S($EXPECT($L140, fail, 'JSXClosingElement "</"'), __, $TEXT(JSXElementName), __, $EXPECT($L56, fail, 'JSXClosingElement ">"'));
5593
5714
  function JSXClosingElement(state) {
5594
5715
  if (state.verbose)
5595
5716
  console.log("ENTER:", "JSXClosingElement");
@@ -5599,7 +5720,7 @@ var require_parser = __commonJS({
5599
5720
  return JSXClosingElement$0(state);
5600
5721
  }
5601
5722
  }
5602
- var JSXFragment$0 = $S($EXPECT($L140, fail, 'JSXFragment "<>"'), $E(JSXChildren), $EXPECT($L141, fail, 'JSXFragment "</>"'));
5723
+ var JSXFragment$0 = $S($EXPECT($L141, fail, 'JSXFragment "<>"'), $E(JSXChildren), $EXPECT($L142, fail, 'JSXFragment "</>"'));
5603
5724
  function JSXFragment(state) {
5604
5725
  if (state.verbose)
5605
5726
  console.log("ENTER:", "JSXFragment");
@@ -5619,7 +5740,7 @@ var require_parser = __commonJS({
5619
5740
  return JSXElementName$0(state);
5620
5741
  }
5621
5742
  }
5622
- var JSXIdentifierName$0 = $R$0($EXPECT($R36, fail, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
5743
+ var JSXIdentifierName$0 = $R$0($EXPECT($R37, fail, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
5623
5744
  function JSXIdentifierName(state) {
5624
5745
  if (state.verbose)
5625
5746
  console.log("ENTER:", "JSXIdentifierName");
@@ -5668,8 +5789,8 @@ var require_parser = __commonJS({
5668
5789
  return JSXAttributeInitializer$0(state);
5669
5790
  }
5670
5791
  }
5671
- var JSXAttributeValue$0 = $R$0($EXPECT($R37, fail, 'JSXAttributeValue /"[^"]*"/'));
5672
- var JSXAttributeValue$1 = $R$0($EXPECT($R38, fail, "JSXAttributeValue /'[^']*'/"));
5792
+ var JSXAttributeValue$0 = $R$0($EXPECT($R38, fail, 'JSXAttributeValue /"[^"]*"/'));
5793
+ var JSXAttributeValue$1 = $R$0($EXPECT($R39, fail, "JSXAttributeValue /'[^']*'/"));
5673
5794
  var JSXAttributeValue$2 = $S(OpenBrace, ExtendedExpression, __, CloseBrace);
5674
5795
  var JSXAttributeValue$3 = JSXElement;
5675
5796
  var JSXAttributeValue$4 = JSXFragment;
@@ -5701,7 +5822,7 @@ var require_parser = __commonJS({
5701
5822
  return JSXChild$0(state) || JSXChild$1(state) || JSXChild$2(state) || JSXChild$3(state);
5702
5823
  }
5703
5824
  }
5704
- var JSXText$0 = $R$0($EXPECT($R39, fail, "JSXText /[^{}<>]+/"));
5825
+ var JSXText$0 = $R$0($EXPECT($R40, fail, "JSXText /[^{}<>]+/"));
5705
5826
  function JSXText(state) {
5706
5827
  if (state.verbose)
5707
5828
  console.log("ENTER:", "JSXText");
@@ -5733,7 +5854,7 @@ var require_parser = __commonJS({
5733
5854
  return TypeDeclaration$0(state);
5734
5855
  }
5735
5856
  }
5736
- var TypeDeclarationModifier$0 = $S($EXPECT($L142, fail, 'TypeDeclarationModifier "declare"'), NonIdContinue);
5857
+ var TypeDeclarationModifier$0 = $S($EXPECT($L143, fail, 'TypeDeclarationModifier "declare"'), NonIdContinue);
5737
5858
  var TypeDeclarationModifier$1 = Export;
5738
5859
  function TypeDeclarationModifier(state) {
5739
5860
  if (state.tokenize) {
@@ -5753,7 +5874,7 @@ var require_parser = __commonJS({
5753
5874
  return TypeDeclarationRest$0(state) || TypeDeclarationRest$1(state) || TypeDeclarationRest$2(state) || TypeDeclarationRest$3(state);
5754
5875
  }
5755
5876
  }
5756
- var TypeKeyword$0 = $S($EXPECT($L143, fail, 'TypeKeyword "type"'), NonIdContinue);
5877
+ var TypeKeyword$0 = $S($EXPECT($L144, fail, 'TypeKeyword "type"'), NonIdContinue);
5757
5878
  function TypeKeyword(state) {
5758
5879
  if (state.verbose)
5759
5880
  console.log("ENTER:", "TypeKeyword");
@@ -5763,7 +5884,7 @@ var require_parser = __commonJS({
5763
5884
  return TypeKeyword$0(state);
5764
5885
  }
5765
5886
  }
5766
- var Interface$0 = $S($EXPECT($L144, fail, 'Interface "interface"'), NonIdContinue);
5887
+ var Interface$0 = $S($EXPECT($L145, fail, 'Interface "interface"'), NonIdContinue);
5767
5888
  function Interface(state) {
5768
5889
  if (state.verbose)
5769
5890
  console.log("ENTER:", "Interface");
@@ -5773,7 +5894,7 @@ var require_parser = __commonJS({
5773
5894
  return Interface$0(state);
5774
5895
  }
5775
5896
  }
5776
- var Namespace$0 = $S($EXPECT($L145, fail, 'Namespace "namespace"'), NonIdContinue);
5897
+ var Namespace$0 = $S($EXPECT($L146, fail, 'Namespace "namespace"'), NonIdContinue);
5777
5898
  function Namespace(state) {
5778
5899
  if (state.verbose)
5779
5900
  console.log("ENTER:", "Namespace");
@@ -5873,7 +5994,7 @@ var require_parser = __commonJS({
5873
5994
  return NestedTypeDeclaration$0(state);
5874
5995
  }
5875
5996
  }
5876
- var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R40, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L146, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R41, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
5997
+ var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R41, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L147, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R42, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
5877
5998
  function TypeIndexSignature(state) {
5878
5999
  if (state.verbose)
5879
6000
  console.log("ENTER:", "TypeIndexSignature");
@@ -5904,7 +6025,7 @@ var require_parser = __commonJS({
5904
6025
  return TypeSuffix$0(state);
5905
6026
  }
5906
6027
  }
5907
- var ReturnTypeSuffix$0 = $TS($S(__, Colon, $E($S(__, $EXPECT($L147, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2, $3, $4) {
6028
+ var ReturnTypeSuffix$0 = $TS($S(__, Colon, $E($S(__, $EXPECT($L148, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2, $3, $4) {
5908
6029
  if (!$3)
5909
6030
  $0.splice(2, 1);
5910
6031
  if ($1.length === 0)
@@ -5987,9 +6108,9 @@ var require_parser = __commonJS({
5987
6108
  return TypeUnarySuffix$0(state) || TypeUnarySuffix$1(state);
5988
6109
  }
5989
6110
  }
5990
- var TypeUnaryOp$0 = $EXPECT($L148, fail, 'TypeUnaryOp "keyof"');
5991
- var TypeUnaryOp$1 = $EXPECT($L130, fail, 'TypeUnaryOp "typeof"');
5992
- var TypeUnaryOp$2 = $EXPECT($L149, fail, 'TypeUnaryOp "infer"');
6111
+ var TypeUnaryOp$0 = $EXPECT($L149, fail, 'TypeUnaryOp "keyof"');
6112
+ var TypeUnaryOp$1 = $EXPECT($L131, fail, 'TypeUnaryOp "typeof"');
6113
+ var TypeUnaryOp$2 = $EXPECT($L150, fail, 'TypeUnaryOp "infer"');
5993
6114
  function TypeUnaryOp(state) {
5994
6115
  if (state.tokenize) {
5995
6116
  return $TOKEN("TypeUnaryOp", state, TypeUnaryOp$0(state) || TypeUnaryOp$1(state) || TypeUnaryOp$2(state));
@@ -6079,10 +6200,10 @@ var require_parser = __commonJS({
6079
6200
  }
6080
6201
  }
6081
6202
  var TypeLiteral$0 = Literal;
6082
- var TypeLiteral$1 = $TV($EXPECT($L134, fail, 'TypeLiteral "void"'), function($skip, $loc, $0, $1) {
6203
+ var TypeLiteral$1 = $TV($EXPECT($L135, fail, 'TypeLiteral "void"'), function($skip, $loc, $0, $1) {
6083
6204
  return { $loc, token: "void" };
6084
6205
  });
6085
- var TypeLiteral$2 = $TV($EXPECT($L150, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
6206
+ var TypeLiteral$2 = $TV($EXPECT($L151, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
6086
6207
  return { $loc, token: "[]" };
6087
6208
  });
6088
6209
  function TypeLiteral(state) {
@@ -6172,7 +6293,7 @@ var require_parser = __commonJS({
6172
6293
  return TypeParameterDelimiter$0(state) || TypeParameterDelimiter$1(state) || TypeParameterDelimiter$2(state) || TypeParameterDelimiter$3(state);
6173
6294
  }
6174
6295
  }
6175
- var Shebang$0 = $S($R$0($EXPECT($R42, fail, "Shebang /#![^\\r\\n]*/")), EOL);
6296
+ var Shebang$0 = $S($R$0($EXPECT($R43, fail, "Shebang /#![^\\r\\n]*/")), EOL);
6176
6297
  function Shebang(state) {
6177
6298
  if (state.verbose)
6178
6299
  console.log("ENTER:", "Shebang");
@@ -6182,11 +6303,11 @@ var require_parser = __commonJS({
6182
6303
  return Shebang$0(state);
6183
6304
  }
6184
6305
  }
6185
- var CivetPrologue$0 = $T($S($EXPECT($R43, fail, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, $TEXT(StatementDelimiter), EOS), function(value) {
6306
+ var CivetPrologue$0 = $T($S($EXPECT($R44, fail, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, $TEXT(StatementDelimiter), EOS), function(value) {
6186
6307
  var content = value[2];
6187
6308
  return content;
6188
6309
  });
6189
- var CivetPrologue$1 = $T($S($EXPECT($R43, fail, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, $TEXT(StatementDelimiter), EOS), function(value) {
6310
+ var CivetPrologue$1 = $T($S($EXPECT($R44, fail, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, $TEXT(StatementDelimiter), EOS), function(value) {
6190
6311
  var content = value[2];
6191
6312
  return content;
6192
6313
  });
@@ -6197,7 +6318,7 @@ var require_parser = __commonJS({
6197
6318
  return CivetPrologue$0(state) || CivetPrologue$1(state);
6198
6319
  }
6199
6320
  }
6200
- var CivetPrologueContent$0 = $TS($S($EXPECT($L151, fail, 'CivetPrologueContent "civet"'), $Q(CivetOption), $EXPECT($R44, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3) {
6321
+ var CivetPrologueContent$0 = $TS($S($EXPECT($L152, fail, 'CivetPrologueContent "civet"'), $Q(CivetOption), $EXPECT($R45, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3) {
6201
6322
  var options = $2;
6202
6323
  return {
6203
6324
  type: "CivetPrologue",
@@ -6214,7 +6335,7 @@ var require_parser = __commonJS({
6214
6335
  return CivetPrologueContent$0(state);
6215
6336
  }
6216
6337
  }
6217
- var CivetOption$0 = $TR($EXPECT($R45, fail, "CivetOption /\\s+([+-]?)([a-zA-Z0-9-]+)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
6338
+ var CivetOption$0 = $TR($EXPECT($R46, fail, "CivetOption /\\s+([+-]?)([a-zA-Z0-9-]+)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
6218
6339
  const optionName = $2.replace(/-+([a-z]?)/g, (_2, l) => {
6219
6340
  if (l)
6220
6341
  return l.toUpperCase();
@@ -6232,7 +6353,7 @@ var require_parser = __commonJS({
6232
6353
  return CivetOption$0(state);
6233
6354
  }
6234
6355
  }
6235
- var UnknownPrologue$0 = $S($R$0($EXPECT($R43, fail, "UnknownPrologue /[\\t ]*/")), BasicStringLiteral, $TEXT(StatementDelimiter), EOS);
6356
+ var UnknownPrologue$0 = $S($R$0($EXPECT($R44, fail, "UnknownPrologue /[\\t ]*/")), BasicStringLiteral, $TEXT(StatementDelimiter), EOS);
6236
6357
  function UnknownPrologue(state) {
6237
6358
  if (state.verbose)
6238
6359
  console.log("ENTER:", "UnknownPrologue");
@@ -6261,7 +6382,7 @@ var require_parser = __commonJS({
6261
6382
  return EOS$0(state);
6262
6383
  }
6263
6384
  }
6264
- var EOL$0 = $TR($EXPECT($R46, fail, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
6385
+ var EOL$0 = $TR($EXPECT($R47, fail, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
6265
6386
  return { $loc, token: $0 };
6266
6387
  });
6267
6388
  function EOL(state) {
@@ -6417,6 +6538,20 @@ var require_parser = __commonJS({
6417
6538
  return InsertBreak$0(state);
6418
6539
  }
6419
6540
  }
6541
+ var CoffeeBooleansEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeBooleansEnabled ""'), function($skip, $loc, $0, $1) {
6542
+ if (module2.config.coffeeBooleans)
6543
+ return;
6544
+ return $skip;
6545
+ });
6546
+ function CoffeeBooleansEnabled(state) {
6547
+ if (state.verbose)
6548
+ console.log("ENTER:", "CoffeeBooleansEnabled");
6549
+ if (state.tokenize) {
6550
+ return $TOKEN("CoffeeBooleansEnabled", state, CoffeeBooleansEnabled$0(state));
6551
+ } else {
6552
+ return CoffeeBooleansEnabled$0(state);
6553
+ }
6554
+ }
6420
6555
  var CoffeeCommentEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeCommentEnabled ""'), function($skip, $loc, $0, $1) {
6421
6556
  if (module2.config.coffeeComment)
6422
6557
  return;
@@ -6431,18 +6566,18 @@ var require_parser = __commonJS({
6431
6566
  return CoffeeCommentEnabled$0(state);
6432
6567
  }
6433
6568
  }
6434
- var CoffeeBooleansEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeBooleansEnabled ""'), function($skip, $loc, $0, $1) {
6435
- if (module2.config.coffeeBooleans)
6569
+ var CoffeeDoEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeDoEnabled ""'), function($skip, $loc, $0, $1) {
6570
+ if (module2.config.coffeeDo)
6436
6571
  return;
6437
6572
  return $skip;
6438
6573
  });
6439
- function CoffeeBooleansEnabled(state) {
6574
+ function CoffeeDoEnabled(state) {
6440
6575
  if (state.verbose)
6441
- console.log("ENTER:", "CoffeeBooleansEnabled");
6576
+ console.log("ENTER:", "CoffeeDoEnabled");
6442
6577
  if (state.tokenize) {
6443
- return $TOKEN("CoffeeBooleansEnabled", state, CoffeeBooleansEnabled$0(state));
6578
+ return $TOKEN("CoffeeDoEnabled", state, CoffeeDoEnabled$0(state));
6444
6579
  } else {
6445
- return CoffeeBooleansEnabled$0(state);
6580
+ return CoffeeDoEnabled$0(state);
6446
6581
  }
6447
6582
  }
6448
6583
  var CoffeeForLoopsEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeForLoopsEnabled ""'), function($skip, $loc, $0, $1) {
@@ -6523,6 +6658,7 @@ var require_parser = __commonJS({
6523
6658
  autoVar: false,
6524
6659
  coffeeBooleans: false,
6525
6660
  coffeeComment: false,
6661
+ coffeeDo: false,
6526
6662
  coffeeEq: false,
6527
6663
  coffeeForLoops: false,
6528
6664
  coffeeInterpolation: false,
@@ -6575,6 +6711,7 @@ var require_parser = __commonJS({
6575
6711
  this.autoVar = true;
6576
6712
  this.coffeeBooleans = true;
6577
6713
  this.coffeeComment = true;
6714
+ this.coffeeDo = true;
6578
6715
  this.coffeeEq = true;
6579
6716
  this.coffeeForLoops = true;
6580
6717
  this.coffeeInterpolation = true;
@@ -6585,6 +6722,7 @@ var require_parser = __commonJS({
6585
6722
  this.autoVar = false;
6586
6723
  this.coffeeBooleans = false;
6587
6724
  this.coffeeComment = false;
6725
+ this.coffeeDo = false;
6588
6726
  this.coffeeEq = false;
6589
6727
  this.coffeeForLoops = false;
6590
6728
  this.coffeeInterpolation = false;
@@ -6993,7 +7131,7 @@ var require_parser = __commonJS({
6993
7131
  return Init$0(state);
6994
7132
  }
6995
7133
  }
6996
- var Indent$0 = $TV($Q($C($EXPECT($L152, fail, 'Indent " "'), $EXPECT($L153, fail, 'Indent "\\\\t"'))), function($skip, $loc, $0, $1) {
7134
+ var Indent$0 = $TV($Q($C($EXPECT($L153, fail, 'Indent " "'), $EXPECT($L154, fail, 'Indent "\\\\t"'))), function($skip, $loc, $0, $1) {
6997
7135
  const level = $1.length;
6998
7136
  return {
6999
7137
  $loc,