@danielx/civet 0.4.16 → 0.4.18
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 +27 -34
- package/dist/browser.js +1790 -632
- package/dist/esm.mjs +1 -1
- package/dist/main.js +1790 -632
- package/package.json +1 -1
package/dist/browser.js
CHANGED
|
@@ -407,6 +407,8 @@ var Civet = (() => {
|
|
|
407
407
|
var { parse } = parserState({
|
|
408
408
|
Program,
|
|
409
409
|
TopLevelStatement,
|
|
410
|
+
ExtendedExpression,
|
|
411
|
+
ExpressionizedStatement,
|
|
410
412
|
Expression,
|
|
411
413
|
Arguments,
|
|
412
414
|
ArgumentsWithTrailingCallExpressions,
|
|
@@ -423,10 +425,11 @@ var Civet = (() => {
|
|
|
423
425
|
UpdateExpression,
|
|
424
426
|
UpdateExpressionSymbol,
|
|
425
427
|
AssignmentExpression,
|
|
426
|
-
|
|
427
|
-
AwaitExpression,
|
|
428
|
+
AssignmentExpressionTail,
|
|
428
429
|
YieldExpression,
|
|
430
|
+
YieldTail,
|
|
429
431
|
ArrowFunction,
|
|
432
|
+
ArrowFunctionTail,
|
|
430
433
|
FatArrow,
|
|
431
434
|
FatArrowBody,
|
|
432
435
|
ConditionalExpression,
|
|
@@ -444,7 +447,6 @@ var Civet = (() => {
|
|
|
444
447
|
This,
|
|
445
448
|
AtAccessor,
|
|
446
449
|
LeftHandSideExpression,
|
|
447
|
-
NewExpression,
|
|
448
450
|
CallExpression,
|
|
449
451
|
CallExpressionRest,
|
|
450
452
|
OptionalShorthand,
|
|
@@ -464,10 +466,14 @@ var Civet = (() => {
|
|
|
464
466
|
BindingIdentifier,
|
|
465
467
|
BindingPattern,
|
|
466
468
|
ObjectBindingPattern,
|
|
469
|
+
ObjectBindingPatternContent,
|
|
467
470
|
ArrayBindingPattern,
|
|
471
|
+
ArrayBindingPatternContent,
|
|
472
|
+
Elision,
|
|
468
473
|
NestedBindingProperties,
|
|
469
474
|
NestedBindingProperty,
|
|
470
475
|
BindingProperty,
|
|
476
|
+
NestedBindingRestProperty,
|
|
471
477
|
BindingRestProperty,
|
|
472
478
|
NestedBindingElements,
|
|
473
479
|
NestedBindingElement,
|
|
@@ -482,10 +488,11 @@ var Civet = (() => {
|
|
|
482
488
|
BracedOrEmptyBlock,
|
|
483
489
|
EmptyBlock,
|
|
484
490
|
BracedBlock,
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
491
|
+
BracedContent,
|
|
492
|
+
NestedBlockStatements,
|
|
493
|
+
NestedBlockStatement,
|
|
488
494
|
Literal,
|
|
495
|
+
LiteralContent,
|
|
489
496
|
NullLiteral,
|
|
490
497
|
BooleanLiteral,
|
|
491
498
|
CoffeeScriptBooleanLiteral,
|
|
@@ -494,14 +501,16 @@ var Civet = (() => {
|
|
|
494
501
|
IdentifierName,
|
|
495
502
|
IdentifierReference,
|
|
496
503
|
ArrayLiteral,
|
|
504
|
+
ArrayLiteralContent,
|
|
497
505
|
NestedElementList,
|
|
498
506
|
NestedElement,
|
|
499
507
|
ArrayElementDelimiter,
|
|
500
508
|
ElementList,
|
|
501
|
-
|
|
509
|
+
ElementListRest,
|
|
502
510
|
ArrayElementExpression,
|
|
503
|
-
Elision,
|
|
504
511
|
ObjectLiteral,
|
|
512
|
+
BracedObjectLiteral,
|
|
513
|
+
BracedObjectLiteralContent,
|
|
505
514
|
NestedObjectLiteral,
|
|
506
515
|
NestedPropertyDefinitions,
|
|
507
516
|
NestedPropertyDefinition,
|
|
@@ -528,6 +537,10 @@ var Civet = (() => {
|
|
|
528
537
|
IfStatement,
|
|
529
538
|
IfClause,
|
|
530
539
|
UnlessClause,
|
|
540
|
+
IfExpression,
|
|
541
|
+
ExpressionBlock,
|
|
542
|
+
NestedBlockExpressions,
|
|
543
|
+
NestedBlockExpression,
|
|
531
544
|
IterationStatement,
|
|
532
545
|
LoopStatement,
|
|
533
546
|
LoopClause,
|
|
@@ -537,10 +550,15 @@ var Civet = (() => {
|
|
|
537
550
|
ForStatement,
|
|
538
551
|
ForClause,
|
|
539
552
|
ForStatementControl,
|
|
553
|
+
WhenCondition,
|
|
554
|
+
CoffeeForStatementParameters,
|
|
555
|
+
CoffeeForDeclaration,
|
|
556
|
+
ForStatementParameters,
|
|
540
557
|
ForInOfDeclaration,
|
|
541
558
|
ForDeclaration,
|
|
542
559
|
ForBinding,
|
|
543
560
|
SwitchStatement,
|
|
561
|
+
SwitchExpression,
|
|
544
562
|
CaseBlock,
|
|
545
563
|
NestedCaseClauses,
|
|
546
564
|
NestedCaseClause,
|
|
@@ -558,6 +576,8 @@ var Civet = (() => {
|
|
|
558
576
|
SuppressIndentedApplication,
|
|
559
577
|
ExpressionStatement,
|
|
560
578
|
KeywordStatement,
|
|
579
|
+
DebuggerExpression,
|
|
580
|
+
ThrowExpression,
|
|
561
581
|
MaybeNestedExpression,
|
|
562
582
|
ImportDeclaration,
|
|
563
583
|
ImpliedImport,
|
|
@@ -623,9 +643,11 @@ var Civet = (() => {
|
|
|
623
643
|
NonNewlineWhitespace,
|
|
624
644
|
__,
|
|
625
645
|
Whitespace,
|
|
646
|
+
ExpressionDelimiter,
|
|
626
647
|
StatementDelimiter,
|
|
627
648
|
NonIdContinue,
|
|
628
649
|
Loc,
|
|
650
|
+
Ampersand,
|
|
629
651
|
As,
|
|
630
652
|
Async,
|
|
631
653
|
Await,
|
|
@@ -659,6 +681,7 @@ var Civet = (() => {
|
|
|
659
681
|
LetOrConst,
|
|
660
682
|
Loop,
|
|
661
683
|
New,
|
|
684
|
+
Not,
|
|
662
685
|
Of,
|
|
663
686
|
OpenBrace,
|
|
664
687
|
OpenBracket,
|
|
@@ -672,6 +695,7 @@ var Civet = (() => {
|
|
|
672
695
|
SubstitutionStart,
|
|
673
696
|
Switch,
|
|
674
697
|
Target,
|
|
698
|
+
Then,
|
|
675
699
|
Throw,
|
|
676
700
|
TripleDoubleQuote,
|
|
677
701
|
TripleSingleQuote,
|
|
@@ -762,7 +786,11 @@ var Civet = (() => {
|
|
|
762
786
|
InsertBreak,
|
|
763
787
|
CoffeeCommentEnabled,
|
|
764
788
|
CoffeeBooleansEnabled,
|
|
789
|
+
CoffeeForLoopsEnabled,
|
|
765
790
|
CoffeeInterpolationEnabled,
|
|
791
|
+
CoffeeIsntEnabled,
|
|
792
|
+
CoffeeNotEnabled,
|
|
793
|
+
CoffeeOfEnabled,
|
|
766
794
|
Reset,
|
|
767
795
|
Init,
|
|
768
796
|
Indent,
|
|
@@ -782,149 +810,154 @@ var Civet = (() => {
|
|
|
782
810
|
var $L6 = $L("this");
|
|
783
811
|
var $L7 = $L("#");
|
|
784
812
|
var $L8 = $L("@");
|
|
785
|
-
var $L9 = $L("
|
|
786
|
-
var $L10 = $L("
|
|
787
|
-
var $L11 = $L("
|
|
788
|
-
var $L12 = $L("
|
|
789
|
-
var $L13 = $L("
|
|
790
|
-
var $L14 = $L("
|
|
791
|
-
var $L15 = $L("
|
|
792
|
-
var $L16 = $L("
|
|
793
|
-
var $L17 = $L("
|
|
794
|
-
var $L18 = $L("
|
|
795
|
-
var $L19 = $L("
|
|
796
|
-
var $L20 = $L("
|
|
797
|
-
var $L21 = $L("
|
|
798
|
-
var $L22 = $L("
|
|
799
|
-
var $L23 = $L("
|
|
800
|
-
var $L24 = $L("
|
|
801
|
-
var $L25 = $L("
|
|
802
|
-
var $L26 = $L("
|
|
803
|
-
var $L27 = $L("
|
|
804
|
-
var $L28 = $L("
|
|
805
|
-
var $L29 = $L("
|
|
806
|
-
var $L30 = $L("
|
|
807
|
-
var $L31 = $L("
|
|
808
|
-
var $L32 = $L("
|
|
809
|
-
var $L33 = $L("
|
|
810
|
-
var $L34 = $L("
|
|
811
|
-
var $L35 = $L("
|
|
812
|
-
var $L36 = $L("
|
|
813
|
-
var $L37 = $L("
|
|
814
|
-
var $L38 = $L("
|
|
815
|
-
var $L39 = $L("
|
|
816
|
-
var $L40 = $L("
|
|
817
|
-
var $L41 = $L("
|
|
818
|
-
var $L42 = $L("
|
|
819
|
-
var $L43 = $L("
|
|
820
|
-
var $L44 = $L("
|
|
821
|
-
var $L45 = $L("
|
|
822
|
-
var $L46 = $L("
|
|
823
|
-
var $L47 = $L("
|
|
824
|
-
var $L48 = $L("
|
|
825
|
-
var $L49 = $L("
|
|
826
|
-
var $L50 = $L("
|
|
827
|
-
var $L51 = $L("
|
|
828
|
-
var $L52 = $L("
|
|
829
|
-
var $L53 = $L("
|
|
830
|
-
var $L54 = $L("
|
|
831
|
-
var $L55 = $L("
|
|
832
|
-
var $L56 = $L("
|
|
833
|
-
var $L57 = $L("
|
|
834
|
-
var $L58 = $L("
|
|
835
|
-
var $L59 = $L("
|
|
836
|
-
var $L60 = $L("
|
|
837
|
-
var $L61 = $L("
|
|
838
|
-
var $L62 = $L("
|
|
839
|
-
var $L63 = $L("
|
|
840
|
-
var $L64 = $L("
|
|
841
|
-
var $L65 = $L("
|
|
842
|
-
var $L66 = $L("
|
|
843
|
-
var $L67 = $L("
|
|
844
|
-
var $L68 = $L("
|
|
845
|
-
var $L69 = $L("
|
|
846
|
-
var $L70 = $L("
|
|
847
|
-
var $L71 = $L("
|
|
848
|
-
var $L72 = $L("
|
|
849
|
-
var $L73 = $L("
|
|
850
|
-
var $L74 = $L("
|
|
851
|
-
var $L75 = $L("
|
|
852
|
-
var $L76 = $L("
|
|
853
|
-
var $L77 = $L("
|
|
854
|
-
var $L78 = $L("
|
|
855
|
-
var $L79 = $L("
|
|
856
|
-
var $L80 = $L("
|
|
857
|
-
var $L81 = $L("
|
|
858
|
-
var $L82 = $L("
|
|
859
|
-
var $L83 = $L("
|
|
860
|
-
var $L84 = $L("
|
|
861
|
-
var $L85 = $L("
|
|
862
|
-
var $L86 = $L("
|
|
863
|
-
var $L87 = $L("
|
|
864
|
-
var $L88 = $L("
|
|
865
|
-
var $L89 = $L("
|
|
866
|
-
var $L90 = $L("
|
|
867
|
-
var $L91 = $L("
|
|
868
|
-
var $L92 = $L("
|
|
869
|
-
var $L93 = $L("
|
|
870
|
-
var $L94 = $L("
|
|
871
|
-
var $L95 = $L("
|
|
872
|
-
var $L96 = $L(
|
|
873
|
-
var $L97 = $L("
|
|
874
|
-
var $L98 = $L("
|
|
875
|
-
var $L99 = $L("
|
|
876
|
-
var $L100 = $L("
|
|
877
|
-
var $L101 = $L("
|
|
878
|
-
var $L102 = $L("
|
|
879
|
-
var $L103 = $L("
|
|
880
|
-
var $L104 = $L("
|
|
881
|
-
var $L105 = $L("
|
|
882
|
-
var $L106 = $L("
|
|
883
|
-
var $L107 = $L("
|
|
884
|
-
var $L108 = $L("
|
|
885
|
-
var $L109 = $L("
|
|
886
|
-
var $L110 = $L("
|
|
887
|
-
var $L111 = $L("
|
|
888
|
-
var $L112 = $L("
|
|
889
|
-
var $L113 = $L("
|
|
890
|
-
var $L114 = $L("
|
|
891
|
-
var $L115 = $L("
|
|
892
|
-
var $L116 = $L("
|
|
893
|
-
var $L117 = $L("
|
|
894
|
-
var $L118 = $L("
|
|
895
|
-
var $L119 = $L("
|
|
896
|
-
var $L120 = $L("
|
|
897
|
-
var $L121 = $L(
|
|
898
|
-
var $L122 = $L("
|
|
899
|
-
var $L123 = $L("
|
|
900
|
-
var $L124 = $L("
|
|
901
|
-
var $L125 = $L("
|
|
902
|
-
var $L126 = $L("
|
|
903
|
-
var $L127 = $L("
|
|
904
|
-
var $L128 = $L("
|
|
905
|
-
var $L129 = $L("
|
|
906
|
-
var $L130 = $L("
|
|
907
|
-
var $L131 = $L("
|
|
908
|
-
var $L132 = $L("
|
|
909
|
-
var $L133 = $L("
|
|
910
|
-
var $L134 = $L("
|
|
911
|
-
var $L135 = $L("
|
|
912
|
-
var $L136 = $L("
|
|
913
|
-
var $L137 = $L("
|
|
914
|
-
var $L138 = $L("
|
|
915
|
-
var $L139 = $L("
|
|
916
|
-
var $L140 = $L("
|
|
917
|
-
var $L141 = $L("
|
|
918
|
-
var $L142 = $L("
|
|
919
|
-
var $L143 = $L("
|
|
920
|
-
var $L144 = $L("
|
|
921
|
-
var $L145 = $L("
|
|
922
|
-
var $L146 = $L("
|
|
923
|
-
var $L147 = $L("
|
|
924
|
-
var $L148 = $L("
|
|
925
|
-
var $
|
|
813
|
+
var $L9 = $L(".");
|
|
814
|
+
var $L10 = $L("super");
|
|
815
|
+
var $L11 = $L("import");
|
|
816
|
+
var $L12 = $L("!");
|
|
817
|
+
var $L13 = $L("::");
|
|
818
|
+
var $L14 = $L("super[");
|
|
819
|
+
var $L15 = $L("import.meta");
|
|
820
|
+
var $L16 = $L(")");
|
|
821
|
+
var $L17 = $L("->");
|
|
822
|
+
var $L18 = $L("null");
|
|
823
|
+
var $L19 = $L("true");
|
|
824
|
+
var $L20 = $L("false");
|
|
825
|
+
var $L21 = $L("yes");
|
|
826
|
+
var $L22 = $L("on");
|
|
827
|
+
var $L23 = $L("no");
|
|
828
|
+
var $L24 = $L("off");
|
|
829
|
+
var $L25 = $L(",");
|
|
830
|
+
var $L26 = $L("]");
|
|
831
|
+
var $L27 = $L("}");
|
|
832
|
+
var $L28 = $L("**=");
|
|
833
|
+
var $L29 = $L("*=");
|
|
834
|
+
var $L30 = $L("/=");
|
|
835
|
+
var $L31 = $L("%=");
|
|
836
|
+
var $L32 = $L("+=");
|
|
837
|
+
var $L33 = $L("-=");
|
|
838
|
+
var $L34 = $L("<<=");
|
|
839
|
+
var $L35 = $L(">>>=");
|
|
840
|
+
var $L36 = $L(">>=");
|
|
841
|
+
var $L37 = $L("&&=");
|
|
842
|
+
var $L38 = $L("&=");
|
|
843
|
+
var $L39 = $L("^=");
|
|
844
|
+
var $L40 = $L("||=");
|
|
845
|
+
var $L41 = $L("|=");
|
|
846
|
+
var $L42 = $L("??=");
|
|
847
|
+
var $L43 = $L("?=");
|
|
848
|
+
var $L44 = $L("=");
|
|
849
|
+
var $L45 = $L("**");
|
|
850
|
+
var $L46 = $L("*");
|
|
851
|
+
var $L47 = $L("/");
|
|
852
|
+
var $L48 = $L("%");
|
|
853
|
+
var $L49 = $L("+");
|
|
854
|
+
var $L50 = $L("-");
|
|
855
|
+
var $L51 = $L("<=");
|
|
856
|
+
var $L52 = $L(">=");
|
|
857
|
+
var $L53 = $L("<<");
|
|
858
|
+
var $L54 = $L(">>>");
|
|
859
|
+
var $L55 = $L(">>");
|
|
860
|
+
var $L56 = $L(">");
|
|
861
|
+
var $L57 = $L("!==");
|
|
862
|
+
var $L58 = $L("!=");
|
|
863
|
+
var $L59 = $L("isnt");
|
|
864
|
+
var $L60 = $L("is");
|
|
865
|
+
var $L61 = $L("===");
|
|
866
|
+
var $L62 = $L("==");
|
|
867
|
+
var $L63 = $L("and");
|
|
868
|
+
var $L64 = $L("&&");
|
|
869
|
+
var $L65 = $L("of");
|
|
870
|
+
var $L66 = $L("or");
|
|
871
|
+
var $L67 = $L("||");
|
|
872
|
+
var $L68 = $L("??");
|
|
873
|
+
var $L69 = $L("instanceof");
|
|
874
|
+
var $L70 = $L("in");
|
|
875
|
+
var $L71 = $L("&");
|
|
876
|
+
var $L72 = $L("^");
|
|
877
|
+
var $L73 = $L("|");
|
|
878
|
+
var $L74 = $L(";");
|
|
879
|
+
var $L75 = $L("own");
|
|
880
|
+
var $L76 = $L("finally");
|
|
881
|
+
var $L77 = $L("break");
|
|
882
|
+
var $L78 = $L("continue");
|
|
883
|
+
var $L79 = $L("debugger");
|
|
884
|
+
var $L80 = $L("import type");
|
|
885
|
+
var $L81 = $L("default");
|
|
886
|
+
var $L82 = $L(":=");
|
|
887
|
+
var $L83 = $L("/*");
|
|
888
|
+
var $L84 = $L("*/");
|
|
889
|
+
var $L85 = $L("###");
|
|
890
|
+
var $L86 = $L("as");
|
|
891
|
+
var $L87 = $L("async");
|
|
892
|
+
var $L88 = $L("await");
|
|
893
|
+
var $L89 = $L("`");
|
|
894
|
+
var $L90 = $L("case");
|
|
895
|
+
var $L91 = $L("catch");
|
|
896
|
+
var $L92 = $L("class");
|
|
897
|
+
var $L93 = $L("#{");
|
|
898
|
+
var $L94 = $L(":");
|
|
899
|
+
var $L95 = $L("delete");
|
|
900
|
+
var $L96 = $L("do");
|
|
901
|
+
var $L97 = $L("..");
|
|
902
|
+
var $L98 = $L("...");
|
|
903
|
+
var $L99 = $L('"');
|
|
904
|
+
var $L100 = $L("else");
|
|
905
|
+
var $L101 = $L("export");
|
|
906
|
+
var $L102 = $L("for");
|
|
907
|
+
var $L103 = $L("from");
|
|
908
|
+
var $L104 = $L("function");
|
|
909
|
+
var $L105 = $L("get");
|
|
910
|
+
var $L106 = $L("set");
|
|
911
|
+
var $L107 = $L("if");
|
|
912
|
+
var $L108 = $L(" ");
|
|
913
|
+
var $L109 = $L("let");
|
|
914
|
+
var $L110 = $L("const");
|
|
915
|
+
var $L111 = $L("loop");
|
|
916
|
+
var $L112 = $L("new");
|
|
917
|
+
var $L113 = $L("not");
|
|
918
|
+
var $L114 = $L("{");
|
|
919
|
+
var $L115 = $L("[");
|
|
920
|
+
var $L116 = $L("(");
|
|
921
|
+
var $L117 = $L("?");
|
|
922
|
+
var $L118 = $L("return");
|
|
923
|
+
var $L119 = $L("'");
|
|
924
|
+
var $L120 = $L("static");
|
|
925
|
+
var $L121 = $L("${");
|
|
926
|
+
var $L122 = $L("switch");
|
|
927
|
+
var $L123 = $L("target");
|
|
928
|
+
var $L124 = $L("then");
|
|
929
|
+
var $L125 = $L("throw");
|
|
930
|
+
var $L126 = $L('"""');
|
|
931
|
+
var $L127 = $L("'''");
|
|
932
|
+
var $L128 = $L("```");
|
|
933
|
+
var $L129 = $L("try");
|
|
934
|
+
var $L130 = $L("typeof");
|
|
935
|
+
var $L131 = $L("unless");
|
|
936
|
+
var $L132 = $L("until");
|
|
937
|
+
var $L133 = $L("var");
|
|
938
|
+
var $L134 = $L("void");
|
|
939
|
+
var $L135 = $L("when");
|
|
940
|
+
var $L136 = $L("while");
|
|
941
|
+
var $L137 = $L("yield");
|
|
942
|
+
var $L138 = $L("/>");
|
|
943
|
+
var $L139 = $L("</");
|
|
944
|
+
var $L140 = $L("<>");
|
|
945
|
+
var $L141 = $L("</>");
|
|
946
|
+
var $L142 = $L("declare");
|
|
947
|
+
var $L143 = $L("type");
|
|
948
|
+
var $L144 = $L("interface");
|
|
949
|
+
var $L145 = $L("namespace");
|
|
950
|
+
var $L146 = $L("readonly");
|
|
951
|
+
var $L147 = $L("asserts");
|
|
952
|
+
var $L148 = $L("keyof");
|
|
953
|
+
var $L149 = $L("infer");
|
|
954
|
+
var $L150 = $L("[]");
|
|
955
|
+
var $L151 = $L("civet");
|
|
956
|
+
var $L152 = $L(" ");
|
|
957
|
+
var $L153 = $L(" ");
|
|
958
|
+
var $R0 = $R(new RegExp("(of|then|when)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
|
|
926
959
|
var $R1 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
|
|
927
|
-
var $R2 = $R(new RegExp("[!~+-]", "suy"));
|
|
960
|
+
var $R2 = $R(new RegExp("[!~+-](?!\\s)", "suy"));
|
|
928
961
|
var $R3 = $R(new RegExp("(?=[\\s\\)])", "suy"));
|
|
929
962
|
var $R4 = $R(new RegExp('[^;"\\s]+', "suy"));
|
|
930
963
|
var $R5 = $R(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
|
|
@@ -946,27 +979,32 @@ var Civet = (() => {
|
|
|
946
979
|
var $R21 = $R(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
|
|
947
980
|
var $R22 = $R(new RegExp("(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+", "suy"));
|
|
948
981
|
var $R23 = $R(new RegExp("(?:on|off|yes|no)(?!\\p{ID_Continue})", "suy"));
|
|
949
|
-
var $R24 = $R(new RegExp("(?:
|
|
950
|
-
var $R25 = $R(new RegExp("
|
|
951
|
-
var $R26 = $R(new RegExp("
|
|
952
|
-
var $R27 = $R(new RegExp("
|
|
953
|
-
var $R28 = $R(new RegExp("[^\\r\\n]", "suy"));
|
|
954
|
-
var $R29 = $R(new RegExp("[
|
|
955
|
-
var $R30 = $R(new RegExp("[\\
|
|
956
|
-
var $R31 = $R(new RegExp("
|
|
957
|
-
var $R32 = $R(new RegExp("
|
|
958
|
-
var $R33 = $R(new RegExp("
|
|
959
|
-
var $R34 = $R(new RegExp(
|
|
960
|
-
var $R35 = $R(new RegExp("
|
|
961
|
-
var $R36 = $R(new RegExp("[^
|
|
962
|
-
var $R37 = $R(new RegExp("[
|
|
963
|
-
var $R38 = $R(new RegExp("[+-]", "suy"));
|
|
964
|
-
var $R39 = $R(new RegExp("
|
|
965
|
-
var $R40 = $R(new RegExp("[\\
|
|
966
|
-
var $R41 = $R(new RegExp("[\\
|
|
967
|
-
var $R42 = $R(new RegExp("\\s
|
|
968
|
-
var $R43 = $R(new RegExp("\\
|
|
969
|
-
var
|
|
982
|
+
var $R24 = $R(new RegExp("(?:isnt)(?!\\p{ID_Continue})", "suy"));
|
|
983
|
+
var $R25 = $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"));
|
|
984
|
+
var $R26 = $R(new RegExp("\\/\\/[^\\r\\n]*", "suy"));
|
|
985
|
+
var $R27 = $R(new RegExp(".", "suy"));
|
|
986
|
+
var $R28 = $R(new RegExp("#([^\\r\\n]*)", "suy"));
|
|
987
|
+
var $R29 = $R(new RegExp("[^\\r\\n]", "suy"));
|
|
988
|
+
var $R30 = $R(new RegExp("[ \\t]+", "suy"));
|
|
989
|
+
var $R31 = $R(new RegExp("[\\s]+", "suy"));
|
|
990
|
+
var $R32 = $R(new RegExp("(?!\\p{ID_Continue})", "suy"));
|
|
991
|
+
var $R33 = $R(new RegExp("\\s", "suy"));
|
|
992
|
+
var $R34 = $R(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
|
|
993
|
+
var $R35 = $R(new RegExp('"[^"]*"', "suy"));
|
|
994
|
+
var $R36 = $R(new RegExp("'[^']*'", "suy"));
|
|
995
|
+
var $R37 = $R(new RegExp("[^{}<>]+", "suy"));
|
|
996
|
+
var $R38 = $R(new RegExp("[+-]?", "suy"));
|
|
997
|
+
var $R39 = $R(new RegExp("[+-]", "suy"));
|
|
998
|
+
var $R40 = $R(new RegExp("#![^\\r\\n]*", "suy"));
|
|
999
|
+
var $R41 = $R(new RegExp("[\\t ]*", "suy"));
|
|
1000
|
+
var $R42 = $R(new RegExp("[\\s]*", "suy"));
|
|
1001
|
+
var $R43 = $R(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)", "suy"));
|
|
1002
|
+
var $R44 = $R(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
|
|
1003
|
+
var Program$0 = $TS($S(Reset, Init, __, $Q(TopLevelStatement), __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
1004
|
+
var statements = $4;
|
|
1005
|
+
module.processProgram(statements);
|
|
1006
|
+
return $0;
|
|
1007
|
+
});
|
|
970
1008
|
function Program(state) {
|
|
971
1009
|
if (state.verbose)
|
|
972
1010
|
console.log("ENTER:", "Program");
|
|
@@ -986,6 +1024,31 @@ var Civet = (() => {
|
|
|
986
1024
|
return TopLevelStatement$0(state);
|
|
987
1025
|
}
|
|
988
1026
|
}
|
|
1027
|
+
var ExtendedExpression$0 = $TS($S(__, ExpressionizedStatement), function($skip, $loc, $0, $1, $2) {
|
|
1028
|
+
if ($1.length) {
|
|
1029
|
+
$2.children.splice(0, 0, ...$1);
|
|
1030
|
+
}
|
|
1031
|
+
return $2;
|
|
1032
|
+
});
|
|
1033
|
+
var ExtendedExpression$1 = AssignmentExpression;
|
|
1034
|
+
function ExtendedExpression(state) {
|
|
1035
|
+
if (state.tokenize) {
|
|
1036
|
+
return $TOKEN("ExtendedExpression", state, ExtendedExpression$0(state) || ExtendedExpression$1(state));
|
|
1037
|
+
} else {
|
|
1038
|
+
return ExtendedExpression$0(state) || ExtendedExpression$1(state);
|
|
1039
|
+
}
|
|
1040
|
+
}
|
|
1041
|
+
var ExpressionizedStatement$0 = DebuggerExpression;
|
|
1042
|
+
var ExpressionizedStatement$1 = IfExpression;
|
|
1043
|
+
var ExpressionizedStatement$2 = SwitchExpression;
|
|
1044
|
+
var ExpressionizedStatement$3 = ThrowExpression;
|
|
1045
|
+
function ExpressionizedStatement(state) {
|
|
1046
|
+
if (state.tokenize) {
|
|
1047
|
+
return $TOKEN("ExpressionizedStatement", state, ExpressionizedStatement$0(state) || ExpressionizedStatement$1(state) || ExpressionizedStatement$2(state) || ExpressionizedStatement$3(state));
|
|
1048
|
+
} else {
|
|
1049
|
+
return ExpressionizedStatement$0(state) || ExpressionizedStatement$1(state) || ExpressionizedStatement$2(state) || ExpressionizedStatement$3(state);
|
|
1050
|
+
}
|
|
1051
|
+
}
|
|
989
1052
|
var Expression$0 = $TS($S(AssignmentExpression, $Q($S(__, Comma, AssignmentExpression))), function($skip, $loc, $0, $1, $2) {
|
|
990
1053
|
if ($2.length == 0)
|
|
991
1054
|
return $1;
|
|
@@ -1057,7 +1120,7 @@ var Civet = (() => {
|
|
|
1057
1120
|
return NestedArgument$0(state);
|
|
1058
1121
|
}
|
|
1059
1122
|
}
|
|
1060
|
-
var InlineArgumentExpressions$0 = $TS($S($S($E(DotDotDot),
|
|
1123
|
+
var InlineArgumentExpressions$0 = $TS($S($S($E(DotDotDot), ExtendedExpression), $Q($S(__, Comma, $Q(TrailingComment), $E(DotDotDot), ExtendedExpression))), function($skip, $loc, $0, $1, $2) {
|
|
1061
1124
|
if ($2.length == 0)
|
|
1062
1125
|
return $1;
|
|
1063
1126
|
return $0;
|
|
@@ -1111,7 +1174,23 @@ var Civet = (() => {
|
|
|
1111
1174
|
}
|
|
1112
1175
|
var BinaryOpExpression$0 = $TS($S(UnaryExpression, $Q($S(__, BinaryOp, __, UnaryExpression))), function($skip, $loc, $0, $1, $2) {
|
|
1113
1176
|
if ($2.length) {
|
|
1114
|
-
|
|
1177
|
+
const expandedOps = module.expandChainedComparisons($0);
|
|
1178
|
+
let i = 2;
|
|
1179
|
+
while (i < expandedOps.length) {
|
|
1180
|
+
const op = expandedOps[i];
|
|
1181
|
+
if (op.type === "Ref") {
|
|
1182
|
+
const [a, wsOp, op2, wsB, b] = expandedOps.slice(i - 2, i + 3);
|
|
1183
|
+
module.insertTrimmingSpace(wsOp, "");
|
|
1184
|
+
module.insertTrimmingSpace(wsB, "");
|
|
1185
|
+
expandedOps.splice(i - 2, 5, {
|
|
1186
|
+
type: "Call",
|
|
1187
|
+
children: [wsOp, op2, ".call(", wsB, b, ", ", a, ") >= 0"]
|
|
1188
|
+
});
|
|
1189
|
+
} else {
|
|
1190
|
+
i += 4;
|
|
1191
|
+
}
|
|
1192
|
+
}
|
|
1193
|
+
return expandedOps;
|
|
1115
1194
|
}
|
|
1116
1195
|
return $1;
|
|
1117
1196
|
});
|
|
@@ -1185,12 +1264,17 @@ var Civet = (() => {
|
|
|
1185
1264
|
return UpdateExpressionSymbol$0(state);
|
|
1186
1265
|
}
|
|
1187
1266
|
}
|
|
1188
|
-
var AssignmentExpression$0 = $TS($S($Q(TrailingComment),
|
|
1189
|
-
if ($1.length)
|
|
1267
|
+
var AssignmentExpression$0 = $TS($S($Q(TrailingComment), AssignmentExpressionTail), function($skip, $loc, $0, $1, $2) {
|
|
1268
|
+
if ($1.length) {
|
|
1269
|
+
if ($2.children) {
|
|
1270
|
+
$2.children.splice(0, 0, ...$1);
|
|
1271
|
+
return $2;
|
|
1272
|
+
}
|
|
1190
1273
|
return $0;
|
|
1274
|
+
}
|
|
1191
1275
|
return $2;
|
|
1192
1276
|
});
|
|
1193
|
-
var AssignmentExpression$1 = $S(__,
|
|
1277
|
+
var AssignmentExpression$1 = $S(__, AssignmentExpressionTail);
|
|
1194
1278
|
function AssignmentExpression(state) {
|
|
1195
1279
|
if (state.tokenize) {
|
|
1196
1280
|
return $TOKEN("AssignmentExpression", state, AssignmentExpression$0(state) || AssignmentExpression$1(state));
|
|
@@ -1198,71 +1282,105 @@ var Civet = (() => {
|
|
|
1198
1282
|
return AssignmentExpression$0(state) || AssignmentExpression$1(state);
|
|
1199
1283
|
}
|
|
1200
1284
|
}
|
|
1201
|
-
var
|
|
1202
|
-
var
|
|
1203
|
-
var
|
|
1204
|
-
|
|
1205
|
-
|
|
1206
|
-
|
|
1207
|
-
const lhs = lastAssignment
|
|
1208
|
-
if (
|
|
1209
|
-
|
|
1210
|
-
|
|
1211
|
-
|
|
1212
|
-
|
|
1213
|
-
|
|
1214
|
-
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1218
|
-
|
|
1219
|
-
|
|
1220
|
-
|
|
1221
|
-
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1285
|
+
var AssignmentExpressionTail$0 = YieldExpression;
|
|
1286
|
+
var AssignmentExpressionTail$1 = ArrowFunction;
|
|
1287
|
+
var AssignmentExpressionTail$2 = $TS($S($P($S(__, LeftHandSideExpression, __, AssignmentOp)), ExtendedExpression), function($skip, $loc, $0, $1, $2) {
|
|
1288
|
+
let tail = [], i = 0, len = $1.length;
|
|
1289
|
+
while (i < len) {
|
|
1290
|
+
const lastAssignment = $1[i++];
|
|
1291
|
+
const [, lhs, , op] = lastAssignment;
|
|
1292
|
+
if (op.token !== "=")
|
|
1293
|
+
continue;
|
|
1294
|
+
if (lhs.type === "ObjectExpression") {
|
|
1295
|
+
lhs.children.splice(0, 0, "(");
|
|
1296
|
+
tail.push(")");
|
|
1297
|
+
break;
|
|
1298
|
+
}
|
|
1299
|
+
}
|
|
1300
|
+
i = len - 1;
|
|
1301
|
+
while (i >= 0) {
|
|
1302
|
+
const lastAssignment = $1[i];
|
|
1303
|
+
if (lastAssignment[3].token === "=") {
|
|
1304
|
+
const lhs = lastAssignment[1];
|
|
1305
|
+
if (Array.isArray(lhs) && lhs.length > 1) {
|
|
1306
|
+
const props = lhs[lhs.length - 1];
|
|
1307
|
+
if (Array.isArray(props)) {
|
|
1308
|
+
const lastProp = props[props.length - 1];
|
|
1309
|
+
if (lastProp.type === "SliceExpression") {
|
|
1310
|
+
const { start, end, children: c } = lastProp;
|
|
1311
|
+
c[0].token = ".splice(";
|
|
1312
|
+
c[1] = start;
|
|
1313
|
+
c[2] = ", ";
|
|
1314
|
+
if (end)
|
|
1315
|
+
c[3] = [end, " - ", start];
|
|
1316
|
+
else
|
|
1317
|
+
c[3] = ["1/0"];
|
|
1318
|
+
c[4] = [", ...", $2];
|
|
1319
|
+
c[5] = ")";
|
|
1225
1320
|
lastAssignment.pop();
|
|
1226
|
-
|
|
1321
|
+
if (module.isWhitespaceOrEmpty(lastAssignment[2]))
|
|
1322
|
+
lastAssignment.pop();
|
|
1323
|
+
if ($1.length > 1) {
|
|
1324
|
+
throw new Error("Not implemented yet! TODO: Handle multiple splice assignments");
|
|
1325
|
+
}
|
|
1326
|
+
return $1;
|
|
1327
|
+
}
|
|
1227
1328
|
}
|
|
1228
1329
|
}
|
|
1229
1330
|
}
|
|
1331
|
+
i--;
|
|
1230
1332
|
}
|
|
1333
|
+
const names = $1.flatMap(([, l]) => l.names || []);
|
|
1231
1334
|
return {
|
|
1232
1335
|
type: "AssignmentExpression",
|
|
1233
|
-
children:
|
|
1336
|
+
children: [...$0, ...tail],
|
|
1337
|
+
names
|
|
1234
1338
|
};
|
|
1235
1339
|
});
|
|
1236
|
-
var
|
|
1237
|
-
function
|
|
1340
|
+
var AssignmentExpressionTail$3 = ConditionalExpression;
|
|
1341
|
+
function AssignmentExpressionTail(state) {
|
|
1238
1342
|
if (state.tokenize) {
|
|
1239
|
-
return $TOKEN("
|
|
1343
|
+
return $TOKEN("AssignmentExpressionTail", state, AssignmentExpressionTail$0(state) || AssignmentExpressionTail$1(state) || AssignmentExpressionTail$2(state) || AssignmentExpressionTail$3(state));
|
|
1240
1344
|
} else {
|
|
1241
|
-
return
|
|
1345
|
+
return AssignmentExpressionTail$0(state) || AssignmentExpressionTail$1(state) || AssignmentExpressionTail$2(state) || AssignmentExpressionTail$3(state);
|
|
1242
1346
|
}
|
|
1243
1347
|
}
|
|
1244
|
-
var
|
|
1245
|
-
function
|
|
1348
|
+
var YieldExpression$0 = $S(Yield, YieldTail);
|
|
1349
|
+
function YieldExpression(state) {
|
|
1246
1350
|
if (state.verbose)
|
|
1247
|
-
console.log("ENTER:", "
|
|
1351
|
+
console.log("ENTER:", "YieldExpression");
|
|
1248
1352
|
if (state.tokenize) {
|
|
1249
|
-
return $TOKEN("
|
|
1353
|
+
return $TOKEN("YieldExpression", state, YieldExpression$0(state));
|
|
1250
1354
|
} else {
|
|
1251
|
-
return
|
|
1355
|
+
return YieldExpression$0(state);
|
|
1252
1356
|
}
|
|
1253
1357
|
}
|
|
1254
|
-
var
|
|
1255
|
-
|
|
1358
|
+
var YieldTail$0 = $Y(EOS);
|
|
1359
|
+
var YieldTail$1 = $S($E($S($Q(TrailingComment), Star)), AssignmentExpression);
|
|
1360
|
+
function YieldTail(state) {
|
|
1361
|
+
if (state.tokenize) {
|
|
1362
|
+
return $TOKEN("YieldTail", state, YieldTail$0(state) || YieldTail$1(state));
|
|
1363
|
+
} else {
|
|
1364
|
+
return YieldTail$0(state) || YieldTail$1(state);
|
|
1365
|
+
}
|
|
1366
|
+
}
|
|
1367
|
+
var ArrowFunction$0 = $TS($S($E($S(Async, __)), ArrowFunctionTail), function($skip, $loc, $0, $1, $2) {
|
|
1368
|
+
if ($1)
|
|
1369
|
+
$2.children.unshift($1);
|
|
1370
|
+
return $2;
|
|
1371
|
+
});
|
|
1372
|
+
function ArrowFunction(state) {
|
|
1256
1373
|
if (state.verbose)
|
|
1257
|
-
console.log("ENTER:", "
|
|
1374
|
+
console.log("ENTER:", "ArrowFunction");
|
|
1258
1375
|
if (state.tokenize) {
|
|
1259
|
-
return $TOKEN("
|
|
1376
|
+
return $TOKEN("ArrowFunction", state, ArrowFunction$0(state));
|
|
1260
1377
|
} else {
|
|
1261
|
-
return
|
|
1378
|
+
return ArrowFunction$0(state);
|
|
1262
1379
|
}
|
|
1263
1380
|
}
|
|
1264
|
-
var
|
|
1265
|
-
var
|
|
1381
|
+
var ArrowFunctionTail$0 = ThinArrowFunction;
|
|
1382
|
+
var ArrowFunctionTail$1 = $TS($S(Parameters, $E(ReturnTypeSuffix), FatArrow, FatArrowBody), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
1383
|
+
var parameters = $1;
|
|
1266
1384
|
var suffix = $2;
|
|
1267
1385
|
var expOrBlock = $4;
|
|
1268
1386
|
const isVoid = suffix?.children?.[1]?.[0]?.[1]?.token === "void";
|
|
@@ -1271,15 +1389,19 @@ var Civet = (() => {
|
|
|
1271
1389
|
module.addImplicitReturns(expOrBlock);
|
|
1272
1390
|
}
|
|
1273
1391
|
return {
|
|
1274
|
-
type: "
|
|
1392
|
+
type: "ArrowFunction",
|
|
1393
|
+
parameters,
|
|
1394
|
+
returnType: suffix,
|
|
1395
|
+
ts: false,
|
|
1396
|
+
block: expOrBlock,
|
|
1275
1397
|
children: $0
|
|
1276
1398
|
};
|
|
1277
1399
|
});
|
|
1278
|
-
function
|
|
1400
|
+
function ArrowFunctionTail(state) {
|
|
1279
1401
|
if (state.tokenize) {
|
|
1280
|
-
return $TOKEN("
|
|
1402
|
+
return $TOKEN("ArrowFunctionTail", state, ArrowFunctionTail$0(state) || ArrowFunctionTail$1(state));
|
|
1281
1403
|
} else {
|
|
1282
|
-
return
|
|
1404
|
+
return ArrowFunctionTail$0(state) || ArrowFunctionTail$1(state);
|
|
1283
1405
|
}
|
|
1284
1406
|
}
|
|
1285
1407
|
var FatArrow$0 = $TS($S(__, $EXPECT($L3, fail, 'FatArrow "=>"')), function($skip, $loc, $0, $1, $2) {
|
|
@@ -1297,25 +1419,24 @@ var Civet = (() => {
|
|
|
1297
1419
|
return FatArrow$0(state);
|
|
1298
1420
|
}
|
|
1299
1421
|
}
|
|
1300
|
-
var FatArrowBody$0 = $T($S(__, OpenBrace, EOS,
|
|
1422
|
+
var FatArrowBody$0 = $T($S(__, OpenBrace, EOS, NestedBlockStatements, __, CloseBrace), function(value) {
|
|
1301
1423
|
var exps = value[3];
|
|
1302
1424
|
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1303
1425
|
});
|
|
1304
|
-
var FatArrowBody$1 = $T($S(InsertOpenBrace, EOS,
|
|
1426
|
+
var FatArrowBody$1 = $T($S(InsertOpenBrace, EOS, NestedBlockStatements, InsertNewline, InsertIndent, InsertCloseBrace), function(value) {
|
|
1305
1427
|
var exps = value[2];
|
|
1306
1428
|
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1307
1429
|
});
|
|
1308
1430
|
var FatArrowBody$2 = AssignmentExpression;
|
|
1309
|
-
var FatArrowBody$3 =
|
|
1310
|
-
var FatArrowBody$4 = EmptyBlock;
|
|
1431
|
+
var FatArrowBody$3 = EmptyBlock;
|
|
1311
1432
|
function FatArrowBody(state) {
|
|
1312
1433
|
if (state.tokenize) {
|
|
1313
|
-
return $TOKEN("FatArrowBody", state, FatArrowBody$0(state) || FatArrowBody$1(state) || FatArrowBody$2(state) || FatArrowBody$3(state)
|
|
1434
|
+
return $TOKEN("FatArrowBody", state, FatArrowBody$0(state) || FatArrowBody$1(state) || FatArrowBody$2(state) || FatArrowBody$3(state));
|
|
1314
1435
|
} else {
|
|
1315
|
-
return FatArrowBody$0(state) || FatArrowBody$1(state) || FatArrowBody$2(state) || FatArrowBody$3(state)
|
|
1436
|
+
return FatArrowBody$0(state) || FatArrowBody$1(state) || FatArrowBody$2(state) || FatArrowBody$3(state);
|
|
1316
1437
|
}
|
|
1317
1438
|
}
|
|
1318
|
-
var ConditionalExpression$0 = $TS($S(ShortCircuitExpression, $E($S(__, QuestionMark,
|
|
1439
|
+
var ConditionalExpression$0 = $TS($S(ShortCircuitExpression, $E($S(__, QuestionMark, ExtendedExpression, __, Colon, ExtendedExpression))), function($skip, $loc, $0, $1, $2) {
|
|
1319
1440
|
if ($2)
|
|
1320
1441
|
return $0;
|
|
1321
1442
|
return $1;
|
|
@@ -1348,7 +1469,7 @@ var Civet = (() => {
|
|
|
1348
1469
|
var PrimaryExpression$6 = ClassExpression;
|
|
1349
1470
|
var PrimaryExpression$7 = RegularExpressionLiteral;
|
|
1350
1471
|
var PrimaryExpression$8 = TemplateLiteral;
|
|
1351
|
-
var PrimaryExpression$9 = $S(OpenParen,
|
|
1472
|
+
var PrimaryExpression$9 = $S(OpenParen, ExtendedExpression, __, CloseParen);
|
|
1352
1473
|
var PrimaryExpression$10 = JSXElement;
|
|
1353
1474
|
var PrimaryExpression$11 = JSXFragment;
|
|
1354
1475
|
function PrimaryExpression(state) {
|
|
@@ -1444,7 +1565,7 @@ var Civet = (() => {
|
|
|
1444
1565
|
return ClassElement$0(state) || ClassElement$1(state);
|
|
1445
1566
|
}
|
|
1446
1567
|
}
|
|
1447
|
-
var FieldDefinition$0 = $TS($S(InsertReadonly, ClassElementName, $E(TypeSuffix), __, ConstAssignment,
|
|
1568
|
+
var FieldDefinition$0 = $TS($S(InsertReadonly, ClassElementName, $E(TypeSuffix), __, ConstAssignment, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
1448
1569
|
var r = $1;
|
|
1449
1570
|
var ca = $5;
|
|
1450
1571
|
r.children[0].$loc = {
|
|
@@ -1487,27 +1608,22 @@ var Civet = (() => {
|
|
|
1487
1608
|
return AtAccessor$0(state);
|
|
1488
1609
|
}
|
|
1489
1610
|
}
|
|
1490
|
-
var LeftHandSideExpression$0 =
|
|
1491
|
-
|
|
1611
|
+
var LeftHandSideExpression$0 = $TS($S($Q($S(New, $N($EXPECT($L9, fail, 'LeftHandSideExpression "."')), __)), CallExpression), function($skip, $loc, $0, $1, $2) {
|
|
1612
|
+
if ($1.length)
|
|
1613
|
+
return $0;
|
|
1614
|
+
return $2;
|
|
1615
|
+
});
|
|
1492
1616
|
function LeftHandSideExpression(state) {
|
|
1493
|
-
if (state.tokenize) {
|
|
1494
|
-
return $TOKEN("LeftHandSideExpression", state, LeftHandSideExpression$0(state) || LeftHandSideExpression$1(state));
|
|
1495
|
-
} else {
|
|
1496
|
-
return LeftHandSideExpression$0(state) || LeftHandSideExpression$1(state);
|
|
1497
|
-
}
|
|
1498
|
-
}
|
|
1499
|
-
var NewExpression$0 = $S($P($S(New, __)), CallExpression);
|
|
1500
|
-
function NewExpression(state) {
|
|
1501
1617
|
if (state.verbose)
|
|
1502
|
-
console.log("ENTER:", "
|
|
1618
|
+
console.log("ENTER:", "LeftHandSideExpression");
|
|
1503
1619
|
if (state.tokenize) {
|
|
1504
|
-
return $TOKEN("
|
|
1620
|
+
return $TOKEN("LeftHandSideExpression", state, LeftHandSideExpression$0(state));
|
|
1505
1621
|
} else {
|
|
1506
|
-
return
|
|
1622
|
+
return LeftHandSideExpression$0(state);
|
|
1507
1623
|
}
|
|
1508
1624
|
}
|
|
1509
|
-
var CallExpression$0 = $S($EXPECT($
|
|
1510
|
-
var CallExpression$1 = $S($EXPECT($
|
|
1625
|
+
var CallExpression$0 = $S($EXPECT($L10, fail, 'CallExpression "super"'), ArgumentsWithTrailingCallExpressions);
|
|
1626
|
+
var CallExpression$1 = $S($EXPECT($L11, fail, 'CallExpression "import"'), __, OpenParen, ExtendedExpression, __, CloseParen);
|
|
1511
1627
|
var CallExpression$2 = $TS($S(MemberExpression, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2) {
|
|
1512
1628
|
if ($2.length)
|
|
1513
1629
|
return $0;
|
|
@@ -1540,7 +1656,7 @@ var Civet = (() => {
|
|
|
1540
1656
|
return OptionalShorthand$0(state);
|
|
1541
1657
|
}
|
|
1542
1658
|
}
|
|
1543
|
-
var NonNullAssertion$0 = $T($EXPECT($
|
|
1659
|
+
var NonNullAssertion$0 = $T($EXPECT($L12, fail, 'NonNullAssertion "!"'), function(value) {
|
|
1544
1660
|
return { "ts": true, "children": value };
|
|
1545
1661
|
});
|
|
1546
1662
|
function NonNullAssertion(state) {
|
|
@@ -1552,7 +1668,7 @@ var Civet = (() => {
|
|
|
1552
1668
|
return NonNullAssertion$0(state);
|
|
1553
1669
|
}
|
|
1554
1670
|
}
|
|
1555
|
-
var AdditionalReservedWords$0 = $R$0($EXPECT($R0, fail, "AdditionalReservedWords /(of)(?!\\p{ID_Continue}|[\\u200C\\u200D$])/"));
|
|
1671
|
+
var AdditionalReservedWords$0 = $R$0($EXPECT($R0, fail, "AdditionalReservedWords /(of|then|when)(?!\\p{ID_Continue}|[\\u200C\\u200D$])/"));
|
|
1556
1672
|
function AdditionalReservedWords(state) {
|
|
1557
1673
|
if (state.verbose)
|
|
1558
1674
|
console.log("ENTER:", "AdditionalReservedWords");
|
|
@@ -1567,8 +1683,8 @@ var Civet = (() => {
|
|
|
1567
1683
|
return $0;
|
|
1568
1684
|
return $1;
|
|
1569
1685
|
});
|
|
1570
|
-
var MemberExpression$1 =
|
|
1571
|
-
var MemberExpression$2 =
|
|
1686
|
+
var MemberExpression$1 = SuperProperty;
|
|
1687
|
+
var MemberExpression$2 = MetaProperty;
|
|
1572
1688
|
function MemberExpression(state) {
|
|
1573
1689
|
if (state.tokenize) {
|
|
1574
1690
|
return $TOKEN("MemberExpression", state, MemberExpression$0(state) || MemberExpression$1(state) || MemberExpression$2(state));
|
|
@@ -1577,12 +1693,20 @@ var Civet = (() => {
|
|
|
1577
1693
|
}
|
|
1578
1694
|
}
|
|
1579
1695
|
var MemberExpressionRest$0 = $TS($S($E($C(OptionalShorthand, NonNullAssertion)), MemberBracketContent), function($skip, $loc, $0, $1, $2) {
|
|
1580
|
-
if ($1)
|
|
1696
|
+
if ($1) {
|
|
1697
|
+
if ($1.length === 2 && $2.type === "SliceExpression") {
|
|
1698
|
+
$1.pop();
|
|
1699
|
+
}
|
|
1581
1700
|
return $0;
|
|
1701
|
+
}
|
|
1702
|
+
return $2;
|
|
1703
|
+
});
|
|
1704
|
+
var MemberExpressionRest$1 = $TS($S($E($S($Y(EOS), IndentedFurther)), PropertyAccess), function($skip, $loc, $0, $1, $2) {
|
|
1705
|
+
if ($1)
|
|
1706
|
+
$2.children.unshift($1[1]);
|
|
1582
1707
|
return $2;
|
|
1583
1708
|
});
|
|
1584
|
-
var MemberExpressionRest$
|
|
1585
|
-
var MemberExpressionRest$2 = $TS($S($E($S($Y(EOS), IndentedFurther)), $EXPECT($L12, fail, 'MemberExpressionRest "::"'), $E(IdentifierName)), function($skip, $loc, $0, $1, $2, $3) {
|
|
1709
|
+
var MemberExpressionRest$2 = $TS($S($E($S($Y(EOS), IndentedFurther)), $EXPECT($L13, fail, 'MemberExpressionRest "::"'), $E(IdentifierName)), function($skip, $loc, $0, $1, $2, $3) {
|
|
1586
1710
|
var id = $3;
|
|
1587
1711
|
if (id)
|
|
1588
1712
|
return [".prototype.", id];
|
|
@@ -1596,7 +1720,7 @@ var Civet = (() => {
|
|
|
1596
1720
|
return MemberExpressionRest$0(state) || MemberExpressionRest$1(state) || MemberExpressionRest$2(state) || MemberExpressionRest$3(state);
|
|
1597
1721
|
}
|
|
1598
1722
|
}
|
|
1599
|
-
var MemberBracketContent$0 = $TS($S(OpenBracket,
|
|
1723
|
+
var MemberBracketContent$0 = $TS($S(OpenBracket, ExtendedExpression, $E($S($C(DotDotDot, DotDot), $E(ExtendedExpression))), __, CloseBracket), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
1600
1724
|
if ($3) {
|
|
1601
1725
|
const sep = $3[0];
|
|
1602
1726
|
const end = $3[1];
|
|
@@ -1638,7 +1762,14 @@ var Civet = (() => {
|
|
|
1638
1762
|
return MemberBracketContent$0(state);
|
|
1639
1763
|
}
|
|
1640
1764
|
}
|
|
1641
|
-
var PropertyAccess$0 = $S($E($C(QuestionMark, NonNullAssertion)), Dot, $C(IdentifierName, PrivateIdentifier))
|
|
1765
|
+
var PropertyAccess$0 = $TS($S($E($C(QuestionMark, NonNullAssertion)), Dot, $C(IdentifierName, PrivateIdentifier)), function($skip, $loc, $0, $1, $2, $3) {
|
|
1766
|
+
var id = $3;
|
|
1767
|
+
id.type = "PropertyAccess";
|
|
1768
|
+
id.children.unshift($2);
|
|
1769
|
+
if ($1)
|
|
1770
|
+
id.children.unshift($1);
|
|
1771
|
+
return id;
|
|
1772
|
+
});
|
|
1642
1773
|
function PropertyAccess(state) {
|
|
1643
1774
|
if (state.verbose)
|
|
1644
1775
|
console.log("ENTER:", "PropertyAccess");
|
|
@@ -1648,7 +1779,7 @@ var Civet = (() => {
|
|
|
1648
1779
|
return PropertyAccess$0(state);
|
|
1649
1780
|
}
|
|
1650
1781
|
}
|
|
1651
|
-
var SuperProperty$0 = $S($EXPECT($
|
|
1782
|
+
var SuperProperty$0 = $S($EXPECT($L14, fail, 'SuperProperty "super["'), ExtendedExpression, __, CloseBracket);
|
|
1652
1783
|
function SuperProperty(state) {
|
|
1653
1784
|
if (state.verbose)
|
|
1654
1785
|
console.log("ENTER:", "SuperProperty");
|
|
@@ -1659,7 +1790,7 @@ var Civet = (() => {
|
|
|
1659
1790
|
}
|
|
1660
1791
|
}
|
|
1661
1792
|
var MetaProperty$0 = $S(New, Dot, Target);
|
|
1662
|
-
var MetaProperty$1 = $TV($EXPECT($
|
|
1793
|
+
var MetaProperty$1 = $TV($EXPECT($L15, fail, 'MetaProperty "import.meta"'), function($skip, $loc, $0, $1) {
|
|
1663
1794
|
return { $loc, token: $1 };
|
|
1664
1795
|
});
|
|
1665
1796
|
function MetaProperty(state) {
|
|
@@ -1671,7 +1802,11 @@ var Civet = (() => {
|
|
|
1671
1802
|
}
|
|
1672
1803
|
var Parameters$0 = NonEmptyParameters;
|
|
1673
1804
|
var Parameters$1 = $TV($EXPECT($L0, fail, 'Parameters ""'), function($skip, $loc, $0, $1) {
|
|
1674
|
-
return {
|
|
1805
|
+
return {
|
|
1806
|
+
type: "Parameters",
|
|
1807
|
+
children: [{ $loc, token: "()" }],
|
|
1808
|
+
names: []
|
|
1809
|
+
};
|
|
1675
1810
|
});
|
|
1676
1811
|
function Parameters(state) {
|
|
1677
1812
|
if (state.tokenize) {
|
|
@@ -1680,7 +1815,13 @@ var Civet = (() => {
|
|
|
1680
1815
|
return Parameters$0(state) || Parameters$1(state);
|
|
1681
1816
|
}
|
|
1682
1817
|
}
|
|
1683
|
-
var NonEmptyParameters$0 = $S($E(TypeParameters), OpenParen, $Q(ParameterElement), $E(FunctionRestParameter), __, CloseParen)
|
|
1818
|
+
var NonEmptyParameters$0 = $TS($S($E(TypeParameters), OpenParen, $Q(ParameterElement), $E(FunctionRestParameter), __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
1819
|
+
return {
|
|
1820
|
+
type: "Parameters",
|
|
1821
|
+
children: $0,
|
|
1822
|
+
names: $3.flatMap((p) => p.names)
|
|
1823
|
+
};
|
|
1824
|
+
});
|
|
1684
1825
|
function NonEmptyParameters(state) {
|
|
1685
1826
|
if (state.verbose)
|
|
1686
1827
|
console.log("ENTER:", "NonEmptyParameters");
|
|
@@ -1700,7 +1841,13 @@ var Civet = (() => {
|
|
|
1700
1841
|
return FunctionRestParameter$0(state);
|
|
1701
1842
|
}
|
|
1702
1843
|
}
|
|
1703
|
-
var ParameterElement$0 = $S(
|
|
1844
|
+
var ParameterElement$0 = $TS($S($C(BindingIdentifier, BindingPattern), $E(TypeSuffix), $E(Initializer), ParameterElementDelimiter), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
1845
|
+
return {
|
|
1846
|
+
type: "Parameter",
|
|
1847
|
+
children: $0,
|
|
1848
|
+
names: $1.names
|
|
1849
|
+
};
|
|
1850
|
+
});
|
|
1704
1851
|
function ParameterElement(state) {
|
|
1705
1852
|
if (state.verbose)
|
|
1706
1853
|
console.log("ENTER:", "ParameterElement");
|
|
@@ -1711,7 +1858,7 @@ var Civet = (() => {
|
|
|
1711
1858
|
}
|
|
1712
1859
|
}
|
|
1713
1860
|
var ParameterElementDelimiter$0 = $S($Q(_), Comma);
|
|
1714
|
-
var ParameterElementDelimiter$1 = $Y($S(__, $EXPECT($
|
|
1861
|
+
var ParameterElementDelimiter$1 = $Y($S(__, $EXPECT($L16, fail, 'ParameterElementDelimiter ")"')));
|
|
1715
1862
|
var ParameterElementDelimiter$2 = $TV($Y(EOS), function($skip, $loc, $0, $1) {
|
|
1716
1863
|
return { $loc, token: "," };
|
|
1717
1864
|
});
|
|
@@ -1722,7 +1869,10 @@ var Civet = (() => {
|
|
|
1722
1869
|
return ParameterElementDelimiter$0(state) || ParameterElementDelimiter$1(state) || ParameterElementDelimiter$2(state);
|
|
1723
1870
|
}
|
|
1724
1871
|
}
|
|
1725
|
-
var BindingIdentifier$0 = $S(__, Identifier)
|
|
1872
|
+
var BindingIdentifier$0 = $TS($S(__, Identifier), function($skip, $loc, $0, $1, $2) {
|
|
1873
|
+
$2.children.unshift($1);
|
|
1874
|
+
return $2;
|
|
1875
|
+
});
|
|
1726
1876
|
function BindingIdentifier(state) {
|
|
1727
1877
|
if (state.verbose)
|
|
1728
1878
|
console.log("ENTER:", "BindingIdentifier");
|
|
@@ -1732,8 +1882,16 @@ var Civet = (() => {
|
|
|
1732
1882
|
return BindingIdentifier$0(state);
|
|
1733
1883
|
}
|
|
1734
1884
|
}
|
|
1735
|
-
var BindingPattern$0 = $S(__, ObjectBindingPattern)
|
|
1736
|
-
|
|
1885
|
+
var BindingPattern$0 = $TS($S(__, ObjectBindingPattern), function($skip, $loc, $0, $1, $2) {
|
|
1886
|
+
var p = $2;
|
|
1887
|
+
p.children.unshift($1);
|
|
1888
|
+
return p;
|
|
1889
|
+
});
|
|
1890
|
+
var BindingPattern$1 = $TS($S(__, ArrayBindingPattern), function($skip, $loc, $0, $1, $2) {
|
|
1891
|
+
var p = $2;
|
|
1892
|
+
p.children.unshift($1);
|
|
1893
|
+
return p;
|
|
1894
|
+
});
|
|
1737
1895
|
function BindingPattern(state) {
|
|
1738
1896
|
if (state.tokenize) {
|
|
1739
1897
|
return $TOKEN("BindingPattern", state, BindingPattern$0(state) || BindingPattern$1(state));
|
|
@@ -1741,32 +1899,111 @@ var Civet = (() => {
|
|
|
1741
1899
|
return BindingPattern$0(state) || BindingPattern$1(state);
|
|
1742
1900
|
}
|
|
1743
1901
|
}
|
|
1744
|
-
var ObjectBindingPattern$0 = $S(OpenBrace,
|
|
1745
|
-
|
|
1902
|
+
var ObjectBindingPattern$0 = $TS($S(OpenBrace, ObjectBindingPatternContent, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
1903
|
+
var c = $2;
|
|
1904
|
+
c.children.unshift($1);
|
|
1905
|
+
c.children.push($3, $4);
|
|
1906
|
+
return c;
|
|
1907
|
+
});
|
|
1746
1908
|
function ObjectBindingPattern(state) {
|
|
1909
|
+
if (state.verbose)
|
|
1910
|
+
console.log("ENTER:", "ObjectBindingPattern");
|
|
1911
|
+
if (state.tokenize) {
|
|
1912
|
+
return $TOKEN("ObjectBindingPattern", state, ObjectBindingPattern$0(state));
|
|
1913
|
+
} else {
|
|
1914
|
+
return ObjectBindingPattern$0(state);
|
|
1915
|
+
}
|
|
1916
|
+
}
|
|
1917
|
+
var ObjectBindingPatternContent$0 = $T($S($Y(EOS), NestedBindingProperties), function(value) {
|
|
1918
|
+
return value[1];
|
|
1919
|
+
});
|
|
1920
|
+
var ObjectBindingPatternContent$1 = $TS($S($Q(BindingProperty), $E($S(__, BindingRestProperty))), function($skip, $loc, $0, $1, $2) {
|
|
1921
|
+
var props = $1;
|
|
1922
|
+
var rest = $2;
|
|
1923
|
+
const names = props.flatMap((p) => p.names);
|
|
1924
|
+
if (rest) {
|
|
1925
|
+
props.push(...rest);
|
|
1926
|
+
names.push(...rest[1].names);
|
|
1927
|
+
}
|
|
1928
|
+
return {
|
|
1929
|
+
type: "BindingPattern",
|
|
1930
|
+
names,
|
|
1931
|
+
children: props
|
|
1932
|
+
};
|
|
1933
|
+
});
|
|
1934
|
+
function ObjectBindingPatternContent(state) {
|
|
1747
1935
|
if (state.tokenize) {
|
|
1748
|
-
return $TOKEN("
|
|
1936
|
+
return $TOKEN("ObjectBindingPatternContent", state, ObjectBindingPatternContent$0(state) || ObjectBindingPatternContent$1(state));
|
|
1749
1937
|
} else {
|
|
1750
|
-
return
|
|
1938
|
+
return ObjectBindingPatternContent$0(state) || ObjectBindingPatternContent$1(state);
|
|
1751
1939
|
}
|
|
1752
1940
|
}
|
|
1753
|
-
var ArrayBindingPattern$0 = $S(OpenBracket,
|
|
1754
|
-
|
|
1941
|
+
var ArrayBindingPattern$0 = $TS($S(OpenBracket, ArrayBindingPatternContent, __, CloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
1942
|
+
var c = $2;
|
|
1943
|
+
return {
|
|
1944
|
+
type: "BindingPattern",
|
|
1945
|
+
names: c.names,
|
|
1946
|
+
children: $0
|
|
1947
|
+
};
|
|
1948
|
+
});
|
|
1755
1949
|
function ArrayBindingPattern(state) {
|
|
1950
|
+
if (state.verbose)
|
|
1951
|
+
console.log("ENTER:", "ArrayBindingPattern");
|
|
1952
|
+
if (state.tokenize) {
|
|
1953
|
+
return $TOKEN("ArrayBindingPattern", state, ArrayBindingPattern$0(state));
|
|
1954
|
+
} else {
|
|
1955
|
+
return ArrayBindingPattern$0(state);
|
|
1956
|
+
}
|
|
1957
|
+
}
|
|
1958
|
+
var ArrayBindingPatternContent$0 = $T($S($Y(EOS), NestedBindingElements), function(value) {
|
|
1959
|
+
return value[1];
|
|
1960
|
+
});
|
|
1961
|
+
var ArrayBindingPatternContent$1 = $TS($S($Q($C(BindingElement, Elision)), $E($S(__, BindingRestElement))), function($skip, $loc, $0, $1, $2) {
|
|
1962
|
+
var props = $1;
|
|
1963
|
+
var rest = $2;
|
|
1964
|
+
const names = props.flatMap((p) => p.names || []);
|
|
1965
|
+
if (rest) {
|
|
1966
|
+
props.push(...rest);
|
|
1967
|
+
names.push(...rest[1].names);
|
|
1968
|
+
}
|
|
1969
|
+
return {
|
|
1970
|
+
type: "BindingPattern",
|
|
1971
|
+
names,
|
|
1972
|
+
children: props
|
|
1973
|
+
};
|
|
1974
|
+
});
|
|
1975
|
+
function ArrayBindingPatternContent(state) {
|
|
1976
|
+
if (state.tokenize) {
|
|
1977
|
+
return $TOKEN("ArrayBindingPatternContent", state, ArrayBindingPatternContent$0(state) || ArrayBindingPatternContent$1(state));
|
|
1978
|
+
} else {
|
|
1979
|
+
return ArrayBindingPatternContent$0(state) || ArrayBindingPatternContent$1(state);
|
|
1980
|
+
}
|
|
1981
|
+
}
|
|
1982
|
+
var Elision$0 = $S(__, Comma);
|
|
1983
|
+
function Elision(state) {
|
|
1984
|
+
if (state.verbose)
|
|
1985
|
+
console.log("ENTER:", "Elision");
|
|
1756
1986
|
if (state.tokenize) {
|
|
1757
|
-
return $TOKEN("
|
|
1987
|
+
return $TOKEN("Elision", state, Elision$0(state));
|
|
1758
1988
|
} else {
|
|
1759
|
-
return
|
|
1989
|
+
return Elision$0(state);
|
|
1760
1990
|
}
|
|
1761
1991
|
}
|
|
1762
|
-
var NestedBindingProperties$0 = $TS($S(PushIndent, $Q(NestedBindingProperty), $E(
|
|
1992
|
+
var NestedBindingProperties$0 = $TS($S(PushIndent, $Q(NestedBindingProperty), $E(NestedBindingRestProperty), PopIndent), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
1763
1993
|
var props = $2;
|
|
1764
1994
|
var rest = $3;
|
|
1765
|
-
if (!props.length)
|
|
1995
|
+
if (!(props.length || rest))
|
|
1766
1996
|
return $skip;
|
|
1767
|
-
|
|
1997
|
+
const names = props.flatMap((p) => p.names);
|
|
1998
|
+
if (rest) {
|
|
1768
1999
|
props.push(rest);
|
|
1769
|
-
|
|
2000
|
+
names.push(...rest.names);
|
|
2001
|
+
}
|
|
2002
|
+
return {
|
|
2003
|
+
type: "BindingPattern",
|
|
2004
|
+
children: props,
|
|
2005
|
+
names
|
|
2006
|
+
};
|
|
1770
2007
|
});
|
|
1771
2008
|
function NestedBindingProperties(state) {
|
|
1772
2009
|
if (state.verbose)
|
|
@@ -1777,7 +2014,10 @@ var Civet = (() => {
|
|
|
1777
2014
|
return NestedBindingProperties$0(state);
|
|
1778
2015
|
}
|
|
1779
2016
|
}
|
|
1780
|
-
var NestedBindingProperty$0 = $S(Nested, BindingProperty)
|
|
2017
|
+
var NestedBindingProperty$0 = $TS($S(Nested, BindingProperty), function($skip, $loc, $0, $1, $2) {
|
|
2018
|
+
$2.children.unshift($1);
|
|
2019
|
+
return $2;
|
|
2020
|
+
});
|
|
1781
2021
|
function NestedBindingProperty(state) {
|
|
1782
2022
|
if (state.verbose)
|
|
1783
2023
|
console.log("ENTER:", "NestedBindingProperty");
|
|
@@ -1787,8 +2027,22 @@ var Civet = (() => {
|
|
|
1787
2027
|
return NestedBindingProperty$0(state);
|
|
1788
2028
|
}
|
|
1789
2029
|
}
|
|
1790
|
-
var BindingProperty$0 = $S(__, PropertyName, __, Colon, $C(BindingIdentifier, BindingPattern), $E(Initializer), ObjectPropertyDelimiter)
|
|
1791
|
-
|
|
2030
|
+
var BindingProperty$0 = $TS($S(__, PropertyName, __, Colon, $C(BindingIdentifier, BindingPattern), $E(Initializer), ObjectPropertyDelimiter), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
|
|
2031
|
+
var b = $5;
|
|
2032
|
+
return {
|
|
2033
|
+
type: "BindingPattern",
|
|
2034
|
+
names: b.names,
|
|
2035
|
+
children: $0
|
|
2036
|
+
};
|
|
2037
|
+
});
|
|
2038
|
+
var BindingProperty$1 = $TS($S(BindingIdentifier, $E(Initializer), ObjectPropertyDelimiter), function($skip, $loc, $0, $1, $2, $3) {
|
|
2039
|
+
var b = $1;
|
|
2040
|
+
return {
|
|
2041
|
+
type: "BindingPattern",
|
|
2042
|
+
names: b.names,
|
|
2043
|
+
children: $0
|
|
2044
|
+
};
|
|
2045
|
+
});
|
|
1792
2046
|
function BindingProperty(state) {
|
|
1793
2047
|
if (state.tokenize) {
|
|
1794
2048
|
return $TOKEN("BindingProperty", state, BindingProperty$0(state) || BindingProperty$1(state));
|
|
@@ -1796,7 +2050,23 @@ var Civet = (() => {
|
|
|
1796
2050
|
return BindingProperty$0(state) || BindingProperty$1(state);
|
|
1797
2051
|
}
|
|
1798
2052
|
}
|
|
1799
|
-
var
|
|
2053
|
+
var NestedBindingRestProperty$0 = $TS($S(Nested, BindingRestProperty), function($skip, $loc, $0, $1, $2) {
|
|
2054
|
+
$2.children.unshift($1);
|
|
2055
|
+
return $2;
|
|
2056
|
+
});
|
|
2057
|
+
function NestedBindingRestProperty(state) {
|
|
2058
|
+
if (state.verbose)
|
|
2059
|
+
console.log("ENTER:", "NestedBindingRestProperty");
|
|
2060
|
+
if (state.tokenize) {
|
|
2061
|
+
return $TOKEN("NestedBindingRestProperty", state, NestedBindingRestProperty$0(state));
|
|
2062
|
+
} else {
|
|
2063
|
+
return NestedBindingRestProperty$0(state);
|
|
2064
|
+
}
|
|
2065
|
+
}
|
|
2066
|
+
var BindingRestProperty$0 = $TS($S(DotDotDot, BindingIdentifier), function($skip, $loc, $0, $1, $2) {
|
|
2067
|
+
$2.children.unshift($1);
|
|
2068
|
+
return $2;
|
|
2069
|
+
});
|
|
1800
2070
|
function BindingRestProperty(state) {
|
|
1801
2071
|
if (state.verbose)
|
|
1802
2072
|
console.log("ENTER:", "BindingRestProperty");
|
|
@@ -1809,11 +2079,18 @@ var Civet = (() => {
|
|
|
1809
2079
|
var NestedBindingElements$0 = $TS($S(PushIndent, $Q(NestedBindingElement), $E($S(Nested, BindingRestElement)), PopIndent), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
1810
2080
|
var props = $2;
|
|
1811
2081
|
var rest = $3;
|
|
1812
|
-
if (!props.length)
|
|
2082
|
+
if (!(props.length || rest))
|
|
1813
2083
|
return $skip;
|
|
1814
|
-
|
|
1815
|
-
|
|
1816
|
-
|
|
2084
|
+
const names = props.flatMap((p) => p.names);
|
|
2085
|
+
if (rest) {
|
|
2086
|
+
props.push(...rest);
|
|
2087
|
+
names.push(...rest[1].names);
|
|
2088
|
+
}
|
|
2089
|
+
return {
|
|
2090
|
+
type: "BindingPattern",
|
|
2091
|
+
children: props,
|
|
2092
|
+
names
|
|
2093
|
+
};
|
|
1817
2094
|
});
|
|
1818
2095
|
function NestedBindingElements(state) {
|
|
1819
2096
|
if (state.verbose)
|
|
@@ -1824,7 +2101,10 @@ var Civet = (() => {
|
|
|
1824
2101
|
return NestedBindingElements$0(state);
|
|
1825
2102
|
}
|
|
1826
2103
|
}
|
|
1827
|
-
var NestedBindingElement$0 = $S(Nested, BindingElement)
|
|
2104
|
+
var NestedBindingElement$0 = $TS($S(Nested, BindingElement), function($skip, $loc, $0, $1, $2) {
|
|
2105
|
+
$2.children.unshift($1);
|
|
2106
|
+
return $2;
|
|
2107
|
+
});
|
|
1828
2108
|
function NestedBindingElement(state) {
|
|
1829
2109
|
if (state.verbose)
|
|
1830
2110
|
console.log("ENTER:", "NestedBindingElement");
|
|
@@ -1834,7 +2114,14 @@ var Civet = (() => {
|
|
|
1834
2114
|
return NestedBindingElement$0(state);
|
|
1835
2115
|
}
|
|
1836
2116
|
}
|
|
1837
|
-
var BindingElement$0 = $S(
|
|
2117
|
+
var BindingElement$0 = $TS($S($C(BindingIdentifier, BindingPattern), $E(Initializer), ArrayElementDelimiter), function($skip, $loc, $0, $1, $2, $3) {
|
|
2118
|
+
var binding = $1;
|
|
2119
|
+
return {
|
|
2120
|
+
type: "BindingPattern",
|
|
2121
|
+
names: binding.names,
|
|
2122
|
+
children: $0
|
|
2123
|
+
};
|
|
2124
|
+
});
|
|
1838
2125
|
function BindingElement(state) {
|
|
1839
2126
|
if (state.verbose)
|
|
1840
2127
|
console.log("ENTER:", "BindingElement");
|
|
@@ -1844,7 +2131,11 @@ var Civet = (() => {
|
|
|
1844
2131
|
return BindingElement$0(state);
|
|
1845
2132
|
}
|
|
1846
2133
|
}
|
|
1847
|
-
var BindingRestElement$0 = $S(DotDotDot,
|
|
2134
|
+
var BindingRestElement$0 = $TS($S(DotDotDot, $C(BindingIdentifier, BindingPattern)), function($skip, $loc, $0, $1, $2) {
|
|
2135
|
+
var binding = $2;
|
|
2136
|
+
binding.children.unshift($1);
|
|
2137
|
+
return binding;
|
|
2138
|
+
});
|
|
1848
2139
|
function BindingRestElement(state) {
|
|
1849
2140
|
if (state.verbose)
|
|
1850
2141
|
console.log("ENTER:", "BindingRestElement");
|
|
@@ -1864,7 +2155,21 @@ var Civet = (() => {
|
|
|
1864
2155
|
return FunctionDeclaration$0(state);
|
|
1865
2156
|
}
|
|
1866
2157
|
}
|
|
1867
|
-
var FunctionSignature$0 = $S($E($S(Async, __)), Function, $E(
|
|
2158
|
+
var FunctionSignature$0 = $TS($S($E($S(Async, __)), Function, $E(Star), $E(BindingIdentifier), __, Parameters, $E(ReturnTypeSuffix)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
|
|
2159
|
+
var id = $4;
|
|
2160
|
+
var parameters = $6;
|
|
2161
|
+
id = id || [];
|
|
2162
|
+
$0[3] = id;
|
|
2163
|
+
return {
|
|
2164
|
+
type: "FunctionSignature",
|
|
2165
|
+
id,
|
|
2166
|
+
parameters,
|
|
2167
|
+
returnType: $7,
|
|
2168
|
+
ts: false,
|
|
2169
|
+
block: null,
|
|
2170
|
+
children: $0
|
|
2171
|
+
};
|
|
2172
|
+
});
|
|
1868
2173
|
function FunctionSignature(state) {
|
|
1869
2174
|
if (state.verbose)
|
|
1870
2175
|
console.log("ENTER:", "FunctionSignature");
|
|
@@ -1874,25 +2179,28 @@ var Civet = (() => {
|
|
|
1874
2179
|
return FunctionSignature$0(state);
|
|
1875
2180
|
}
|
|
1876
2181
|
}
|
|
1877
|
-
var FunctionExpression$0 =
|
|
1878
|
-
|
|
2182
|
+
var FunctionExpression$0 = $TS($S(FunctionSignature, $E(BracedBlock)), function($skip, $loc, $0, $1, $2) {
|
|
2183
|
+
var signature = $1;
|
|
1879
2184
|
var block = $2;
|
|
1880
2185
|
if (!block) {
|
|
1881
|
-
|
|
1882
|
-
|
|
1883
|
-
ts: true,
|
|
1884
|
-
children: $1
|
|
1885
|
-
};
|
|
2186
|
+
signature.ts = true;
|
|
2187
|
+
return signature;
|
|
1886
2188
|
}
|
|
1887
|
-
const suffix =
|
|
2189
|
+
const suffix = signature.returnType;
|
|
1888
2190
|
const isVoid = suffix?.children?.[1]?.[0]?.[1]?.token === "void";
|
|
1889
2191
|
if (module.config.implicitReturns && !isVoid) {
|
|
1890
2192
|
module.addImplicitReturns(block);
|
|
1891
2193
|
}
|
|
1892
|
-
$1.
|
|
2194
|
+
$1.block = block;
|
|
2195
|
+
$1.children.push(block);
|
|
2196
|
+
$1.type = "FunctionExpression";
|
|
2197
|
+
return $1;
|
|
2198
|
+
});
|
|
2199
|
+
var FunctionExpression$1 = $TS($S(Ampersand, $P(MemberExpressionRest)), function($skip, $loc, $0, $1, $2) {
|
|
2200
|
+
$1.token = "$ => $";
|
|
1893
2201
|
return {
|
|
1894
2202
|
type: "FunctionExpression",
|
|
1895
|
-
children: $1
|
|
2203
|
+
children: [$1, $2]
|
|
1896
2204
|
};
|
|
1897
2205
|
});
|
|
1898
2206
|
function FunctionExpression(state) {
|
|
@@ -1903,7 +2211,7 @@ var Civet = (() => {
|
|
|
1903
2211
|
}
|
|
1904
2212
|
}
|
|
1905
2213
|
var ThinArrowFunction$0 = $TS($S(Parameters, $E(ReturnTypeSuffix), $Q(_), Arrow, BracedOrEmptyBlock), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
1906
|
-
var
|
|
2214
|
+
var parameters = $1;
|
|
1907
2215
|
var suffix = $2;
|
|
1908
2216
|
var arrow = $4;
|
|
1909
2217
|
var block = $5;
|
|
@@ -1911,11 +2219,18 @@ var Civet = (() => {
|
|
|
1911
2219
|
if (module.config.implicitReturns && !isVoid) {
|
|
1912
2220
|
block = module.addImplicitReturns(block);
|
|
1913
2221
|
}
|
|
2222
|
+
const id = [];
|
|
1914
2223
|
return {
|
|
1915
2224
|
type: "FunctionExpression",
|
|
2225
|
+
id,
|
|
2226
|
+
parameters,
|
|
2227
|
+
returnType: suffix,
|
|
2228
|
+
ts: false,
|
|
2229
|
+
block,
|
|
1916
2230
|
children: [
|
|
1917
2231
|
{ $loc: arrow.$loc, token: "function" },
|
|
1918
|
-
|
|
2232
|
+
id,
|
|
2233
|
+
parameters,
|
|
1919
2234
|
suffix,
|
|
1920
2235
|
block
|
|
1921
2236
|
]
|
|
@@ -1930,7 +2245,7 @@ var Civet = (() => {
|
|
|
1930
2245
|
return ThinArrowFunction$0(state);
|
|
1931
2246
|
}
|
|
1932
2247
|
}
|
|
1933
|
-
var Arrow$0 = $TV($EXPECT($
|
|
2248
|
+
var Arrow$0 = $TV($EXPECT($L17, fail, 'Arrow "->"'), function($skip, $loc, $0, $1) {
|
|
1934
2249
|
return { $loc, token: $1 };
|
|
1935
2250
|
});
|
|
1936
2251
|
function Arrow(state) {
|
|
@@ -1942,16 +2257,20 @@ var Civet = (() => {
|
|
|
1942
2257
|
return Arrow$0(state);
|
|
1943
2258
|
}
|
|
1944
2259
|
}
|
|
1945
|
-
var Block$0 = $T($S(__, OpenBrace, EOS,
|
|
2260
|
+
var Block$0 = $T($S(__, OpenBrace, EOS, NestedBlockStatements, __, CloseBrace), function(value) {
|
|
1946
2261
|
var exps = value[3];
|
|
1947
2262
|
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1948
2263
|
});
|
|
1949
|
-
var Block$1 = $T($S(InsertOpenBrace, EOS,
|
|
2264
|
+
var Block$1 = $T($S(InsertOpenBrace, EOS, NestedBlockStatements, InsertNewline, InsertIndent, InsertCloseBrace), function(value) {
|
|
1950
2265
|
var exps = value[2];
|
|
1951
2266
|
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1952
2267
|
});
|
|
1953
|
-
var Block$2 = Statement
|
|
1954
|
-
|
|
2268
|
+
var Block$2 = $T($S($E(Then), Statement), function(value) {
|
|
2269
|
+
return value[1];
|
|
2270
|
+
});
|
|
2271
|
+
var Block$3 = $T($S($E(Then), __, Statement), function(value) {
|
|
2272
|
+
return [value[1], value[2]];
|
|
2273
|
+
});
|
|
1955
2274
|
function Block(state) {
|
|
1956
2275
|
if (state.tokenize) {
|
|
1957
2276
|
return $TOKEN("Block", state, Block$0(state) || Block$1(state) || Block$2(state) || Block$3(state));
|
|
@@ -1980,11 +2299,11 @@ var Civet = (() => {
|
|
|
1980
2299
|
return EmptyBlock$0(state);
|
|
1981
2300
|
}
|
|
1982
2301
|
}
|
|
1983
|
-
var BracedBlock$0 = $T($S(
|
|
1984
|
-
var exps = value[
|
|
2302
|
+
var BracedBlock$0 = $T($S($Q(TrailingComment), OpenBrace, BracedContent, __, CloseBrace), function(value) {
|
|
2303
|
+
var exps = value[2];
|
|
1985
2304
|
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1986
2305
|
});
|
|
1987
|
-
var BracedBlock$1 = $T($S(InsertOpenBrace, EOS,
|
|
2306
|
+
var BracedBlock$1 = $T($S(InsertOpenBrace, EOS, NestedBlockStatements, InsertNewline, InsertIndent, InsertCloseBrace), function(value) {
|
|
1988
2307
|
var exps = value[2];
|
|
1989
2308
|
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1990
2309
|
});
|
|
@@ -2003,58 +2322,69 @@ var Civet = (() => {
|
|
|
2003
2322
|
return BracedBlock$0(state) || BracedBlock$1(state) || BracedBlock$2(state);
|
|
2004
2323
|
}
|
|
2005
2324
|
}
|
|
2006
|
-
var
|
|
2007
|
-
|
|
2008
|
-
if (exp)
|
|
2009
|
-
return exp;
|
|
2010
|
-
return $skip;
|
|
2325
|
+
var BracedContent$0 = $T($S($Y(EOS), NestedBlockStatements), function(value) {
|
|
2326
|
+
return value[1];
|
|
2011
2327
|
});
|
|
2012
|
-
|
|
2013
|
-
|
|
2014
|
-
console.log("ENTER:", "SingleNestedExpression");
|
|
2328
|
+
var BracedContent$1 = $S($Q(TrailingComment), Statement);
|
|
2329
|
+
function BracedContent(state) {
|
|
2015
2330
|
if (state.tokenize) {
|
|
2016
|
-
return $TOKEN("
|
|
2331
|
+
return $TOKEN("BracedContent", state, BracedContent$0(state) || BracedContent$1(state));
|
|
2017
2332
|
} else {
|
|
2018
|
-
return
|
|
2333
|
+
return BracedContent$0(state) || BracedContent$1(state);
|
|
2019
2334
|
}
|
|
2020
2335
|
}
|
|
2021
|
-
var
|
|
2022
|
-
var
|
|
2023
|
-
if (!
|
|
2336
|
+
var NestedBlockStatements$0 = $TS($S(PushIndent, $Q(NestedBlockStatement), PopIndent), function($skip, $loc, $0, $1, $2, $3) {
|
|
2337
|
+
var statements = $2;
|
|
2338
|
+
if (!statements.length)
|
|
2024
2339
|
return $skip;
|
|
2025
|
-
return
|
|
2340
|
+
return statements;
|
|
2026
2341
|
});
|
|
2027
|
-
function
|
|
2342
|
+
function NestedBlockStatements(state) {
|
|
2028
2343
|
if (state.verbose)
|
|
2029
|
-
console.log("ENTER:", "
|
|
2344
|
+
console.log("ENTER:", "NestedBlockStatements");
|
|
2030
2345
|
if (state.tokenize) {
|
|
2031
|
-
return $TOKEN("
|
|
2346
|
+
return $TOKEN("NestedBlockStatements", state, NestedBlockStatements$0(state));
|
|
2032
2347
|
} else {
|
|
2033
|
-
return
|
|
2348
|
+
return NestedBlockStatements$0(state);
|
|
2034
2349
|
}
|
|
2035
2350
|
}
|
|
2036
|
-
var
|
|
2037
|
-
function
|
|
2351
|
+
var NestedBlockStatement$0 = $S(Nested, StatementListItem, StatementDelimiter);
|
|
2352
|
+
function NestedBlockStatement(state) {
|
|
2038
2353
|
if (state.verbose)
|
|
2039
|
-
console.log("ENTER:", "
|
|
2354
|
+
console.log("ENTER:", "NestedBlockStatement");
|
|
2040
2355
|
if (state.tokenize) {
|
|
2041
|
-
return $TOKEN("
|
|
2356
|
+
return $TOKEN("NestedBlockStatement", state, NestedBlockStatement$0(state));
|
|
2042
2357
|
} else {
|
|
2043
|
-
return
|
|
2358
|
+
return NestedBlockStatement$0(state);
|
|
2044
2359
|
}
|
|
2045
2360
|
}
|
|
2046
|
-
var Literal$0 =
|
|
2047
|
-
|
|
2048
|
-
|
|
2049
|
-
|
|
2361
|
+
var Literal$0 = $TS($S(LiteralContent), function($skip, $loc, $0, $1) {
|
|
2362
|
+
return {
|
|
2363
|
+
type: "Literal",
|
|
2364
|
+
children: $0
|
|
2365
|
+
};
|
|
2366
|
+
});
|
|
2050
2367
|
function Literal(state) {
|
|
2368
|
+
if (state.verbose)
|
|
2369
|
+
console.log("ENTER:", "Literal");
|
|
2370
|
+
if (state.tokenize) {
|
|
2371
|
+
return $TOKEN("Literal", state, Literal$0(state));
|
|
2372
|
+
} else {
|
|
2373
|
+
return Literal$0(state);
|
|
2374
|
+
}
|
|
2375
|
+
}
|
|
2376
|
+
var LiteralContent$0 = NullLiteral;
|
|
2377
|
+
var LiteralContent$1 = BooleanLiteral;
|
|
2378
|
+
var LiteralContent$2 = NumericLiteral;
|
|
2379
|
+
var LiteralContent$3 = StringLiteral;
|
|
2380
|
+
function LiteralContent(state) {
|
|
2051
2381
|
if (state.tokenize) {
|
|
2052
|
-
return $TOKEN("
|
|
2382
|
+
return $TOKEN("LiteralContent", state, LiteralContent$0(state) || LiteralContent$1(state) || LiteralContent$2(state) || LiteralContent$3(state));
|
|
2053
2383
|
} else {
|
|
2054
|
-
return
|
|
2384
|
+
return LiteralContent$0(state) || LiteralContent$1(state) || LiteralContent$2(state) || LiteralContent$3(state);
|
|
2055
2385
|
}
|
|
2056
2386
|
}
|
|
2057
|
-
var NullLiteral$0 = $TV($EXPECT($
|
|
2387
|
+
var NullLiteral$0 = $TV($EXPECT($L18, fail, 'NullLiteral "null"'), function($skip, $loc, $0, $1) {
|
|
2058
2388
|
return { $loc, token: $1 };
|
|
2059
2389
|
});
|
|
2060
2390
|
function NullLiteral(state) {
|
|
@@ -2067,7 +2397,7 @@ var Civet = (() => {
|
|
|
2067
2397
|
}
|
|
2068
2398
|
}
|
|
2069
2399
|
var BooleanLiteral$0 = CoffeeScriptBooleanLiteral;
|
|
2070
|
-
var BooleanLiteral$1 = $TV($C($EXPECT($
|
|
2400
|
+
var BooleanLiteral$1 = $TV($C($EXPECT($L19, fail, 'BooleanLiteral "true"'), $EXPECT($L20, fail, 'BooleanLiteral "false"')), function($skip, $loc, $0, $1) {
|
|
2071
2401
|
return { $loc, token: $1 };
|
|
2072
2402
|
});
|
|
2073
2403
|
function BooleanLiteral(state) {
|
|
@@ -2077,10 +2407,10 @@ var Civet = (() => {
|
|
|
2077
2407
|
return BooleanLiteral$0(state) || BooleanLiteral$1(state);
|
|
2078
2408
|
}
|
|
2079
2409
|
}
|
|
2080
|
-
var CoffeeScriptBooleanLiteral$0 = $TV($C($EXPECT($
|
|
2410
|
+
var CoffeeScriptBooleanLiteral$0 = $TV($C($EXPECT($L21, fail, 'CoffeeScriptBooleanLiteral "yes"'), $EXPECT($L22, fail, 'CoffeeScriptBooleanLiteral "on"')), function($skip, $loc, $0, $1) {
|
|
2081
2411
|
return { $loc, token: "true" };
|
|
2082
2412
|
});
|
|
2083
|
-
var CoffeeScriptBooleanLiteral$1 = $TV($C($EXPECT($
|
|
2413
|
+
var CoffeeScriptBooleanLiteral$1 = $TV($C($EXPECT($L23, fail, 'CoffeeScriptBooleanLiteral "no"'), $EXPECT($L24, fail, 'CoffeeScriptBooleanLiteral "off"')), function($skip, $loc, $0, $1) {
|
|
2084
2414
|
return { $loc, token: "false" };
|
|
2085
2415
|
});
|
|
2086
2416
|
function CoffeeScriptBooleanLiteral(state) {
|
|
@@ -2090,7 +2420,7 @@ var Civet = (() => {
|
|
|
2090
2420
|
return CoffeeScriptBooleanLiteral$0(state) || CoffeeScriptBooleanLiteral$1(state);
|
|
2091
2421
|
}
|
|
2092
2422
|
}
|
|
2093
|
-
var Comma$0 = $TV($EXPECT($
|
|
2423
|
+
var Comma$0 = $TV($EXPECT($L25, fail, 'Comma ","'), function($skip, $loc, $0, $1) {
|
|
2094
2424
|
return { $loc, token: $1 };
|
|
2095
2425
|
});
|
|
2096
2426
|
function Comma(state) {
|
|
@@ -2117,8 +2447,12 @@ var Civet = (() => {
|
|
|
2117
2447
|
var IdentifierName$0 = $TR($EXPECT($R1, fail, "IdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
2118
2448
|
return {
|
|
2119
2449
|
type: "Identifier",
|
|
2120
|
-
$
|
|
2121
|
-
|
|
2450
|
+
name: $0,
|
|
2451
|
+
names: [$0],
|
|
2452
|
+
children: [{
|
|
2453
|
+
$loc,
|
|
2454
|
+
token: $0
|
|
2455
|
+
}]
|
|
2122
2456
|
};
|
|
2123
2457
|
});
|
|
2124
2458
|
function IdentifierName(state) {
|
|
@@ -2140,19 +2474,44 @@ var Civet = (() => {
|
|
|
2140
2474
|
return IdentifierReference$0(state);
|
|
2141
2475
|
}
|
|
2142
2476
|
}
|
|
2143
|
-
var ArrayLiteral$0 = $S(OpenBracket,
|
|
2144
|
-
|
|
2477
|
+
var ArrayLiteral$0 = $TS($S(OpenBracket, ArrayLiteralContent, __, CloseBracket), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
2478
|
+
let children;
|
|
2479
|
+
if (Array.isArray($2)) {
|
|
2480
|
+
children = [$1, ...$2, ...$3, $4];
|
|
2481
|
+
} else {
|
|
2482
|
+
children = [$1, $2, ...$3, $4];
|
|
2483
|
+
}
|
|
2484
|
+
const names = children.flatMap((c) => {
|
|
2485
|
+
return c.names || [];
|
|
2486
|
+
});
|
|
2487
|
+
return {
|
|
2488
|
+
type: "ArrayExpression",
|
|
2489
|
+
children,
|
|
2490
|
+
names
|
|
2491
|
+
};
|
|
2492
|
+
});
|
|
2145
2493
|
function ArrayLiteral(state) {
|
|
2494
|
+
if (state.verbose)
|
|
2495
|
+
console.log("ENTER:", "ArrayLiteral");
|
|
2146
2496
|
if (state.tokenize) {
|
|
2147
|
-
return $TOKEN("ArrayLiteral", state, ArrayLiteral$0(state)
|
|
2497
|
+
return $TOKEN("ArrayLiteral", state, ArrayLiteral$0(state));
|
|
2148
2498
|
} else {
|
|
2149
|
-
return ArrayLiteral$0(state)
|
|
2499
|
+
return ArrayLiteral$0(state);
|
|
2500
|
+
}
|
|
2501
|
+
}
|
|
2502
|
+
var ArrayLiteralContent$0 = NestedElementList;
|
|
2503
|
+
var ArrayLiteralContent$1 = ElementList;
|
|
2504
|
+
function ArrayLiteralContent(state) {
|
|
2505
|
+
if (state.tokenize) {
|
|
2506
|
+
return $TOKEN("ArrayLiteralContent", state, ArrayLiteralContent$0(state) || ArrayLiteralContent$1(state));
|
|
2507
|
+
} else {
|
|
2508
|
+
return ArrayLiteralContent$0(state) || ArrayLiteralContent$1(state);
|
|
2150
2509
|
}
|
|
2151
2510
|
}
|
|
2152
2511
|
var NestedElementList$0 = $TS($S(PushIndent, $Q(NestedElement), PopIndent), function($skip, $loc, $0, $1, $2, $3) {
|
|
2153
2512
|
var elements = $2;
|
|
2154
2513
|
if (elements.length)
|
|
2155
|
-
return elements;
|
|
2514
|
+
return elements.flat();
|
|
2156
2515
|
return $skip;
|
|
2157
2516
|
});
|
|
2158
2517
|
function NestedElementList(state) {
|
|
@@ -2164,7 +2523,13 @@ var Civet = (() => {
|
|
|
2164
2523
|
return NestedElementList$0(state);
|
|
2165
2524
|
}
|
|
2166
2525
|
}
|
|
2167
|
-
var NestedElement$0 = $S(Nested,
|
|
2526
|
+
var NestedElement$0 = $TS($S(Nested, ElementList, ArrayElementDelimiter), function($skip, $loc, $0, $1, $2, $3) {
|
|
2527
|
+
const result = [...$1, ...$2];
|
|
2528
|
+
if ($3) {
|
|
2529
|
+
result.push($3);
|
|
2530
|
+
}
|
|
2531
|
+
return result;
|
|
2532
|
+
});
|
|
2168
2533
|
function NestedElement(state) {
|
|
2169
2534
|
if (state.verbose)
|
|
2170
2535
|
console.log("ENTER:", "NestedElement");
|
|
@@ -2175,7 +2540,7 @@ var Civet = (() => {
|
|
|
2175
2540
|
}
|
|
2176
2541
|
}
|
|
2177
2542
|
var ArrayElementDelimiter$0 = $S($Q(_), Comma);
|
|
2178
|
-
var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($
|
|
2543
|
+
var ArrayElementDelimiter$1 = $Y($S(__, $EXPECT($L26, fail, 'ArrayElementDelimiter "]"')));
|
|
2179
2544
|
var ArrayElementDelimiter$2 = $TV($Y(EOS), function($skip, $loc, $0, $1) {
|
|
2180
2545
|
return { $loc, token: "," };
|
|
2181
2546
|
});
|
|
@@ -2186,7 +2551,15 @@ var Civet = (() => {
|
|
|
2186
2551
|
return ArrayElementDelimiter$0(state) || ArrayElementDelimiter$1(state) || ArrayElementDelimiter$2(state);
|
|
2187
2552
|
}
|
|
2188
2553
|
}
|
|
2189
|
-
var ElementList$0 = $S(ArrayElementExpression, $Q($
|
|
2554
|
+
var ElementList$0 = $TS($S(ArrayElementExpression, $Q(ElementListRest)), function($skip, $loc, $0, $1, $2) {
|
|
2555
|
+
if ($2.length) {
|
|
2556
|
+
return [].concat($1 || [], ...$2);
|
|
2557
|
+
}
|
|
2558
|
+
if ($1) {
|
|
2559
|
+
return [].concat($1);
|
|
2560
|
+
}
|
|
2561
|
+
return [];
|
|
2562
|
+
});
|
|
2190
2563
|
function ElementList(state) {
|
|
2191
2564
|
if (state.verbose)
|
|
2192
2565
|
console.log("ENTER:", "ElementList");
|
|
@@ -2196,17 +2569,28 @@ var Civet = (() => {
|
|
|
2196
2569
|
return ElementList$0(state);
|
|
2197
2570
|
}
|
|
2198
2571
|
}
|
|
2199
|
-
var
|
|
2200
|
-
|
|
2572
|
+
var ElementListRest$0 = $TS($S(__, Comma, __, ArrayElementExpression), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
2573
|
+
const result = [...$1, $2, ...$3];
|
|
2574
|
+
if ($4) {
|
|
2575
|
+
result.push($4);
|
|
2576
|
+
}
|
|
2577
|
+
return result;
|
|
2578
|
+
});
|
|
2579
|
+
function ElementListRest(state) {
|
|
2201
2580
|
if (state.verbose)
|
|
2202
|
-
console.log("ENTER:", "
|
|
2581
|
+
console.log("ENTER:", "ElementListRest");
|
|
2203
2582
|
if (state.tokenize) {
|
|
2204
|
-
return $TOKEN("
|
|
2583
|
+
return $TOKEN("ElementListRest", state, ElementListRest$0(state));
|
|
2205
2584
|
} else {
|
|
2206
|
-
return
|
|
2585
|
+
return ElementListRest$0(state);
|
|
2207
2586
|
}
|
|
2208
2587
|
}
|
|
2209
|
-
var ArrayElementExpression$0 = $E($S($E($S(DotDotDot, __)),
|
|
2588
|
+
var ArrayElementExpression$0 = $TV($E($S($E($S(DotDotDot, __)), ExtendedExpression)), function($skip, $loc, $0, $1) {
|
|
2589
|
+
if ($1 && !$1[0]) {
|
|
2590
|
+
return $1[1];
|
|
2591
|
+
}
|
|
2592
|
+
return $1;
|
|
2593
|
+
});
|
|
2210
2594
|
function ArrayElementExpression(state) {
|
|
2211
2595
|
if (state.verbose)
|
|
2212
2596
|
console.log("ENTER:", "ArrayElementExpression");
|
|
@@ -2216,28 +2600,69 @@ var Civet = (() => {
|
|
|
2216
2600
|
return ArrayElementExpression$0(state);
|
|
2217
2601
|
}
|
|
2218
2602
|
}
|
|
2219
|
-
var
|
|
2220
|
-
|
|
2603
|
+
var ObjectLiteral$0 = BracedObjectLiteral;
|
|
2604
|
+
var ObjectLiteral$1 = NestedObjectLiteral;
|
|
2605
|
+
function ObjectLiteral(state) {
|
|
2606
|
+
if (state.tokenize) {
|
|
2607
|
+
return $TOKEN("ObjectLiteral", state, ObjectLiteral$0(state) || ObjectLiteral$1(state));
|
|
2608
|
+
} else {
|
|
2609
|
+
return ObjectLiteral$0(state) || ObjectLiteral$1(state);
|
|
2610
|
+
}
|
|
2611
|
+
}
|
|
2612
|
+
var BracedObjectLiteral$0 = $TS($S(OpenBrace, $E(BracedObjectLiteralContent), __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
2613
|
+
if ($2) {
|
|
2614
|
+
$2.unshift($1);
|
|
2615
|
+
if ($3.length) {
|
|
2616
|
+
$2.push(...$3);
|
|
2617
|
+
}
|
|
2618
|
+
$2.push($4);
|
|
2619
|
+
return {
|
|
2620
|
+
type: "ObjectExpression",
|
|
2621
|
+
children: $2,
|
|
2622
|
+
names: $2.flatMap((c) => {
|
|
2623
|
+
return c.names || [];
|
|
2624
|
+
})
|
|
2625
|
+
};
|
|
2626
|
+
}
|
|
2627
|
+
return {
|
|
2628
|
+
type: "ObjectExpression",
|
|
2629
|
+
children: [$1, ...$3, $4],
|
|
2630
|
+
names: []
|
|
2631
|
+
};
|
|
2632
|
+
});
|
|
2633
|
+
function BracedObjectLiteral(state) {
|
|
2221
2634
|
if (state.verbose)
|
|
2222
|
-
console.log("ENTER:", "
|
|
2635
|
+
console.log("ENTER:", "BracedObjectLiteral");
|
|
2223
2636
|
if (state.tokenize) {
|
|
2224
|
-
return $TOKEN("
|
|
2637
|
+
return $TOKEN("BracedObjectLiteral", state, BracedObjectLiteral$0(state));
|
|
2225
2638
|
} else {
|
|
2226
|
-
return
|
|
2639
|
+
return BracedObjectLiteral$0(state);
|
|
2227
2640
|
}
|
|
2228
2641
|
}
|
|
2229
|
-
var
|
|
2230
|
-
|
|
2231
|
-
|
|
2232
|
-
var
|
|
2233
|
-
|
|
2642
|
+
var BracedObjectLiteralContent$0 = $T($S($Y(EOS), NestedPropertyDefinitions), function(value) {
|
|
2643
|
+
return value[1];
|
|
2644
|
+
});
|
|
2645
|
+
var BracedObjectLiteralContent$1 = $TS($S(__, PropertyDefinitionList, $E($S(__, Comma))), function($skip, $loc, $0, $1, $2, $3) {
|
|
2646
|
+
if ($1.length) {
|
|
2647
|
+
$2.splice(0, 0, ...$1);
|
|
2648
|
+
}
|
|
2649
|
+
if ($3) {
|
|
2650
|
+
$2.push($3);
|
|
2651
|
+
}
|
|
2652
|
+
return $2;
|
|
2653
|
+
});
|
|
2654
|
+
function BracedObjectLiteralContent(state) {
|
|
2234
2655
|
if (state.tokenize) {
|
|
2235
|
-
return $TOKEN("
|
|
2656
|
+
return $TOKEN("BracedObjectLiteralContent", state, BracedObjectLiteralContent$0(state) || BracedObjectLiteralContent$1(state));
|
|
2236
2657
|
} else {
|
|
2237
|
-
return
|
|
2658
|
+
return BracedObjectLiteralContent$0(state) || BracedObjectLiteralContent$1(state);
|
|
2238
2659
|
}
|
|
2239
2660
|
}
|
|
2240
|
-
var NestedObjectLiteral$0 = $S(InsertOpenBrace, $Y(EOS), NestedPropertyDefinitions, InsertNewline, InsertIndent, InsertCloseBrace)
|
|
2661
|
+
var NestedObjectLiteral$0 = $TS($S(InsertOpenBrace, $Y(EOS), NestedPropertyDefinitions, InsertNewline, InsertIndent, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
2662
|
+
$3.unshift($1);
|
|
2663
|
+
$3.push($4, $5, $6);
|
|
2664
|
+
return $3;
|
|
2665
|
+
});
|
|
2241
2666
|
function NestedObjectLiteral(state) {
|
|
2242
2667
|
if (state.verbose)
|
|
2243
2668
|
console.log("ENTER:", "NestedObjectLiteral");
|
|
@@ -2251,7 +2676,7 @@ var Civet = (() => {
|
|
|
2251
2676
|
var defs = $2;
|
|
2252
2677
|
if (!defs.length)
|
|
2253
2678
|
return $skip;
|
|
2254
|
-
return defs;
|
|
2679
|
+
return defs.flat();
|
|
2255
2680
|
});
|
|
2256
2681
|
function NestedPropertyDefinitions(state) {
|
|
2257
2682
|
if (state.verbose)
|
|
@@ -2262,7 +2687,13 @@ var Civet = (() => {
|
|
|
2262
2687
|
return NestedPropertyDefinitions$0(state);
|
|
2263
2688
|
}
|
|
2264
2689
|
}
|
|
2265
|
-
var NestedPropertyDefinition$0 = $S(Nested, PropertyDefinition, ObjectPropertyDelimiter)
|
|
2690
|
+
var NestedPropertyDefinition$0 = $TS($S(Nested, PropertyDefinition, ObjectPropertyDelimiter), function($skip, $loc, $0, $1, $2, $3) {
|
|
2691
|
+
const result = [...$1, $2];
|
|
2692
|
+
if ($3) {
|
|
2693
|
+
result.push($3);
|
|
2694
|
+
}
|
|
2695
|
+
return result;
|
|
2696
|
+
});
|
|
2266
2697
|
function NestedPropertyDefinition(state) {
|
|
2267
2698
|
if (state.verbose)
|
|
2268
2699
|
console.log("ENTER:", "NestedPropertyDefinition");
|
|
@@ -2273,7 +2704,7 @@ var Civet = (() => {
|
|
|
2273
2704
|
}
|
|
2274
2705
|
}
|
|
2275
2706
|
var ObjectPropertyDelimiter$0 = $S($Q(_), Comma);
|
|
2276
|
-
var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($
|
|
2707
|
+
var ObjectPropertyDelimiter$1 = $Y($S(__, $EXPECT($L27, fail, 'ObjectPropertyDelimiter "}"')));
|
|
2277
2708
|
var ObjectPropertyDelimiter$2 = $TV($Y(EOS), function($skip, $loc, $0, $1) {
|
|
2278
2709
|
return { $loc, token: "," };
|
|
2279
2710
|
});
|
|
@@ -2284,7 +2715,15 @@ var Civet = (() => {
|
|
|
2284
2715
|
return ObjectPropertyDelimiter$0(state) || ObjectPropertyDelimiter$1(state) || ObjectPropertyDelimiter$2(state);
|
|
2285
2716
|
}
|
|
2286
2717
|
}
|
|
2287
|
-
var PropertyDefinitionList$0 = $S(PropertyDefinition, $Q($S(__, Comma, __, PropertyDefinition)))
|
|
2718
|
+
var PropertyDefinitionList$0 = $TS($S(PropertyDefinition, $Q($S(__, Comma, __, PropertyDefinition))), function($skip, $loc, $0, $1, $2) {
|
|
2719
|
+
if ($2.length) {
|
|
2720
|
+
return [].concat($1 || [], ...$2);
|
|
2721
|
+
}
|
|
2722
|
+
if ($1) {
|
|
2723
|
+
return [].concat($1);
|
|
2724
|
+
}
|
|
2725
|
+
return [];
|
|
2726
|
+
});
|
|
2288
2727
|
function PropertyDefinitionList(state) {
|
|
2289
2728
|
if (state.verbose)
|
|
2290
2729
|
console.log("ENTER:", "PropertyDefinitionList");
|
|
@@ -2294,9 +2733,16 @@ var Civet = (() => {
|
|
|
2294
2733
|
return PropertyDefinitionList$0(state);
|
|
2295
2734
|
}
|
|
2296
2735
|
}
|
|
2297
|
-
var PropertyDefinition$0 = $S(PropertyName, __, Colon,
|
|
2736
|
+
var PropertyDefinition$0 = $TS($S(PropertyName, __, Colon, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
2737
|
+
var exp = $4;
|
|
2738
|
+
return {
|
|
2739
|
+
type: "Property",
|
|
2740
|
+
children: $0,
|
|
2741
|
+
names: exp.names || []
|
|
2742
|
+
};
|
|
2743
|
+
});
|
|
2298
2744
|
var PropertyDefinition$1 = MethodDefinition;
|
|
2299
|
-
var PropertyDefinition$2 = $S(DotDotDot,
|
|
2745
|
+
var PropertyDefinition$2 = $S(DotDotDot, ExtendedExpression);
|
|
2300
2746
|
var PropertyDefinition$3 = IdentifierReference;
|
|
2301
2747
|
function PropertyDefinition(state) {
|
|
2302
2748
|
if (state.tokenize) {
|
|
@@ -2308,7 +2754,7 @@ var Civet = (() => {
|
|
|
2308
2754
|
var PropertyName$0 = NumericLiteral;
|
|
2309
2755
|
var PropertyName$1 = StringLiteral;
|
|
2310
2756
|
var PropertyName$2 = IdentifierName;
|
|
2311
|
-
var PropertyName$3 = $S(OpenBracket,
|
|
2757
|
+
var PropertyName$3 = $S(OpenBracket, ExtendedExpression, __, CloseBracket);
|
|
2312
2758
|
function PropertyName(state) {
|
|
2313
2759
|
if (state.tokenize) {
|
|
2314
2760
|
return $TOKEN("PropertyName", state, PropertyName$0(state) || PropertyName$1(state) || PropertyName$2(state) || PropertyName$3(state));
|
|
@@ -2358,7 +2804,11 @@ var Civet = (() => {
|
|
|
2358
2804
|
var MethodSignature$1 = $TS($S($E(MethodModifier), ClassElementName, $Q(_), NonEmptyParameters, $E(ReturnTypeSuffix)), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
2359
2805
|
var name = $2;
|
|
2360
2806
|
var suffix = $5;
|
|
2361
|
-
|
|
2807
|
+
if (name.name) {
|
|
2808
|
+
name = name.name;
|
|
2809
|
+
} else if (name.token) {
|
|
2810
|
+
name = name.token.match(/^(?:"|')/) ? name.token.slice(1, -1) : name.token;
|
|
2811
|
+
}
|
|
2362
2812
|
return {
|
|
2363
2813
|
type: "MethodSignature",
|
|
2364
2814
|
children: $0,
|
|
@@ -2385,8 +2835,13 @@ var Civet = (() => {
|
|
|
2385
2835
|
}
|
|
2386
2836
|
var PrivateIdentifier$0 = $TV($TEXT($S($EXPECT($L7, fail, 'PrivateIdentifier "#"'), IdentifierName)), function($skip, $loc, $0, $1) {
|
|
2387
2837
|
return {
|
|
2388
|
-
|
|
2389
|
-
|
|
2838
|
+
type: "Identifier",
|
|
2839
|
+
name: $0,
|
|
2840
|
+
names: [$0],
|
|
2841
|
+
children: [{
|
|
2842
|
+
$loc,
|
|
2843
|
+
token: $0
|
|
2844
|
+
}]
|
|
2390
2845
|
};
|
|
2391
2846
|
});
|
|
2392
2847
|
function PrivateIdentifier(state) {
|
|
@@ -2410,25 +2865,25 @@ var Civet = (() => {
|
|
|
2410
2865
|
return AssignmentOp$0(state);
|
|
2411
2866
|
}
|
|
2412
2867
|
}
|
|
2413
|
-
var AssignmentOpSymbol$0 = $EXPECT($
|
|
2414
|
-
var AssignmentOpSymbol$1 = $EXPECT($
|
|
2415
|
-
var AssignmentOpSymbol$2 = $EXPECT($
|
|
2416
|
-
var AssignmentOpSymbol$3 = $EXPECT($
|
|
2417
|
-
var AssignmentOpSymbol$4 = $EXPECT($
|
|
2418
|
-
var AssignmentOpSymbol$5 = $EXPECT($
|
|
2419
|
-
var AssignmentOpSymbol$6 = $EXPECT($
|
|
2420
|
-
var AssignmentOpSymbol$7 = $EXPECT($
|
|
2421
|
-
var AssignmentOpSymbol$8 = $EXPECT($
|
|
2422
|
-
var AssignmentOpSymbol$9 = $EXPECT($
|
|
2423
|
-
var AssignmentOpSymbol$10 = $EXPECT($
|
|
2424
|
-
var AssignmentOpSymbol$11 = $EXPECT($
|
|
2425
|
-
var AssignmentOpSymbol$12 = $EXPECT($
|
|
2426
|
-
var AssignmentOpSymbol$13 = $EXPECT($
|
|
2427
|
-
var AssignmentOpSymbol$14 = $EXPECT($
|
|
2428
|
-
var AssignmentOpSymbol$15 = $T($EXPECT($
|
|
2868
|
+
var AssignmentOpSymbol$0 = $EXPECT($L28, fail, 'AssignmentOpSymbol "**="');
|
|
2869
|
+
var AssignmentOpSymbol$1 = $EXPECT($L29, fail, 'AssignmentOpSymbol "*="');
|
|
2870
|
+
var AssignmentOpSymbol$2 = $EXPECT($L30, fail, 'AssignmentOpSymbol "/="');
|
|
2871
|
+
var AssignmentOpSymbol$3 = $EXPECT($L31, fail, 'AssignmentOpSymbol "%="');
|
|
2872
|
+
var AssignmentOpSymbol$4 = $EXPECT($L32, fail, 'AssignmentOpSymbol "+="');
|
|
2873
|
+
var AssignmentOpSymbol$5 = $EXPECT($L33, fail, 'AssignmentOpSymbol "-="');
|
|
2874
|
+
var AssignmentOpSymbol$6 = $EXPECT($L34, fail, 'AssignmentOpSymbol "<<="');
|
|
2875
|
+
var AssignmentOpSymbol$7 = $EXPECT($L35, fail, 'AssignmentOpSymbol ">>>="');
|
|
2876
|
+
var AssignmentOpSymbol$8 = $EXPECT($L36, fail, 'AssignmentOpSymbol ">>="');
|
|
2877
|
+
var AssignmentOpSymbol$9 = $EXPECT($L37, fail, 'AssignmentOpSymbol "&&="');
|
|
2878
|
+
var AssignmentOpSymbol$10 = $EXPECT($L38, fail, 'AssignmentOpSymbol "&="');
|
|
2879
|
+
var AssignmentOpSymbol$11 = $EXPECT($L39, fail, 'AssignmentOpSymbol "^="');
|
|
2880
|
+
var AssignmentOpSymbol$12 = $EXPECT($L40, fail, 'AssignmentOpSymbol "||="');
|
|
2881
|
+
var AssignmentOpSymbol$13 = $EXPECT($L41, fail, 'AssignmentOpSymbol "|="');
|
|
2882
|
+
var AssignmentOpSymbol$14 = $EXPECT($L42, fail, 'AssignmentOpSymbol "??="');
|
|
2883
|
+
var AssignmentOpSymbol$15 = $T($EXPECT($L43, fail, 'AssignmentOpSymbol "?="'), function(value) {
|
|
2429
2884
|
return "??=";
|
|
2430
2885
|
});
|
|
2431
|
-
var AssignmentOpSymbol$16 = $EXPECT($
|
|
2886
|
+
var AssignmentOpSymbol$16 = $EXPECT($L44, fail, 'AssignmentOpSymbol "="');
|
|
2432
2887
|
function AssignmentOpSymbol(state) {
|
|
2433
2888
|
if (state.tokenize) {
|
|
2434
2889
|
return $TOKEN("AssignmentOpSymbol", state, AssignmentOpSymbol$0(state) || AssignmentOpSymbol$1(state) || AssignmentOpSymbol$2(state) || AssignmentOpSymbol$3(state) || AssignmentOpSymbol$4(state) || AssignmentOpSymbol$5(state) || AssignmentOpSymbol$6(state) || AssignmentOpSymbol$7(state) || AssignmentOpSymbol$8(state) || AssignmentOpSymbol$9(state) || AssignmentOpSymbol$10(state) || AssignmentOpSymbol$11(state) || AssignmentOpSymbol$12(state) || AssignmentOpSymbol$13(state) || AssignmentOpSymbol$14(state) || AssignmentOpSymbol$15(state) || AssignmentOpSymbol$16(state));
|
|
@@ -2437,7 +2892,9 @@ var Civet = (() => {
|
|
|
2437
2892
|
}
|
|
2438
2893
|
}
|
|
2439
2894
|
var BinaryOp$0 = $TS($S(BinaryOpSymbol), function($skip, $loc, $0, $1) {
|
|
2440
|
-
|
|
2895
|
+
if (typeof $1 === "string")
|
|
2896
|
+
return { $loc, token: $1 };
|
|
2897
|
+
return $1;
|
|
2441
2898
|
});
|
|
2442
2899
|
function BinaryOp(state) {
|
|
2443
2900
|
if (state.verbose)
|
|
@@ -2448,68 +2905,80 @@ var Civet = (() => {
|
|
|
2448
2905
|
return BinaryOp$0(state);
|
|
2449
2906
|
}
|
|
2450
2907
|
}
|
|
2451
|
-
var BinaryOpSymbol$0 = $EXPECT($
|
|
2452
|
-
var BinaryOpSymbol$1 = $EXPECT($
|
|
2453
|
-
var BinaryOpSymbol$2 = $EXPECT($
|
|
2454
|
-
var BinaryOpSymbol$3 = $EXPECT($
|
|
2455
|
-
var BinaryOpSymbol$4 = $EXPECT($
|
|
2456
|
-
var BinaryOpSymbol$5 = $EXPECT($
|
|
2457
|
-
var BinaryOpSymbol$6 = $EXPECT($
|
|
2458
|
-
var BinaryOpSymbol$7 = $EXPECT($
|
|
2459
|
-
var BinaryOpSymbol$8 = $EXPECT($
|
|
2908
|
+
var BinaryOpSymbol$0 = $EXPECT($L45, fail, 'BinaryOpSymbol "**"');
|
|
2909
|
+
var BinaryOpSymbol$1 = $EXPECT($L46, fail, 'BinaryOpSymbol "*"');
|
|
2910
|
+
var BinaryOpSymbol$2 = $EXPECT($L47, fail, 'BinaryOpSymbol "/"');
|
|
2911
|
+
var BinaryOpSymbol$3 = $EXPECT($L48, fail, 'BinaryOpSymbol "%"');
|
|
2912
|
+
var BinaryOpSymbol$4 = $EXPECT($L49, fail, 'BinaryOpSymbol "+"');
|
|
2913
|
+
var BinaryOpSymbol$5 = $EXPECT($L50, fail, 'BinaryOpSymbol "-"');
|
|
2914
|
+
var BinaryOpSymbol$6 = $EXPECT($L51, fail, 'BinaryOpSymbol "<="');
|
|
2915
|
+
var BinaryOpSymbol$7 = $EXPECT($L52, fail, 'BinaryOpSymbol ">="');
|
|
2916
|
+
var BinaryOpSymbol$8 = $EXPECT($L53, fail, 'BinaryOpSymbol "<<"');
|
|
2460
2917
|
var BinaryOpSymbol$9 = $EXPECT($L4, fail, 'BinaryOpSymbol "<"');
|
|
2461
|
-
var BinaryOpSymbol$10 = $EXPECT($
|
|
2462
|
-
var BinaryOpSymbol$11 = $EXPECT($
|
|
2463
|
-
var BinaryOpSymbol$12 = $EXPECT($
|
|
2464
|
-
var BinaryOpSymbol$13 = $EXPECT($
|
|
2465
|
-
var BinaryOpSymbol$14 = $TV($EXPECT($
|
|
2918
|
+
var BinaryOpSymbol$10 = $EXPECT($L54, fail, 'BinaryOpSymbol ">>>"');
|
|
2919
|
+
var BinaryOpSymbol$11 = $EXPECT($L55, fail, 'BinaryOpSymbol ">>"');
|
|
2920
|
+
var BinaryOpSymbol$12 = $EXPECT($L56, fail, 'BinaryOpSymbol ">"');
|
|
2921
|
+
var BinaryOpSymbol$13 = $EXPECT($L57, fail, 'BinaryOpSymbol "!=="');
|
|
2922
|
+
var BinaryOpSymbol$14 = $TV($EXPECT($L58, fail, 'BinaryOpSymbol "!="'), function($skip, $loc, $0, $1) {
|
|
2466
2923
|
if (module.config.coffeeEq)
|
|
2467
2924
|
return "!==";
|
|
2468
2925
|
return $1;
|
|
2469
2926
|
});
|
|
2470
|
-
var BinaryOpSymbol$15 = $
|
|
2927
|
+
var BinaryOpSymbol$15 = $TS($S($EXPECT($L59, fail, 'BinaryOpSymbol "isnt"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
2928
|
+
if (module.config.coffeeIsnt)
|
|
2929
|
+
return "!==";
|
|
2930
|
+
return $skip;
|
|
2931
|
+
});
|
|
2932
|
+
var BinaryOpSymbol$16 = $T($S($EXPECT($L60, fail, 'BinaryOpSymbol "is"'), NonIdContinue), function(value) {
|
|
2471
2933
|
return "===";
|
|
2472
2934
|
});
|
|
2473
|
-
var BinaryOpSymbol$
|
|
2474
|
-
var BinaryOpSymbol$
|
|
2935
|
+
var BinaryOpSymbol$17 = $EXPECT($L61, fail, 'BinaryOpSymbol "==="');
|
|
2936
|
+
var BinaryOpSymbol$18 = $TV($EXPECT($L62, fail, 'BinaryOpSymbol "=="'), function($skip, $loc, $0, $1) {
|
|
2475
2937
|
if (module.config.coffeeEq)
|
|
2476
2938
|
return "===";
|
|
2477
2939
|
return $1;
|
|
2478
2940
|
});
|
|
2479
|
-
var BinaryOpSymbol$
|
|
2941
|
+
var BinaryOpSymbol$19 = $T($S($EXPECT($L63, fail, 'BinaryOpSymbol "and"'), NonIdContinue), function(value) {
|
|
2480
2942
|
return "&&";
|
|
2481
2943
|
});
|
|
2482
|
-
var BinaryOpSymbol$
|
|
2483
|
-
var BinaryOpSymbol$
|
|
2944
|
+
var BinaryOpSymbol$20 = $EXPECT($L64, fail, 'BinaryOpSymbol "&&"');
|
|
2945
|
+
var BinaryOpSymbol$21 = $T($S(CoffeeOfEnabled, $EXPECT($L65, fail, 'BinaryOpSymbol "of"'), NonIdContinue), function(value) {
|
|
2946
|
+
return "in";
|
|
2947
|
+
});
|
|
2948
|
+
var BinaryOpSymbol$22 = $T($S($EXPECT($L66, fail, 'BinaryOpSymbol "or"'), NonIdContinue), function(value) {
|
|
2484
2949
|
return "||";
|
|
2485
2950
|
});
|
|
2486
|
-
var BinaryOpSymbol$
|
|
2487
|
-
var BinaryOpSymbol$
|
|
2488
|
-
var BinaryOpSymbol$
|
|
2951
|
+
var BinaryOpSymbol$23 = $EXPECT($L67, fail, 'BinaryOpSymbol "||"');
|
|
2952
|
+
var BinaryOpSymbol$24 = $EXPECT($L68, fail, 'BinaryOpSymbol "??"');
|
|
2953
|
+
var BinaryOpSymbol$25 = $TS($S($EXPECT($L69, fail, 'BinaryOpSymbol "instanceof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
2489
2954
|
return $1;
|
|
2490
2955
|
});
|
|
2491
|
-
var BinaryOpSymbol$
|
|
2956
|
+
var BinaryOpSymbol$26 = $TS($S(CoffeeOfEnabled, $EXPECT($L70, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
|
|
2957
|
+
return module.getIndexOfRef();
|
|
2958
|
+
});
|
|
2959
|
+
var BinaryOpSymbol$27 = $TS($S($EXPECT($L70, fail, 'BinaryOpSymbol "in"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
2492
2960
|
return $1;
|
|
2493
2961
|
});
|
|
2494
|
-
var BinaryOpSymbol$
|
|
2495
|
-
var BinaryOpSymbol$
|
|
2496
|
-
var BinaryOpSymbol$
|
|
2962
|
+
var BinaryOpSymbol$28 = $EXPECT($L71, fail, 'BinaryOpSymbol "&"');
|
|
2963
|
+
var BinaryOpSymbol$29 = $EXPECT($L72, fail, 'BinaryOpSymbol "^"');
|
|
2964
|
+
var BinaryOpSymbol$30 = $EXPECT($L73, fail, 'BinaryOpSymbol "|"');
|
|
2497
2965
|
function BinaryOpSymbol(state) {
|
|
2498
2966
|
if (state.tokenize) {
|
|
2499
|
-
return $TOKEN("BinaryOpSymbol", state, BinaryOpSymbol$0(state) || BinaryOpSymbol$1(state) || BinaryOpSymbol$2(state) || BinaryOpSymbol$3(state) || BinaryOpSymbol$4(state) || BinaryOpSymbol$5(state) || BinaryOpSymbol$6(state) || BinaryOpSymbol$7(state) || BinaryOpSymbol$8(state) || BinaryOpSymbol$9(state) || BinaryOpSymbol$10(state) || BinaryOpSymbol$11(state) || BinaryOpSymbol$12(state) || BinaryOpSymbol$13(state) || BinaryOpSymbol$14(state) || BinaryOpSymbol$15(state) || BinaryOpSymbol$16(state) || BinaryOpSymbol$17(state) || BinaryOpSymbol$18(state) || BinaryOpSymbol$19(state) || BinaryOpSymbol$20(state) || BinaryOpSymbol$21(state) || BinaryOpSymbol$22(state) || BinaryOpSymbol$23(state) || BinaryOpSymbol$24(state) || BinaryOpSymbol$25(state) || BinaryOpSymbol$26(state) || BinaryOpSymbol$27(state));
|
|
2967
|
+
return $TOKEN("BinaryOpSymbol", state, BinaryOpSymbol$0(state) || BinaryOpSymbol$1(state) || BinaryOpSymbol$2(state) || BinaryOpSymbol$3(state) || BinaryOpSymbol$4(state) || BinaryOpSymbol$5(state) || BinaryOpSymbol$6(state) || BinaryOpSymbol$7(state) || BinaryOpSymbol$8(state) || BinaryOpSymbol$9(state) || BinaryOpSymbol$10(state) || BinaryOpSymbol$11(state) || BinaryOpSymbol$12(state) || BinaryOpSymbol$13(state) || BinaryOpSymbol$14(state) || BinaryOpSymbol$15(state) || BinaryOpSymbol$16(state) || BinaryOpSymbol$17(state) || BinaryOpSymbol$18(state) || BinaryOpSymbol$19(state) || BinaryOpSymbol$20(state) || BinaryOpSymbol$21(state) || BinaryOpSymbol$22(state) || BinaryOpSymbol$23(state) || BinaryOpSymbol$24(state) || BinaryOpSymbol$25(state) || BinaryOpSymbol$26(state) || BinaryOpSymbol$27(state) || BinaryOpSymbol$28(state) || BinaryOpSymbol$29(state) || BinaryOpSymbol$30(state));
|
|
2500
2968
|
} else {
|
|
2501
|
-
return BinaryOpSymbol$0(state) || BinaryOpSymbol$1(state) || BinaryOpSymbol$2(state) || BinaryOpSymbol$3(state) || BinaryOpSymbol$4(state) || BinaryOpSymbol$5(state) || BinaryOpSymbol$6(state) || BinaryOpSymbol$7(state) || BinaryOpSymbol$8(state) || BinaryOpSymbol$9(state) || BinaryOpSymbol$10(state) || BinaryOpSymbol$11(state) || BinaryOpSymbol$12(state) || BinaryOpSymbol$13(state) || BinaryOpSymbol$14(state) || BinaryOpSymbol$15(state) || BinaryOpSymbol$16(state) || BinaryOpSymbol$17(state) || BinaryOpSymbol$18(state) || BinaryOpSymbol$19(state) || BinaryOpSymbol$20(state) || BinaryOpSymbol$21(state) || BinaryOpSymbol$22(state) || BinaryOpSymbol$23(state) || BinaryOpSymbol$24(state) || BinaryOpSymbol$25(state) || BinaryOpSymbol$26(state) || BinaryOpSymbol$27(state);
|
|
2969
|
+
return BinaryOpSymbol$0(state) || BinaryOpSymbol$1(state) || BinaryOpSymbol$2(state) || BinaryOpSymbol$3(state) || BinaryOpSymbol$4(state) || BinaryOpSymbol$5(state) || BinaryOpSymbol$6(state) || BinaryOpSymbol$7(state) || BinaryOpSymbol$8(state) || BinaryOpSymbol$9(state) || BinaryOpSymbol$10(state) || BinaryOpSymbol$11(state) || BinaryOpSymbol$12(state) || BinaryOpSymbol$13(state) || BinaryOpSymbol$14(state) || BinaryOpSymbol$15(state) || BinaryOpSymbol$16(state) || BinaryOpSymbol$17(state) || BinaryOpSymbol$18(state) || BinaryOpSymbol$19(state) || BinaryOpSymbol$20(state) || BinaryOpSymbol$21(state) || BinaryOpSymbol$22(state) || BinaryOpSymbol$23(state) || BinaryOpSymbol$24(state) || BinaryOpSymbol$25(state) || BinaryOpSymbol$26(state) || BinaryOpSymbol$27(state) || BinaryOpSymbol$28(state) || BinaryOpSymbol$29(state) || BinaryOpSymbol$30(state);
|
|
2502
2970
|
}
|
|
2503
2971
|
}
|
|
2504
|
-
var UnaryOp$0 = $TR($EXPECT($R2, fail, "UnaryOp /[!~+-]/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
2972
|
+
var UnaryOp$0 = $TR($EXPECT($R2, fail, "UnaryOp /[!~+-](?!\\s)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
2505
2973
|
return { $loc, token: $0 };
|
|
2506
2974
|
});
|
|
2507
|
-
var UnaryOp$1 = $S($C(Delete, Void, Typeof), __);
|
|
2975
|
+
var UnaryOp$1 = $S($C(Await, Delete, Void, Typeof), __);
|
|
2976
|
+
var UnaryOp$2 = Not;
|
|
2508
2977
|
function UnaryOp(state) {
|
|
2509
2978
|
if (state.tokenize) {
|
|
2510
|
-
return $TOKEN("UnaryOp", state, UnaryOp$0(state) || UnaryOp$1(state));
|
|
2979
|
+
return $TOKEN("UnaryOp", state, UnaryOp$0(state) || UnaryOp$1(state) || UnaryOp$2(state));
|
|
2511
2980
|
} else {
|
|
2512
|
-
return UnaryOp$0(state) || UnaryOp$1(state);
|
|
2981
|
+
return UnaryOp$0(state) || UnaryOp$1(state) || UnaryOp$2(state);
|
|
2513
2982
|
}
|
|
2514
2983
|
}
|
|
2515
2984
|
var ModuleItem$0 = ImportDeclaration;
|
|
@@ -2528,7 +2997,18 @@ var Civet = (() => {
|
|
|
2528
2997
|
var ws = $2;
|
|
2529
2998
|
var post = $3;
|
|
2530
2999
|
if (post) {
|
|
2531
|
-
|
|
3000
|
+
let block;
|
|
3001
|
+
if (post.type === "ForStatement") {
|
|
3002
|
+
if (post.blockPrefix?.length) {
|
|
3003
|
+
block = [" {", ...post.blockPrefix, ...statement, " }"];
|
|
3004
|
+
} else {
|
|
3005
|
+
block = statement;
|
|
3006
|
+
}
|
|
3007
|
+
} else {
|
|
3008
|
+
block = statement;
|
|
3009
|
+
}
|
|
3010
|
+
post.block = block;
|
|
3011
|
+
post.children.push(block);
|
|
2532
3012
|
if (!module.isWhitespaceOrEmpty(ws))
|
|
2533
3013
|
post.children.push(ws);
|
|
2534
3014
|
return post;
|
|
@@ -2570,7 +3050,7 @@ var Civet = (() => {
|
|
|
2570
3050
|
return Statement$0(state) || Statement$1(state) || Statement$2(state) || Statement$3(state) || Statement$4(state) || Statement$5(state) || Statement$6(state) || Statement$7(state) || Statement$8(state);
|
|
2571
3051
|
}
|
|
2572
3052
|
}
|
|
2573
|
-
var EmptyStatement$0 = $T($S($Q(TrailingComment), $Y($EXPECT($
|
|
3053
|
+
var EmptyStatement$0 = $T($S($Q(TrailingComment), $Y($EXPECT($L74, fail, 'EmptyStatement ";"'))), function(value) {
|
|
2574
3054
|
return { "type": "EmptyStatement", "children": value[0] };
|
|
2575
3055
|
});
|
|
2576
3056
|
function EmptyStatement(state) {
|
|
@@ -2582,7 +3062,7 @@ var Civet = (() => {
|
|
|
2582
3062
|
return EmptyStatement$0(state);
|
|
2583
3063
|
}
|
|
2584
3064
|
}
|
|
2585
|
-
var BlockStatement$0 = $T($S(__, OpenBrace, EOS,
|
|
3065
|
+
var BlockStatement$0 = $T($S(__, OpenBrace, EOS, NestedBlockStatements, __, CloseBrace, $N($S(__, $EXPECT($L44, fail, 'BlockStatement "="')))), function(value) {
|
|
2586
3066
|
var exps = value[3];
|
|
2587
3067
|
return { "type": "BlockStatement", "children": value, "expressions": exps };
|
|
2588
3068
|
});
|
|
@@ -2595,7 +3075,7 @@ var Civet = (() => {
|
|
|
2595
3075
|
return BlockStatement$0(state);
|
|
2596
3076
|
}
|
|
2597
3077
|
}
|
|
2598
|
-
var IfStatement$0 = $TS($S(IfClause, Block, $E($S(__, Else, Block))), function($skip, $loc, $0, $1, $2, $3) {
|
|
3078
|
+
var IfStatement$0 = $TS($S($C(IfClause, UnlessClause), Block, $E($S(__, Else, Block))), function($skip, $loc, $0, $1, $2, $3) {
|
|
2599
3079
|
var clause = $1;
|
|
2600
3080
|
var block = $2;
|
|
2601
3081
|
var e = $3;
|
|
@@ -2604,17 +3084,13 @@ var Civet = (() => {
|
|
|
2604
3084
|
clause.children.push(e);
|
|
2605
3085
|
return clause;
|
|
2606
3086
|
});
|
|
2607
|
-
var IfStatement$1 = $TS($S(UnlessClause, Block), function($skip, $loc, $0, $1, $2) {
|
|
2608
|
-
var clause = $1;
|
|
2609
|
-
var block = $2;
|
|
2610
|
-
clause.children.push(block);
|
|
2611
|
-
return clause;
|
|
2612
|
-
});
|
|
2613
3087
|
function IfStatement(state) {
|
|
3088
|
+
if (state.verbose)
|
|
3089
|
+
console.log("ENTER:", "IfStatement");
|
|
2614
3090
|
if (state.tokenize) {
|
|
2615
|
-
return $TOKEN("IfStatement", state, IfStatement$0(state)
|
|
3091
|
+
return $TOKEN("IfStatement", state, IfStatement$0(state));
|
|
2616
3092
|
} else {
|
|
2617
|
-
return IfStatement$0(state)
|
|
3093
|
+
return IfStatement$0(state);
|
|
2618
3094
|
}
|
|
2619
3095
|
}
|
|
2620
3096
|
var IfClause$0 = $T($S(If, Condition), function(value) {
|
|
@@ -2655,6 +3131,72 @@ var Civet = (() => {
|
|
|
2655
3131
|
return UnlessClause$0(state);
|
|
2656
3132
|
}
|
|
2657
3133
|
}
|
|
3134
|
+
var IfExpression$0 = $TS($S(IfClause, ExpressionBlock, $E($S(__, Else, ExpressionBlock))), function($skip, $loc, $0, $1, $2, $3) {
|
|
3135
|
+
var clause = $1;
|
|
3136
|
+
var b = $2;
|
|
3137
|
+
var e = $3;
|
|
3138
|
+
clause.children.shift();
|
|
3139
|
+
clause.children.push("?", b, ":");
|
|
3140
|
+
if (e) {
|
|
3141
|
+
e.splice(1, 1);
|
|
3142
|
+
clause.children.push(e);
|
|
3143
|
+
} else {
|
|
3144
|
+
clause.children.push("void 0");
|
|
3145
|
+
}
|
|
3146
|
+
clause.type = "IfExpression";
|
|
3147
|
+
return clause;
|
|
3148
|
+
});
|
|
3149
|
+
function IfExpression(state) {
|
|
3150
|
+
if (state.verbose)
|
|
3151
|
+
console.log("ENTER:", "IfExpression");
|
|
3152
|
+
if (state.tokenize) {
|
|
3153
|
+
return $TOKEN("IfExpression", state, IfExpression$0(state));
|
|
3154
|
+
} else {
|
|
3155
|
+
return IfExpression$0(state);
|
|
3156
|
+
}
|
|
3157
|
+
}
|
|
3158
|
+
var ExpressionBlock$0 = $TS($S(InsertOpenParen, EOS, NestedBlockExpressions, InsertNewline, InsertIndent, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
3159
|
+
var exps = $3;
|
|
3160
|
+
exps[exps.length - 1].pop();
|
|
3161
|
+
return {
|
|
3162
|
+
type: "BlockExpressions",
|
|
3163
|
+
expressions: exps,
|
|
3164
|
+
children: $0
|
|
3165
|
+
};
|
|
3166
|
+
});
|
|
3167
|
+
var ExpressionBlock$1 = $S($E(Then), ExtendedExpression);
|
|
3168
|
+
function ExpressionBlock(state) {
|
|
3169
|
+
if (state.tokenize) {
|
|
3170
|
+
return $TOKEN("ExpressionBlock", state, ExpressionBlock$0(state) || ExpressionBlock$1(state));
|
|
3171
|
+
} else {
|
|
3172
|
+
return ExpressionBlock$0(state) || ExpressionBlock$1(state);
|
|
3173
|
+
}
|
|
3174
|
+
}
|
|
3175
|
+
var NestedBlockExpressions$0 = $TS($S(PushIndent, $Q(NestedBlockExpression), PopIndent), function($skip, $loc, $0, $1, $2, $3) {
|
|
3176
|
+
var exps = $2;
|
|
3177
|
+
if (!exps.length)
|
|
3178
|
+
return $skip;
|
|
3179
|
+
return exps;
|
|
3180
|
+
});
|
|
3181
|
+
function NestedBlockExpressions(state) {
|
|
3182
|
+
if (state.verbose)
|
|
3183
|
+
console.log("ENTER:", "NestedBlockExpressions");
|
|
3184
|
+
if (state.tokenize) {
|
|
3185
|
+
return $TOKEN("NestedBlockExpressions", state, NestedBlockExpressions$0(state));
|
|
3186
|
+
} else {
|
|
3187
|
+
return NestedBlockExpressions$0(state);
|
|
3188
|
+
}
|
|
3189
|
+
}
|
|
3190
|
+
var NestedBlockExpression$0 = $S(Nested, ExtendedExpression, ExpressionDelimiter);
|
|
3191
|
+
function NestedBlockExpression(state) {
|
|
3192
|
+
if (state.verbose)
|
|
3193
|
+
console.log("ENTER:", "NestedBlockExpression");
|
|
3194
|
+
if (state.tokenize) {
|
|
3195
|
+
return $TOKEN("NestedBlockExpression", state, NestedBlockExpression$0(state));
|
|
3196
|
+
} else {
|
|
3197
|
+
return NestedBlockExpression$0(state);
|
|
3198
|
+
}
|
|
3199
|
+
}
|
|
2658
3200
|
var IterationStatement$0 = LoopStatement;
|
|
2659
3201
|
var IterationStatement$1 = DoWhileStatement;
|
|
2660
3202
|
var IterationStatement$2 = WhileStatement;
|
|
@@ -2729,61 +3271,219 @@ var Civet = (() => {
|
|
|
2729
3271
|
kind.token = "while";
|
|
2730
3272
|
$0 = [kind, cond];
|
|
2731
3273
|
}
|
|
2732
|
-
return {
|
|
2733
|
-
type: "IterationStatement",
|
|
2734
|
-
children: $0
|
|
2735
|
-
};
|
|
3274
|
+
return {
|
|
3275
|
+
type: "IterationStatement",
|
|
3276
|
+
children: $0
|
|
3277
|
+
};
|
|
3278
|
+
});
|
|
3279
|
+
function WhileClause(state) {
|
|
3280
|
+
if (state.verbose)
|
|
3281
|
+
console.log("ENTER:", "WhileClause");
|
|
3282
|
+
if (state.tokenize) {
|
|
3283
|
+
return $TOKEN("WhileClause", state, WhileClause$0(state));
|
|
3284
|
+
} else {
|
|
3285
|
+
return WhileClause$0(state);
|
|
3286
|
+
}
|
|
3287
|
+
}
|
|
3288
|
+
var ForStatement$0 = $TS($S(ForClause, Block), function($skip, $loc, $0, $1, $2) {
|
|
3289
|
+
var clause = $1;
|
|
3290
|
+
var block = $2;
|
|
3291
|
+
clause.children.push(block);
|
|
3292
|
+
clause.block = block;
|
|
3293
|
+
if (clause.blockPrefix) {
|
|
3294
|
+
block.expressions.splice(0, 0, ...clause.blockPrefix);
|
|
3295
|
+
}
|
|
3296
|
+
return clause;
|
|
3297
|
+
});
|
|
3298
|
+
function ForStatement(state) {
|
|
3299
|
+
if (state.verbose)
|
|
3300
|
+
console.log("ENTER:", "ForStatement");
|
|
3301
|
+
if (state.tokenize) {
|
|
3302
|
+
return $TOKEN("ForStatement", state, ForStatement$0(state));
|
|
3303
|
+
} else {
|
|
3304
|
+
return ForStatement$0(state);
|
|
3305
|
+
}
|
|
3306
|
+
}
|
|
3307
|
+
var ForClause$0 = $TS($S(For, __, ForStatementControl), function($skip, $loc, $0, $1, $2, $3) {
|
|
3308
|
+
var c = $3;
|
|
3309
|
+
const { children, declaration } = c;
|
|
3310
|
+
children.splice(0, 0, $1, ...$2);
|
|
3311
|
+
return {
|
|
3312
|
+
type: "ForStatement",
|
|
3313
|
+
children,
|
|
3314
|
+
declaration,
|
|
3315
|
+
block: null,
|
|
3316
|
+
blockPrefix: c.blockPrefix
|
|
3317
|
+
};
|
|
3318
|
+
});
|
|
3319
|
+
function ForClause(state) {
|
|
3320
|
+
if (state.verbose)
|
|
3321
|
+
console.log("ENTER:", "ForClause");
|
|
3322
|
+
if (state.tokenize) {
|
|
3323
|
+
return $TOKEN("ForClause", state, ForClause$0(state));
|
|
3324
|
+
} else {
|
|
3325
|
+
return ForClause$0(state);
|
|
3326
|
+
}
|
|
3327
|
+
}
|
|
3328
|
+
var ForStatementControl$0 = $T($S($N(CoffeeForLoopsEnabled), ForStatementParameters), function(value) {
|
|
3329
|
+
return value[1];
|
|
3330
|
+
});
|
|
3331
|
+
var ForStatementControl$1 = $TS($S(CoffeeForLoopsEnabled, CoffeeForStatementParameters, $E(WhenCondition)), function($skip, $loc, $0, $1, $2, $3) {
|
|
3332
|
+
if ($3) {
|
|
3333
|
+
const indent = "".padStart((module.currentIndent + 1) * 2);
|
|
3334
|
+
module.insertTrimmingSpace($3, "");
|
|
3335
|
+
$2.blockPrefix.push({
|
|
3336
|
+
type: "IfStatement",
|
|
3337
|
+
children: [indent, "if (!(", $3, ")) continue\n"]
|
|
3338
|
+
});
|
|
3339
|
+
}
|
|
3340
|
+
return $2;
|
|
2736
3341
|
});
|
|
2737
|
-
function
|
|
3342
|
+
function ForStatementControl(state) {
|
|
3343
|
+
if (state.tokenize) {
|
|
3344
|
+
return $TOKEN("ForStatementControl", state, ForStatementControl$0(state) || ForStatementControl$1(state));
|
|
3345
|
+
} else {
|
|
3346
|
+
return ForStatementControl$0(state) || ForStatementControl$1(state);
|
|
3347
|
+
}
|
|
3348
|
+
}
|
|
3349
|
+
var WhenCondition$0 = $T($S(__, When, ExtendedExpression), function(value) {
|
|
3350
|
+
var exp = value[2];
|
|
3351
|
+
return exp;
|
|
3352
|
+
});
|
|
3353
|
+
function WhenCondition(state) {
|
|
2738
3354
|
if (state.verbose)
|
|
2739
|
-
console.log("ENTER:", "
|
|
3355
|
+
console.log("ENTER:", "WhenCondition");
|
|
2740
3356
|
if (state.tokenize) {
|
|
2741
|
-
return $TOKEN("
|
|
3357
|
+
return $TOKEN("WhenCondition", state, WhenCondition$0(state));
|
|
2742
3358
|
} else {
|
|
2743
|
-
return
|
|
3359
|
+
return WhenCondition$0(state);
|
|
2744
3360
|
}
|
|
2745
3361
|
}
|
|
2746
|
-
var
|
|
2747
|
-
var
|
|
2748
|
-
var
|
|
2749
|
-
|
|
2750
|
-
|
|
3362
|
+
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) {
|
|
3363
|
+
var declaration = $3;
|
|
3364
|
+
var kind = $5;
|
|
3365
|
+
var exp = $6;
|
|
3366
|
+
let blockPrefix = [];
|
|
3367
|
+
if (kind.token === "from") {
|
|
3368
|
+
kind.token = "of";
|
|
3369
|
+
} else if (kind.token === "of") {
|
|
3370
|
+
module.insertTrimmingSpace(declaration, "");
|
|
3371
|
+
module.insertTrimmingSpace(exp, "");
|
|
3372
|
+
if (declaration.own) {
|
|
3373
|
+
const indent = "".padStart((module.currentIndent + 1) * 2);
|
|
3374
|
+
const hasPropRef = module.getHasPropRef();
|
|
3375
|
+
blockPrefix.push([indent, "if (!", hasPropRef, ".call(", exp, ", ", declaration, ")) continue\n"]);
|
|
3376
|
+
}
|
|
3377
|
+
kind.token = "in ";
|
|
3378
|
+
} else if (kind.token === "in") {
|
|
3379
|
+
const counterRef = {
|
|
3380
|
+
type: "Ref",
|
|
3381
|
+
base: "i"
|
|
3382
|
+
};
|
|
3383
|
+
const lenRef = {
|
|
3384
|
+
type: "Ref",
|
|
3385
|
+
base: "len"
|
|
3386
|
+
};
|
|
3387
|
+
const expRef = exp.type === "Identifier" ? exp : {
|
|
3388
|
+
type: "Ref",
|
|
3389
|
+
base: "ref"
|
|
3390
|
+
};
|
|
3391
|
+
const varRef = declaration;
|
|
3392
|
+
module.insertTrimmingSpace(exp, "");
|
|
3393
|
+
const expRefDec = expRef !== exp ? [expRef, " = ", exp, ", "] : [];
|
|
3394
|
+
declaration = {
|
|
3395
|
+
type: "Declaration",
|
|
3396
|
+
children: ["let ", ...expRefDec, counterRef, " = 0, ", lenRef, " = ", expRef, ".length"],
|
|
3397
|
+
names: []
|
|
3398
|
+
};
|
|
3399
|
+
const indent = "".padStart((module.currentIndent + 1) * 2);
|
|
3400
|
+
blockPrefix.push([{
|
|
3401
|
+
type: "AssignmentExpression",
|
|
3402
|
+
children: [indent, varRef, " = ", expRef, "[", counterRef, "]\n"],
|
|
3403
|
+
names: varRef.names
|
|
3404
|
+
}]);
|
|
3405
|
+
return {
|
|
3406
|
+
declaration,
|
|
3407
|
+
children: [$1, $2, declaration, "; ", counterRef, " < ", lenRef, "; ", counterRef, "++", $7],
|
|
3408
|
+
blockPrefix
|
|
3409
|
+
};
|
|
3410
|
+
}
|
|
3411
|
+
return {
|
|
3412
|
+
declaration,
|
|
3413
|
+
children: $0,
|
|
3414
|
+
blockPrefix
|
|
3415
|
+
};
|
|
2751
3416
|
});
|
|
2752
|
-
function
|
|
3417
|
+
function CoffeeForStatementParameters(state) {
|
|
2753
3418
|
if (state.verbose)
|
|
2754
|
-
console.log("ENTER:", "
|
|
3419
|
+
console.log("ENTER:", "CoffeeForStatementParameters");
|
|
2755
3420
|
if (state.tokenize) {
|
|
2756
|
-
return $TOKEN("
|
|
3421
|
+
return $TOKEN("CoffeeForStatementParameters", state, CoffeeForStatementParameters$0(state));
|
|
2757
3422
|
} else {
|
|
2758
|
-
return
|
|
3423
|
+
return CoffeeForStatementParameters$0(state);
|
|
2759
3424
|
}
|
|
2760
3425
|
}
|
|
2761
|
-
var
|
|
2762
|
-
|
|
3426
|
+
var CoffeeForDeclaration$0 = $TS($S($E($S(__, $EXPECT($L75, fail, 'CoffeeForDeclaration "own"'))), ForBinding), function($skip, $loc, $0, $1, $2) {
|
|
3427
|
+
var own = $1;
|
|
3428
|
+
var binding = $2;
|
|
3429
|
+
if (own) {
|
|
3430
|
+
binding.own = true;
|
|
3431
|
+
}
|
|
3432
|
+
binding.type = "AssignmentExpression";
|
|
3433
|
+
return binding;
|
|
2763
3434
|
});
|
|
2764
|
-
function
|
|
3435
|
+
function CoffeeForDeclaration(state) {
|
|
2765
3436
|
if (state.verbose)
|
|
2766
|
-
console.log("ENTER:", "
|
|
3437
|
+
console.log("ENTER:", "CoffeeForDeclaration");
|
|
2767
3438
|
if (state.tokenize) {
|
|
2768
|
-
return $TOKEN("
|
|
3439
|
+
return $TOKEN("CoffeeForDeclaration", state, CoffeeForDeclaration$0(state));
|
|
2769
3440
|
} else {
|
|
2770
|
-
return
|
|
3441
|
+
return CoffeeForDeclaration$0(state);
|
|
2771
3442
|
}
|
|
2772
3443
|
}
|
|
2773
|
-
var
|
|
2774
|
-
|
|
2775
|
-
|
|
2776
|
-
|
|
2777
|
-
|
|
2778
|
-
|
|
2779
|
-
|
|
3444
|
+
var ForStatementParameters$0 = $TS($S(OpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(Expression)), __, Semicolon, $E(Expression), Semicolon, $E(Expression), __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9, $10) {
|
|
3445
|
+
var declaration = $3;
|
|
3446
|
+
return {
|
|
3447
|
+
declaration,
|
|
3448
|
+
children: $0
|
|
3449
|
+
};
|
|
3450
|
+
});
|
|
3451
|
+
var ForStatementParameters$1 = $TS($S(InsertOpenParen, __, $C(LexicalDeclaration, VariableStatement, $E(Expression)), __, Semicolon, $E(Expression), Semicolon, $E($S($N(EOS), Expression)), InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
3452
|
+
var declaration = $3;
|
|
3453
|
+
return {
|
|
3454
|
+
declaration,
|
|
3455
|
+
children: $0
|
|
3456
|
+
};
|
|
3457
|
+
});
|
|
3458
|
+
var ForStatementParameters$2 = $TS($S($E($S(Await, __)), OpenParen, __, ForInOfDeclaration, __, $C(In, Of), ExtendedExpression, __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
3459
|
+
var declaration = $4;
|
|
3460
|
+
return {
|
|
3461
|
+
declaration,
|
|
3462
|
+
children: $0
|
|
3463
|
+
};
|
|
3464
|
+
});
|
|
3465
|
+
var ForStatementParameters$3 = $TS($S($E($S(Await, __)), InsertOpenParen, ForInOfDeclaration, __, $C(In, Of), ExtendedExpression, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
|
|
3466
|
+
var declaration = $3;
|
|
3467
|
+
return {
|
|
3468
|
+
declaration,
|
|
3469
|
+
children: $0
|
|
3470
|
+
};
|
|
3471
|
+
});
|
|
3472
|
+
function ForStatementParameters(state) {
|
|
2780
3473
|
if (state.tokenize) {
|
|
2781
|
-
return $TOKEN("
|
|
3474
|
+
return $TOKEN("ForStatementParameters", state, ForStatementParameters$0(state) || ForStatementParameters$1(state) || ForStatementParameters$2(state) || ForStatementParameters$3(state));
|
|
2782
3475
|
} else {
|
|
2783
|
-
return
|
|
3476
|
+
return ForStatementParameters$0(state) || ForStatementParameters$1(state) || ForStatementParameters$2(state) || ForStatementParameters$3(state);
|
|
2784
3477
|
}
|
|
2785
3478
|
}
|
|
2786
|
-
var ForInOfDeclaration$0 = $S(Var, ForBinding)
|
|
3479
|
+
var ForInOfDeclaration$0 = $TS($S(Var, ForBinding), function($skip, $loc, $0, $1, $2) {
|
|
3480
|
+
var binding = $2;
|
|
3481
|
+
return {
|
|
3482
|
+
type: "ForDeclaration",
|
|
3483
|
+
children: $0,
|
|
3484
|
+
names: binding.names
|
|
3485
|
+
};
|
|
3486
|
+
});
|
|
2787
3487
|
var ForInOfDeclaration$1 = ForDeclaration;
|
|
2788
3488
|
var ForInOfDeclaration$2 = LeftHandSideExpression;
|
|
2789
3489
|
function ForInOfDeclaration(state) {
|
|
@@ -2793,8 +3493,24 @@ var Civet = (() => {
|
|
|
2793
3493
|
return ForInOfDeclaration$0(state) || ForInOfDeclaration$1(state) || ForInOfDeclaration$2(state);
|
|
2794
3494
|
}
|
|
2795
3495
|
}
|
|
2796
|
-
var ForDeclaration$0 = $S(LetOrConst, NonIdContinue, ForBinding)
|
|
2797
|
-
|
|
3496
|
+
var ForDeclaration$0 = $TS($S(LetOrConst, NonIdContinue, ForBinding), function($skip, $loc, $0, $1, $2, $3) {
|
|
3497
|
+
var c = $1;
|
|
3498
|
+
var binding = $3;
|
|
3499
|
+
return {
|
|
3500
|
+
type: "ForDeclaration",
|
|
3501
|
+
children: [c, binding],
|
|
3502
|
+
names: binding.names
|
|
3503
|
+
};
|
|
3504
|
+
});
|
|
3505
|
+
var ForDeclaration$1 = $TS($S(InsertConst, ForBinding, $EXPECT($R3, fail, "ForDeclaration /(?=[\\s\\)])/")), function($skip, $loc, $0, $1, $2, $3) {
|
|
3506
|
+
var c = $1;
|
|
3507
|
+
var binding = $2;
|
|
3508
|
+
return {
|
|
3509
|
+
type: "ForDeclaration",
|
|
3510
|
+
children: [c, binding],
|
|
3511
|
+
names: binding.names
|
|
3512
|
+
};
|
|
3513
|
+
});
|
|
2798
3514
|
function ForDeclaration(state) {
|
|
2799
3515
|
if (state.tokenize) {
|
|
2800
3516
|
return $TOKEN("ForDeclaration", state, ForDeclaration$0(state) || ForDeclaration$1(state));
|
|
@@ -2823,6 +3539,22 @@ var Civet = (() => {
|
|
|
2823
3539
|
return SwitchStatement$0(state);
|
|
2824
3540
|
}
|
|
2825
3541
|
}
|
|
3542
|
+
var SwitchExpression$0 = $TV(SwitchStatement, function($skip, $loc, $0, $1) {
|
|
3543
|
+
var e = $0;
|
|
3544
|
+
module.addImplicitReturns(e.children[2]);
|
|
3545
|
+
e.type = "SwitchExpression";
|
|
3546
|
+
e.children = ["($=>{", e.children, "})()"];
|
|
3547
|
+
return e;
|
|
3548
|
+
});
|
|
3549
|
+
function SwitchExpression(state) {
|
|
3550
|
+
if (state.verbose)
|
|
3551
|
+
console.log("ENTER:", "SwitchExpression");
|
|
3552
|
+
if (state.tokenize) {
|
|
3553
|
+
return $TOKEN("SwitchExpression", state, SwitchExpression$0(state));
|
|
3554
|
+
} else {
|
|
3555
|
+
return SwitchExpression$0(state);
|
|
3556
|
+
}
|
|
3557
|
+
}
|
|
2826
3558
|
var CaseBlock$0 = $TS($S(__, OpenBrace, $Y(EOS), NestedCaseClauses, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
2827
3559
|
var clauses = $4;
|
|
2828
3560
|
$0.splice(2, 1);
|
|
@@ -2876,19 +3608,19 @@ var Civet = (() => {
|
|
|
2876
3608
|
return NestedCaseClause$0(state);
|
|
2877
3609
|
}
|
|
2878
3610
|
}
|
|
2879
|
-
var CaseClause$0 = $T($S(Case, CaseExpressionList, $C(
|
|
3611
|
+
var CaseClause$0 = $T($S(Case, CaseExpressionList, $C(NestedBlockStatements, NoExpressions)), function(value) {
|
|
2880
3612
|
var exps = value[2];
|
|
2881
3613
|
return { "type": "CaseClause", "expressions": exps, "children": value };
|
|
2882
3614
|
});
|
|
2883
|
-
var CaseClause$1 = $T($S(When, CaseExpressionList,
|
|
3615
|
+
var CaseClause$1 = $T($S(When, CaseExpressionList, NestedBlockStatements, InsertBreak), function(value) {
|
|
2884
3616
|
var exps = value[2];
|
|
2885
3617
|
return { "type": "WhenClause", "expressions": exps, "children": value };
|
|
2886
3618
|
});
|
|
2887
|
-
var CaseClause$2 = $T($S(Default, ImpliedColon, $C(
|
|
3619
|
+
var CaseClause$2 = $T($S(Default, ImpliedColon, $C(NestedBlockStatements, NoExpressions)), function(value) {
|
|
2888
3620
|
var exps = value[2];
|
|
2889
3621
|
return { "type": "DefaultClause", "expressions": exps, "children": value };
|
|
2890
3622
|
});
|
|
2891
|
-
var CaseClause$3 = $TS($S(Else, ImpliedColon,
|
|
3623
|
+
var CaseClause$3 = $TS($S(Else, ImpliedColon, NestedBlockStatements), function($skip, $loc, $0, $1, $2, $3) {
|
|
2892
3624
|
var exps = $3;
|
|
2893
3625
|
$1.token = "default";
|
|
2894
3626
|
return {
|
|
@@ -2990,7 +3722,7 @@ var Civet = (() => {
|
|
|
2990
3722
|
return CatchBind$0(state) || CatchBind$1(state);
|
|
2991
3723
|
}
|
|
2992
3724
|
}
|
|
2993
|
-
var Finally$0 = $S(__, $EXPECT($
|
|
3725
|
+
var Finally$0 = $S(__, $EXPECT($L76, fail, 'Finally "finally"'), BracedBlock);
|
|
2994
3726
|
function Finally(state) {
|
|
2995
3727
|
if (state.verbose)
|
|
2996
3728
|
console.log("ENTER:", "Finally");
|
|
@@ -3009,7 +3741,7 @@ var Civet = (() => {
|
|
|
3009
3741
|
return CatchParameter$0(state) || CatchParameter$1(state);
|
|
3010
3742
|
}
|
|
3011
3743
|
}
|
|
3012
|
-
var Condition$0 = $S(__, OpenParen,
|
|
3744
|
+
var Condition$0 = $S(__, OpenParen, ExtendedExpression, __, CloseParen);
|
|
3013
3745
|
var Condition$1 = $TS($S($N(EOS), __, InsertOpenParen, ExpressionWithIndentedApplicationSuppressed, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
3014
3746
|
$0.shift();
|
|
3015
3747
|
return $0;
|
|
@@ -3021,7 +3753,7 @@ var Civet = (() => {
|
|
|
3021
3753
|
return Condition$0(state) || Condition$1(state);
|
|
3022
3754
|
}
|
|
3023
3755
|
}
|
|
3024
|
-
var ExpressionWithIndentedApplicationSuppressed$0 = $TS($S(SuppressIndentedApplication, $E(
|
|
3756
|
+
var ExpressionWithIndentedApplicationSuppressed$0 = $TS($S(SuppressIndentedApplication, $E(ExtendedExpression)), function($skip, $loc, $0, $1, $2) {
|
|
3025
3757
|
var exp = $2;
|
|
3026
3758
|
module.suppressIndentedApplication = false;
|
|
3027
3759
|
if (exp)
|
|
@@ -3059,19 +3791,19 @@ var Civet = (() => {
|
|
|
3059
3791
|
return ExpressionStatement$0(state);
|
|
3060
3792
|
}
|
|
3061
3793
|
}
|
|
3062
|
-
var KeywordStatement$0 = $T($S($EXPECT($
|
|
3794
|
+
var KeywordStatement$0 = $T($S($EXPECT($L77, fail, 'KeywordStatement "break"'), NonIdContinue), function(value) {
|
|
3063
3795
|
return { "type": "BreakStatement", "children": value };
|
|
3064
3796
|
});
|
|
3065
|
-
var KeywordStatement$1 = $T($S($EXPECT($
|
|
3797
|
+
var KeywordStatement$1 = $T($S($EXPECT($L78, fail, 'KeywordStatement "continue"'), NonIdContinue), function(value) {
|
|
3066
3798
|
return { "type": "ContinueStatement", "children": value };
|
|
3067
3799
|
});
|
|
3068
|
-
var KeywordStatement$2 = $T($S($EXPECT($
|
|
3800
|
+
var KeywordStatement$2 = $T($S($EXPECT($L79, fail, 'KeywordStatement "debugger"'), NonIdContinue), function(value) {
|
|
3069
3801
|
return { "type": "DebuggerStatement", "children": value };
|
|
3070
3802
|
});
|
|
3071
3803
|
var KeywordStatement$3 = $T($S(Return, $E(MaybeNestedExpression)), function(value) {
|
|
3072
3804
|
return { "type": "ReturnStatement", "children": value };
|
|
3073
3805
|
});
|
|
3074
|
-
var KeywordStatement$4 = $T($S(Throw,
|
|
3806
|
+
var KeywordStatement$4 = $T($S(Throw, ExtendedExpression), function(value) {
|
|
3075
3807
|
return { "type": "ThrowStatement", "children": value };
|
|
3076
3808
|
});
|
|
3077
3809
|
function KeywordStatement(state) {
|
|
@@ -3081,8 +3813,42 @@ var Civet = (() => {
|
|
|
3081
3813
|
return KeywordStatement$0(state) || KeywordStatement$1(state) || KeywordStatement$2(state) || KeywordStatement$3(state) || KeywordStatement$4(state);
|
|
3082
3814
|
}
|
|
3083
3815
|
}
|
|
3084
|
-
var
|
|
3085
|
-
|
|
3816
|
+
var DebuggerExpression$0 = $TS($S($EXPECT($L79, fail, 'DebuggerExpression "debugger"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3817
|
+
return {
|
|
3818
|
+
type: "DebuggerExpression",
|
|
3819
|
+
children: ["($=>{", $1, "})()"]
|
|
3820
|
+
};
|
|
3821
|
+
});
|
|
3822
|
+
function DebuggerExpression(state) {
|
|
3823
|
+
if (state.verbose)
|
|
3824
|
+
console.log("ENTER:", "DebuggerExpression");
|
|
3825
|
+
if (state.tokenize) {
|
|
3826
|
+
return $TOKEN("DebuggerExpression", state, DebuggerExpression$0(state));
|
|
3827
|
+
} else {
|
|
3828
|
+
return DebuggerExpression$0(state);
|
|
3829
|
+
}
|
|
3830
|
+
}
|
|
3831
|
+
var ThrowExpression$0 = $TS($S(Throw, ExtendedExpression), function($skip, $loc, $0, $1, $2) {
|
|
3832
|
+
return {
|
|
3833
|
+
type: "ThrowExpression",
|
|
3834
|
+
children: ["($=>{", ...$0, "})()"]
|
|
3835
|
+
};
|
|
3836
|
+
});
|
|
3837
|
+
function ThrowExpression(state) {
|
|
3838
|
+
if (state.verbose)
|
|
3839
|
+
console.log("ENTER:", "ThrowExpression");
|
|
3840
|
+
if (state.tokenize) {
|
|
3841
|
+
return $TOKEN("ThrowExpression", state, ThrowExpression$0(state));
|
|
3842
|
+
} else {
|
|
3843
|
+
return ThrowExpression$0(state);
|
|
3844
|
+
}
|
|
3845
|
+
}
|
|
3846
|
+
var MaybeNestedExpression$0 = $TS($S($N(EOS), $Q(TrailingComment), AssignmentExpression), function($skip, $loc, $0, $1, $2, $3) {
|
|
3847
|
+
return [...$2, $3];
|
|
3848
|
+
});
|
|
3849
|
+
var MaybeNestedExpression$1 = $T($S($Y(EOS), ObjectLiteral), function(value) {
|
|
3850
|
+
return value[1];
|
|
3851
|
+
});
|
|
3086
3852
|
function MaybeNestedExpression(state) {
|
|
3087
3853
|
if (state.tokenize) {
|
|
3088
3854
|
return $TOKEN("MaybeNestedExpression", state, MaybeNestedExpression$0(state) || MaybeNestedExpression$1(state));
|
|
@@ -3090,7 +3856,7 @@ var Civet = (() => {
|
|
|
3090
3856
|
return MaybeNestedExpression$0(state) || MaybeNestedExpression$1(state);
|
|
3091
3857
|
}
|
|
3092
3858
|
}
|
|
3093
|
-
var ImportDeclaration$0 = $T($S($EXPECT($
|
|
3859
|
+
var ImportDeclaration$0 = $T($S($EXPECT($L80, fail, 'ImportDeclaration "import type"'), NonIdContinue, __, ImportClause, __, FromClause), function(value) {
|
|
3094
3860
|
return { "ts": true, "children": value };
|
|
3095
3861
|
});
|
|
3096
3862
|
var ImportDeclaration$1 = $S(Import, __, ImportClause, __, FromClause);
|
|
@@ -3125,7 +3891,19 @@ var Civet = (() => {
|
|
|
3125
3891
|
return ImpliedImport$0(state);
|
|
3126
3892
|
}
|
|
3127
3893
|
}
|
|
3128
|
-
var ImportClause$0 = $S(ImportedBinding, $E($S(__, Comma, __, $C(NameSpaceImport, NamedImports))))
|
|
3894
|
+
var ImportClause$0 = $TS($S(ImportedBinding, $E($S(__, Comma, __, $C(NameSpaceImport, NamedImports)))), function($skip, $loc, $0, $1, $2) {
|
|
3895
|
+
var binding = $1;
|
|
3896
|
+
var rest = $2;
|
|
3897
|
+
if (rest) {
|
|
3898
|
+
return {
|
|
3899
|
+
type: "Declaration",
|
|
3900
|
+
children: $0,
|
|
3901
|
+
names: [...binding.names, ...rest[3].names]
|
|
3902
|
+
};
|
|
3903
|
+
}
|
|
3904
|
+
$1.type = "Declaration";
|
|
3905
|
+
return $1;
|
|
3906
|
+
});
|
|
3129
3907
|
var ImportClause$1 = NameSpaceImport;
|
|
3130
3908
|
var ImportClause$2 = NamedImports;
|
|
3131
3909
|
function ImportClause(state) {
|
|
@@ -3135,7 +3913,14 @@ var Civet = (() => {
|
|
|
3135
3913
|
return ImportClause$0(state) || ImportClause$1(state) || ImportClause$2(state);
|
|
3136
3914
|
}
|
|
3137
3915
|
}
|
|
3138
|
-
var NameSpaceImport$0 = $S(Star, __, As,
|
|
3916
|
+
var NameSpaceImport$0 = $TS($S(Star, __, As, __, ImportedBinding), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
3917
|
+
var binding = $5;
|
|
3918
|
+
return {
|
|
3919
|
+
type: "Declaration",
|
|
3920
|
+
children: $0,
|
|
3921
|
+
names: binding.names
|
|
3922
|
+
};
|
|
3923
|
+
});
|
|
3139
3924
|
function NameSpaceImport(state) {
|
|
3140
3925
|
if (state.verbose)
|
|
3141
3926
|
console.log("ENTER:", "NameSpaceImport");
|
|
@@ -3145,7 +3930,17 @@ var Civet = (() => {
|
|
|
3145
3930
|
return NameSpaceImport$0(state);
|
|
3146
3931
|
}
|
|
3147
3932
|
}
|
|
3148
|
-
var NamedImports$0 = $S(OpenBrace, $Q(ImportSpecifier), $E($S(__, Comma)), __, CloseBrace)
|
|
3933
|
+
var NamedImports$0 = $TS($S(OpenBrace, $Q(ImportSpecifier), $E($S(__, Comma)), __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
3934
|
+
var specifiers = $2;
|
|
3935
|
+
const names = specifiers.flatMap(({ binding }) => {
|
|
3936
|
+
return binding.names;
|
|
3937
|
+
});
|
|
3938
|
+
return {
|
|
3939
|
+
type: "Declaration",
|
|
3940
|
+
children: $0,
|
|
3941
|
+
names
|
|
3942
|
+
};
|
|
3943
|
+
});
|
|
3149
3944
|
function NamedImports(state) {
|
|
3150
3945
|
if (state.verbose)
|
|
3151
3946
|
console.log("ENTER:", "NamedImports");
|
|
@@ -3165,8 +3960,20 @@ var Civet = (() => {
|
|
|
3165
3960
|
return FromClause$0(state);
|
|
3166
3961
|
}
|
|
3167
3962
|
}
|
|
3168
|
-
var ImportSpecifier$0 = $S(__, ModuleExportName, __, As,
|
|
3169
|
-
|
|
3963
|
+
var ImportSpecifier$0 = $TS($S(__, ModuleExportName, __, As, __, ImportedBinding, ObjectPropertyDelimiter), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
|
|
3964
|
+
var binding = $6;
|
|
3965
|
+
return {
|
|
3966
|
+
binding,
|
|
3967
|
+
children: $0
|
|
3968
|
+
};
|
|
3969
|
+
});
|
|
3970
|
+
var ImportSpecifier$1 = $TS($S(__, ImportedBinding, ObjectPropertyDelimiter), function($skip, $loc, $0, $1, $2, $3) {
|
|
3971
|
+
var binding = $2;
|
|
3972
|
+
return {
|
|
3973
|
+
binding,
|
|
3974
|
+
children: $0
|
|
3975
|
+
};
|
|
3976
|
+
});
|
|
3170
3977
|
function ImportSpecifier(state) {
|
|
3171
3978
|
if (state.tokenize) {
|
|
3172
3979
|
return $TOKEN("ImportSpecifier", state, ImportSpecifier$0(state) || ImportSpecifier$1(state));
|
|
@@ -3228,7 +4035,7 @@ var Civet = (() => {
|
|
|
3228
4035
|
return ImportedBinding$0(state);
|
|
3229
4036
|
}
|
|
3230
4037
|
}
|
|
3231
|
-
var ExportDeclaration$0 = $S(Export, __, $EXPECT($
|
|
4038
|
+
var ExportDeclaration$0 = $S(Export, __, $EXPECT($L81, fail, 'ExportDeclaration "default"'), NonIdContinue, __, $C(HoistableDeclaration, ClassDeclaration, ExtendedExpression));
|
|
3232
4039
|
var ExportDeclaration$1 = $S(Export, __, ExportFromClause, __, FromClause);
|
|
3233
4040
|
var ExportDeclaration$2 = $S(Export, __, $C(NamedExports, VariableStatement, Declaration));
|
|
3234
4041
|
function ExportDeclaration(state) {
|
|
@@ -3238,7 +4045,7 @@ var Civet = (() => {
|
|
|
3238
4045
|
return ExportDeclaration$0(state) || ExportDeclaration$1(state) || ExportDeclaration$2(state);
|
|
3239
4046
|
}
|
|
3240
4047
|
}
|
|
3241
|
-
var ExportFromClause$0 = $S(Star, $E($S(__, As,
|
|
4048
|
+
var ExportFromClause$0 = $S(Star, $E($S(__, As, __, ModuleExportName)));
|
|
3242
4049
|
var ExportFromClause$1 = NamedExports;
|
|
3243
4050
|
function ExportFromClause(state) {
|
|
3244
4051
|
if (state.tokenize) {
|
|
@@ -3288,18 +4095,43 @@ var Civet = (() => {
|
|
|
3288
4095
|
return HoistableDeclaration$0(state);
|
|
3289
4096
|
}
|
|
3290
4097
|
}
|
|
3291
|
-
var LexicalDeclaration$0 = $
|
|
3292
|
-
|
|
4098
|
+
var LexicalDeclaration$0 = $TS($S(LetOrConst, LexicalBinding, $Q($S(__, Comma, LexicalBinding))), function($skip, $loc, $0, $1, $2, $3) {
|
|
4099
|
+
var binding = $2;
|
|
4100
|
+
var tail = $3;
|
|
4101
|
+
return {
|
|
4102
|
+
type: "Declaration",
|
|
4103
|
+
children: $0,
|
|
4104
|
+
names: [...binding.names].concat(tail.flatMap(([, , b]) => b.names))
|
|
4105
|
+
};
|
|
3293
4106
|
});
|
|
3294
|
-
var LexicalDeclaration$1 = $TS($S(InsertConst, $C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, ConstAssignment,
|
|
4107
|
+
var LexicalDeclaration$1 = $TS($S(InsertConst, $C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, ConstAssignment, ExtendedExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
3295
4108
|
var c = $1;
|
|
4109
|
+
var id = $2;
|
|
3296
4110
|
var ca = $5;
|
|
4111
|
+
var e = $6;
|
|
3297
4112
|
c.$loc = {
|
|
3298
4113
|
pos: ca.$loc.pos - 1,
|
|
3299
4114
|
length: ca.$loc.length + 1
|
|
3300
4115
|
};
|
|
4116
|
+
let exp;
|
|
4117
|
+
if (e.type === "FunctionExpression") {
|
|
4118
|
+
exp = e;
|
|
4119
|
+
} else {
|
|
4120
|
+
exp = e[1];
|
|
4121
|
+
}
|
|
4122
|
+
if (exp?.children?.[0]?.token?.match(/^\s+$/))
|
|
4123
|
+
exp.children.shift();
|
|
4124
|
+
if (id.type === "Identifier" && exp?.type === "FunctionExpression") {
|
|
4125
|
+
if (exp.id.length === 0) {
|
|
4126
|
+
exp.id.push(" ", id, $3, $4);
|
|
4127
|
+
}
|
|
4128
|
+
exp.type = "Declaration";
|
|
4129
|
+
exp.names = id.names;
|
|
4130
|
+
return exp;
|
|
4131
|
+
}
|
|
3301
4132
|
return {
|
|
3302
|
-
type: "
|
|
4133
|
+
type: "Declaration",
|
|
4134
|
+
names: id.names,
|
|
3303
4135
|
children: $0
|
|
3304
4136
|
};
|
|
3305
4137
|
});
|
|
@@ -3310,7 +4142,7 @@ var Civet = (() => {
|
|
|
3310
4142
|
return LexicalDeclaration$0(state) || LexicalDeclaration$1(state);
|
|
3311
4143
|
}
|
|
3312
4144
|
}
|
|
3313
|
-
var ConstAssignment$0 = $TV($EXPECT($
|
|
4145
|
+
var ConstAssignment$0 = $TV($EXPECT($L82, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
|
|
3314
4146
|
return { $loc, token: "=" };
|
|
3315
4147
|
});
|
|
3316
4148
|
function ConstAssignment(state) {
|
|
@@ -3322,8 +4154,19 @@ var Civet = (() => {
|
|
|
3322
4154
|
return ConstAssignment$0(state);
|
|
3323
4155
|
}
|
|
3324
4156
|
}
|
|
3325
|
-
var LexicalBinding$0 = $S(BindingPattern, $E(TypeSuffix), Initializer)
|
|
3326
|
-
|
|
4157
|
+
var LexicalBinding$0 = $TS($S(BindingPattern, $E(TypeSuffix), Initializer), function($skip, $loc, $0, $1, $2, $3) {
|
|
4158
|
+
if ($2)
|
|
4159
|
+
$1.children.push($2);
|
|
4160
|
+
$1.children.push($3);
|
|
4161
|
+
return $1;
|
|
4162
|
+
});
|
|
4163
|
+
var LexicalBinding$1 = $TS($S(BindingIdentifier, $E(TypeSuffix), $E(Initializer)), function($skip, $loc, $0, $1, $2, $3) {
|
|
4164
|
+
if ($2)
|
|
4165
|
+
$1.children.push($2);
|
|
4166
|
+
if ($3)
|
|
4167
|
+
$1.children.push($3);
|
|
4168
|
+
return $1;
|
|
4169
|
+
});
|
|
3327
4170
|
function LexicalBinding(state) {
|
|
3328
4171
|
if (state.tokenize) {
|
|
3329
4172
|
return $TOKEN("LexicalBinding", state, LexicalBinding$0(state) || LexicalBinding$1(state));
|
|
@@ -3331,7 +4174,7 @@ var Civet = (() => {
|
|
|
3331
4174
|
return LexicalBinding$0(state) || LexicalBinding$1(state);
|
|
3332
4175
|
}
|
|
3333
4176
|
}
|
|
3334
|
-
var Initializer$0 = $S(__, Equals,
|
|
4177
|
+
var Initializer$0 = $S(__, Equals, ExtendedExpression);
|
|
3335
4178
|
function Initializer(state) {
|
|
3336
4179
|
if (state.verbose)
|
|
3337
4180
|
console.log("ENTER:", "Initializer");
|
|
@@ -3341,8 +4184,9 @@ var Civet = (() => {
|
|
|
3341
4184
|
return Initializer$0(state);
|
|
3342
4185
|
}
|
|
3343
4186
|
}
|
|
3344
|
-
var VariableStatement$0 = $
|
|
3345
|
-
|
|
4187
|
+
var VariableStatement$0 = $TS($S(Var, __, VariableDeclarationList), function($skip, $loc, $0, $1, $2, $3) {
|
|
4188
|
+
$3.children.splice(0, 0, $1, ...$2);
|
|
4189
|
+
return $3;
|
|
3346
4190
|
});
|
|
3347
4191
|
function VariableStatement(state) {
|
|
3348
4192
|
if (state.verbose)
|
|
@@ -3353,7 +4197,20 @@ var Civet = (() => {
|
|
|
3353
4197
|
return VariableStatement$0(state);
|
|
3354
4198
|
}
|
|
3355
4199
|
}
|
|
3356
|
-
var VariableDeclarationList$0 = $S(VariableDeclaration, $Q($S(__, Comma, __, VariableDeclaration)))
|
|
4200
|
+
var VariableDeclarationList$0 = $TS($S(VariableDeclaration, $Q($S(__, Comma, __, VariableDeclaration))), function($skip, $loc, $0, $1, $2) {
|
|
4201
|
+
let children;
|
|
4202
|
+
if ($2.length) {
|
|
4203
|
+
children = [$1, ...$2];
|
|
4204
|
+
} else {
|
|
4205
|
+
children = [$1];
|
|
4206
|
+
}
|
|
4207
|
+
const names = children.flatMap((c) => c.names || []);
|
|
4208
|
+
return {
|
|
4209
|
+
type: "Declaration",
|
|
4210
|
+
children,
|
|
4211
|
+
names
|
|
4212
|
+
};
|
|
4213
|
+
});
|
|
3357
4214
|
function VariableDeclarationList(state) {
|
|
3358
4215
|
if (state.verbose)
|
|
3359
4216
|
console.log("ENTER:", "VariableDeclarationList");
|
|
@@ -3363,8 +4220,19 @@ var Civet = (() => {
|
|
|
3363
4220
|
return VariableDeclarationList$0(state);
|
|
3364
4221
|
}
|
|
3365
4222
|
}
|
|
3366
|
-
var VariableDeclaration$0 = $S(BindingPattern, $E(TypeSuffix), Initializer)
|
|
3367
|
-
|
|
4223
|
+
var VariableDeclaration$0 = $TS($S(BindingPattern, $E(TypeSuffix), Initializer), function($skip, $loc, $0, $1, $2, $3) {
|
|
4224
|
+
if ($2)
|
|
4225
|
+
$1.children.push($2);
|
|
4226
|
+
$1.children.push($3);
|
|
4227
|
+
return $1;
|
|
4228
|
+
});
|
|
4229
|
+
var VariableDeclaration$1 = $TS($S(BindingIdentifier, $E(TypeSuffix), $E(Initializer)), function($skip, $loc, $0, $1, $2, $3) {
|
|
4230
|
+
if ($2)
|
|
4231
|
+
$1.children.push($2);
|
|
4232
|
+
if ($3)
|
|
4233
|
+
$1.children.push($3);
|
|
4234
|
+
return $1;
|
|
4235
|
+
});
|
|
3368
4236
|
function VariableDeclaration(state) {
|
|
3369
4237
|
if (state.tokenize) {
|
|
3370
4238
|
return $TOKEN("VariableDeclaration", state, VariableDeclaration$0(state) || VariableDeclaration$1(state));
|
|
@@ -3545,7 +4413,7 @@ var Civet = (() => {
|
|
|
3545
4413
|
return TripleSingleStringCharacters$0(state);
|
|
3546
4414
|
}
|
|
3547
4415
|
}
|
|
3548
|
-
var CoffeeStringSubstitution$0 = $S(CoffeeSubstitutionStart,
|
|
4416
|
+
var CoffeeStringSubstitution$0 = $S(CoffeeSubstitutionStart, ExtendedExpression, __, CloseBrace);
|
|
3549
4417
|
function CoffeeStringSubstitution(state) {
|
|
3550
4418
|
if (state.verbose)
|
|
3551
4419
|
console.log("ENTER:", "CoffeeStringSubstitution");
|
|
@@ -3596,7 +4464,7 @@ var Civet = (() => {
|
|
|
3596
4464
|
return CoffeeDoubleQuotedStringCharacters$0(state);
|
|
3597
4465
|
}
|
|
3598
4466
|
}
|
|
3599
|
-
var RegularExpressionLiteral$0 = $TV($TEXT($S($EXPECT($
|
|
4467
|
+
var RegularExpressionLiteral$0 = $TV($TEXT($S($EXPECT($L47, fail, 'RegularExpressionLiteral "/"'), RegularExpressionBody, $EXPECT($L47, fail, 'RegularExpressionLiteral "/"'), RegularExpressionFlags)), function($skip, $loc, $0, $1) {
|
|
3600
4468
|
return { $loc, token: $1 };
|
|
3601
4469
|
});
|
|
3602
4470
|
function RegularExpressionLiteral(state) {
|
|
@@ -3649,7 +4517,7 @@ var Civet = (() => {
|
|
|
3649
4517
|
return TemplateLiteral$0(state) || TemplateLiteral$1(state);
|
|
3650
4518
|
}
|
|
3651
4519
|
}
|
|
3652
|
-
var TemplateSubstitution$0 = $S(SubstitutionStart,
|
|
4520
|
+
var TemplateSubstitution$0 = $S(SubstitutionStart, ExtendedExpression, __, CloseBrace);
|
|
3653
4521
|
function TemplateSubstitution(state) {
|
|
3654
4522
|
if (state.verbose)
|
|
3655
4523
|
console.log("ENTER:", "TemplateSubstitution");
|
|
@@ -3684,12 +4552,13 @@ var Civet = (() => {
|
|
|
3684
4552
|
}
|
|
3685
4553
|
}
|
|
3686
4554
|
var ReservedWord$0 = $S(CoffeeBooleansEnabled, $R$0($EXPECT($R23, fail, "ReservedWord /(?:on|off|yes|no)(?!\\p{ID_Continue})/")));
|
|
3687
|
-
var ReservedWord$1 = $R$0($EXPECT($R24, fail, "ReservedWord /(?:
|
|
4555
|
+
var ReservedWord$1 = $S(CoffeeIsntEnabled, $R$0($EXPECT($R24, fail, "ReservedWord /(?:isnt)(?!\\p{ID_Continue})/")));
|
|
4556
|
+
var ReservedWord$2 = $R$0($EXPECT($R25, 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})/"));
|
|
3688
4557
|
function ReservedWord(state) {
|
|
3689
4558
|
if (state.tokenize) {
|
|
3690
|
-
return $TOKEN("ReservedWord", state, ReservedWord$0(state) || ReservedWord$1(state));
|
|
4559
|
+
return $TOKEN("ReservedWord", state, ReservedWord$0(state) || ReservedWord$1(state) || ReservedWord$2(state));
|
|
3691
4560
|
} else {
|
|
3692
|
-
return ReservedWord$0(state) || ReservedWord$1(state);
|
|
4561
|
+
return ReservedWord$0(state) || ReservedWord$1(state) || ReservedWord$2(state);
|
|
3693
4562
|
}
|
|
3694
4563
|
}
|
|
3695
4564
|
var Comment$0 = MultiLineComment;
|
|
@@ -3701,7 +4570,7 @@ var Civet = (() => {
|
|
|
3701
4570
|
return Comment$0(state) || Comment$1(state);
|
|
3702
4571
|
}
|
|
3703
4572
|
}
|
|
3704
|
-
var SingleLineComment$0 = $TR($EXPECT($
|
|
4573
|
+
var SingleLineComment$0 = $TR($EXPECT($R26, fail, "SingleLineComment /\\/\\/[^\\r\\n]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
3705
4574
|
return { $loc, token: $0 };
|
|
3706
4575
|
});
|
|
3707
4576
|
var SingleLineComment$1 = $S(CoffeeCommentEnabled, CoffeeSingleLineComment);
|
|
@@ -3721,7 +4590,7 @@ var Civet = (() => {
|
|
|
3721
4590
|
return MultiLineComment$0(state) || MultiLineComment$1(state);
|
|
3722
4591
|
}
|
|
3723
4592
|
}
|
|
3724
|
-
var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($
|
|
4593
|
+
var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L83, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L84, fail, 'JSMultiLineComment "*/"')), $EXPECT($R27, fail, "JSMultiLineComment /./"))), $EXPECT($L84, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
|
|
3725
4594
|
return { $loc, token: $1 };
|
|
3726
4595
|
});
|
|
3727
4596
|
function JSMultiLineComment(state) {
|
|
@@ -3733,7 +4602,7 @@ var Civet = (() => {
|
|
|
3733
4602
|
return JSMultiLineComment$0(state);
|
|
3734
4603
|
}
|
|
3735
4604
|
}
|
|
3736
|
-
var CoffeeSingleLineComment$0 = $TR($EXPECT($
|
|
4605
|
+
var CoffeeSingleLineComment$0 = $TR($EXPECT($R28, fail, "CoffeeSingleLineComment /#([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
3737
4606
|
return { $loc, token: `//${$1}` };
|
|
3738
4607
|
});
|
|
3739
4608
|
function CoffeeSingleLineComment(state) {
|
|
@@ -3745,7 +4614,7 @@ var Civet = (() => {
|
|
|
3745
4614
|
return CoffeeSingleLineComment$0(state);
|
|
3746
4615
|
}
|
|
3747
4616
|
}
|
|
3748
|
-
var CoffeeMultiLineComment$0 = $TS($S($EXPECT($
|
|
4617
|
+
var CoffeeMultiLineComment$0 = $TS($S($EXPECT($L85, fail, 'CoffeeMultiLineComment "###"'), $TEXT($Q($S($N($C($EXPECT($L85, fail, 'CoffeeMultiLineComment "###"'), $EXPECT($L84, fail, 'CoffeeMultiLineComment "*/"'))), $EXPECT($R27, fail, "CoffeeMultiLineComment /./")))), $EXPECT($L85, fail, 'CoffeeMultiLineComment "###"')), function($skip, $loc, $0, $1, $2, $3) {
|
|
3749
4618
|
return { $loc, token: `/*${$2}*/` };
|
|
3750
4619
|
});
|
|
3751
4620
|
function CoffeeMultiLineComment(state) {
|
|
@@ -3757,7 +4626,7 @@ var Civet = (() => {
|
|
|
3757
4626
|
return CoffeeMultiLineComment$0(state);
|
|
3758
4627
|
}
|
|
3759
4628
|
}
|
|
3760
|
-
var InlineComment$0 = $TV($TEXT($S($EXPECT($
|
|
4629
|
+
var InlineComment$0 = $TV($TEXT($S($EXPECT($L83, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L84, fail, 'InlineComment "*/"')), $EXPECT($R29, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L84, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
|
|
3761
4630
|
return { $loc, token: $1 };
|
|
3762
4631
|
});
|
|
3763
4632
|
function InlineComment(state) {
|
|
@@ -3799,7 +4668,7 @@ var Civet = (() => {
|
|
|
3799
4668
|
return _$0(state);
|
|
3800
4669
|
}
|
|
3801
4670
|
}
|
|
3802
|
-
var NonNewlineWhitespace$0 = $TR($EXPECT($
|
|
4671
|
+
var NonNewlineWhitespace$0 = $TR($EXPECT($R30, fail, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
3803
4672
|
return { $loc, token: $0 };
|
|
3804
4673
|
});
|
|
3805
4674
|
function NonNewlineWhitespace(state) {
|
|
@@ -3821,7 +4690,7 @@ var Civet = (() => {
|
|
|
3821
4690
|
return __$0(state);
|
|
3822
4691
|
}
|
|
3823
4692
|
}
|
|
3824
|
-
var Whitespace$0 = $TR($EXPECT($
|
|
4693
|
+
var Whitespace$0 = $TR($EXPECT($R31, fail, "Whitespace /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
3825
4694
|
return { $loc, token: $0 };
|
|
3826
4695
|
});
|
|
3827
4696
|
function Whitespace(state) {
|
|
@@ -3833,6 +4702,20 @@ var Civet = (() => {
|
|
|
3833
4702
|
return Whitespace$0(state);
|
|
3834
4703
|
}
|
|
3835
4704
|
}
|
|
4705
|
+
var ExpressionDelimiter$0 = $TS($S($Q(TrailingComment), Semicolon, $Q(TrailingComment)), function($skip, $loc, $0, $1, $2, $3) {
|
|
4706
|
+
$2.token = ",";
|
|
4707
|
+
return $0;
|
|
4708
|
+
});
|
|
4709
|
+
var ExpressionDelimiter$1 = $TV($Y(EOS), function($skip, $loc, $0, $1) {
|
|
4710
|
+
return { $loc, token: "," };
|
|
4711
|
+
});
|
|
4712
|
+
function ExpressionDelimiter(state) {
|
|
4713
|
+
if (state.tokenize) {
|
|
4714
|
+
return $TOKEN("ExpressionDelimiter", state, ExpressionDelimiter$0(state) || ExpressionDelimiter$1(state));
|
|
4715
|
+
} else {
|
|
4716
|
+
return ExpressionDelimiter$0(state) || ExpressionDelimiter$1(state);
|
|
4717
|
+
}
|
|
4718
|
+
}
|
|
3836
4719
|
var StatementDelimiter$0 = $S($Q(TrailingComment), Semicolon, $Q(TrailingComment));
|
|
3837
4720
|
var StatementDelimiter$1 = $Y(EOS);
|
|
3838
4721
|
function StatementDelimiter(state) {
|
|
@@ -3842,7 +4725,7 @@ var Civet = (() => {
|
|
|
3842
4725
|
return StatementDelimiter$0(state) || StatementDelimiter$1(state);
|
|
3843
4726
|
}
|
|
3844
4727
|
}
|
|
3845
|
-
var NonIdContinue$0 = $R$0($EXPECT($
|
|
4728
|
+
var NonIdContinue$0 = $R$0($EXPECT($R32, fail, "NonIdContinue /(?!\\p{ID_Continue})/"));
|
|
3846
4729
|
function NonIdContinue(state) {
|
|
3847
4730
|
if (state.verbose)
|
|
3848
4731
|
console.log("ENTER:", "NonIdContinue");
|
|
@@ -3864,7 +4747,19 @@ var Civet = (() => {
|
|
|
3864
4747
|
return Loc$0(state);
|
|
3865
4748
|
}
|
|
3866
4749
|
}
|
|
3867
|
-
var
|
|
4750
|
+
var Ampersand$0 = $TV($EXPECT($L71, fail, 'Ampersand "&"'), function($skip, $loc, $0, $1) {
|
|
4751
|
+
return { $loc, token: $1 };
|
|
4752
|
+
});
|
|
4753
|
+
function Ampersand(state) {
|
|
4754
|
+
if (state.verbose)
|
|
4755
|
+
console.log("ENTER:", "Ampersand");
|
|
4756
|
+
if (state.tokenize) {
|
|
4757
|
+
return $TOKEN("Ampersand", state, Ampersand$0(state));
|
|
4758
|
+
} else {
|
|
4759
|
+
return Ampersand$0(state);
|
|
4760
|
+
}
|
|
4761
|
+
}
|
|
4762
|
+
var As$0 = $TS($S($EXPECT($L86, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3868
4763
|
return { $loc, token: $1 };
|
|
3869
4764
|
});
|
|
3870
4765
|
function As(state) {
|
|
@@ -3876,7 +4771,7 @@ var Civet = (() => {
|
|
|
3876
4771
|
return As$0(state);
|
|
3877
4772
|
}
|
|
3878
4773
|
}
|
|
3879
|
-
var Async$0 = $TV($EXPECT($
|
|
4774
|
+
var Async$0 = $TV($EXPECT($L87, fail, 'Async "async"'), function($skip, $loc, $0, $1) {
|
|
3880
4775
|
return { $loc, token: $1 };
|
|
3881
4776
|
});
|
|
3882
4777
|
function Async(state) {
|
|
@@ -3888,7 +4783,7 @@ var Civet = (() => {
|
|
|
3888
4783
|
return Async$0(state);
|
|
3889
4784
|
}
|
|
3890
4785
|
}
|
|
3891
|
-
var Await$0 = $TS($S($EXPECT($
|
|
4786
|
+
var Await$0 = $TS($S($EXPECT($L88, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3892
4787
|
return { $loc, token: $1 };
|
|
3893
4788
|
});
|
|
3894
4789
|
function Await(state) {
|
|
@@ -3900,7 +4795,7 @@ var Civet = (() => {
|
|
|
3900
4795
|
return Await$0(state);
|
|
3901
4796
|
}
|
|
3902
4797
|
}
|
|
3903
|
-
var Backtick$0 = $TV($EXPECT($
|
|
4798
|
+
var Backtick$0 = $TV($EXPECT($L89, fail, 'Backtick "`"'), function($skip, $loc, $0, $1) {
|
|
3904
4799
|
return { $loc, token: $1 };
|
|
3905
4800
|
});
|
|
3906
4801
|
function Backtick(state) {
|
|
@@ -3912,7 +4807,7 @@ var Civet = (() => {
|
|
|
3912
4807
|
return Backtick$0(state);
|
|
3913
4808
|
}
|
|
3914
4809
|
}
|
|
3915
|
-
var Case$0 = $TS($S($EXPECT($
|
|
4810
|
+
var Case$0 = $TS($S($EXPECT($L90, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3916
4811
|
return { $loc, token: $1 };
|
|
3917
4812
|
});
|
|
3918
4813
|
function Case(state) {
|
|
@@ -3924,7 +4819,7 @@ var Civet = (() => {
|
|
|
3924
4819
|
return Case$0(state);
|
|
3925
4820
|
}
|
|
3926
4821
|
}
|
|
3927
|
-
var Catch$0 = $TV($EXPECT($
|
|
4822
|
+
var Catch$0 = $TV($EXPECT($L91, fail, 'Catch "catch"'), function($skip, $loc, $0, $1) {
|
|
3928
4823
|
return { $loc, token: $1 };
|
|
3929
4824
|
});
|
|
3930
4825
|
function Catch(state) {
|
|
@@ -3936,7 +4831,7 @@ var Civet = (() => {
|
|
|
3936
4831
|
return Catch$0(state);
|
|
3937
4832
|
}
|
|
3938
4833
|
}
|
|
3939
|
-
var Class$0 = $TV($EXPECT($
|
|
4834
|
+
var Class$0 = $TV($EXPECT($L92, fail, 'Class "class"'), function($skip, $loc, $0, $1) {
|
|
3940
4835
|
return { $loc, token: $1 };
|
|
3941
4836
|
});
|
|
3942
4837
|
function Class(state) {
|
|
@@ -3948,7 +4843,7 @@ var Civet = (() => {
|
|
|
3948
4843
|
return Class$0(state);
|
|
3949
4844
|
}
|
|
3950
4845
|
}
|
|
3951
|
-
var CloseBrace$0 = $TV($EXPECT($
|
|
4846
|
+
var CloseBrace$0 = $TV($EXPECT($L27, fail, 'CloseBrace "}"'), function($skip, $loc, $0, $1) {
|
|
3952
4847
|
return { $loc, token: $1 };
|
|
3953
4848
|
});
|
|
3954
4849
|
function CloseBrace(state) {
|
|
@@ -3960,7 +4855,7 @@ var Civet = (() => {
|
|
|
3960
4855
|
return CloseBrace$0(state);
|
|
3961
4856
|
}
|
|
3962
4857
|
}
|
|
3963
|
-
var CloseBracket$0 = $TV($EXPECT($
|
|
4858
|
+
var CloseBracket$0 = $TV($EXPECT($L26, fail, 'CloseBracket "]"'), function($skip, $loc, $0, $1) {
|
|
3964
4859
|
return { $loc, token: $1 };
|
|
3965
4860
|
});
|
|
3966
4861
|
function CloseBracket(state) {
|
|
@@ -3972,7 +4867,7 @@ var Civet = (() => {
|
|
|
3972
4867
|
return CloseBracket$0(state);
|
|
3973
4868
|
}
|
|
3974
4869
|
}
|
|
3975
|
-
var CloseParen$0 = $TV($EXPECT($
|
|
4870
|
+
var CloseParen$0 = $TV($EXPECT($L16, fail, 'CloseParen ")"'), function($skip, $loc, $0, $1) {
|
|
3976
4871
|
return { $loc, token: $1 };
|
|
3977
4872
|
});
|
|
3978
4873
|
function CloseParen(state) {
|
|
@@ -3984,7 +4879,7 @@ var Civet = (() => {
|
|
|
3984
4879
|
return CloseParen$0(state);
|
|
3985
4880
|
}
|
|
3986
4881
|
}
|
|
3987
|
-
var CoffeeSubstitutionStart$0 = $TV($EXPECT($
|
|
4882
|
+
var CoffeeSubstitutionStart$0 = $TV($EXPECT($L93, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
|
|
3988
4883
|
return { $loc, token: "${" };
|
|
3989
4884
|
});
|
|
3990
4885
|
function CoffeeSubstitutionStart(state) {
|
|
@@ -3996,7 +4891,7 @@ var Civet = (() => {
|
|
|
3996
4891
|
return CoffeeSubstitutionStart$0(state);
|
|
3997
4892
|
}
|
|
3998
4893
|
}
|
|
3999
|
-
var Colon$0 = $TV($EXPECT($
|
|
4894
|
+
var Colon$0 = $TV($EXPECT($L94, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
|
|
4000
4895
|
return { $loc, token: $1 };
|
|
4001
4896
|
});
|
|
4002
4897
|
function Colon(state) {
|
|
@@ -4020,7 +4915,7 @@ var Civet = (() => {
|
|
|
4020
4915
|
return ConstructorShorthand$0(state);
|
|
4021
4916
|
}
|
|
4022
4917
|
}
|
|
4023
|
-
var Default$0 = $TS($S($EXPECT($
|
|
4918
|
+
var Default$0 = $TS($S($EXPECT($L81, fail, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4024
4919
|
return { $loc, token: $1 };
|
|
4025
4920
|
});
|
|
4026
4921
|
function Default(state) {
|
|
@@ -4032,7 +4927,7 @@ var Civet = (() => {
|
|
|
4032
4927
|
return Default$0(state);
|
|
4033
4928
|
}
|
|
4034
4929
|
}
|
|
4035
|
-
var Delete$0 = $TS($S($EXPECT($
|
|
4930
|
+
var Delete$0 = $TS($S($EXPECT($L95, fail, 'Delete "delete"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4036
4931
|
return { $loc, token: $1 };
|
|
4037
4932
|
});
|
|
4038
4933
|
function Delete(state) {
|
|
@@ -4044,7 +4939,7 @@ var Civet = (() => {
|
|
|
4044
4939
|
return Delete$0(state);
|
|
4045
4940
|
}
|
|
4046
4941
|
}
|
|
4047
|
-
var Do$0 = $TS($S($EXPECT($
|
|
4942
|
+
var Do$0 = $TS($S($EXPECT($L96, fail, 'Do "do"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4048
4943
|
return { $loc, token: $1 };
|
|
4049
4944
|
});
|
|
4050
4945
|
function Do(state) {
|
|
@@ -4056,7 +4951,7 @@ var Civet = (() => {
|
|
|
4056
4951
|
return Do$0(state);
|
|
4057
4952
|
}
|
|
4058
4953
|
}
|
|
4059
|
-
var Dot$0 = $TV($EXPECT($
|
|
4954
|
+
var Dot$0 = $TV($EXPECT($L9, fail, 'Dot "."'), function($skip, $loc, $0, $1) {
|
|
4060
4955
|
return { $loc, token: $1 };
|
|
4061
4956
|
});
|
|
4062
4957
|
function Dot(state) {
|
|
@@ -4068,7 +4963,7 @@ var Civet = (() => {
|
|
|
4068
4963
|
return Dot$0(state);
|
|
4069
4964
|
}
|
|
4070
4965
|
}
|
|
4071
|
-
var DotDot$0 = $TV($EXPECT($
|
|
4966
|
+
var DotDot$0 = $TV($EXPECT($L97, fail, 'DotDot ".."'), function($skip, $loc, $0, $1) {
|
|
4072
4967
|
return { $loc, token: $1 };
|
|
4073
4968
|
});
|
|
4074
4969
|
function DotDot(state) {
|
|
@@ -4080,7 +4975,7 @@ var Civet = (() => {
|
|
|
4080
4975
|
return DotDot$0(state);
|
|
4081
4976
|
}
|
|
4082
4977
|
}
|
|
4083
|
-
var DotDotDot$0 = $TV($EXPECT($
|
|
4978
|
+
var DotDotDot$0 = $TV($EXPECT($L98, fail, 'DotDotDot "..."'), function($skip, $loc, $0, $1) {
|
|
4084
4979
|
return { $loc, token: $1 };
|
|
4085
4980
|
});
|
|
4086
4981
|
function DotDotDot(state) {
|
|
@@ -4092,7 +4987,7 @@ var Civet = (() => {
|
|
|
4092
4987
|
return DotDotDot$0(state);
|
|
4093
4988
|
}
|
|
4094
4989
|
}
|
|
4095
|
-
var DoubleQuote$0 = $TV($EXPECT($
|
|
4990
|
+
var DoubleQuote$0 = $TV($EXPECT($L99, fail, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
|
|
4096
4991
|
return { $loc, token: $1 };
|
|
4097
4992
|
});
|
|
4098
4993
|
function DoubleQuote(state) {
|
|
@@ -4104,7 +4999,7 @@ var Civet = (() => {
|
|
|
4104
4999
|
return DoubleQuote$0(state);
|
|
4105
5000
|
}
|
|
4106
5001
|
}
|
|
4107
|
-
var Else$0 = $TV($EXPECT($
|
|
5002
|
+
var Else$0 = $TV($EXPECT($L100, fail, 'Else "else"'), function($skip, $loc, $0, $1) {
|
|
4108
5003
|
return { $loc, token: $1 };
|
|
4109
5004
|
});
|
|
4110
5005
|
function Else(state) {
|
|
@@ -4116,7 +5011,7 @@ var Civet = (() => {
|
|
|
4116
5011
|
return Else$0(state);
|
|
4117
5012
|
}
|
|
4118
5013
|
}
|
|
4119
|
-
var Equals$0 = $TV($EXPECT($
|
|
5014
|
+
var Equals$0 = $TV($EXPECT($L44, fail, 'Equals "="'), function($skip, $loc, $0, $1) {
|
|
4120
5015
|
return { $loc, token: $1 };
|
|
4121
5016
|
});
|
|
4122
5017
|
function Equals(state) {
|
|
@@ -4128,7 +5023,7 @@ var Civet = (() => {
|
|
|
4128
5023
|
return Equals$0(state);
|
|
4129
5024
|
}
|
|
4130
5025
|
}
|
|
4131
|
-
var Export$0 = $TS($S($EXPECT($
|
|
5026
|
+
var Export$0 = $TS($S($EXPECT($L101, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4132
5027
|
return { $loc, token: $1 };
|
|
4133
5028
|
});
|
|
4134
5029
|
function Export(state) {
|
|
@@ -4140,7 +5035,7 @@ var Civet = (() => {
|
|
|
4140
5035
|
return Export$0(state);
|
|
4141
5036
|
}
|
|
4142
5037
|
}
|
|
4143
|
-
var For$0 = $TS($S($EXPECT($
|
|
5038
|
+
var For$0 = $TS($S($EXPECT($L102, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4144
5039
|
return { $loc, token: $1 };
|
|
4145
5040
|
});
|
|
4146
5041
|
function For(state) {
|
|
@@ -4152,7 +5047,7 @@ var Civet = (() => {
|
|
|
4152
5047
|
return For$0(state);
|
|
4153
5048
|
}
|
|
4154
5049
|
}
|
|
4155
|
-
var From$0 = $TS($S($EXPECT($
|
|
5050
|
+
var From$0 = $TS($S($EXPECT($L103, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4156
5051
|
return { $loc, token: $1 };
|
|
4157
5052
|
});
|
|
4158
5053
|
function From(state) {
|
|
@@ -4164,7 +5059,7 @@ var Civet = (() => {
|
|
|
4164
5059
|
return From$0(state);
|
|
4165
5060
|
}
|
|
4166
5061
|
}
|
|
4167
|
-
var Function$0 = $TV($EXPECT($
|
|
5062
|
+
var Function$0 = $TV($EXPECT($L104, fail, 'Function "function"'), function($skip, $loc, $0, $1) {
|
|
4168
5063
|
return { $loc, token: $1 };
|
|
4169
5064
|
});
|
|
4170
5065
|
function Function(state) {
|
|
@@ -4176,7 +5071,7 @@ var Civet = (() => {
|
|
|
4176
5071
|
return Function$0(state);
|
|
4177
5072
|
}
|
|
4178
5073
|
}
|
|
4179
|
-
var GetOrSet$0 = $TS($S($C($EXPECT($
|
|
5074
|
+
var GetOrSet$0 = $TS($S($C($EXPECT($L105, fail, 'GetOrSet "get"'), $EXPECT($L106, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4180
5075
|
return { $loc, token: $1 };
|
|
4181
5076
|
});
|
|
4182
5077
|
function GetOrSet(state) {
|
|
@@ -4188,7 +5083,7 @@ var Civet = (() => {
|
|
|
4188
5083
|
return GetOrSet$0(state);
|
|
4189
5084
|
}
|
|
4190
5085
|
}
|
|
4191
|
-
var If$0 = $TV($EXPECT($
|
|
5086
|
+
var If$0 = $TV($TEXT($S($EXPECT($L107, fail, 'If "if"'), $E($EXPECT($L108, fail, 'If " "')))), function($skip, $loc, $0, $1) {
|
|
4192
5087
|
return { $loc, token: $1 };
|
|
4193
5088
|
});
|
|
4194
5089
|
function If(state) {
|
|
@@ -4200,7 +5095,7 @@ var Civet = (() => {
|
|
|
4200
5095
|
return If$0(state);
|
|
4201
5096
|
}
|
|
4202
5097
|
}
|
|
4203
|
-
var Import$0 = $TS($S($EXPECT($
|
|
5098
|
+
var Import$0 = $TS($S($EXPECT($L11, fail, 'Import "import"'), $Y($EXPECT($R33, fail, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
|
|
4204
5099
|
return { $loc, token: $1 };
|
|
4205
5100
|
});
|
|
4206
5101
|
function Import(state) {
|
|
@@ -4212,7 +5107,7 @@ var Civet = (() => {
|
|
|
4212
5107
|
return Import$0(state);
|
|
4213
5108
|
}
|
|
4214
5109
|
}
|
|
4215
|
-
var In$0 = $TV($EXPECT($
|
|
5110
|
+
var In$0 = $TV($EXPECT($L70, fail, 'In "in"'), function($skip, $loc, $0, $1) {
|
|
4216
5111
|
return { $loc, token: $1 };
|
|
4217
5112
|
});
|
|
4218
5113
|
function In(state) {
|
|
@@ -4224,7 +5119,7 @@ var Civet = (() => {
|
|
|
4224
5119
|
return In$0(state);
|
|
4225
5120
|
}
|
|
4226
5121
|
}
|
|
4227
|
-
var LetOrConst$0 = $TV($C($EXPECT($
|
|
5122
|
+
var LetOrConst$0 = $TV($C($EXPECT($L109, fail, 'LetOrConst "let"'), $EXPECT($L110, fail, 'LetOrConst "const"')), function($skip, $loc, $0, $1) {
|
|
4228
5123
|
return { $loc, token: $1 };
|
|
4229
5124
|
});
|
|
4230
5125
|
function LetOrConst(state) {
|
|
@@ -4236,7 +5131,7 @@ var Civet = (() => {
|
|
|
4236
5131
|
return LetOrConst$0(state);
|
|
4237
5132
|
}
|
|
4238
5133
|
}
|
|
4239
|
-
var Loop$0 = $TS($S($EXPECT($
|
|
5134
|
+
var Loop$0 = $TS($S($EXPECT($L111, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4240
5135
|
return { $loc, token: "while(true)" };
|
|
4241
5136
|
});
|
|
4242
5137
|
function Loop(state) {
|
|
@@ -4248,7 +5143,7 @@ var Civet = (() => {
|
|
|
4248
5143
|
return Loop$0(state);
|
|
4249
5144
|
}
|
|
4250
5145
|
}
|
|
4251
|
-
var New$0 = $TV($EXPECT($
|
|
5146
|
+
var New$0 = $TV($EXPECT($L112, fail, 'New "new"'), function($skip, $loc, $0, $1) {
|
|
4252
5147
|
return { $loc, token: $1 };
|
|
4253
5148
|
});
|
|
4254
5149
|
function New(state) {
|
|
@@ -4260,7 +5155,19 @@ var Civet = (() => {
|
|
|
4260
5155
|
return New$0(state);
|
|
4261
5156
|
}
|
|
4262
5157
|
}
|
|
4263
|
-
var
|
|
5158
|
+
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) {
|
|
5159
|
+
return { $loc, token: "!" };
|
|
5160
|
+
});
|
|
5161
|
+
function Not(state) {
|
|
5162
|
+
if (state.verbose)
|
|
5163
|
+
console.log("ENTER:", "Not");
|
|
5164
|
+
if (state.tokenize) {
|
|
5165
|
+
return $TOKEN("Not", state, Not$0(state));
|
|
5166
|
+
} else {
|
|
5167
|
+
return Not$0(state);
|
|
5168
|
+
}
|
|
5169
|
+
}
|
|
5170
|
+
var Of$0 = $TV($EXPECT($L65, fail, 'Of "of"'), function($skip, $loc, $0, $1) {
|
|
4264
5171
|
return { $loc, token: $1 };
|
|
4265
5172
|
});
|
|
4266
5173
|
function Of(state) {
|
|
@@ -4272,7 +5179,7 @@ var Civet = (() => {
|
|
|
4272
5179
|
return Of$0(state);
|
|
4273
5180
|
}
|
|
4274
5181
|
}
|
|
4275
|
-
var OpenBrace$0 = $TV($EXPECT($
|
|
5182
|
+
var OpenBrace$0 = $TV($EXPECT($L114, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
|
|
4276
5183
|
return { $loc, token: $1 };
|
|
4277
5184
|
});
|
|
4278
5185
|
function OpenBrace(state) {
|
|
@@ -4284,7 +5191,7 @@ var Civet = (() => {
|
|
|
4284
5191
|
return OpenBrace$0(state);
|
|
4285
5192
|
}
|
|
4286
5193
|
}
|
|
4287
|
-
var OpenBracket$0 = $TV($EXPECT($
|
|
5194
|
+
var OpenBracket$0 = $TV($EXPECT($L115, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
|
|
4288
5195
|
return { $loc, token: $1 };
|
|
4289
5196
|
});
|
|
4290
5197
|
function OpenBracket(state) {
|
|
@@ -4296,7 +5203,7 @@ var Civet = (() => {
|
|
|
4296
5203
|
return OpenBracket$0(state);
|
|
4297
5204
|
}
|
|
4298
5205
|
}
|
|
4299
|
-
var OpenParen$0 = $TV($EXPECT($
|
|
5206
|
+
var OpenParen$0 = $TV($EXPECT($L116, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
|
|
4300
5207
|
return { $loc, token: $1 };
|
|
4301
5208
|
});
|
|
4302
5209
|
function OpenParen(state) {
|
|
@@ -4308,7 +5215,7 @@ var Civet = (() => {
|
|
|
4308
5215
|
return OpenParen$0(state);
|
|
4309
5216
|
}
|
|
4310
5217
|
}
|
|
4311
|
-
var QuestionMark$0 = $TV($EXPECT($
|
|
5218
|
+
var QuestionMark$0 = $TV($EXPECT($L117, fail, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
|
|
4312
5219
|
return { $loc, token: $1 };
|
|
4313
5220
|
});
|
|
4314
5221
|
function QuestionMark(state) {
|
|
@@ -4320,7 +5227,7 @@ var Civet = (() => {
|
|
|
4320
5227
|
return QuestionMark$0(state);
|
|
4321
5228
|
}
|
|
4322
5229
|
}
|
|
4323
|
-
var Return$0 = $TS($S($EXPECT($
|
|
5230
|
+
var Return$0 = $TS($S($EXPECT($L118, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4324
5231
|
return { $loc, token: $1 };
|
|
4325
5232
|
});
|
|
4326
5233
|
function Return(state) {
|
|
@@ -4332,7 +5239,7 @@ var Civet = (() => {
|
|
|
4332
5239
|
return Return$0(state);
|
|
4333
5240
|
}
|
|
4334
5241
|
}
|
|
4335
|
-
var Semicolon$0 = $TV($EXPECT($
|
|
5242
|
+
var Semicolon$0 = $TV($EXPECT($L74, fail, 'Semicolon ";"'), function($skip, $loc, $0, $1) {
|
|
4336
5243
|
return { $loc, token: $1 };
|
|
4337
5244
|
});
|
|
4338
5245
|
function Semicolon(state) {
|
|
@@ -4344,7 +5251,7 @@ var Civet = (() => {
|
|
|
4344
5251
|
return Semicolon$0(state);
|
|
4345
5252
|
}
|
|
4346
5253
|
}
|
|
4347
|
-
var SingleQuote$0 = $TV($EXPECT($
|
|
5254
|
+
var SingleQuote$0 = $TV($EXPECT($L119, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
|
|
4348
5255
|
return { $loc, token: $1 };
|
|
4349
5256
|
});
|
|
4350
5257
|
function SingleQuote(state) {
|
|
@@ -4356,7 +5263,7 @@ var Civet = (() => {
|
|
|
4356
5263
|
return SingleQuote$0(state);
|
|
4357
5264
|
}
|
|
4358
5265
|
}
|
|
4359
|
-
var Star$0 = $TV($EXPECT($
|
|
5266
|
+
var Star$0 = $TV($EXPECT($L46, fail, 'Star "*"'), function($skip, $loc, $0, $1) {
|
|
4360
5267
|
return { $loc, token: $1 };
|
|
4361
5268
|
});
|
|
4362
5269
|
function Star(state) {
|
|
@@ -4368,10 +5275,10 @@ var Civet = (() => {
|
|
|
4368
5275
|
return Star$0(state);
|
|
4369
5276
|
}
|
|
4370
5277
|
}
|
|
4371
|
-
var Static$0 = $TV($EXPECT($
|
|
5278
|
+
var Static$0 = $TV($EXPECT($L120, fail, 'Static "static"'), function($skip, $loc, $0, $1) {
|
|
4372
5279
|
return { $loc, token: $1 };
|
|
4373
5280
|
});
|
|
4374
|
-
var Static$1 = $TS($S($EXPECT($L8, fail, 'Static "@"'), $N($EXPECT($
|
|
5281
|
+
var Static$1 = $TS($S($EXPECT($L8, fail, 'Static "@"'), $N($EXPECT($L116, fail, 'Static "("'))), function($skip, $loc, $0, $1, $2) {
|
|
4375
5282
|
return { $loc, token: "static " };
|
|
4376
5283
|
});
|
|
4377
5284
|
function Static(state) {
|
|
@@ -4381,7 +5288,7 @@ var Civet = (() => {
|
|
|
4381
5288
|
return Static$0(state) || Static$1(state);
|
|
4382
5289
|
}
|
|
4383
5290
|
}
|
|
4384
|
-
var SubstitutionStart$0 = $TV($EXPECT($
|
|
5291
|
+
var SubstitutionStart$0 = $TV($EXPECT($L121, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
|
|
4385
5292
|
return { $loc, token: $1 };
|
|
4386
5293
|
});
|
|
4387
5294
|
function SubstitutionStart(state) {
|
|
@@ -4393,7 +5300,7 @@ var Civet = (() => {
|
|
|
4393
5300
|
return SubstitutionStart$0(state);
|
|
4394
5301
|
}
|
|
4395
5302
|
}
|
|
4396
|
-
var Switch$0 = $TS($S($EXPECT($
|
|
5303
|
+
var Switch$0 = $TS($S($EXPECT($L122, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4397
5304
|
return { $loc, token: $1 };
|
|
4398
5305
|
});
|
|
4399
5306
|
function Switch(state) {
|
|
@@ -4405,7 +5312,7 @@ var Civet = (() => {
|
|
|
4405
5312
|
return Switch$0(state);
|
|
4406
5313
|
}
|
|
4407
5314
|
}
|
|
4408
|
-
var Target$0 = $TV($EXPECT($
|
|
5315
|
+
var Target$0 = $TV($EXPECT($L123, fail, 'Target "target"'), function($skip, $loc, $0, $1) {
|
|
4409
5316
|
return { $loc, token: $1 };
|
|
4410
5317
|
});
|
|
4411
5318
|
function Target(state) {
|
|
@@ -4417,7 +5324,19 @@ var Civet = (() => {
|
|
|
4417
5324
|
return Target$0(state);
|
|
4418
5325
|
}
|
|
4419
5326
|
}
|
|
4420
|
-
var
|
|
5327
|
+
var Then$0 = $TS($S(__, $EXPECT($L124, fail, 'Then "then"'), NonIdContinue), function($skip, $loc, $0, $1, $2, $3) {
|
|
5328
|
+
return { $loc, token: "" };
|
|
5329
|
+
});
|
|
5330
|
+
function Then(state) {
|
|
5331
|
+
if (state.verbose)
|
|
5332
|
+
console.log("ENTER:", "Then");
|
|
5333
|
+
if (state.tokenize) {
|
|
5334
|
+
return $TOKEN("Then", state, Then$0(state));
|
|
5335
|
+
} else {
|
|
5336
|
+
return Then$0(state);
|
|
5337
|
+
}
|
|
5338
|
+
}
|
|
5339
|
+
var Throw$0 = $TS($S($EXPECT($L125, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4421
5340
|
return { $loc, token: $1 };
|
|
4422
5341
|
});
|
|
4423
5342
|
function Throw(state) {
|
|
@@ -4429,7 +5348,7 @@ var Civet = (() => {
|
|
|
4429
5348
|
return Throw$0(state);
|
|
4430
5349
|
}
|
|
4431
5350
|
}
|
|
4432
|
-
var TripleDoubleQuote$0 = $TV($EXPECT($
|
|
5351
|
+
var TripleDoubleQuote$0 = $TV($EXPECT($L126, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
|
|
4433
5352
|
return { $loc, token: "`" };
|
|
4434
5353
|
});
|
|
4435
5354
|
function TripleDoubleQuote(state) {
|
|
@@ -4441,7 +5360,7 @@ var Civet = (() => {
|
|
|
4441
5360
|
return TripleDoubleQuote$0(state);
|
|
4442
5361
|
}
|
|
4443
5362
|
}
|
|
4444
|
-
var TripleSingleQuote$0 = $TV($EXPECT($
|
|
5363
|
+
var TripleSingleQuote$0 = $TV($EXPECT($L127, fail, `TripleSingleQuote "'''"`), function($skip, $loc, $0, $1) {
|
|
4445
5364
|
return { $loc, token: "`" };
|
|
4446
5365
|
});
|
|
4447
5366
|
function TripleSingleQuote(state) {
|
|
@@ -4453,7 +5372,7 @@ var Civet = (() => {
|
|
|
4453
5372
|
return TripleSingleQuote$0(state);
|
|
4454
5373
|
}
|
|
4455
5374
|
}
|
|
4456
|
-
var TripleTick$0 = $TV($EXPECT($
|
|
5375
|
+
var TripleTick$0 = $TV($EXPECT($L128, fail, 'TripleTick "```"'), function($skip, $loc, $0, $1) {
|
|
4457
5376
|
return { $loc, token: "`" };
|
|
4458
5377
|
});
|
|
4459
5378
|
function TripleTick(state) {
|
|
@@ -4465,7 +5384,7 @@ var Civet = (() => {
|
|
|
4465
5384
|
return TripleTick$0(state);
|
|
4466
5385
|
}
|
|
4467
5386
|
}
|
|
4468
|
-
var Try$0 = $TV($EXPECT($
|
|
5387
|
+
var Try$0 = $TV($EXPECT($L129, fail, 'Try "try"'), function($skip, $loc, $0, $1) {
|
|
4469
5388
|
return { $loc, token: $1 };
|
|
4470
5389
|
});
|
|
4471
5390
|
function Try(state) {
|
|
@@ -4477,7 +5396,7 @@ var Civet = (() => {
|
|
|
4477
5396
|
return Try$0(state);
|
|
4478
5397
|
}
|
|
4479
5398
|
}
|
|
4480
|
-
var Typeof$0 = $TS($S($EXPECT($
|
|
5399
|
+
var Typeof$0 = $TS($S($EXPECT($L130, fail, 'Typeof "typeof"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4481
5400
|
return { $loc, token: $1 };
|
|
4482
5401
|
});
|
|
4483
5402
|
function Typeof(state) {
|
|
@@ -4489,7 +5408,7 @@ var Civet = (() => {
|
|
|
4489
5408
|
return Typeof$0(state);
|
|
4490
5409
|
}
|
|
4491
5410
|
}
|
|
4492
|
-
var Unless$0 = $TV($EXPECT($
|
|
5411
|
+
var Unless$0 = $TV($EXPECT($L131, fail, 'Unless "unless"'), function($skip, $loc, $0, $1) {
|
|
4493
5412
|
return { $loc, token: $1 };
|
|
4494
5413
|
});
|
|
4495
5414
|
function Unless(state) {
|
|
@@ -4501,7 +5420,7 @@ var Civet = (() => {
|
|
|
4501
5420
|
return Unless$0(state);
|
|
4502
5421
|
}
|
|
4503
5422
|
}
|
|
4504
|
-
var Until$0 = $TS($S($EXPECT($
|
|
5423
|
+
var Until$0 = $TS($S($EXPECT($L132, fail, 'Until "until"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4505
5424
|
return { $loc, token: $1 };
|
|
4506
5425
|
});
|
|
4507
5426
|
function Until(state) {
|
|
@@ -4513,7 +5432,7 @@ var Civet = (() => {
|
|
|
4513
5432
|
return Until$0(state);
|
|
4514
5433
|
}
|
|
4515
5434
|
}
|
|
4516
|
-
var Var$0 = $TV($EXPECT($
|
|
5435
|
+
var Var$0 = $TV($EXPECT($L133, fail, 'Var "var"'), function($skip, $loc, $0, $1) {
|
|
4517
5436
|
return { $loc, token: $1 };
|
|
4518
5437
|
});
|
|
4519
5438
|
function Var(state) {
|
|
@@ -4525,7 +5444,7 @@ var Civet = (() => {
|
|
|
4525
5444
|
return Var$0(state);
|
|
4526
5445
|
}
|
|
4527
5446
|
}
|
|
4528
|
-
var Void$0 = $TS($S($EXPECT($
|
|
5447
|
+
var Void$0 = $TS($S($EXPECT($L134, fail, 'Void "void"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4529
5448
|
return { $loc, token: $1 };
|
|
4530
5449
|
});
|
|
4531
5450
|
function Void(state) {
|
|
@@ -4537,7 +5456,7 @@ var Civet = (() => {
|
|
|
4537
5456
|
return Void$0(state);
|
|
4538
5457
|
}
|
|
4539
5458
|
}
|
|
4540
|
-
var When$0 = $TS($S($EXPECT($
|
|
5459
|
+
var When$0 = $TS($S($EXPECT($L135, fail, 'When "when"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4541
5460
|
return { $loc, token: "case" };
|
|
4542
5461
|
});
|
|
4543
5462
|
function When(state) {
|
|
@@ -4549,7 +5468,7 @@ var Civet = (() => {
|
|
|
4549
5468
|
return When$0(state);
|
|
4550
5469
|
}
|
|
4551
5470
|
}
|
|
4552
|
-
var While$0 = $TS($S($EXPECT($
|
|
5471
|
+
var While$0 = $TS($S($EXPECT($L136, fail, 'While "while"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4553
5472
|
return { $loc, token: $1 };
|
|
4554
5473
|
});
|
|
4555
5474
|
function While(state) {
|
|
@@ -4561,7 +5480,7 @@ var Civet = (() => {
|
|
|
4561
5480
|
return While$0(state);
|
|
4562
5481
|
}
|
|
4563
5482
|
}
|
|
4564
|
-
var Yield$0 = $TS($S($EXPECT($
|
|
5483
|
+
var Yield$0 = $TS($S($EXPECT($L137, fail, 'Yield "yield"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4565
5484
|
return { $loc, token: $1 };
|
|
4566
5485
|
});
|
|
4567
5486
|
function Yield(state) {
|
|
@@ -4587,7 +5506,7 @@ var Civet = (() => {
|
|
|
4587
5506
|
return JSXElement$0(state) || JSXElement$1(state);
|
|
4588
5507
|
}
|
|
4589
5508
|
}
|
|
4590
|
-
var JSXSelfClosingElement$0 = $S($EXPECT($L4, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($
|
|
5509
|
+
var JSXSelfClosingElement$0 = $S($EXPECT($L4, fail, 'JSXSelfClosingElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L138, fail, 'JSXSelfClosingElement "/>"'));
|
|
4591
5510
|
function JSXSelfClosingElement(state) {
|
|
4592
5511
|
if (state.verbose)
|
|
4593
5512
|
console.log("ENTER:", "JSXSelfClosingElement");
|
|
@@ -4597,7 +5516,7 @@ var Civet = (() => {
|
|
|
4597
5516
|
return JSXSelfClosingElement$0(state);
|
|
4598
5517
|
}
|
|
4599
5518
|
}
|
|
4600
|
-
var JSXOpeningElement$0 = $S($EXPECT($L4, fail, 'JSXOpeningElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($
|
|
5519
|
+
var JSXOpeningElement$0 = $S($EXPECT($L4, fail, 'JSXOpeningElement "<"'), $TEXT(JSXElementName), $E(JSXAttributes), __, $EXPECT($L56, fail, 'JSXOpeningElement ">"'));
|
|
4601
5520
|
function JSXOpeningElement(state) {
|
|
4602
5521
|
if (state.verbose)
|
|
4603
5522
|
console.log("ENTER:", "JSXOpeningElement");
|
|
@@ -4607,7 +5526,7 @@ var Civet = (() => {
|
|
|
4607
5526
|
return JSXOpeningElement$0(state);
|
|
4608
5527
|
}
|
|
4609
5528
|
}
|
|
4610
|
-
var JSXClosingElement$0 = $S($EXPECT($
|
|
5529
|
+
var JSXClosingElement$0 = $S($EXPECT($L139, fail, 'JSXClosingElement "</"'), __, $TEXT(JSXElementName), __, $EXPECT($L56, fail, 'JSXClosingElement ">"'));
|
|
4611
5530
|
function JSXClosingElement(state) {
|
|
4612
5531
|
if (state.verbose)
|
|
4613
5532
|
console.log("ENTER:", "JSXClosingElement");
|
|
@@ -4617,7 +5536,7 @@ var Civet = (() => {
|
|
|
4617
5536
|
return JSXClosingElement$0(state);
|
|
4618
5537
|
}
|
|
4619
5538
|
}
|
|
4620
|
-
var JSXFragment$0 = $S($EXPECT($
|
|
5539
|
+
var JSXFragment$0 = $S($EXPECT($L140, fail, 'JSXFragment "<>"'), $E(JSXChildren), $EXPECT($L141, fail, 'JSXFragment "</>"'));
|
|
4621
5540
|
function JSXFragment(state) {
|
|
4622
5541
|
if (state.verbose)
|
|
4623
5542
|
console.log("ENTER:", "JSXFragment");
|
|
@@ -4637,7 +5556,7 @@ var Civet = (() => {
|
|
|
4637
5556
|
return JSXElementName$0(state);
|
|
4638
5557
|
}
|
|
4639
5558
|
}
|
|
4640
|
-
var JSXIdentifierName$0 = $R$0($EXPECT($
|
|
5559
|
+
var JSXIdentifierName$0 = $R$0($EXPECT($R34, fail, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
|
|
4641
5560
|
function JSXIdentifierName(state) {
|
|
4642
5561
|
if (state.verbose)
|
|
4643
5562
|
console.log("ENTER:", "JSXIdentifierName");
|
|
@@ -4657,7 +5576,7 @@ var Civet = (() => {
|
|
|
4657
5576
|
return JSXAttributes$0(state);
|
|
4658
5577
|
}
|
|
4659
5578
|
}
|
|
4660
|
-
var JSXAttribute$0 = $S(OpenBrace, __, DotDotDot,
|
|
5579
|
+
var JSXAttribute$0 = $S(OpenBrace, __, DotDotDot, ExtendedExpression, __, CloseBrace);
|
|
4661
5580
|
var JSXAttribute$1 = $S(JSXAttributeName, $E(JSXAttributeInitializer));
|
|
4662
5581
|
function JSXAttribute(state) {
|
|
4663
5582
|
if (state.tokenize) {
|
|
@@ -4686,9 +5605,9 @@ var Civet = (() => {
|
|
|
4686
5605
|
return JSXAttributeInitializer$0(state);
|
|
4687
5606
|
}
|
|
4688
5607
|
}
|
|
4689
|
-
var JSXAttributeValue$0 = $R$0($EXPECT($
|
|
4690
|
-
var JSXAttributeValue$1 = $R$0($EXPECT($
|
|
4691
|
-
var JSXAttributeValue$2 = $S(OpenBrace,
|
|
5608
|
+
var JSXAttributeValue$0 = $R$0($EXPECT($R35, fail, 'JSXAttributeValue /"[^"]*"/'));
|
|
5609
|
+
var JSXAttributeValue$1 = $R$0($EXPECT($R36, fail, "JSXAttributeValue /'[^']*'/"));
|
|
5610
|
+
var JSXAttributeValue$2 = $S(OpenBrace, ExtendedExpression, __, CloseBrace);
|
|
4692
5611
|
var JSXAttributeValue$3 = JSXElement;
|
|
4693
5612
|
var JSXAttributeValue$4 = JSXFragment;
|
|
4694
5613
|
function JSXAttributeValue(state) {
|
|
@@ -4719,7 +5638,7 @@ var Civet = (() => {
|
|
|
4719
5638
|
return JSXChild$0(state) || JSXChild$1(state) || JSXChild$2(state) || JSXChild$3(state);
|
|
4720
5639
|
}
|
|
4721
5640
|
}
|
|
4722
|
-
var JSXText$0 = $R$0($EXPECT($
|
|
5641
|
+
var JSXText$0 = $R$0($EXPECT($R37, fail, "JSXText /[^{}<>]+/"));
|
|
4723
5642
|
function JSXText(state) {
|
|
4724
5643
|
if (state.verbose)
|
|
4725
5644
|
console.log("ENTER:", "JSXText");
|
|
@@ -4729,7 +5648,7 @@ var Civet = (() => {
|
|
|
4729
5648
|
return JSXText$0(state);
|
|
4730
5649
|
}
|
|
4731
5650
|
}
|
|
4732
|
-
var JSXChildExpression$0 = $S(__, $E($S(DotDotDot, __)),
|
|
5651
|
+
var JSXChildExpression$0 = $S(__, $E($S(DotDotDot, __)), ExtendedExpression);
|
|
4733
5652
|
function JSXChildExpression(state) {
|
|
4734
5653
|
if (state.verbose)
|
|
4735
5654
|
console.log("ENTER:", "JSXChildExpression");
|
|
@@ -4751,7 +5670,7 @@ var Civet = (() => {
|
|
|
4751
5670
|
return TypeDeclaration$0(state);
|
|
4752
5671
|
}
|
|
4753
5672
|
}
|
|
4754
|
-
var TypeDeclarationModifier$0 = $S($EXPECT($
|
|
5673
|
+
var TypeDeclarationModifier$0 = $S($EXPECT($L142, fail, 'TypeDeclarationModifier "declare"'), NonIdContinue);
|
|
4755
5674
|
var TypeDeclarationModifier$1 = Export;
|
|
4756
5675
|
function TypeDeclarationModifier(state) {
|
|
4757
5676
|
if (state.tokenize) {
|
|
@@ -4771,7 +5690,7 @@ var Civet = (() => {
|
|
|
4771
5690
|
return TypeDeclarationRest$0(state) || TypeDeclarationRest$1(state) || TypeDeclarationRest$2(state) || TypeDeclarationRest$3(state);
|
|
4772
5691
|
}
|
|
4773
5692
|
}
|
|
4774
|
-
var TypeKeyword$0 = $S($EXPECT($
|
|
5693
|
+
var TypeKeyword$0 = $S($EXPECT($L143, fail, 'TypeKeyword "type"'), NonIdContinue);
|
|
4775
5694
|
function TypeKeyword(state) {
|
|
4776
5695
|
if (state.verbose)
|
|
4777
5696
|
console.log("ENTER:", "TypeKeyword");
|
|
@@ -4781,7 +5700,7 @@ var Civet = (() => {
|
|
|
4781
5700
|
return TypeKeyword$0(state);
|
|
4782
5701
|
}
|
|
4783
5702
|
}
|
|
4784
|
-
var Interface$0 = $S($EXPECT($
|
|
5703
|
+
var Interface$0 = $S($EXPECT($L144, fail, 'Interface "interface"'), NonIdContinue);
|
|
4785
5704
|
function Interface(state) {
|
|
4786
5705
|
if (state.verbose)
|
|
4787
5706
|
console.log("ENTER:", "Interface");
|
|
@@ -4791,7 +5710,7 @@ var Civet = (() => {
|
|
|
4791
5710
|
return Interface$0(state);
|
|
4792
5711
|
}
|
|
4793
5712
|
}
|
|
4794
|
-
var Namespace$0 = $S($EXPECT($
|
|
5713
|
+
var Namespace$0 = $S($EXPECT($L145, fail, 'Namespace "namespace"'), NonIdContinue);
|
|
4795
5714
|
function Namespace(state) {
|
|
4796
5715
|
if (state.verbose)
|
|
4797
5716
|
console.log("ENTER:", "Namespace");
|
|
@@ -4891,7 +5810,7 @@ var Civet = (() => {
|
|
|
4891
5810
|
return NestedTypeDeclaration$0(state);
|
|
4892
5811
|
}
|
|
4893
5812
|
}
|
|
4894
|
-
var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($
|
|
5813
|
+
var TypeIndexSignature$0 = $S($E($S($R$0($EXPECT($R38, fail, "TypeIndexSignature /[+-]?/")), $EXPECT($L146, fail, 'TypeIndexSignature "readonly"'), __)), OpenBracket, TypeIndex, CloseBracket, $E($S(__, $R$0($EXPECT($R39, fail, "TypeIndexSignature /[+-]/")), QuestionMark)));
|
|
4895
5814
|
function TypeIndexSignature(state) {
|
|
4896
5815
|
if (state.verbose)
|
|
4897
5816
|
console.log("ENTER:", "TypeIndexSignature");
|
|
@@ -4922,7 +5841,7 @@ var Civet = (() => {
|
|
|
4922
5841
|
return TypeSuffix$0(state);
|
|
4923
5842
|
}
|
|
4924
5843
|
}
|
|
4925
|
-
var ReturnTypeSuffix$0 = $TS($S(__, Colon, $E($S(__, $EXPECT($
|
|
5844
|
+
var ReturnTypeSuffix$0 = $TS($S(__, Colon, $E($S(__, $EXPECT($L147, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
4926
5845
|
if (!$3)
|
|
4927
5846
|
$0.splice(2, 1);
|
|
4928
5847
|
if ($1.length === 0)
|
|
@@ -4942,7 +5861,7 @@ var Civet = (() => {
|
|
|
4942
5861
|
return ReturnTypeSuffix$0(state);
|
|
4943
5862
|
}
|
|
4944
5863
|
}
|
|
4945
|
-
var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($
|
|
5864
|
+
var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L60, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
|
|
4946
5865
|
if (!$2)
|
|
4947
5866
|
return $1;
|
|
4948
5867
|
return $0;
|
|
@@ -5005,9 +5924,9 @@ var Civet = (() => {
|
|
|
5005
5924
|
return TypeUnarySuffix$0(state) || TypeUnarySuffix$1(state);
|
|
5006
5925
|
}
|
|
5007
5926
|
}
|
|
5008
|
-
var TypeUnaryOp$0 = $EXPECT($
|
|
5009
|
-
var TypeUnaryOp$1 = $EXPECT($
|
|
5010
|
-
var TypeUnaryOp$2 = $EXPECT($
|
|
5927
|
+
var TypeUnaryOp$0 = $EXPECT($L148, fail, 'TypeUnaryOp "keyof"');
|
|
5928
|
+
var TypeUnaryOp$1 = $EXPECT($L130, fail, 'TypeUnaryOp "typeof"');
|
|
5929
|
+
var TypeUnaryOp$2 = $EXPECT($L149, fail, 'TypeUnaryOp "infer"');
|
|
5011
5930
|
function TypeUnaryOp(state) {
|
|
5012
5931
|
if (state.tokenize) {
|
|
5013
5932
|
return $TOKEN("TypeUnaryOp", state, TypeUnaryOp$0(state) || TypeUnaryOp$1(state) || TypeUnaryOp$2(state));
|
|
@@ -5097,10 +6016,10 @@ var Civet = (() => {
|
|
|
5097
6016
|
}
|
|
5098
6017
|
}
|
|
5099
6018
|
var TypeLiteral$0 = Literal;
|
|
5100
|
-
var TypeLiteral$1 = $TV($EXPECT($
|
|
6019
|
+
var TypeLiteral$1 = $TV($EXPECT($L134, fail, 'TypeLiteral "void"'), function($skip, $loc, $0, $1) {
|
|
5101
6020
|
return { $loc, token: "void" };
|
|
5102
6021
|
});
|
|
5103
|
-
var TypeLiteral$2 = $TV($EXPECT($
|
|
6022
|
+
var TypeLiteral$2 = $TV($EXPECT($L150, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
|
|
5104
6023
|
return { $loc, token: "[]" };
|
|
5105
6024
|
});
|
|
5106
6025
|
function TypeLiteral(state) {
|
|
@@ -5110,10 +6029,10 @@ var Civet = (() => {
|
|
|
5110
6029
|
return TypeLiteral$0(state) || TypeLiteral$1(state) || TypeLiteral$2(state);
|
|
5111
6030
|
}
|
|
5112
6031
|
}
|
|
5113
|
-
var TypeBinaryOp$0 = $TV($EXPECT($
|
|
6032
|
+
var TypeBinaryOp$0 = $TV($EXPECT($L73, fail, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
|
|
5114
6033
|
return { $loc, token: "|" };
|
|
5115
6034
|
});
|
|
5116
|
-
var TypeBinaryOp$1 = $TV($EXPECT($
|
|
6035
|
+
var TypeBinaryOp$1 = $TV($EXPECT($L71, fail, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
|
|
5117
6036
|
return { $loc, token: "&" };
|
|
5118
6037
|
});
|
|
5119
6038
|
function TypeBinaryOp(state) {
|
|
@@ -5133,7 +6052,7 @@ var Civet = (() => {
|
|
|
5133
6052
|
return FunctionType$0(state);
|
|
5134
6053
|
}
|
|
5135
6054
|
}
|
|
5136
|
-
var TypeArguments$0 = $S(__, $EXPECT($L4, fail, 'TypeArguments "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($
|
|
6055
|
+
var TypeArguments$0 = $S(__, $EXPECT($L4, fail, 'TypeArguments "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L56, fail, 'TypeArguments ">"'));
|
|
5137
6056
|
function TypeArguments(state) {
|
|
5138
6057
|
if (state.verbose)
|
|
5139
6058
|
console.log("ENTER:", "TypeArguments");
|
|
@@ -5143,7 +6062,7 @@ var Civet = (() => {
|
|
|
5143
6062
|
return TypeArguments$0(state);
|
|
5144
6063
|
}
|
|
5145
6064
|
}
|
|
5146
|
-
var TypeParameters$0 = $TS($S(__, $EXPECT($L4, fail, 'TypeParameters "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($
|
|
6065
|
+
var TypeParameters$0 = $TS($S(__, $EXPECT($L4, fail, 'TypeParameters "<"'), __, Type, $Q($S(__, Comma, __, Type)), $E($S(__, Comma)), __, $EXPECT($L56, fail, 'TypeParameters ">"')), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
5147
6066
|
return { ts: true, children: $0 };
|
|
5148
6067
|
});
|
|
5149
6068
|
function TypeParameters(state) {
|
|
@@ -5176,8 +6095,8 @@ var Civet = (() => {
|
|
|
5176
6095
|
}
|
|
5177
6096
|
}
|
|
5178
6097
|
var TypeParameterDelimiter$0 = $S($Q(_), Comma);
|
|
5179
|
-
var TypeParameterDelimiter$1 = $Y($S($Q(_), $EXPECT($
|
|
5180
|
-
var TypeParameterDelimiter$2 = $TV($Y($S(__, $EXPECT($
|
|
6098
|
+
var TypeParameterDelimiter$1 = $Y($S($Q(_), $EXPECT($L56, fail, 'TypeParameterDelimiter ">"')));
|
|
6099
|
+
var TypeParameterDelimiter$2 = $TV($Y($S(__, $EXPECT($L56, fail, 'TypeParameterDelimiter ">"'))), function($skip, $loc, $0, $1) {
|
|
5181
6100
|
return { $loc, token: "," };
|
|
5182
6101
|
});
|
|
5183
6102
|
var TypeParameterDelimiter$3 = $TV($Y(EOS), function($skip, $loc, $0, $1) {
|
|
@@ -5190,7 +6109,7 @@ var Civet = (() => {
|
|
|
5190
6109
|
return TypeParameterDelimiter$0(state) || TypeParameterDelimiter$1(state) || TypeParameterDelimiter$2(state) || TypeParameterDelimiter$3(state);
|
|
5191
6110
|
}
|
|
5192
6111
|
}
|
|
5193
|
-
var Shebang$0 = $S($R$0($EXPECT($
|
|
6112
|
+
var Shebang$0 = $S($R$0($EXPECT($R40, fail, "Shebang /#![^\\r\\n]*/")), EOL);
|
|
5194
6113
|
function Shebang(state) {
|
|
5195
6114
|
if (state.verbose)
|
|
5196
6115
|
console.log("ENTER:", "Shebang");
|
|
@@ -5200,11 +6119,11 @@ var Civet = (() => {
|
|
|
5200
6119
|
return Shebang$0(state);
|
|
5201
6120
|
}
|
|
5202
6121
|
}
|
|
5203
|
-
var CivetPrologue$0 = $T($S($EXPECT($
|
|
6122
|
+
var CivetPrologue$0 = $T($S($EXPECT($R41, fail, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, $TEXT(StatementDelimiter), EOS), function(value) {
|
|
5204
6123
|
var content = value[2];
|
|
5205
6124
|
return content;
|
|
5206
6125
|
});
|
|
5207
|
-
var CivetPrologue$1 = $T($S($EXPECT($
|
|
6126
|
+
var CivetPrologue$1 = $T($S($EXPECT($R41, fail, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, $TEXT(StatementDelimiter), EOS), function(value) {
|
|
5208
6127
|
var content = value[2];
|
|
5209
6128
|
return content;
|
|
5210
6129
|
});
|
|
@@ -5215,7 +6134,7 @@ var Civet = (() => {
|
|
|
5215
6134
|
return CivetPrologue$0(state) || CivetPrologue$1(state);
|
|
5216
6135
|
}
|
|
5217
6136
|
}
|
|
5218
|
-
var CivetPrologueContent$0 = $TS($S($EXPECT($
|
|
6137
|
+
var CivetPrologueContent$0 = $TS($S($EXPECT($L151, fail, 'CivetPrologueContent "civet"'), $Q(CivetOption), $EXPECT($R42, fail, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3) {
|
|
5219
6138
|
var options = $2;
|
|
5220
6139
|
return {
|
|
5221
6140
|
type: "CivetPrologue",
|
|
@@ -5232,7 +6151,7 @@ var Civet = (() => {
|
|
|
5232
6151
|
return CivetPrologueContent$0(state);
|
|
5233
6152
|
}
|
|
5234
6153
|
}
|
|
5235
|
-
var CivetOption$0 = $TR($EXPECT($
|
|
6154
|
+
var CivetOption$0 = $TR($EXPECT($R43, fail, "CivetOption /\\s+([+-]?)([a-zA-Z0-9-]+)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
5236
6155
|
const optionName = $2.replace(/-+([a-z]?)/g, (_2, l) => {
|
|
5237
6156
|
if (l)
|
|
5238
6157
|
return l.toUpperCase();
|
|
@@ -5250,7 +6169,7 @@ var Civet = (() => {
|
|
|
5250
6169
|
return CivetOption$0(state);
|
|
5251
6170
|
}
|
|
5252
6171
|
}
|
|
5253
|
-
var UnknownPrologue$0 = $S($R$0($EXPECT($
|
|
6172
|
+
var UnknownPrologue$0 = $S($R$0($EXPECT($R41, fail, "UnknownPrologue /[\\t ]*/")), BasicStringLiteral, $TEXT(StatementDelimiter), EOS);
|
|
5254
6173
|
function UnknownPrologue(state) {
|
|
5255
6174
|
if (state.verbose)
|
|
5256
6175
|
console.log("ENTER:", "UnknownPrologue");
|
|
@@ -5279,7 +6198,7 @@ var Civet = (() => {
|
|
|
5279
6198
|
return EOS$0(state);
|
|
5280
6199
|
}
|
|
5281
6200
|
}
|
|
5282
|
-
var EOL$0 = $TR($EXPECT($
|
|
6201
|
+
var EOL$0 = $TR($EXPECT($R44, fail, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
5283
6202
|
return { $loc, token: $0 };
|
|
5284
6203
|
});
|
|
5285
6204
|
function EOL(state) {
|
|
@@ -5463,6 +6382,20 @@ var Civet = (() => {
|
|
|
5463
6382
|
return CoffeeBooleansEnabled$0(state);
|
|
5464
6383
|
}
|
|
5465
6384
|
}
|
|
6385
|
+
var CoffeeForLoopsEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeForLoopsEnabled ""'), function($skip, $loc, $0, $1) {
|
|
6386
|
+
if (module.config.coffeeForLoops)
|
|
6387
|
+
return;
|
|
6388
|
+
return $skip;
|
|
6389
|
+
});
|
|
6390
|
+
function CoffeeForLoopsEnabled(state) {
|
|
6391
|
+
if (state.verbose)
|
|
6392
|
+
console.log("ENTER:", "CoffeeForLoopsEnabled");
|
|
6393
|
+
if (state.tokenize) {
|
|
6394
|
+
return $TOKEN("CoffeeForLoopsEnabled", state, CoffeeForLoopsEnabled$0(state));
|
|
6395
|
+
} else {
|
|
6396
|
+
return CoffeeForLoopsEnabled$0(state);
|
|
6397
|
+
}
|
|
6398
|
+
}
|
|
5466
6399
|
var CoffeeInterpolationEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeInterpolationEnabled ""'), function($skip, $loc, $0, $1) {
|
|
5467
6400
|
if (module.config.coffeeInterpolation)
|
|
5468
6401
|
return;
|
|
@@ -5477,6 +6410,48 @@ var Civet = (() => {
|
|
|
5477
6410
|
return CoffeeInterpolationEnabled$0(state);
|
|
5478
6411
|
}
|
|
5479
6412
|
}
|
|
6413
|
+
var CoffeeIsntEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeIsntEnabled ""'), function($skip, $loc, $0, $1) {
|
|
6414
|
+
if (module.config.coffeeIsnt)
|
|
6415
|
+
return;
|
|
6416
|
+
return $skip;
|
|
6417
|
+
});
|
|
6418
|
+
function CoffeeIsntEnabled(state) {
|
|
6419
|
+
if (state.verbose)
|
|
6420
|
+
console.log("ENTER:", "CoffeeIsntEnabled");
|
|
6421
|
+
if (state.tokenize) {
|
|
6422
|
+
return $TOKEN("CoffeeIsntEnabled", state, CoffeeIsntEnabled$0(state));
|
|
6423
|
+
} else {
|
|
6424
|
+
return CoffeeIsntEnabled$0(state);
|
|
6425
|
+
}
|
|
6426
|
+
}
|
|
6427
|
+
var CoffeeNotEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeNotEnabled ""'), function($skip, $loc, $0, $1) {
|
|
6428
|
+
if (module.config.coffeeNot)
|
|
6429
|
+
return;
|
|
6430
|
+
return $skip;
|
|
6431
|
+
});
|
|
6432
|
+
function CoffeeNotEnabled(state) {
|
|
6433
|
+
if (state.verbose)
|
|
6434
|
+
console.log("ENTER:", "CoffeeNotEnabled");
|
|
6435
|
+
if (state.tokenize) {
|
|
6436
|
+
return $TOKEN("CoffeeNotEnabled", state, CoffeeNotEnabled$0(state));
|
|
6437
|
+
} else {
|
|
6438
|
+
return CoffeeNotEnabled$0(state);
|
|
6439
|
+
}
|
|
6440
|
+
}
|
|
6441
|
+
var CoffeeOfEnabled$0 = $TV($EXPECT($L0, fail, 'CoffeeOfEnabled ""'), function($skip, $loc, $0, $1) {
|
|
6442
|
+
if (module.config.coffeeOf)
|
|
6443
|
+
return;
|
|
6444
|
+
return $skip;
|
|
6445
|
+
});
|
|
6446
|
+
function CoffeeOfEnabled(state) {
|
|
6447
|
+
if (state.verbose)
|
|
6448
|
+
console.log("ENTER:", "CoffeeOfEnabled");
|
|
6449
|
+
if (state.tokenize) {
|
|
6450
|
+
return $TOKEN("CoffeeOfEnabled", state, CoffeeOfEnabled$0(state));
|
|
6451
|
+
} else {
|
|
6452
|
+
return CoffeeOfEnabled$0(state);
|
|
6453
|
+
}
|
|
6454
|
+
}
|
|
5480
6455
|
var Reset$0 = $TV($EXPECT($L0, fail, 'Reset ""'), function($skip, $loc, $0, $1) {
|
|
5481
6456
|
module.currentIndent = 0;
|
|
5482
6457
|
module.indentLevels = [0];
|
|
@@ -5486,9 +6461,51 @@ var Civet = (() => {
|
|
|
5486
6461
|
coffeeBooleans: false,
|
|
5487
6462
|
coffeeComment: false,
|
|
5488
6463
|
coffeeEq: false,
|
|
6464
|
+
coffeeForLoops: false,
|
|
5489
6465
|
coffeeInterpolation: false,
|
|
6466
|
+
coffeeIsnt: false,
|
|
6467
|
+
coffeeNot: false,
|
|
6468
|
+
coffeeOf: false,
|
|
5490
6469
|
implicitReturns: true
|
|
5491
6470
|
};
|
|
6471
|
+
let indexOfRef, hasPropRef;
|
|
6472
|
+
module.prelude = [];
|
|
6473
|
+
module.getIndexOfRef = function() {
|
|
6474
|
+
if (indexOfRef)
|
|
6475
|
+
return indexOfRef;
|
|
6476
|
+
indexOfRef = {
|
|
6477
|
+
type: "Ref",
|
|
6478
|
+
base: "indexOf"
|
|
6479
|
+
};
|
|
6480
|
+
const typeSuffix = {
|
|
6481
|
+
ts: true,
|
|
6482
|
+
children: [": <T>(this: T[], searchElement: T) => boolean"]
|
|
6483
|
+
};
|
|
6484
|
+
const asAny = {
|
|
6485
|
+
ts: true,
|
|
6486
|
+
children: [" as any"]
|
|
6487
|
+
};
|
|
6488
|
+
module.prelude.push(["", "const ", indexOfRef, typeSuffix, " = [].indexOf", asAny, "\n"]);
|
|
6489
|
+
return indexOfRef;
|
|
6490
|
+
};
|
|
6491
|
+
module.getHasPropRef = function() {
|
|
6492
|
+
if (hasPropRef)
|
|
6493
|
+
return hasPropRef;
|
|
6494
|
+
hasPropRef = {
|
|
6495
|
+
type: "Ref",
|
|
6496
|
+
base: "hasProp"
|
|
6497
|
+
};
|
|
6498
|
+
const typeSuffix = {
|
|
6499
|
+
ts: true,
|
|
6500
|
+
children: [": <T>(this: T, prop: keyof T) => boolean"]
|
|
6501
|
+
};
|
|
6502
|
+
const asAny = {
|
|
6503
|
+
ts: true,
|
|
6504
|
+
children: [" as any"]
|
|
6505
|
+
};
|
|
6506
|
+
module.prelude.push(["", "const ", hasPropRef, typeSuffix, " = {}.hasOwnProperty", asAny, "\n"]);
|
|
6507
|
+
return hasPropRef;
|
|
6508
|
+
};
|
|
5492
6509
|
Object.defineProperty(module.config, "coffeeCompat", {
|
|
5493
6510
|
set(b) {
|
|
5494
6511
|
if (b) {
|
|
@@ -5496,15 +6513,21 @@ var Civet = (() => {
|
|
|
5496
6513
|
this.coffeeBooleans = true;
|
|
5497
6514
|
this.coffeeComment = true;
|
|
5498
6515
|
this.coffeeEq = true;
|
|
6516
|
+
this.coffeeForLoops = true;
|
|
5499
6517
|
this.coffeeInterpolation = true;
|
|
5500
|
-
this.
|
|
6518
|
+
this.coffeeIsnt = true;
|
|
6519
|
+
this.coffeeNot = true;
|
|
6520
|
+
this.coffeeOf = true;
|
|
5501
6521
|
} else {
|
|
5502
6522
|
this.autoVar = false;
|
|
5503
6523
|
this.coffeeBooleans = false;
|
|
5504
6524
|
this.coffeeComment = false;
|
|
5505
6525
|
this.coffeeEq = false;
|
|
6526
|
+
this.coffeeForLoops = false;
|
|
5506
6527
|
this.coffeeInterpolation = false;
|
|
5507
|
-
this.
|
|
6528
|
+
this.coffeeIsnt = false;
|
|
6529
|
+
this.coffeeNot = false;
|
|
6530
|
+
this.coffeeOf = false;
|
|
5508
6531
|
}
|
|
5509
6532
|
}
|
|
5510
6533
|
});
|
|
@@ -5536,7 +6559,7 @@ var Civet = (() => {
|
|
|
5536
6559
|
node.children.unshift("return ");
|
|
5537
6560
|
return;
|
|
5538
6561
|
case "Identifier":
|
|
5539
|
-
node.
|
|
6562
|
+
node.children.unshift("return ");
|
|
5540
6563
|
return;
|
|
5541
6564
|
case "BlockStatement":
|
|
5542
6565
|
insertReturn(node.expressions[node.expressions.length - 1]);
|
|
@@ -5569,10 +6592,11 @@ var Civet = (() => {
|
|
|
5569
6592
|
case "ContinueStatement":
|
|
5570
6593
|
case "DebuggerStatement":
|
|
5571
6594
|
case "EmptyStatement":
|
|
6595
|
+
case "ForStatement":
|
|
5572
6596
|
case "IterationStatement":
|
|
5573
6597
|
case "ReturnStatement":
|
|
5574
6598
|
case "ThrowStatement":
|
|
5575
|
-
case "
|
|
6599
|
+
case "Declaration":
|
|
5576
6600
|
return;
|
|
5577
6601
|
case "BlockStatement":
|
|
5578
6602
|
insertReturn(exp.expressions[exp.expressions.length - 1]);
|
|
@@ -5618,7 +6642,7 @@ var Civet = (() => {
|
|
|
5618
6642
|
let chains = [];
|
|
5619
6643
|
while (i < l) {
|
|
5620
6644
|
const [, op] = binops[i];
|
|
5621
|
-
if (relationalOps.includes(op.token)) {
|
|
6645
|
+
if (relationalOps.includes(op.token) || op.type === "Ref") {
|
|
5622
6646
|
chains.push(i);
|
|
5623
6647
|
} else if (lowerPrecedenceOps.includes(op.token)) {
|
|
5624
6648
|
processChains();
|
|
@@ -5632,7 +6656,7 @@ var Civet = (() => {
|
|
|
5632
6656
|
if (chains.length > 1) {
|
|
5633
6657
|
chains.forEach((index, k) => {
|
|
5634
6658
|
if (k > 0) {
|
|
5635
|
-
results.push(" && ");
|
|
6659
|
+
results.push(" ", "&&", " ");
|
|
5636
6660
|
}
|
|
5637
6661
|
const [pre, op, post, exp] = binops[index];
|
|
5638
6662
|
let endIndex;
|
|
@@ -5680,9 +6704,12 @@ var Civet = (() => {
|
|
|
5680
6704
|
};
|
|
5681
6705
|
module.insertTrimmingSpace = function(spacing, c) {
|
|
5682
6706
|
let target = spacing;
|
|
5683
|
-
|
|
5684
|
-
|
|
5685
|
-
|
|
6707
|
+
if (!target)
|
|
6708
|
+
return;
|
|
6709
|
+
if (Array.isArray(target))
|
|
6710
|
+
return module.insertTrimmingSpace(target[0], c);
|
|
6711
|
+
if (target.children)
|
|
6712
|
+
return module.insertTrimmingSpace(target.children[0], c);
|
|
5686
6713
|
if (target.token) {
|
|
5687
6714
|
target.token = target.token.replace(/^ ?/, c);
|
|
5688
6715
|
}
|
|
@@ -5738,6 +6765,137 @@ var Civet = (() => {
|
|
|
5738
6765
|
token: str
|
|
5739
6766
|
};
|
|
5740
6767
|
};
|
|
6768
|
+
function gatherNodes(node, predicate) {
|
|
6769
|
+
if (node == null)
|
|
6770
|
+
return [];
|
|
6771
|
+
if (Array.isArray(node)) {
|
|
6772
|
+
return node.flatMap((n) => gatherNodes(n, predicate));
|
|
6773
|
+
}
|
|
6774
|
+
if (predicate(node)) {
|
|
6775
|
+
return [node];
|
|
6776
|
+
}
|
|
6777
|
+
switch (node.type) {
|
|
6778
|
+
case "BlockStatement":
|
|
6779
|
+
return [];
|
|
6780
|
+
case "ForStatement":
|
|
6781
|
+
const isDec = node.declaration?.type === "Declaration";
|
|
6782
|
+
return node.children.flatMap((n) => {
|
|
6783
|
+
if (isDec && n === node.declaration)
|
|
6784
|
+
return [];
|
|
6785
|
+
return gatherNodes(n, predicate);
|
|
6786
|
+
});
|
|
6787
|
+
default:
|
|
6788
|
+
return gatherNodes(node.children, predicate);
|
|
6789
|
+
}
|
|
6790
|
+
return [];
|
|
6791
|
+
}
|
|
6792
|
+
function gatherRecursive(node, predicate) {
|
|
6793
|
+
if (node == null)
|
|
6794
|
+
return [];
|
|
6795
|
+
if (Array.isArray(node)) {
|
|
6796
|
+
return node.flatMap((n) => gatherNodes(n, predicate));
|
|
6797
|
+
}
|
|
6798
|
+
if (predicate(node)) {
|
|
6799
|
+
return [node];
|
|
6800
|
+
}
|
|
6801
|
+
return gatherNodes(node.children, predicate);
|
|
6802
|
+
}
|
|
6803
|
+
module.processProgram = function(statements) {
|
|
6804
|
+
statements.unshift(...module.prelude);
|
|
6805
|
+
if (module.config.autoVar) {
|
|
6806
|
+
createVarDecs(statements, []);
|
|
6807
|
+
}
|
|
6808
|
+
populateRefs(statements);
|
|
6809
|
+
};
|
|
6810
|
+
function findDecs(statements) {
|
|
6811
|
+
const declarationNames = gatherNodes(statements, (node) => {
|
|
6812
|
+
if (node.type === "Declaration") {
|
|
6813
|
+
return true;
|
|
6814
|
+
}
|
|
6815
|
+
}).flatMap((d) => d.names);
|
|
6816
|
+
return new Set(declarationNames);
|
|
6817
|
+
}
|
|
6818
|
+
function populateRefs(statements) {
|
|
6819
|
+
const refNodes = gatherNodes(statements, ({ type }) => type === "Ref");
|
|
6820
|
+
const blockNodes = new Set(gatherNodes(statements, ({ type }) => type === "BlockStatement"));
|
|
6821
|
+
const forNodes = gatherNodes(statements, ({ type }) => type === "ForStatement");
|
|
6822
|
+
forNodes.forEach(({ declaration, block }) => {
|
|
6823
|
+
if (block.type === "BlockStatement") {
|
|
6824
|
+
populateRefs([declaration, ...block.children]);
|
|
6825
|
+
} else {
|
|
6826
|
+
populateRefs([declaration, ...block]);
|
|
6827
|
+
}
|
|
6828
|
+
blockNodes.delete(block);
|
|
6829
|
+
});
|
|
6830
|
+
blockNodes.forEach(({ expressions }) => populateRefs(expressions));
|
|
6831
|
+
if (refNodes.length) {
|
|
6832
|
+
const ids = gatherRecursive(statements, (s) => s.type === "Identifier");
|
|
6833
|
+
const names = new Set(ids.flatMap(({ names: names2 }) => names2 || []));
|
|
6834
|
+
refNodes.forEach((ref) => {
|
|
6835
|
+
const { type, base } = ref;
|
|
6836
|
+
if (type !== "Ref")
|
|
6837
|
+
return;
|
|
6838
|
+
ref.type = "Identifier";
|
|
6839
|
+
let n = 0;
|
|
6840
|
+
let name = base;
|
|
6841
|
+
while (names.has(name)) {
|
|
6842
|
+
n++;
|
|
6843
|
+
name = `${base}${n}`;
|
|
6844
|
+
}
|
|
6845
|
+
names.add(name);
|
|
6846
|
+
ref.children = ref.names = [name];
|
|
6847
|
+
});
|
|
6848
|
+
}
|
|
6849
|
+
}
|
|
6850
|
+
function createVarDecs(statements, scopes, pushVar) {
|
|
6851
|
+
function hasDec(name) {
|
|
6852
|
+
return scopes.some((s) => s.has(name));
|
|
6853
|
+
}
|
|
6854
|
+
function findAssignments(statements2, decs2) {
|
|
6855
|
+
const assignmentStatements = gatherNodes(statements2, (node) => {
|
|
6856
|
+
return node.type === "AssignmentExpression";
|
|
6857
|
+
});
|
|
6858
|
+
const undeclaredIdentifiers = assignmentStatements.flatMap((a) => {
|
|
6859
|
+
return a.names;
|
|
6860
|
+
});
|
|
6861
|
+
return undeclaredIdentifiers.filter((x, i, a) => {
|
|
6862
|
+
if (!hasDec(x))
|
|
6863
|
+
return a.indexOf(x) === i;
|
|
6864
|
+
});
|
|
6865
|
+
}
|
|
6866
|
+
if (!pushVar) {
|
|
6867
|
+
pushVar = function(name) {
|
|
6868
|
+
varIds.push(name);
|
|
6869
|
+
decs.add(name);
|
|
6870
|
+
};
|
|
6871
|
+
}
|
|
6872
|
+
const decs = findDecs(statements);
|
|
6873
|
+
scopes.push(decs);
|
|
6874
|
+
const varIds = [];
|
|
6875
|
+
findAssignments(statements, scopes).forEach(pushVar);
|
|
6876
|
+
const fnNodes = gatherNodes(statements, (s) => s.type === "FunctionExpression");
|
|
6877
|
+
const forNodes = gatherNodes(statements, (s) => s.type === "ForStatement");
|
|
6878
|
+
const blockNodes = new Set(gatherNodes(statements, (s) => s.type === "BlockStatement"));
|
|
6879
|
+
fnNodes.forEach(({ block }) => blockNodes.delete(block));
|
|
6880
|
+
forNodes.forEach(({ block }) => blockNodes.delete(block));
|
|
6881
|
+
blockNodes.forEach((block) => {
|
|
6882
|
+
createVarDecs(block.expressions, scopes, pushVar);
|
|
6883
|
+
});
|
|
6884
|
+
forNodes.forEach(({ block, declaration }) => {
|
|
6885
|
+
scopes.push(new Set(declaration.names));
|
|
6886
|
+
createVarDecs(block.expressions, scopes, pushVar);
|
|
6887
|
+
scopes.pop();
|
|
6888
|
+
});
|
|
6889
|
+
fnNodes.forEach(({ block, parameters }) => {
|
|
6890
|
+
scopes.push(new Set(parameters.names));
|
|
6891
|
+
createVarDecs(block.expressions, scopes);
|
|
6892
|
+
scopes.pop();
|
|
6893
|
+
});
|
|
6894
|
+
if (varIds.length) {
|
|
6895
|
+
const indent = statements[0][0];
|
|
6896
|
+
statements.unshift([indent, "var ", varIds.join(", "), "\n"]);
|
|
6897
|
+
}
|
|
6898
|
+
}
|
|
5741
6899
|
return $0;
|
|
5742
6900
|
});
|
|
5743
6901
|
function Init(state) {
|
|
@@ -5749,7 +6907,7 @@ var Civet = (() => {
|
|
|
5749
6907
|
return Init$0(state);
|
|
5750
6908
|
}
|
|
5751
6909
|
}
|
|
5752
|
-
var Indent$0 = $TV($Q($C($EXPECT($
|
|
6910
|
+
var Indent$0 = $TV($Q($C($EXPECT($L152, fail, 'Indent " "'), $EXPECT($L153, fail, 'Indent "\\\\t"'))), function($skip, $loc, $0, $1) {
|
|
5753
6911
|
const level = $1.length;
|
|
5754
6912
|
return {
|
|
5755
6913
|
$loc,
|