@danielx/civet 0.2.5 → 0.2.8

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/README.md CHANGED
@@ -115,3 +115,11 @@ Things Added that CoffeeScript didn't
115
115
  console.log "hi"
116
116
  ```
117
117
  - TypeScript Types
118
+
119
+ Things Changed from ES6
120
+ ---
121
+
122
+ - Disallow no parens on single argument arrow function. `x => ...` must become `(x) => ...`
123
+ The reasoning is `x -> ` => `x(function() ...)` in CoffeeScript and having `->` and `=>`
124
+ behave more differently than they already do is bad. Passing an anonymous function to an
125
+ application without parens is also convenient.
package/dist/browser.js CHANGED
@@ -421,6 +421,7 @@ var Civet = (() => {
421
421
  AssignmentExpressionRest,
422
422
  YieldExpression,
423
423
  ArrowFunction,
424
+ FatArrow,
424
425
  ConciseBody,
425
426
  ConditionalExpression,
426
427
  ShortCircuitExpression,
@@ -475,6 +476,7 @@ var Civet = (() => {
475
476
  NestedElement,
476
477
  ArrayElementDelimiter,
477
478
  ElementList,
479
+ InlineElementList,
478
480
  ArrayElementExpression,
479
481
  Elision,
480
482
  ObjectLiteral,
@@ -576,6 +578,7 @@ var Civet = (() => {
576
578
  _,
577
579
  __,
578
580
  StatementDelimiter,
581
+ NonIdContinue,
579
582
  JSXElement,
580
583
  JSXSelfClosingElement,
581
584
  JSXOpeningElement,
@@ -773,42 +776,41 @@ var Civet = (() => {
773
776
  var $L131 = $L("[]");
774
777
  var $L132 = $L(" ");
775
778
  var $L133 = $L(" ");
776
- var $R0 = $R(new RegExp("(?!\\p{ID_Continue})", "suy"));
777
- var $R1 = $R(new RegExp("(of)(?!\\p{ID_Continue})", "suy"));
778
- var $R2 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
779
- var $R3 = $R(new RegExp("\\p{ID_Continue}", "suy"));
780
- var $R4 = $R(new RegExp("[!~+-]", "suy"));
781
- var $R5 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
782
- var $R6 = $R(new RegExp("\\d+(?:\\.\\d*)?", "suy"));
783
- var $R7 = $R(new RegExp("0[bB][01](?:[01]|_[01])*", "suy"));
784
- var $R8 = $R(new RegExp("0[oO][0-7](?:[0-7]|_[0-7])*", "suy"));
785
- var $R9 = $R(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*", "suy"));
786
- var $R10 = $R(new RegExp('[^"\\\\]+', "suy"));
787
- var $R11 = $R(new RegExp("[^'\\\\]+", "suy"));
788
- var $R12 = $R(new RegExp('(?:"(?!"")|\\\\.|[^"])+', "suy"));
789
- var $R13 = $R(new RegExp(".", "suy"));
790
- var $R14 = $R(new RegExp("[^*\\/\\r\\n]", "suy"));
791
- var $R15 = $R(new RegExp("[^\\/\\r\\n]+", "suy"));
792
- var $R16 = $R(new RegExp("(:?\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
793
- var $R17 = $R(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
794
- var $R18 = $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|new|null|or|return|super|switch|this|throw|true|try|typeof|unless|var|void|while|with|yield)(?!\\p{ID_Continue})", "suy"));
795
- var $R19 = $R(new RegExp("\\/\\/[^\\r\\n]*", "suy"));
796
- var $R20 = $R(new RegExp("#([^\\r\\n]*)", "suy"));
797
- var $R21 = $R(new RegExp("[^\\r\\n]", "suy"));
798
- var $R22 = $R(new RegExp("[\\t ]+", "suy"));
799
- var $R23 = $R(new RegExp("[\\s]+", "suy"));
800
- var $R24 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
801
- var $R25 = $R(new RegExp('"[^"]*"', "suy"));
802
- var $R26 = $R(new RegExp("'[^']*'", "suy"));
803
- var $R27 = $R(new RegExp("[^{}<>]+", "suy"));
804
- var $R28 = $R(new RegExp("type(?!\\p{ID_Continue})", "suy"));
805
- var $R29 = $R(new RegExp("interface(?!\\p{ID_Continue})", "suy"));
806
- var $R30 = $R(new RegExp("[+-]?", "suy"));
807
- var $R31 = $R(new RegExp("[+-]", "suy"));
808
- var $R32 = $R(new RegExp("#![^\\r\\n]*", "suy"));
809
- var $R33 = $R(new RegExp("[\\t ]*", "suy"));
810
- var $R34 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
811
- var $R35 = $R(new RegExp("$", "suy"));
779
+ var $R0 = $R(new RegExp("(of)(?!\\p{ID_Continue})", "suy"));
780
+ var $R1 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
781
+ var $R2 = $R(new RegExp("[!~+-]", "suy"));
782
+ var $R3 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
783
+ var $R4 = $R(new RegExp("\\d+(?:\\.\\d*)?", "suy"));
784
+ var $R5 = $R(new RegExp("0[bB][01](?:[01]|_[01])*", "suy"));
785
+ var $R6 = $R(new RegExp("0[oO][0-7](?:[0-7]|_[0-7])*", "suy"));
786
+ var $R7 = $R(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*", "suy"));
787
+ var $R8 = $R(new RegExp('[^"\\\\]+', "suy"));
788
+ var $R9 = $R(new RegExp("[^'\\\\]+", "suy"));
789
+ var $R10 = $R(new RegExp('(?:"(?!"")|\\\\.|[^"])+', "suy"));
790
+ var $R11 = $R(new RegExp(".", "suy"));
791
+ var $R12 = $R(new RegExp("[^*\\/\\r\\n]", "suy"));
792
+ var $R13 = $R(new RegExp("[^\\/\\r\\n]+", "suy"));
793
+ var $R14 = $R(new RegExp("(:?\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
794
+ var $R15 = $R(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
795
+ var $R16 = $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|new|null|or|return|super|switch|this|throw|true|try|typeof|unless|var|void|while|with|yield)(?!\\p{ID_Continue})", "suy"));
796
+ var $R17 = $R(new RegExp("\\/\\/[^\\r\\n]*", "suy"));
797
+ var $R18 = $R(new RegExp("#([^\\r\\n]*)", "suy"));
798
+ var $R19 = $R(new RegExp("[^\\r\\n]", "suy"));
799
+ var $R20 = $R(new RegExp("[\\t ]+", "suy"));
800
+ var $R21 = $R(new RegExp("[\\s]+", "suy"));
801
+ var $R22 = $R(new RegExp("(?!\\p{ID_Continue})", "suy"));
802
+ var $R23 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
803
+ var $R24 = $R(new RegExp('"[^"]*"', "suy"));
804
+ var $R25 = $R(new RegExp("'[^']*'", "suy"));
805
+ var $R26 = $R(new RegExp("[^{}<>]+", "suy"));
806
+ var $R27 = $R(new RegExp("type(?!\\p{ID_Continue})", "suy"));
807
+ var $R28 = $R(new RegExp("interface(?!\\p{ID_Continue})", "suy"));
808
+ var $R29 = $R(new RegExp("[+-]?", "suy"));
809
+ var $R30 = $R(new RegExp("[+-]", "suy"));
810
+ var $R31 = $R(new RegExp("#![^\\r\\n]*", "suy"));
811
+ var $R32 = $R(new RegExp("[\\t ]*", "suy"));
812
+ var $R33 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
813
+ var $R34 = $R(new RegExp("$", "suy"));
812
814
  var Program$0 = $S(Init, __, $Q(TopLevelStatement), __);
813
815
  function Program(state) {
814
816
  if (state.verbose)
@@ -922,7 +924,7 @@ var Civet = (() => {
922
924
  }
923
925
  }
924
926
  var UnaryPostfix$0 = $EXPECT($L3, fail, 'UnaryPostfix "?"');
925
- var UnaryPostfix$1 = $S(__, $EXPECT($L4, fail, 'UnaryPostfix "as"'), $R$0($EXPECT($R0, fail, "UnaryPostfix /(?!\\p{ID_Continue})/")), Type);
927
+ var UnaryPostfix$1 = $S(__, $EXPECT($L4, fail, 'UnaryPostfix "as"'), NonIdContinue, Type);
926
928
  function UnaryPostfix(state) {
927
929
  if (state.tokenize) {
928
930
  return $TOKEN("UnaryPostfix", state, UnaryPostfix$0(state) || UnaryPostfix$1(state));
@@ -950,7 +952,7 @@ var Civet = (() => {
950
952
  }
951
953
  var AssignmentExpressionRest$0 = YieldExpression;
952
954
  var AssignmentExpressionRest$1 = $S($E($S($EXPECT($L7, fail, 'AssignmentExpressionRest "async"'), __)), ArrowFunction);
953
- var AssignmentExpressionRest$2 = $S($P($S(__, LeftHandSideExpression, __, AssignmentOp)), $C($S($Q(_), Expression), $S(__, Expression)));
955
+ var AssignmentExpressionRest$2 = $S($P($S(__, LeftHandSideExpression, __, AssignmentOp)), Expression);
954
956
  var AssignmentExpressionRest$3 = ConditionalExpression;
955
957
  function AssignmentExpressionRest(state) {
956
958
  if (state.tokenize) {
@@ -970,7 +972,7 @@ var Civet = (() => {
970
972
  }
971
973
  }
972
974
  var ArrowFunction$0 = ThinArrowFunction;
973
- var ArrowFunction$1 = $S($C(BindingIdentifier, Parameters), $E(ReturnTypeSuffix), __, $EXPECT($L10, fail, 'ArrowFunction "=>"'), ConciseBody);
975
+ var ArrowFunction$1 = $S(Parameters, $E(ReturnTypeSuffix), FatArrow, ConciseBody);
974
976
  function ArrowFunction(state) {
975
977
  if (state.tokenize) {
976
978
  return $TOKEN("ArrowFunction", state, ArrowFunction$0(state) || ArrowFunction$1(state));
@@ -978,8 +980,23 @@ var Civet = (() => {
978
980
  return ArrowFunction$0(state) || ArrowFunction$1(state);
979
981
  }
980
982
  }
981
- var ConciseBody$0 = $S($N($S($Q(_), $EXPECT($L11, fail, 'ConciseBody "{"'))), AssignmentExpression);
982
- var ConciseBody$1 = $S(EOS, SingleNestedBlockExpression);
983
+ var FatArrow$0 = $TS($S(__, $EXPECT($L10, fail, 'FatArrow "=>"')), function($skip, $loc, $0, $1, $2) {
984
+ var ws = $1;
985
+ if (!ws.length)
986
+ return " =>";
987
+ return $0;
988
+ });
989
+ function FatArrow(state) {
990
+ if (state.verbose)
991
+ console.log("ENTER:", "FatArrow");
992
+ if (state.tokenize) {
993
+ return $TOKEN("FatArrow", state, FatArrow$0(state));
994
+ } else {
995
+ return FatArrow$0(state);
996
+ }
997
+ }
998
+ var ConciseBody$0 = $S(EOS, SingleNestedBlockExpression);
999
+ var ConciseBody$1 = $S($N($S($Q(_), $EXPECT($L11, fail, 'ConciseBody "{"'))), AssignmentExpression);
983
1000
  var ConciseBody$2 = BracedBlock;
984
1001
  function ConciseBody(state) {
985
1002
  if (state.tokenize) {
@@ -1210,7 +1227,7 @@ var Civet = (() => {
1210
1227
  return ApplicationStart$0(state);
1211
1228
  }
1212
1229
  }
1213
- var AdditionalReservedWords$0 = $R$0($EXPECT($R1, fail, "AdditionalReservedWords /(of)(?!\\p{ID_Continue})/"));
1230
+ var AdditionalReservedWords$0 = $R$0($EXPECT($R0, fail, "AdditionalReservedWords /(of)(?!\\p{ID_Continue})/"));
1214
1231
  function AdditionalReservedWords(state) {
1215
1232
  if (state.verbose)
1216
1233
  console.log("ENTER:", "AdditionalReservedWords");
@@ -1418,7 +1435,7 @@ var Civet = (() => {
1418
1435
  return BracedBlock$0(state) || BracedBlock$1(state) || BracedBlock$2(state);
1419
1436
  }
1420
1437
  }
1421
- var SingleNestedBlockExpression$0 = $TS($S(PushIndent, $E($S(Nested, $C(Declaration, Statement))), PopIndent), function($skip, $loc, $0, $1, $2, $3) {
1438
+ var SingleNestedBlockExpression$0 = $TS($S(PushIndent, $E($S(Nested, $C(Declaration, Statement))), $C($C($N($S(Nested, $C(Declaration, Statement))), $S(PopIndent, $N($EXPECT($L30, fail, 'SingleNestedBlockExpression ""')))), PopIndent)), function($skip, $loc, $0, $1, $2, $3) {
1422
1439
  var exp = $2;
1423
1440
  if (exp)
1424
1441
  return exp;
@@ -1491,7 +1508,7 @@ var Civet = (() => {
1491
1508
  return Identifier$0(state);
1492
1509
  }
1493
1510
  }
1494
- var IdentifierName$0 = $R$0($EXPECT($R2, fail, "IdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
1511
+ var IdentifierName$0 = $R$0($EXPECT($R1, fail, "IdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
1495
1512
  function IdentifierName(state) {
1496
1513
  if (state.verbose)
1497
1514
  console.log("ENTER:", "IdentifierName");
@@ -1535,7 +1552,7 @@ var Civet = (() => {
1535
1552
  return NestedElementList$0(state);
1536
1553
  }
1537
1554
  }
1538
- var NestedElement$0 = $S(Nested, ArrayElementExpression, ArrayElementDelimiter);
1555
+ var NestedElement$0 = $S(Nested, InlineElementList, ArrayElementDelimiter);
1539
1556
  function NestedElement(state) {
1540
1557
  if (state.verbose)
1541
1558
  console.log("ENTER:", "NestedElement");
@@ -1570,7 +1587,17 @@ var Civet = (() => {
1570
1587
  return ElementList$0(state);
1571
1588
  }
1572
1589
  }
1573
- var ArrayElementExpression$0 = $E($S($E($S($EXPECT($L31, fail, 'ArrayElementExpression "..."'), __)), Expression));
1590
+ var InlineElementList$0 = $S(ArrayElementExpression, $Q($S($Q(_), $EXPECT($L0, fail, 'InlineElementList ","'), $Q(_), ArrayElementExpression)));
1591
+ function InlineElementList(state) {
1592
+ if (state.verbose)
1593
+ console.log("ENTER:", "InlineElementList");
1594
+ if (state.tokenize) {
1595
+ return $TOKEN("InlineElementList", state, InlineElementList$0(state));
1596
+ } else {
1597
+ return InlineElementList$0(state);
1598
+ }
1599
+ }
1600
+ var ArrayElementExpression$0 = $E($S($E($S($EXPECT($L31, fail, 'ArrayElementExpression "..."'), __)), AssignmentExpression));
1574
1601
  function ArrayElementExpression(state) {
1575
1602
  if (state.verbose)
1576
1603
  console.log("ENTER:", "ArrayElementExpression");
@@ -1673,8 +1700,8 @@ var Civet = (() => {
1673
1700
  return PropertyName$0(state) || PropertyName$1(state) || PropertyName$2(state) || PropertyName$3(state);
1674
1701
  }
1675
1702
  }
1676
- var MethodDefinition$0 = $S($EXPECT($L38, fail, 'MethodDefinition "get"'), $N($R$0($EXPECT($R3, fail, "MethodDefinition /\\p{ID_Continue}/"))), $Q(TrailingComment), ClassElementName, __, Parameters, BracedBlock);
1677
- var MethodDefinition$1 = $S($EXPECT($L39, fail, 'MethodDefinition "set"'), $N($R$0($EXPECT($R3, fail, "MethodDefinition /\\p{ID_Continue}/"))), $Q(TrailingComment), ClassElementName, __, Parameters, BracedBlock);
1703
+ var MethodDefinition$0 = $S($EXPECT($L38, fail, 'MethodDefinition "get"'), NonIdContinue, $Q(TrailingComment), ClassElementName, __, Parameters, BracedBlock);
1704
+ var MethodDefinition$1 = $S($EXPECT($L39, fail, 'MethodDefinition "set"'), NonIdContinue, $Q(TrailingComment), ClassElementName, __, Parameters, BracedBlock);
1678
1705
  var MethodDefinition$2 = AsyncGeneratorMethod;
1679
1706
  var MethodDefinition$3 = AsyncMethod;
1680
1707
  var MethodDefinition$4 = GeneratorMethod;
@@ -1807,7 +1834,7 @@ var Civet = (() => {
1807
1834
  return "!==";
1808
1835
  return $1;
1809
1836
  });
1810
- var BinaryOp$15 = $T($EXPECT($L69, fail, 'BinaryOp "is"'), function(value) {
1837
+ var BinaryOp$15 = $T($S($EXPECT($L69, fail, 'BinaryOp "is"'), NonIdContinue), function(value) {
1811
1838
  return "===";
1812
1839
  });
1813
1840
  var BinaryOp$16 = $EXPECT($L70, fail, 'BinaryOp "==="');
@@ -1816,17 +1843,17 @@ var Civet = (() => {
1816
1843
  return "===";
1817
1844
  return $1;
1818
1845
  });
1819
- var BinaryOp$18 = $T($EXPECT($L72, fail, 'BinaryOp "and"'), function(value) {
1846
+ var BinaryOp$18 = $T($S($EXPECT($L72, fail, 'BinaryOp "and"'), NonIdContinue), function(value) {
1820
1847
  return "&&";
1821
1848
  });
1822
1849
  var BinaryOp$19 = $EXPECT($L73, fail, 'BinaryOp "&&"');
1823
- var BinaryOp$20 = $T($EXPECT($L74, fail, 'BinaryOp "or"'), function(value) {
1850
+ var BinaryOp$20 = $T($S($EXPECT($L74, fail, 'BinaryOp "or"'), NonIdContinue), function(value) {
1824
1851
  return "||";
1825
1852
  });
1826
1853
  var BinaryOp$21 = $EXPECT($L75, fail, 'BinaryOp "||"');
1827
1854
  var BinaryOp$22 = $EXPECT($L76, fail, 'BinaryOp "??"');
1828
- var BinaryOp$23 = $EXPECT($L77, fail, 'BinaryOp "instanceof"');
1829
- var BinaryOp$24 = $EXPECT($L78, fail, 'BinaryOp "in"');
1855
+ var BinaryOp$23 = $S($EXPECT($L77, fail, 'BinaryOp "instanceof"'), NonIdContinue);
1856
+ var BinaryOp$24 = $S($EXPECT($L78, fail, 'BinaryOp "in"'), NonIdContinue);
1830
1857
  var BinaryOp$25 = $EXPECT($L79, fail, 'BinaryOp "&"');
1831
1858
  var BinaryOp$26 = $EXPECT($L80, fail, 'BinaryOp "^"');
1832
1859
  var BinaryOp$27 = $EXPECT($L81, fail, 'BinaryOp "|"');
@@ -1837,8 +1864,8 @@ var Civet = (() => {
1837
1864
  return BinaryOp$0(state) || BinaryOp$1(state) || BinaryOp$2(state) || BinaryOp$3(state) || BinaryOp$4(state) || BinaryOp$5(state) || BinaryOp$6(state) || BinaryOp$7(state) || BinaryOp$8(state) || BinaryOp$9(state) || BinaryOp$10(state) || BinaryOp$11(state) || BinaryOp$12(state) || BinaryOp$13(state) || BinaryOp$14(state) || BinaryOp$15(state) || BinaryOp$16(state) || BinaryOp$17(state) || BinaryOp$18(state) || BinaryOp$19(state) || BinaryOp$20(state) || BinaryOp$21(state) || BinaryOp$22(state) || BinaryOp$23(state) || BinaryOp$24(state) || BinaryOp$25(state) || BinaryOp$26(state) || BinaryOp$27(state);
1838
1865
  }
1839
1866
  }
1840
- var UnaryOp$0 = $R$0($EXPECT($R4, fail, "UnaryOp /[!~+-]/"));
1841
- var UnaryOp$1 = $S($C($EXPECT($L82, fail, 'UnaryOp "delete"'), $EXPECT($L83, fail, 'UnaryOp "void"'), $EXPECT($L84, fail, 'UnaryOp "typeof"')), $P(_));
1867
+ var UnaryOp$0 = $R$0($EXPECT($R2, fail, "UnaryOp /[!~+-]/"));
1868
+ var UnaryOp$1 = $S($C($EXPECT($L82, fail, 'UnaryOp "delete"'), $EXPECT($L83, fail, 'UnaryOp "void"'), $EXPECT($L84, fail, 'UnaryOp "typeof"')), NonIdContinue, __);
1842
1869
  function UnaryOp(state) {
1843
1870
  if (state.tokenize) {
1844
1871
  return $TOKEN("UnaryOp", state, UnaryOp$0(state) || UnaryOp$1(state));
@@ -2386,7 +2413,7 @@ var Civet = (() => {
2386
2413
  return NumericLiteral$0(state) || NumericLiteral$1(state) || NumericLiteral$2(state) || NumericLiteral$3(state) || NumericLiteral$4(state);
2387
2414
  }
2388
2415
  }
2389
- var DecimalBigIntegerLiteral$0 = $R$0($EXPECT($R5, fail, "DecimalBigIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)n/"));
2416
+ var DecimalBigIntegerLiteral$0 = $R$0($EXPECT($R3, fail, "DecimalBigIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)n/"));
2390
2417
  function DecimalBigIntegerLiteral(state) {
2391
2418
  if (state.verbose)
2392
2419
  console.log("ENTER:", "DecimalBigIntegerLiteral");
@@ -2396,7 +2423,7 @@ var Civet = (() => {
2396
2423
  return DecimalBigIntegerLiteral$0(state);
2397
2424
  }
2398
2425
  }
2399
- var DecimalLiteral$0 = $R$0($EXPECT($R6, fail, "DecimalLiteral /\\d+(?:\\.\\d*)?/"));
2426
+ var DecimalLiteral$0 = $R$0($EXPECT($R4, fail, "DecimalLiteral /\\d+(?:\\.\\d*)?/"));
2400
2427
  function DecimalLiteral(state) {
2401
2428
  if (state.verbose)
2402
2429
  console.log("ENTER:", "DecimalLiteral");
@@ -2406,7 +2433,7 @@ var Civet = (() => {
2406
2433
  return DecimalLiteral$0(state);
2407
2434
  }
2408
2435
  }
2409
- var BinaryIntegerLiteral$0 = $R$0($EXPECT($R7, fail, "BinaryIntegerLiteral /0[bB][01](?:[01]|_[01])*/"));
2436
+ var BinaryIntegerLiteral$0 = $R$0($EXPECT($R5, fail, "BinaryIntegerLiteral /0[bB][01](?:[01]|_[01])*/"));
2410
2437
  function BinaryIntegerLiteral(state) {
2411
2438
  if (state.verbose)
2412
2439
  console.log("ENTER:", "BinaryIntegerLiteral");
@@ -2416,7 +2443,7 @@ var Civet = (() => {
2416
2443
  return BinaryIntegerLiteral$0(state);
2417
2444
  }
2418
2445
  }
2419
- var OctalIntegerLiteral$0 = $R$0($EXPECT($R8, fail, "OctalIntegerLiteral /0[oO][0-7](?:[0-7]|_[0-7])*/"));
2446
+ var OctalIntegerLiteral$0 = $R$0($EXPECT($R6, fail, "OctalIntegerLiteral /0[oO][0-7](?:[0-7]|_[0-7])*/"));
2420
2447
  function OctalIntegerLiteral(state) {
2421
2448
  if (state.verbose)
2422
2449
  console.log("ENTER:", "OctalIntegerLiteral");
@@ -2426,7 +2453,7 @@ var Civet = (() => {
2426
2453
  return OctalIntegerLiteral$0(state);
2427
2454
  }
2428
2455
  }
2429
- var HexLiteral$0 = $R$0($EXPECT($R9, fail, "HexLiteral /0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*/"));
2456
+ var HexLiteral$0 = $R$0($EXPECT($R7, fail, "HexLiteral /0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*/"));
2430
2457
  function HexLiteral(state) {
2431
2458
  if (state.verbose)
2432
2459
  console.log("ENTER:", "HexLiteral");
@@ -2448,7 +2475,7 @@ var Civet = (() => {
2448
2475
  return StringLiteral$0(state) || StringLiteral$1(state) || StringLiteral$2(state);
2449
2476
  }
2450
2477
  }
2451
- var DoubleStringCharacter$0 = $R$0($EXPECT($R10, fail, 'DoubleStringCharacter /[^"\\\\]+/'));
2478
+ var DoubleStringCharacter$0 = $R$0($EXPECT($R8, fail, 'DoubleStringCharacter /[^"\\\\]+/'));
2452
2479
  var DoubleStringCharacter$1 = EscapeSequence;
2453
2480
  function DoubleStringCharacter(state) {
2454
2481
  if (state.tokenize) {
@@ -2457,7 +2484,7 @@ var Civet = (() => {
2457
2484
  return DoubleStringCharacter$0(state) || DoubleStringCharacter$1(state);
2458
2485
  }
2459
2486
  }
2460
- var SingleStringCharacter$0 = $R$0($EXPECT($R11, fail, "SingleStringCharacter /[^'\\\\]+/"));
2487
+ var SingleStringCharacter$0 = $R$0($EXPECT($R9, fail, "SingleStringCharacter /[^'\\\\]+/"));
2461
2488
  var SingleStringCharacter$1 = EscapeSequence;
2462
2489
  function SingleStringCharacter(state) {
2463
2490
  if (state.tokenize) {
@@ -2466,7 +2493,7 @@ var Civet = (() => {
2466
2493
  return SingleStringCharacter$0(state) || SingleStringCharacter$1(state);
2467
2494
  }
2468
2495
  }
2469
- var TripleDoubleStringCharacter$0 = $R$0($EXPECT($R12, fail, 'TripleDoubleStringCharacter /(?:"(?!"")|\\\\.|[^"])+/'));
2496
+ var TripleDoubleStringCharacter$0 = $R$0($EXPECT($R10, fail, 'TripleDoubleStringCharacter /(?:"(?!"")|\\\\.|[^"])+/'));
2470
2497
  function TripleDoubleStringCharacter(state) {
2471
2498
  if (state.verbose)
2472
2499
  console.log("ENTER:", "TripleDoubleStringCharacter");
@@ -2476,7 +2503,7 @@ var Civet = (() => {
2476
2503
  return TripleDoubleStringCharacter$0(state);
2477
2504
  }
2478
2505
  }
2479
- var EscapeSequence$0 = $TEXT($S($EXPECT($L117, fail, 'EscapeSequence "\\\\\\\\"'), $EXPECT($R13, fail, "EscapeSequence /./")));
2506
+ var EscapeSequence$0 = $TEXT($S($EXPECT($L117, fail, 'EscapeSequence "\\\\\\\\"'), $EXPECT($R11, fail, "EscapeSequence /./")));
2480
2507
  function EscapeSequence(state) {
2481
2508
  if (state.verbose)
2482
2509
  console.log("ENTER:", "EscapeSequence");
@@ -2496,7 +2523,7 @@ var Civet = (() => {
2496
2523
  return RegularExpressionLiteral$0(state);
2497
2524
  }
2498
2525
  }
2499
- var RegularExpressionBody$0 = $S($R$0($EXPECT($R14, fail, "RegularExpressionBody /[^*\\/\\r\\n]/")), $Q(RegExpCharacter));
2526
+ var RegularExpressionBody$0 = $S($R$0($EXPECT($R12, fail, "RegularExpressionBody /[^*\\/\\r\\n]/")), $Q(RegExpCharacter));
2500
2527
  function RegularExpressionBody(state) {
2501
2528
  if (state.verbose)
2502
2529
  console.log("ENTER:", "RegularExpressionBody");
@@ -2506,7 +2533,7 @@ var Civet = (() => {
2506
2533
  return RegularExpressionBody$0(state);
2507
2534
  }
2508
2535
  }
2509
- var RegExpCharacter$0 = $R$0($EXPECT($R15, fail, "RegExpCharacter /[^\\/\\r\\n]+/"));
2536
+ var RegExpCharacter$0 = $R$0($EXPECT($R13, fail, "RegExpCharacter /[^\\/\\r\\n]+/"));
2510
2537
  var RegExpCharacter$1 = EscapeSequence;
2511
2538
  function RegExpCharacter(state) {
2512
2539
  if (state.tokenize) {
@@ -2515,7 +2542,7 @@ var Civet = (() => {
2515
2542
  return RegExpCharacter$0(state) || RegExpCharacter$1(state);
2516
2543
  }
2517
2544
  }
2518
- var RegularExpressionFlags$0 = $R$0($EXPECT($R16, fail, "RegularExpressionFlags /(:?\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
2545
+ var RegularExpressionFlags$0 = $R$0($EXPECT($R14, fail, "RegularExpressionFlags /(:?\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
2519
2546
  function RegularExpressionFlags(state) {
2520
2547
  if (state.verbose)
2521
2548
  console.log("ENTER:", "RegularExpressionFlags");
@@ -2545,7 +2572,7 @@ var Civet = (() => {
2545
2572
  return TemplateSubstitution$0(state);
2546
2573
  }
2547
2574
  }
2548
- var TemplateCharacters$0 = $R$0($EXPECT($R17, fail, "TemplateCharacters /(?:\\$(?!\\{)|\\\\.|[^$`])+/"));
2575
+ var TemplateCharacters$0 = $R$0($EXPECT($R15, fail, "TemplateCharacters /(?:\\$(?!\\{)|\\\\.|[^$`])+/"));
2549
2576
  function TemplateCharacters(state) {
2550
2577
  if (state.verbose)
2551
2578
  console.log("ENTER:", "TemplateCharacters");
@@ -2555,7 +2582,7 @@ var Civet = (() => {
2555
2582
  return TemplateCharacters$0(state);
2556
2583
  }
2557
2584
  }
2558
- var ReservedWord$0 = $R$0($EXPECT($R18, 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|new|null|or|return|super|switch|this|throw|true|try|typeof|unless|var|void|while|with|yield)(?!\\p{ID_Continue})/"));
2585
+ var ReservedWord$0 = $R$0($EXPECT($R16, 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|new|null|or|return|super|switch|this|throw|true|try|typeof|unless|var|void|while|with|yield)(?!\\p{ID_Continue})/"));
2559
2586
  function ReservedWord(state) {
2560
2587
  if (state.verbose)
2561
2588
  console.log("ENTER:", "ReservedWord");
@@ -2574,7 +2601,7 @@ var Civet = (() => {
2574
2601
  return Comment$0(state) || Comment$1(state);
2575
2602
  }
2576
2603
  }
2577
- var SingleLineComment$0 = $R$0($EXPECT($R19, fail, "SingleLineComment /\\/\\/[^\\r\\n]*/"));
2604
+ var SingleLineComment$0 = $R$0($EXPECT($R17, fail, "SingleLineComment /\\/\\/[^\\r\\n]*/"));
2578
2605
  var SingleLineComment$1 = CoffeeSingleLineComment;
2579
2606
  function SingleLineComment(state) {
2580
2607
  if (state.tokenize) {
@@ -2592,7 +2619,7 @@ var Civet = (() => {
2592
2619
  return MultiLineComment$0(state) || MultiLineComment$1(state);
2593
2620
  }
2594
2621
  }
2595
- var JSMultiLineComment$0 = $S($EXPECT($L120, fail, 'JSMultiLineComment "/*"'), $TEXT($Q($S($N($EXPECT($L121, fail, 'JSMultiLineComment "*/"')), $EXPECT($R13, fail, "JSMultiLineComment /./")))), $EXPECT($L121, fail, 'JSMultiLineComment "*/"'));
2622
+ var JSMultiLineComment$0 = $S($EXPECT($L120, fail, 'JSMultiLineComment "/*"'), $TEXT($Q($S($N($EXPECT($L121, fail, 'JSMultiLineComment "*/"')), $EXPECT($R11, fail, "JSMultiLineComment /./")))), $EXPECT($L121, fail, 'JSMultiLineComment "*/"'));
2596
2623
  function JSMultiLineComment(state) {
2597
2624
  if (state.verbose)
2598
2625
  console.log("ENTER:", "JSMultiLineComment");
@@ -2602,7 +2629,7 @@ var Civet = (() => {
2602
2629
  return JSMultiLineComment$0(state);
2603
2630
  }
2604
2631
  }
2605
- var CoffeeSingleLineComment$0 = $TR($EXPECT($R20, fail, "CoffeeSingleLineComment /#([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
2632
+ var CoffeeSingleLineComment$0 = $TR($EXPECT($R18, fail, "CoffeeSingleLineComment /#([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
2606
2633
  if (!global.coffeeCompat)
2607
2634
  return $skip;
2608
2635
  return ["//", $1];
@@ -2616,7 +2643,7 @@ var Civet = (() => {
2616
2643
  return CoffeeSingleLineComment$0(state);
2617
2644
  }
2618
2645
  }
2619
- var CoffeeMultiLineComment$0 = $T($S($EXPECT($L122, fail, 'CoffeeMultiLineComment "###"'), $TEXT($Q($S($N($EXPECT($L122, fail, 'CoffeeMultiLineComment "###"')), $EXPECT($R13, fail, "CoffeeMultiLineComment /./")))), $EXPECT($L122, fail, 'CoffeeMultiLineComment "###"')), function(value) {
2646
+ var CoffeeMultiLineComment$0 = $T($S($EXPECT($L122, fail, 'CoffeeMultiLineComment "###"'), $TEXT($Q($S($N($EXPECT($L122, fail, 'CoffeeMultiLineComment "###"')), $EXPECT($R11, fail, "CoffeeMultiLineComment /./")))), $EXPECT($L122, fail, 'CoffeeMultiLineComment "###"')), function(value) {
2620
2647
  return ["/*", value[1], "*/"];
2621
2648
  });
2622
2649
  function CoffeeMultiLineComment(state) {
@@ -2628,7 +2655,7 @@ var Civet = (() => {
2628
2655
  return CoffeeMultiLineComment$0(state);
2629
2656
  }
2630
2657
  }
2631
- var InlineComment$0 = $S($EXPECT($L120, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L121, fail, 'InlineComment "*/"')), $EXPECT($R21, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L121, fail, 'InlineComment "*/"'));
2658
+ var InlineComment$0 = $S($EXPECT($L120, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L121, fail, 'InlineComment "*/"')), $EXPECT($R19, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L121, fail, 'InlineComment "*/"'));
2632
2659
  function InlineComment(state) {
2633
2660
  if (state.verbose)
2634
2661
  console.log("ENTER:", "InlineComment");
@@ -2648,7 +2675,7 @@ var Civet = (() => {
2648
2675
  return RestOfLine$0(state);
2649
2676
  }
2650
2677
  }
2651
- var TrailingComment$0 = $R$0($EXPECT($R22, fail, "TrailingComment /[\\t ]+/"));
2678
+ var TrailingComment$0 = $R$0($EXPECT($R20, fail, "TrailingComment /[\\t ]+/"));
2652
2679
  var TrailingComment$1 = InlineComment;
2653
2680
  var TrailingComment$2 = SingleLineComment;
2654
2681
  function TrailingComment(state) {
@@ -2658,7 +2685,7 @@ var Civet = (() => {
2658
2685
  return TrailingComment$0(state) || TrailingComment$1(state) || TrailingComment$2(state);
2659
2686
  }
2660
2687
  }
2661
- var _$0 = $P($C($R$0($EXPECT($R22, fail, "_ /[\\t ]+/")), Comment));
2688
+ var _$0 = $P($C($R$0($EXPECT($R20, fail, "_ /[\\t ]+/")), Comment));
2662
2689
  function _(state) {
2663
2690
  if (state.verbose)
2664
2691
  console.log("ENTER:", "_");
@@ -2668,7 +2695,7 @@ var Civet = (() => {
2668
2695
  return _$0(state);
2669
2696
  }
2670
2697
  }
2671
- var __$0 = $Q($C($R$0($EXPECT($R23, fail, "__ /[\\s]+/")), Comment));
2698
+ var __$0 = $Q($C($R$0($EXPECT($R21, fail, "__ /[\\s]+/")), Comment));
2672
2699
  function __(state) {
2673
2700
  if (state.verbose)
2674
2701
  console.log("ENTER:", "__");
@@ -2689,6 +2716,16 @@ var Civet = (() => {
2689
2716
  return StatementDelimiter$0(state) || StatementDelimiter$1(state);
2690
2717
  }
2691
2718
  }
2719
+ var NonIdContinue$0 = $R$0($EXPECT($R22, fail, "NonIdContinue /(?!\\p{ID_Continue})/"));
2720
+ function NonIdContinue(state) {
2721
+ if (state.verbose)
2722
+ console.log("ENTER:", "NonIdContinue");
2723
+ if (state.tokenize) {
2724
+ return $TOKEN("NonIdContinue", state, NonIdContinue$0(state));
2725
+ } else {
2726
+ return NonIdContinue$0(state);
2727
+ }
2728
+ }
2692
2729
  var JSXElement$0 = JSXSelfClosingElement;
2693
2730
  var JSXElement$1 = $TS($S(JSXOpeningElement, $Q(JSXChildren), __, JSXClosingElement), function($skip, $loc, $0, $1, $2, $3, $4) {
2694
2731
  if ($1[1] !== $4[2]) {
@@ -2753,7 +2790,7 @@ var Civet = (() => {
2753
2790
  return JSXElementName$0(state);
2754
2791
  }
2755
2792
  }
2756
- var JSXIdentifierName$0 = $R$0($EXPECT($R24, fail, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
2793
+ var JSXIdentifierName$0 = $R$0($EXPECT($R23, fail, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
2757
2794
  function JSXIdentifierName(state) {
2758
2795
  if (state.verbose)
2759
2796
  console.log("ENTER:", "JSXIdentifierName");
@@ -2802,8 +2839,8 @@ var Civet = (() => {
2802
2839
  return JSXAttributeInitializer$0(state);
2803
2840
  }
2804
2841
  }
2805
- var JSXAttributeValue$0 = $R$0($EXPECT($R25, fail, 'JSXAttributeValue /"[^"]*"/'));
2806
- var JSXAttributeValue$1 = $R$0($EXPECT($R26, fail, "JSXAttributeValue /'[^']*'/"));
2842
+ var JSXAttributeValue$0 = $R$0($EXPECT($R24, fail, 'JSXAttributeValue /"[^"]*"/'));
2843
+ var JSXAttributeValue$1 = $R$0($EXPECT($R25, fail, "JSXAttributeValue /'[^']*'/"));
2807
2844
  var JSXAttributeValue$2 = $S($EXPECT($L11, fail, 'JSXAttributeValue "{"'), __, AssignmentExpression, __, $EXPECT($L16, fail, 'JSXAttributeValue "}"'));
2808
2845
  var JSXAttributeValue$3 = JSXElement;
2809
2846
  var JSXAttributeValue$4 = JSXFragment;
@@ -2835,7 +2872,7 @@ var Civet = (() => {
2835
2872
  return JSXChild$0(state) || JSXChild$1(state) || JSXChild$2(state) || JSXChild$3(state);
2836
2873
  }
2837
2874
  }
2838
- var JSXText$0 = $R$0($EXPECT($R27, fail, "JSXText /[^{}<>]+/"));
2875
+ var JSXText$0 = $R$0($EXPECT($R26, fail, "JSXText /[^{}<>]+/"));
2839
2876
  function JSXText(state) {
2840
2877
  if (state.verbose)
2841
2878
  console.log("ENTER:", "JSXText");
@@ -2855,10 +2892,10 @@ var Civet = (() => {
2855
2892
  return JSXChildExpression$0(state);
2856
2893
  }
2857
2894
  }
2858
- var TypeDeclaration$0 = $T($S($EXPECT($R28, fail, "TypeDeclaration /type(?!\\p{ID_Continue})/"), $Q(TrailingComment), IdentifierName, $E(TypeParameters), __, $EXPECT($L55, fail, 'TypeDeclaration "="'), __, Type), function(value) {
2895
+ var TypeDeclaration$0 = $T($S($EXPECT($R27, fail, "TypeDeclaration /type(?!\\p{ID_Continue})/"), $Q(TrailingComment), IdentifierName, $E(TypeParameters), __, $EXPECT($L55, fail, 'TypeDeclaration "="'), __, Type), function(value) {
2859
2896
  return { "ts": true, "children": value };
2860
2897
  });
2861
- var TypeDeclaration$1 = $T($S($EXPECT($R29, fail, "TypeDeclaration /interface(?!\\p{ID_Continue})/"), $Q(TrailingComment), IdentifierName, InterfaceBlock), function(value) {
2898
+ var TypeDeclaration$1 = $T($S($EXPECT($R28, fail, "TypeDeclaration /interface(?!\\p{ID_Continue})/"), $Q(TrailingComment), IdentifierName, InterfaceBlock), function(value) {
2862
2899
  return { "ts": true, "children": value };
2863
2900
  });
2864
2901
  function TypeDeclaration(state) {
@@ -2928,7 +2965,7 @@ var Civet = (() => {
2928
2965
  return InterfacePropertyDelimiter$0(state) || InterfacePropertyDelimiter$1(state) || InterfacePropertyDelimiter$2(state) || InterfacePropertyDelimiter$3(state);
2929
2966
  }
2930
2967
  }
2931
- var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R30, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L127, fail, 'TypeIndexSignature "readonly"'), __)), $EXPECT($L24, fail, 'TypeIndexSignature "["'), TypeIndex, $EXPECT($L25, fail, 'TypeIndexSignature "]"'), $E($S(__, $R$0($EXPECT($R31, fail, "TypeIndexSignature /[+-]/")), $EXPECT($L3, fail, 'TypeIndexSignature "?"'))));
2968
+ var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R29, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L127, fail, 'TypeIndexSignature "readonly"'), __)), $EXPECT($L24, fail, 'TypeIndexSignature "["'), TypeIndex, $EXPECT($L25, fail, 'TypeIndexSignature "]"'), $E($S(__, $R$0($EXPECT($R30, fail, "TypeIndexSignature /[+-]/")), $EXPECT($L3, fail, 'TypeIndexSignature "?"'))));
2932
2969
  function TypeIndexSignature(state) {
2933
2970
  if (state.verbose)
2934
2971
  console.log("ENTER:", "TypeIndexSignature");
@@ -2959,7 +2996,7 @@ var Civet = (() => {
2959
2996
  return TypeSuffix$0(state);
2960
2997
  }
2961
2998
  }
2962
- var ReturnTypeSuffix$0 = $T($S(__, $EXPECT($L12, fail, 'ReturnTypeSuffix ":"'), $E($S(__, $EXPECT($L128, fail, 'ReturnTypeSuffix "asserts"'), $EXPECT($R0, fail, "ReturnTypeSuffix /(?!\\p{ID_Continue})/"))), TypePredicate), function(value) {
2999
+ var ReturnTypeSuffix$0 = $T($S(__, $EXPECT($L12, fail, 'ReturnTypeSuffix ":"'), $E($S(__, $EXPECT($L128, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function(value) {
2963
3000
  return { "ts": true, "children": value };
2964
3001
  });
2965
3002
  function ReturnTypeSuffix(state) {
@@ -2971,7 +3008,7 @@ var Civet = (() => {
2971
3008
  return ReturnTypeSuffix$0(state);
2972
3009
  }
2973
3010
  }
2974
- var TypePredicate$0 = $S(Type, $E($S(__, $EXPECT($L69, fail, 'TypePredicate "is"'), $R$0($EXPECT($R0, fail, "TypePredicate /(?!\\p{ID_Continue})/")), Type)));
3011
+ var TypePredicate$0 = $S(Type, $E($S(__, $EXPECT($L69, fail, 'TypePredicate "is"'), NonIdContinue, Type)));
2975
3012
  function TypePredicate(state) {
2976
3013
  if (state.verbose)
2977
3014
  console.log("ENTER:", "TypePredicate");
@@ -3001,7 +3038,7 @@ var Civet = (() => {
3001
3038
  return TypeBinary$0(state);
3002
3039
  }
3003
3040
  }
3004
- var TypeUnary$0 = $S($Q($S(__, TypeUnaryOp, $R$0($EXPECT($R0, fail, "TypeUnary /(?!\\p{ID_Continue})/")))), TypePrimary, $Q(TypeUnarySuffix));
3041
+ var TypeUnary$0 = $S($Q($S(__, TypeUnaryOp, NonIdContinue)), TypePrimary, $Q(TypeUnarySuffix));
3005
3042
  function TypeUnary(state) {
3006
3043
  if (state.verbose)
3007
3044
  console.log("ENTER:", "TypeUnary");
@@ -3147,7 +3184,7 @@ var Civet = (() => {
3147
3184
  return TypeParameterDelimiter$0(state) || TypeParameterDelimiter$1(state) || TypeParameterDelimiter$2(state) || TypeParameterDelimiter$3(state);
3148
3185
  }
3149
3186
  }
3150
- var Shebang$0 = $R$0($EXPECT($R32, fail, "Shebang /#![^\\r\\n]*/"));
3187
+ var Shebang$0 = $R$0($EXPECT($R31, fail, "Shebang /#![^\\r\\n]*/"));
3151
3188
  function Shebang(state) {
3152
3189
  if (state.verbose)
3153
3190
  console.log("ENTER:", "Shebang");
@@ -3157,7 +3194,7 @@ var Civet = (() => {
3157
3194
  return Shebang$0(state);
3158
3195
  }
3159
3196
  }
3160
- var DirectivePrologue$0 = $TV($Q($S($TEXT($EXPECT($R33, fail, "DirectivePrologue /[\\t ]*/")), $TEXT(StringLiteral), $TEXT(StatementDelimiter), $TEXT(EOS))), function($skip, $loc, $0, $1) {
3197
+ var DirectivePrologue$0 = $TV($Q($S($TEXT($EXPECT($R32, fail, "DirectivePrologue /[\\t ]*/")), $TEXT(StringLiteral), $TEXT(StatementDelimiter), $TEXT(EOS))), function($skip, $loc, $0, $1) {
3161
3198
  return $0.map((p) => p.join(""));
3162
3199
  });
3163
3200
  function DirectivePrologue(state) {
@@ -3179,7 +3216,7 @@ var Civet = (() => {
3179
3216
  return EOS$0(state);
3180
3217
  }
3181
3218
  }
3182
- var EOL$0 = $R$0($EXPECT($R34, fail, "EOL /\\r\\n|\\n|\\r|$/"));
3219
+ var EOL$0 = $R$0($EXPECT($R33, fail, "EOL /\\r\\n|\\n|\\r|$/"));
3183
3220
  function EOL(state) {
3184
3221
  if (state.verbose)
3185
3222
  console.log("ENTER:", "EOL");
@@ -3189,7 +3226,7 @@ var Civet = (() => {
3189
3226
  return EOL$0(state);
3190
3227
  }
3191
3228
  }
3192
- var EOF$0 = $R$0($EXPECT($R35, fail, "EOF /$/"));
3229
+ var EOF$0 = $R$0($EXPECT($R34, fail, "EOF /$/"));
3193
3230
  function EOF(state) {
3194
3231
  if (state.verbose)
3195
3232
  console.log("ENTER:", "EOF");
@@ -3448,7 +3485,8 @@ var Civet = (() => {
3448
3485
  parse,
3449
3486
  compile: function(src, options) {
3450
3487
  return gen(parse(src), options);
3451
- }
3488
+ },
3489
+ generate: gen
3452
3490
  };
3453
3491
  }
3454
3492
  });