@danielx/civet 0.4.6 → 0.4.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -17
- package/dist/browser.js +536 -157
- package/dist/esbuild-plugin.js +1 -1
- package/dist/esm.mjs +2 -2
- package/dist/main.js +536 -157
- package/package.json +1 -1
package/dist/browser.js
CHANGED
|
@@ -456,6 +456,7 @@ var Civet = (() => {
|
|
|
456
456
|
SuperProperty,
|
|
457
457
|
MetaProperty,
|
|
458
458
|
Parameters,
|
|
459
|
+
NonEmptyParameters,
|
|
459
460
|
ParameterElement,
|
|
460
461
|
ParameterElementDelimiter,
|
|
461
462
|
BindingIdentifier,
|
|
@@ -476,6 +477,7 @@ var Civet = (() => {
|
|
|
476
477
|
Arrow,
|
|
477
478
|
Block,
|
|
478
479
|
BracedOrEmptyBlock,
|
|
480
|
+
EmptyBlock,
|
|
479
481
|
BracedBlock,
|
|
480
482
|
SingleNestedExpression,
|
|
481
483
|
NestedBlockExpressions,
|
|
@@ -535,6 +537,7 @@ var Civet = (() => {
|
|
|
535
537
|
NestedCaseClause,
|
|
536
538
|
CaseClause,
|
|
537
539
|
CaseExpressionList,
|
|
540
|
+
NoExpressions,
|
|
538
541
|
ImpliedColon,
|
|
539
542
|
TryStatement,
|
|
540
543
|
CatchClause,
|
|
@@ -655,6 +658,7 @@ var Civet = (() => {
|
|
|
655
658
|
SubstitutionStart,
|
|
656
659
|
Switch,
|
|
657
660
|
Target,
|
|
661
|
+
Throw,
|
|
658
662
|
TripleDoubleQuote,
|
|
659
663
|
TripleSingleQuote,
|
|
660
664
|
TripleTick,
|
|
@@ -821,46 +825,46 @@ var Civet = (() => {
|
|
|
821
825
|
var $L77 = $L("break");
|
|
822
826
|
var $L78 = $L("continue");
|
|
823
827
|
var $L79 = $L("debugger");
|
|
824
|
-
var $L80 = $L("
|
|
825
|
-
var $L81 = $L("
|
|
826
|
-
var $L82 = $L("
|
|
827
|
-
var $L83 = $L("
|
|
828
|
-
var $L84 = $L("
|
|
829
|
-
var $L85 = $L("
|
|
830
|
-
var $L86 = $L("
|
|
831
|
-
var $L87 = $L("
|
|
832
|
-
var $L88 = $L("
|
|
833
|
-
var $L89 = $L("
|
|
834
|
-
var $L90 = $L("
|
|
835
|
-
var $L91 = $L("
|
|
836
|
-
var $L92 = $L("
|
|
837
|
-
var $L93 = $L("
|
|
838
|
-
var $L94 = $L("
|
|
839
|
-
var $L95 = $L("
|
|
840
|
-
var $L96 = $L(
|
|
841
|
-
var $L97 = $L("
|
|
842
|
-
var $L98 = $L("
|
|
843
|
-
var $L99 = $L("
|
|
844
|
-
var $L100 = $L("
|
|
845
|
-
var $L101 = $L("
|
|
846
|
-
var $L102 = $L("
|
|
847
|
-
var $L103 = $L("
|
|
848
|
-
var $L104 = $L("
|
|
849
|
-
var $L105 = $L("
|
|
850
|
-
var $L106 = $L("
|
|
851
|
-
var $L107 = $L("
|
|
852
|
-
var $L108 = $L("
|
|
853
|
-
var $L109 = $L("
|
|
854
|
-
var $L110 = $L("
|
|
855
|
-
var $L111 = $L("
|
|
856
|
-
var $L112 = $L("
|
|
857
|
-
var $L113 = $L("
|
|
858
|
-
var $L114 = $L("
|
|
859
|
-
var $L115 = $L("
|
|
860
|
-
var $L116 = $L("
|
|
861
|
-
var $L117 = $L("
|
|
862
|
-
var $L118 = $L("
|
|
863
|
-
var $L119 = $L("
|
|
828
|
+
var $L80 = $L("import type");
|
|
829
|
+
var $L81 = $L("default");
|
|
830
|
+
var $L82 = $L(":=");
|
|
831
|
+
var $L83 = $L("/*");
|
|
832
|
+
var $L84 = $L("*/");
|
|
833
|
+
var $L85 = $L("###");
|
|
834
|
+
var $L86 = $L("as");
|
|
835
|
+
var $L87 = $L("async");
|
|
836
|
+
var $L88 = $L("await");
|
|
837
|
+
var $L89 = $L("case");
|
|
838
|
+
var $L90 = $L("catch");
|
|
839
|
+
var $L91 = $L("class");
|
|
840
|
+
var $L92 = $L("#{");
|
|
841
|
+
var $L93 = $L(":");
|
|
842
|
+
var $L94 = $L(".");
|
|
843
|
+
var $L95 = $L('"');
|
|
844
|
+
var $L96 = $L("else");
|
|
845
|
+
var $L97 = $L("export");
|
|
846
|
+
var $L98 = $L("for");
|
|
847
|
+
var $L99 = $L("from");
|
|
848
|
+
var $L100 = $L("function");
|
|
849
|
+
var $L101 = $L("get");
|
|
850
|
+
var $L102 = $L("set");
|
|
851
|
+
var $L103 = $L("if");
|
|
852
|
+
var $L104 = $L("let");
|
|
853
|
+
var $L105 = $L("const");
|
|
854
|
+
var $L106 = $L("loop");
|
|
855
|
+
var $L107 = $L("new");
|
|
856
|
+
var $L108 = $L("of");
|
|
857
|
+
var $L109 = $L("{");
|
|
858
|
+
var $L110 = $L("[");
|
|
859
|
+
var $L111 = $L("(");
|
|
860
|
+
var $L112 = $L("?");
|
|
861
|
+
var $L113 = $L("return");
|
|
862
|
+
var $L114 = $L("'");
|
|
863
|
+
var $L115 = $L("static");
|
|
864
|
+
var $L116 = $L("${");
|
|
865
|
+
var $L117 = $L("switch");
|
|
866
|
+
var $L118 = $L("target");
|
|
867
|
+
var $L119 = $L("throw");
|
|
864
868
|
var $L120 = $L('"""');
|
|
865
869
|
var $L121 = $L("'''");
|
|
866
870
|
var $L122 = $L("```");
|
|
@@ -942,7 +946,11 @@ var Civet = (() => {
|
|
|
942
946
|
return TopLevelStatement$0(state);
|
|
943
947
|
}
|
|
944
948
|
}
|
|
945
|
-
var Expression$0 = $S(AssignmentExpression, $Q($S(__, Comma, AssignmentExpression)))
|
|
949
|
+
var Expression$0 = $TS($S(AssignmentExpression, $Q($S(__, Comma, AssignmentExpression))), function($skip, $loc, $0, $1, $2) {
|
|
950
|
+
if ($2.length == 0)
|
|
951
|
+
return $1;
|
|
952
|
+
return $0;
|
|
953
|
+
});
|
|
946
954
|
function Expression(state) {
|
|
947
955
|
if (state.verbose)
|
|
948
956
|
console.log("ENTER:", "Expression");
|
|
@@ -1023,7 +1031,9 @@ var Civet = (() => {
|
|
|
1023
1031
|
var spacing = $2;
|
|
1024
1032
|
return module.insertTrimmingSpace(spacing, "(");
|
|
1025
1033
|
});
|
|
1026
|
-
var ApplicationStart$1 = $S(IndentedApplicationAllowed, $Y(NestedObjectLiteral), InsertOpenParen)
|
|
1034
|
+
var ApplicationStart$1 = $T($S(IndentedApplicationAllowed, $Y(NestedObjectLiteral), InsertOpenParen), function(value) {
|
|
1035
|
+
return value[2];
|
|
1036
|
+
});
|
|
1027
1037
|
function ApplicationStart(state) {
|
|
1028
1038
|
if (state.tokenize) {
|
|
1029
1039
|
return $TOKEN("ApplicationStart", state, ApplicationStart$0(state) || ApplicationStart$1(state));
|
|
@@ -1055,7 +1065,11 @@ var Civet = (() => {
|
|
|
1055
1065
|
return CommaExpression$0(state);
|
|
1056
1066
|
}
|
|
1057
1067
|
}
|
|
1058
|
-
var BinaryOpExpression$0 = $S(UnaryExpression, $Q($S(__, BinaryOp, __, UnaryExpression)))
|
|
1068
|
+
var BinaryOpExpression$0 = $TS($S(UnaryExpression, $Q($S(__, BinaryOp, __, UnaryExpression))), function($skip, $loc, $0, $1, $2) {
|
|
1069
|
+
if ($2.length)
|
|
1070
|
+
return $0;
|
|
1071
|
+
return $1;
|
|
1072
|
+
});
|
|
1059
1073
|
function BinaryOpExpression(state) {
|
|
1060
1074
|
if (state.verbose)
|
|
1061
1075
|
console.log("ENTER:", "BinaryOpExpression");
|
|
@@ -1095,7 +1109,11 @@ var Civet = (() => {
|
|
|
1095
1109
|
}
|
|
1096
1110
|
}
|
|
1097
1111
|
var UpdateExpression$0 = $S(UpdateExpressionSymbol, UnaryExpression);
|
|
1098
|
-
var UpdateExpression$1 = $S(LeftHandSideExpression, $E(UpdateExpressionSymbol))
|
|
1112
|
+
var UpdateExpression$1 = $TS($S(LeftHandSideExpression, $E(UpdateExpressionSymbol)), function($skip, $loc, $0, $1, $2) {
|
|
1113
|
+
if ($2)
|
|
1114
|
+
return $0;
|
|
1115
|
+
return $1;
|
|
1116
|
+
});
|
|
1099
1117
|
function UpdateExpression(state) {
|
|
1100
1118
|
if (state.tokenize) {
|
|
1101
1119
|
return $TOKEN("UpdateExpression", state, UpdateExpression$0(state) || UpdateExpression$1(state));
|
|
@@ -1115,7 +1133,11 @@ var Civet = (() => {
|
|
|
1115
1133
|
return UpdateExpressionSymbol$0(state);
|
|
1116
1134
|
}
|
|
1117
1135
|
}
|
|
1118
|
-
var AssignmentExpression$0 = $S($Q(TrailingComment), AssignmentExpressionRest)
|
|
1136
|
+
var AssignmentExpression$0 = $TS($S($Q(TrailingComment), AssignmentExpressionRest), function($skip, $loc, $0, $1, $2) {
|
|
1137
|
+
if ($1.length)
|
|
1138
|
+
return $0;
|
|
1139
|
+
return $2;
|
|
1140
|
+
});
|
|
1119
1141
|
var AssignmentExpression$1 = $S(__, AssignmentExpressionRest);
|
|
1120
1142
|
function AssignmentExpression(state) {
|
|
1121
1143
|
if (state.tokenize) {
|
|
@@ -1127,7 +1149,9 @@ var Civet = (() => {
|
|
|
1127
1149
|
var AssignmentExpressionRest$0 = AwaitExpression;
|
|
1128
1150
|
var AssignmentExpressionRest$1 = YieldExpression;
|
|
1129
1151
|
var AssignmentExpressionRest$2 = $S($E($S(Async, __)), ArrowFunction);
|
|
1130
|
-
var AssignmentExpressionRest$3 = $S($P($S(__, LeftHandSideExpression, __, AssignmentOp)), Expression)
|
|
1152
|
+
var AssignmentExpressionRest$3 = $T($S($P($S(__, LeftHandSideExpression, __, AssignmentOp)), Expression), function(value) {
|
|
1153
|
+
return { "type": "AssignmentExpression", "children": value };
|
|
1154
|
+
});
|
|
1131
1155
|
var AssignmentExpressionRest$4 = ConditionalExpression;
|
|
1132
1156
|
function AssignmentExpressionRest(state) {
|
|
1133
1157
|
if (state.tokenize) {
|
|
@@ -1157,7 +1181,19 @@ var Civet = (() => {
|
|
|
1157
1181
|
}
|
|
1158
1182
|
}
|
|
1159
1183
|
var ArrowFunction$0 = ThinArrowFunction;
|
|
1160
|
-
var ArrowFunction$1 = $S(Parameters, $E(ReturnTypeSuffix), FatArrow, FatArrowBody)
|
|
1184
|
+
var ArrowFunction$1 = $TS($S(Parameters, $E(ReturnTypeSuffix), FatArrow, FatArrowBody), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
1185
|
+
var suffix = $2;
|
|
1186
|
+
var expOrBlock = $4;
|
|
1187
|
+
const isVoid = suffix?.children?.[1]?.[0]?.[1]?.token === "void";
|
|
1188
|
+
const isBlock = expOrBlock.type === "BlockStatement";
|
|
1189
|
+
if (module.implicitReturns && !isVoid && isBlock) {
|
|
1190
|
+
module.addImplicitReturns(expOrBlock);
|
|
1191
|
+
}
|
|
1192
|
+
return {
|
|
1193
|
+
type: "FunctionExpression",
|
|
1194
|
+
children: $0
|
|
1195
|
+
};
|
|
1196
|
+
});
|
|
1161
1197
|
function ArrowFunction(state) {
|
|
1162
1198
|
if (state.tokenize) {
|
|
1163
1199
|
return $TOKEN("ArrowFunction", state, ArrowFunction$0(state) || ArrowFunction$1(state));
|
|
@@ -1180,11 +1216,17 @@ var Civet = (() => {
|
|
|
1180
1216
|
return FatArrow$0(state);
|
|
1181
1217
|
}
|
|
1182
1218
|
}
|
|
1183
|
-
var FatArrowBody$0 = $S(__, OpenBrace, EOS, NestedBlockExpressions, __, CloseBrace)
|
|
1184
|
-
|
|
1219
|
+
var FatArrowBody$0 = $T($S(__, OpenBrace, EOS, NestedBlockExpressions, __, CloseBrace), function(value) {
|
|
1220
|
+
var exps = value[3];
|
|
1221
|
+
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1222
|
+
});
|
|
1223
|
+
var FatArrowBody$1 = $T($S(InsertOpenBrace, EOS, NestedBlockExpressions, InsertNewline, InsertIndent, InsertCloseBrace), function(value) {
|
|
1224
|
+
var exps = value[2];
|
|
1225
|
+
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1226
|
+
});
|
|
1185
1227
|
var FatArrowBody$2 = AssignmentExpression;
|
|
1186
1228
|
var FatArrowBody$3 = $S(__, AssignmentExpression);
|
|
1187
|
-
var FatArrowBody$4 =
|
|
1229
|
+
var FatArrowBody$4 = EmptyBlock;
|
|
1188
1230
|
function FatArrowBody(state) {
|
|
1189
1231
|
if (state.tokenize) {
|
|
1190
1232
|
return $TOKEN("FatArrowBody", state, FatArrowBody$0(state) || FatArrowBody$1(state) || FatArrowBody$2(state) || FatArrowBody$3(state) || FatArrowBody$4(state));
|
|
@@ -1192,7 +1234,11 @@ var Civet = (() => {
|
|
|
1192
1234
|
return FatArrowBody$0(state) || FatArrowBody$1(state) || FatArrowBody$2(state) || FatArrowBody$3(state) || FatArrowBody$4(state);
|
|
1193
1235
|
}
|
|
1194
1236
|
}
|
|
1195
|
-
var ConditionalExpression$0 = $S(ShortCircuitExpression, $E($S(__, QuestionMark, AssignmentExpression, __, Colon, AssignmentExpression)))
|
|
1237
|
+
var ConditionalExpression$0 = $TS($S(ShortCircuitExpression, $E($S(__, QuestionMark, AssignmentExpression, __, Colon, AssignmentExpression))), function($skip, $loc, $0, $1, $2) {
|
|
1238
|
+
if ($2)
|
|
1239
|
+
return $0;
|
|
1240
|
+
return $1;
|
|
1241
|
+
});
|
|
1196
1242
|
function ConditionalExpression(state) {
|
|
1197
1243
|
if (state.verbose)
|
|
1198
1244
|
console.log("ENTER:", "ConditionalExpression");
|
|
@@ -1381,7 +1427,11 @@ var Civet = (() => {
|
|
|
1381
1427
|
}
|
|
1382
1428
|
var CallExpression$0 = $S($EXPECT($L10, fail, 'CallExpression "super"'), ArgumentsWithTrailingCallExpressions);
|
|
1383
1429
|
var CallExpression$1 = $S($EXPECT($L11, fail, 'CallExpression "import"'), __, OpenParen, AssignmentExpression, __, CloseParen);
|
|
1384
|
-
var CallExpression$2 = $S(MemberExpression, $Q(CallExpressionRest))
|
|
1430
|
+
var CallExpression$2 = $TS($S(MemberExpression, $Q(CallExpressionRest)), function($skip, $loc, $0, $1, $2) {
|
|
1431
|
+
if ($2.length)
|
|
1432
|
+
return $0;
|
|
1433
|
+
return $1;
|
|
1434
|
+
});
|
|
1385
1435
|
function CallExpression(state) {
|
|
1386
1436
|
if (state.tokenize) {
|
|
1387
1437
|
return $TOKEN("CallExpression", state, CallExpression$0(state) || CallExpression$1(state) || CallExpression$2(state));
|
|
@@ -1431,7 +1481,11 @@ var Civet = (() => {
|
|
|
1431
1481
|
return AdditionalReservedWords$0(state);
|
|
1432
1482
|
}
|
|
1433
1483
|
}
|
|
1434
|
-
var MemberExpression$0 = $S(PrimaryExpression, $Q(MemberExpressionRest))
|
|
1484
|
+
var MemberExpression$0 = $TS($S(PrimaryExpression, $Q(MemberExpressionRest)), function($skip, $loc, $0, $1, $2) {
|
|
1485
|
+
if ($2.length)
|
|
1486
|
+
return $0;
|
|
1487
|
+
return $1;
|
|
1488
|
+
});
|
|
1435
1489
|
var MemberExpression$1 = $S($Q(TrailingComment), SuperProperty);
|
|
1436
1490
|
var MemberExpression$2 = $S($Q(TrailingComment), MetaProperty);
|
|
1437
1491
|
function MemberExpression(state) {
|
|
@@ -1488,7 +1542,7 @@ var Civet = (() => {
|
|
|
1488
1542
|
return MetaProperty$0(state) || MetaProperty$1(state);
|
|
1489
1543
|
}
|
|
1490
1544
|
}
|
|
1491
|
-
var Parameters$0 =
|
|
1545
|
+
var Parameters$0 = NonEmptyParameters;
|
|
1492
1546
|
var Parameters$1 = $TV($EXPECT($L1, fail, 'Parameters ""'), function($skip, $loc, $0, $1) {
|
|
1493
1547
|
return { $loc, token: "()" };
|
|
1494
1548
|
});
|
|
@@ -1499,6 +1553,16 @@ var Civet = (() => {
|
|
|
1499
1553
|
return Parameters$0(state) || Parameters$1(state);
|
|
1500
1554
|
}
|
|
1501
1555
|
}
|
|
1556
|
+
var NonEmptyParameters$0 = $S($E(TypeParameters), OpenParen, $Q(ParameterElement), __, CloseParen);
|
|
1557
|
+
function NonEmptyParameters(state) {
|
|
1558
|
+
if (state.verbose)
|
|
1559
|
+
console.log("ENTER:", "NonEmptyParameters");
|
|
1560
|
+
if (state.tokenize) {
|
|
1561
|
+
return $TOKEN("NonEmptyParameters", state, NonEmptyParameters$0(state));
|
|
1562
|
+
} else {
|
|
1563
|
+
return NonEmptyParameters$0(state);
|
|
1564
|
+
}
|
|
1565
|
+
}
|
|
1502
1566
|
var ParameterElement$0 = $S(__, $C(BindingIdentifier, BindingPattern), $E(TypeSuffix), $E(Initializer), ParameterElementDelimiter);
|
|
1503
1567
|
function ParameterElement(state) {
|
|
1504
1568
|
if (state.verbose)
|
|
@@ -1667,7 +1731,18 @@ var Civet = (() => {
|
|
|
1667
1731
|
}
|
|
1668
1732
|
}
|
|
1669
1733
|
var FunctionExpression$0 = ThinArrowFunction;
|
|
1670
|
-
var FunctionExpression$1 = $S($E($S(Async, __)), Function, $E($S(Star, __)), $E(BindingIdentifier), __, Parameters, $E(ReturnTypeSuffix), BracedBlock)
|
|
1734
|
+
var FunctionExpression$1 = $TS($S($E($S(Async, __)), Function, $E($S(Star, __)), $E(BindingIdentifier), __, Parameters, $E(ReturnTypeSuffix), BracedBlock), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
1735
|
+
var suffix = $7;
|
|
1736
|
+
var block = $8;
|
|
1737
|
+
const isVoid = suffix?.children?.[1]?.[0]?.[1]?.token === "void";
|
|
1738
|
+
if (module.implicitReturns && !isVoid) {
|
|
1739
|
+
module.addImplicitReturns(block);
|
|
1740
|
+
}
|
|
1741
|
+
return {
|
|
1742
|
+
type: "FunctionExpression",
|
|
1743
|
+
children: $0
|
|
1744
|
+
};
|
|
1745
|
+
});
|
|
1671
1746
|
function FunctionExpression(state) {
|
|
1672
1747
|
if (state.tokenize) {
|
|
1673
1748
|
return $TOKEN("FunctionExpression", state, FunctionExpression$0(state) || FunctionExpression$1(state));
|
|
@@ -1675,17 +1750,24 @@ var Civet = (() => {
|
|
|
1675
1750
|
return FunctionExpression$0(state) || FunctionExpression$1(state);
|
|
1676
1751
|
}
|
|
1677
1752
|
}
|
|
1678
|
-
var ThinArrowFunction$0 = $TS($S(Parameters, $E(ReturnTypeSuffix),
|
|
1753
|
+
var ThinArrowFunction$0 = $TS($S(Parameters, $E(ReturnTypeSuffix), $Q(_), Arrow, BracedOrEmptyBlock), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
1679
1754
|
var params = $1;
|
|
1680
1755
|
var suffix = $2;
|
|
1681
1756
|
var arrow = $4;
|
|
1682
1757
|
var block = $5;
|
|
1683
|
-
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
|
-
|
|
1687
|
-
|
|
1688
|
-
|
|
1758
|
+
const isVoid = suffix?.children?.[1]?.[0]?.[1]?.token === "void";
|
|
1759
|
+
if (module.implicitReturns && !isVoid) {
|
|
1760
|
+
block = module.addImplicitReturns(block);
|
|
1761
|
+
}
|
|
1762
|
+
return {
|
|
1763
|
+
type: "FunctionExpression",
|
|
1764
|
+
children: [
|
|
1765
|
+
{ $loc: arrow.$loc, token: "function" },
|
|
1766
|
+
params,
|
|
1767
|
+
suffix,
|
|
1768
|
+
block
|
|
1769
|
+
]
|
|
1770
|
+
};
|
|
1689
1771
|
});
|
|
1690
1772
|
function ThinArrowFunction(state) {
|
|
1691
1773
|
if (state.verbose)
|
|
@@ -1708,8 +1790,14 @@ var Civet = (() => {
|
|
|
1708
1790
|
return Arrow$0(state);
|
|
1709
1791
|
}
|
|
1710
1792
|
}
|
|
1711
|
-
var Block$0 = $S(__, OpenBrace, EOS, NestedBlockExpressions, __, CloseBrace)
|
|
1712
|
-
|
|
1793
|
+
var Block$0 = $T($S(__, OpenBrace, EOS, NestedBlockExpressions, __, CloseBrace), function(value) {
|
|
1794
|
+
var exps = value[3];
|
|
1795
|
+
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1796
|
+
});
|
|
1797
|
+
var Block$1 = $T($S(InsertOpenBrace, EOS, NestedBlockExpressions, InsertNewline, InsertIndent, InsertCloseBrace), function(value) {
|
|
1798
|
+
var exps = value[2];
|
|
1799
|
+
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1800
|
+
});
|
|
1713
1801
|
var Block$2 = Statement;
|
|
1714
1802
|
var Block$3 = $S(__, Statement);
|
|
1715
1803
|
function Block(state) {
|
|
@@ -1720,7 +1808,7 @@ var Civet = (() => {
|
|
|
1720
1808
|
}
|
|
1721
1809
|
}
|
|
1722
1810
|
var BracedOrEmptyBlock$0 = BracedBlock;
|
|
1723
|
-
var BracedOrEmptyBlock$1 =
|
|
1811
|
+
var BracedOrEmptyBlock$1 = EmptyBlock;
|
|
1724
1812
|
function BracedOrEmptyBlock(state) {
|
|
1725
1813
|
if (state.tokenize) {
|
|
1726
1814
|
return $TOKEN("BracedOrEmptyBlock", state, BracedOrEmptyBlock$0(state) || BracedOrEmptyBlock$1(state));
|
|
@@ -1728,9 +1816,34 @@ var Civet = (() => {
|
|
|
1728
1816
|
return BracedOrEmptyBlock$0(state) || BracedOrEmptyBlock$1(state);
|
|
1729
1817
|
}
|
|
1730
1818
|
}
|
|
1731
|
-
var
|
|
1732
|
-
|
|
1733
|
-
|
|
1819
|
+
var EmptyBlock$0 = $T($S(InsertOpenBrace, InsertCloseBrace), function(value) {
|
|
1820
|
+
return { "type": "BlockStatement", "expressions": [], "children": value };
|
|
1821
|
+
});
|
|
1822
|
+
function EmptyBlock(state) {
|
|
1823
|
+
if (state.verbose)
|
|
1824
|
+
console.log("ENTER:", "EmptyBlock");
|
|
1825
|
+
if (state.tokenize) {
|
|
1826
|
+
return $TOKEN("EmptyBlock", state, EmptyBlock$0(state));
|
|
1827
|
+
} else {
|
|
1828
|
+
return EmptyBlock$0(state);
|
|
1829
|
+
}
|
|
1830
|
+
}
|
|
1831
|
+
var BracedBlock$0 = $T($S(__, OpenBrace, EOS, NestedBlockExpressions, __, CloseBrace), function(value) {
|
|
1832
|
+
var exps = value[3];
|
|
1833
|
+
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1834
|
+
});
|
|
1835
|
+
var BracedBlock$1 = $T($S(InsertOpenBrace, EOS, NestedBlockExpressions, InsertNewline, InsertIndent, InsertCloseBrace), function(value) {
|
|
1836
|
+
var exps = value[2];
|
|
1837
|
+
return { "type": "BlockStatement", "expressions": exps, "children": value };
|
|
1838
|
+
});
|
|
1839
|
+
var BracedBlock$2 = $TS($S(InsertOpenBrace, $N(EOS), __, Statement, InsertSpace, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
1840
|
+
var s = $4;
|
|
1841
|
+
return {
|
|
1842
|
+
type: "BlockStatement",
|
|
1843
|
+
expressions: [s],
|
|
1844
|
+
children: $0
|
|
1845
|
+
};
|
|
1846
|
+
});
|
|
1734
1847
|
function BracedBlock(state) {
|
|
1735
1848
|
if (state.tokenize) {
|
|
1736
1849
|
return $TOKEN("BracedBlock", state, BracedBlock$0(state) || BracedBlock$1(state) || BracedBlock$2(state));
|
|
@@ -1825,7 +1938,9 @@ var Civet = (() => {
|
|
|
1825
1938
|
return Comma$0(state);
|
|
1826
1939
|
}
|
|
1827
1940
|
}
|
|
1828
|
-
var Identifier$0 = $S($N(ReservedWord), IdentifierName)
|
|
1941
|
+
var Identifier$0 = $T($S($N(ReservedWord), IdentifierName), function(value) {
|
|
1942
|
+
return value[1];
|
|
1943
|
+
});
|
|
1829
1944
|
function Identifier(state) {
|
|
1830
1945
|
if (state.verbose)
|
|
1831
1946
|
console.log("ENTER:", "Identifier");
|
|
@@ -2036,7 +2151,17 @@ var Civet = (() => {
|
|
|
2036
2151
|
return PropertyName$0(state) || PropertyName$1(state) || PropertyName$2(state) || PropertyName$3(state);
|
|
2037
2152
|
}
|
|
2038
2153
|
}
|
|
2039
|
-
var MethodDefinition$0 = $S(MethodSignature, BracedBlock)
|
|
2154
|
+
var MethodDefinition$0 = $TS($S(MethodSignature, BracedBlock), function($skip, $loc, $0, $1, $2) {
|
|
2155
|
+
var sig = $1;
|
|
2156
|
+
var block = $2;
|
|
2157
|
+
const isConstructor = sig.name === "constructor";
|
|
2158
|
+
const isVoid = sig.returnType === "void";
|
|
2159
|
+
const isSet = sig.modifier === "set";
|
|
2160
|
+
if (module.implicitReturns && !isConstructor && !isSet && !isVoid) {
|
|
2161
|
+
block = module.addImplicitReturns(block);
|
|
2162
|
+
}
|
|
2163
|
+
return $0;
|
|
2164
|
+
});
|
|
2040
2165
|
function MethodDefinition(state) {
|
|
2041
2166
|
if (state.verbose)
|
|
2042
2167
|
console.log("ENTER:", "MethodDefinition");
|
|
@@ -2057,8 +2182,26 @@ var Civet = (() => {
|
|
|
2057
2182
|
return MethodModifier$0(state) || MethodModifier$1(state) || MethodModifier$2(state) || MethodModifier$3(state);
|
|
2058
2183
|
}
|
|
2059
2184
|
}
|
|
2060
|
-
var MethodSignature$0 = $S(ConstructorShorthand, Parameters)
|
|
2061
|
-
|
|
2185
|
+
var MethodSignature$0 = $TS($S(ConstructorShorthand, Parameters), function($skip, $loc, $0, $1, $2) {
|
|
2186
|
+
return {
|
|
2187
|
+
type: "MethodSignature",
|
|
2188
|
+
children: $0,
|
|
2189
|
+
name: $1.token,
|
|
2190
|
+
returnType: void 0
|
|
2191
|
+
};
|
|
2192
|
+
});
|
|
2193
|
+
var MethodSignature$1 = $TS($S($E(MethodModifier), ClassElementName, $Q(_), NonEmptyParameters, $E(ReturnTypeSuffix)), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
2194
|
+
var name = $2;
|
|
2195
|
+
var suffix = $5;
|
|
2196
|
+
name = name.token.match(/^(?:"|')/) ? name.token.slice(1, -1) : name.token;
|
|
2197
|
+
return {
|
|
2198
|
+
type: "MethodSignature",
|
|
2199
|
+
children: $0,
|
|
2200
|
+
name,
|
|
2201
|
+
modifier: $1?.[0]?.token,
|
|
2202
|
+
returnType: void 0
|
|
2203
|
+
};
|
|
2204
|
+
});
|
|
2062
2205
|
function MethodSignature(state) {
|
|
2063
2206
|
if (state.tokenize) {
|
|
2064
2207
|
return $TOKEN("MethodSignature", state, MethodSignature$0(state) || MethodSignature$1(state));
|
|
@@ -2075,7 +2218,12 @@ var Civet = (() => {
|
|
|
2075
2218
|
return ClassElementName$0(state) || ClassElementName$1(state);
|
|
2076
2219
|
}
|
|
2077
2220
|
}
|
|
2078
|
-
var PrivateIdentifier$0 = $S($EXPECT($L8, fail, 'PrivateIdentifier "#"'), IdentifierName)
|
|
2221
|
+
var PrivateIdentifier$0 = $TV($TEXT($S($EXPECT($L8, fail, 'PrivateIdentifier "#"'), IdentifierName)), function($skip, $loc, $0, $1) {
|
|
2222
|
+
return {
|
|
2223
|
+
$loc,
|
|
2224
|
+
token: $1
|
|
2225
|
+
};
|
|
2226
|
+
});
|
|
2079
2227
|
function PrivateIdentifier(state) {
|
|
2080
2228
|
if (state.verbose)
|
|
2081
2229
|
console.log("ENTER:", "PrivateIdentifier");
|
|
@@ -2213,8 +2361,7 @@ var Civet = (() => {
|
|
|
2213
2361
|
var l = $3;
|
|
2214
2362
|
if (cond)
|
|
2215
2363
|
return [cond, statement, { $loc: l.$loc, token: "}" }];
|
|
2216
|
-
|
|
2217
|
-
return $0;
|
|
2364
|
+
return statement;
|
|
2218
2365
|
});
|
|
2219
2366
|
function StatementListItem(state) {
|
|
2220
2367
|
if (state.verbose)
|
|
@@ -2269,7 +2416,9 @@ var Civet = (() => {
|
|
|
2269
2416
|
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);
|
|
2270
2417
|
}
|
|
2271
2418
|
}
|
|
2272
|
-
var EmptyStatement$0 = $S($Q(TrailingComment), $Y($EXPECT($L72, fail, 'EmptyStatement ";"')))
|
|
2419
|
+
var EmptyStatement$0 = $T($S($Q(TrailingComment), $Y($EXPECT($L72, fail, 'EmptyStatement ";"'))), function(value) {
|
|
2420
|
+
return { "type": "EmptyStatement", "children": value[0] };
|
|
2421
|
+
});
|
|
2273
2422
|
function EmptyStatement(state) {
|
|
2274
2423
|
if (state.verbose)
|
|
2275
2424
|
console.log("ENTER:", "EmptyStatement");
|
|
@@ -2289,7 +2438,9 @@ var Civet = (() => {
|
|
|
2289
2438
|
return BlockStatement$0(state);
|
|
2290
2439
|
}
|
|
2291
2440
|
}
|
|
2292
|
-
var IfStatement$0 = $S(If, Condition, Block, $E($S(__, Else, Block)))
|
|
2441
|
+
var IfStatement$0 = $T($S(If, Condition, Block, $E($S(__, Else, Block))), function(value) {
|
|
2442
|
+
return { "type": "IfStatement", "children": value };
|
|
2443
|
+
});
|
|
2293
2444
|
var IfStatement$1 = $TS($S(Unless, Condition, Block), function($skip, $loc, $0, $1, $2, $3) {
|
|
2294
2445
|
var kind = $1;
|
|
2295
2446
|
var condition = $2;
|
|
@@ -2303,7 +2454,10 @@ var Civet = (() => {
|
|
|
2303
2454
|
c.token = "))";
|
|
2304
2455
|
});
|
|
2305
2456
|
kind.token = "if";
|
|
2306
|
-
return
|
|
2457
|
+
return {
|
|
2458
|
+
type: "IfStatement",
|
|
2459
|
+
children: [kind, condition, block]
|
|
2460
|
+
};
|
|
2307
2461
|
});
|
|
2308
2462
|
function IfStatement(state) {
|
|
2309
2463
|
if (state.tokenize) {
|
|
@@ -2315,8 +2469,12 @@ var Civet = (() => {
|
|
|
2315
2469
|
var IterationStatement$0 = LoopStatement;
|
|
2316
2470
|
var IterationStatement$1 = DoWhileStatement;
|
|
2317
2471
|
var IterationStatement$2 = WhileStatement;
|
|
2318
|
-
var IterationStatement$3 = ForStatement
|
|
2319
|
-
|
|
2472
|
+
var IterationStatement$3 = $T($S(ForStatement), function(value) {
|
|
2473
|
+
return { "type": "IterationStatement", "children": value };
|
|
2474
|
+
});
|
|
2475
|
+
var IterationStatement$4 = $T($S(ForInOfStatement), function(value) {
|
|
2476
|
+
return { "type": "IterationStatement", "children": value };
|
|
2477
|
+
});
|
|
2320
2478
|
function IterationStatement(state) {
|
|
2321
2479
|
if (state.tokenize) {
|
|
2322
2480
|
return $TOKEN("IterationStatement", state, IterationStatement$0(state) || IterationStatement$1(state) || IterationStatement$2(state) || IterationStatement$3(state) || IterationStatement$4(state));
|
|
@@ -2324,7 +2482,9 @@ var Civet = (() => {
|
|
|
2324
2482
|
return IterationStatement$0(state) || IterationStatement$1(state) || IterationStatement$2(state) || IterationStatement$3(state) || IterationStatement$4(state);
|
|
2325
2483
|
}
|
|
2326
2484
|
}
|
|
2327
|
-
var LoopStatement$0 = $S(Loop, Block)
|
|
2485
|
+
var LoopStatement$0 = $T($S(Loop, Block), function(value) {
|
|
2486
|
+
return { "type": "IterationStatement", "children": value };
|
|
2487
|
+
});
|
|
2328
2488
|
function LoopStatement(state) {
|
|
2329
2489
|
if (state.verbose)
|
|
2330
2490
|
console.log("ENTER:", "LoopStatement");
|
|
@@ -2334,7 +2494,9 @@ var Civet = (() => {
|
|
|
2334
2494
|
return LoopStatement$0(state);
|
|
2335
2495
|
}
|
|
2336
2496
|
}
|
|
2337
|
-
var DoWhileStatement$0 = $S($EXPECT($L73, fail, 'DoWhileStatement "do"'), NonIdContinue, Block, __, WhileClause)
|
|
2497
|
+
var DoWhileStatement$0 = $T($S($EXPECT($L73, fail, 'DoWhileStatement "do"'), NonIdContinue, Block, __, WhileClause), function(value) {
|
|
2498
|
+
return { "type": "IterationStatement", "children": value };
|
|
2499
|
+
});
|
|
2338
2500
|
function DoWhileStatement(state) {
|
|
2339
2501
|
if (state.verbose)
|
|
2340
2502
|
console.log("ENTER:", "DoWhileStatement");
|
|
@@ -2344,7 +2506,9 @@ var Civet = (() => {
|
|
|
2344
2506
|
return DoWhileStatement$0(state);
|
|
2345
2507
|
}
|
|
2346
2508
|
}
|
|
2347
|
-
var WhileStatement$0 = $S(WhileClause, Block)
|
|
2509
|
+
var WhileStatement$0 = $T($S(WhileClause, Block), function(value) {
|
|
2510
|
+
return { "type": "IterationStatement", "children": value };
|
|
2511
|
+
});
|
|
2348
2512
|
function WhileStatement(state) {
|
|
2349
2513
|
if (state.verbose)
|
|
2350
2514
|
console.log("ENTER:", "WhileStatement");
|
|
@@ -2413,7 +2577,9 @@ var Civet = (() => {
|
|
|
2413
2577
|
return ForBinding$0(state) || ForBinding$1(state);
|
|
2414
2578
|
}
|
|
2415
2579
|
}
|
|
2416
|
-
var SwitchStatement$0 = $S(Switch, Condition, CaseBlock)
|
|
2580
|
+
var SwitchStatement$0 = $T($S(Switch, Condition, CaseBlock), function(value) {
|
|
2581
|
+
return { "type": "SwitchStatement", "children": value };
|
|
2582
|
+
});
|
|
2417
2583
|
function SwitchStatement(state) {
|
|
2418
2584
|
if (state.verbose)
|
|
2419
2585
|
console.log("ENTER:", "SwitchStatement");
|
|
@@ -2423,8 +2589,24 @@ var Civet = (() => {
|
|
|
2423
2589
|
return SwitchStatement$0(state);
|
|
2424
2590
|
}
|
|
2425
2591
|
}
|
|
2426
|
-
var CaseBlock$0 = $S(__, OpenBrace, $Y(EOS), NestedCaseClauses, __, CloseBrace)
|
|
2427
|
-
|
|
2592
|
+
var CaseBlock$0 = $TS($S(__, OpenBrace, $Y(EOS), NestedCaseClauses, __, CloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
2593
|
+
var clauses = $4;
|
|
2594
|
+
$0.splice(2, 1);
|
|
2595
|
+
return {
|
|
2596
|
+
type: "CaseBlock",
|
|
2597
|
+
clauses,
|
|
2598
|
+
children: $0
|
|
2599
|
+
};
|
|
2600
|
+
});
|
|
2601
|
+
var CaseBlock$1 = $TS($S($Y(EOS), InsertOpenBrace, NestedCaseClauses, InsertNewline, InsertIndent, InsertCloseBrace), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
2602
|
+
var clauses = $3;
|
|
2603
|
+
$0.shift();
|
|
2604
|
+
return {
|
|
2605
|
+
type: "CaseBlock",
|
|
2606
|
+
clauses,
|
|
2607
|
+
children: $0
|
|
2608
|
+
};
|
|
2609
|
+
});
|
|
2428
2610
|
function CaseBlock(state) {
|
|
2429
2611
|
if (state.tokenize) {
|
|
2430
2612
|
return $TOKEN("CaseBlock", state, CaseBlock$0(state) || CaseBlock$1(state));
|
|
@@ -2447,7 +2629,10 @@ var Civet = (() => {
|
|
|
2447
2629
|
return NestedCaseClauses$0(state);
|
|
2448
2630
|
}
|
|
2449
2631
|
}
|
|
2450
|
-
var NestedCaseClause$0 = $S(Nested, CaseClause)
|
|
2632
|
+
var NestedCaseClause$0 = $TS($S(Nested, CaseClause), function($skip, $loc, $0, $1, $2) {
|
|
2633
|
+
$2.children.unshift($1);
|
|
2634
|
+
return $2;
|
|
2635
|
+
});
|
|
2451
2636
|
function NestedCaseClause(state) {
|
|
2452
2637
|
if (state.verbose)
|
|
2453
2638
|
console.log("ENTER:", "NestedCaseClause");
|
|
@@ -2457,14 +2642,32 @@ var Civet = (() => {
|
|
|
2457
2642
|
return NestedCaseClause$0(state);
|
|
2458
2643
|
}
|
|
2459
2644
|
}
|
|
2460
|
-
var CaseClause$0 = $S(Case, CaseExpressionList, NestedBlockExpressions)
|
|
2461
|
-
|
|
2462
|
-
|
|
2645
|
+
var CaseClause$0 = $T($S(Case, CaseExpressionList, $C(NestedBlockExpressions, NoExpressions)), function(value) {
|
|
2646
|
+
var exps = value[2];
|
|
2647
|
+
return { "type": "CaseClause", "expressions": exps, "children": value };
|
|
2648
|
+
});
|
|
2649
|
+
var CaseClause$1 = $T($S(When, CaseExpressionList, NestedBlockExpressions, InsertBreak), function(value) {
|
|
2650
|
+
var exps = value[2];
|
|
2651
|
+
return { "type": "WhenClause", "expressions": exps, "children": value };
|
|
2652
|
+
});
|
|
2653
|
+
var CaseClause$2 = $T($S(Default, ImpliedColon, $C(NestedBlockExpressions, NoExpressions)), function(value) {
|
|
2654
|
+
var exps = value[2];
|
|
2655
|
+
return { "type": "DefaultClause", "expressions": exps, "children": value };
|
|
2656
|
+
});
|
|
2657
|
+
var CaseClause$3 = $TS($S(Else, ImpliedColon, NestedBlockExpressions), function($skip, $loc, $0, $1, $2, $3) {
|
|
2658
|
+
var exps = $3;
|
|
2659
|
+
$1.token = "default";
|
|
2660
|
+
return {
|
|
2661
|
+
type: "DefaultClause",
|
|
2662
|
+
expressions: exps,
|
|
2663
|
+
children: $0
|
|
2664
|
+
};
|
|
2665
|
+
});
|
|
2463
2666
|
function CaseClause(state) {
|
|
2464
2667
|
if (state.tokenize) {
|
|
2465
|
-
return $TOKEN("CaseClause", state, CaseClause$0(state) || CaseClause$1(state) || CaseClause$2(state));
|
|
2668
|
+
return $TOKEN("CaseClause", state, CaseClause$0(state) || CaseClause$1(state) || CaseClause$2(state) || CaseClause$3(state));
|
|
2466
2669
|
} else {
|
|
2467
|
-
return CaseClause$0(state) || CaseClause$1(state) || CaseClause$2(state);
|
|
2670
|
+
return CaseClause$0(state) || CaseClause$1(state) || CaseClause$2(state) || CaseClause$3(state);
|
|
2468
2671
|
}
|
|
2469
2672
|
}
|
|
2470
2673
|
var CaseExpressionList$0 = $TS($S($S($Q(_), ExpressionWithIndentedApplicationSuppressed, ImpliedColon), $Q($S(__, Comma, ExpressionWithIndentedApplicationSuppressed, ImpliedColon))), function($skip, $loc, $0, $1, $2) {
|
|
@@ -2486,6 +2689,18 @@ var Civet = (() => {
|
|
|
2486
2689
|
return CaseExpressionList$0(state);
|
|
2487
2690
|
}
|
|
2488
2691
|
}
|
|
2692
|
+
var NoExpressions$0 = $T($EXPECT($L1, fail, 'NoExpressions ""'), function(value) {
|
|
2693
|
+
return [];
|
|
2694
|
+
});
|
|
2695
|
+
function NoExpressions(state) {
|
|
2696
|
+
if (state.verbose)
|
|
2697
|
+
console.log("ENTER:", "NoExpressions");
|
|
2698
|
+
if (state.tokenize) {
|
|
2699
|
+
return $TOKEN("NoExpressions", state, NoExpressions$0(state));
|
|
2700
|
+
} else {
|
|
2701
|
+
return NoExpressions$0(state);
|
|
2702
|
+
}
|
|
2703
|
+
}
|
|
2489
2704
|
var ImpliedColon$0 = $S(__, Colon);
|
|
2490
2705
|
var ImpliedColon$1 = $TV($EXPECT($L1, fail, 'ImpliedColon ""'), function($skip, $loc, $0, $1) {
|
|
2491
2706
|
return { $loc, token: ":" };
|
|
@@ -2498,12 +2713,20 @@ var Civet = (() => {
|
|
|
2498
2713
|
}
|
|
2499
2714
|
}
|
|
2500
2715
|
var TryStatement$0 = $TS($S(Try, BracedBlock, $E(CatchClause), $E(Finally)), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
2716
|
+
var t = $1;
|
|
2717
|
+
var b = $2;
|
|
2501
2718
|
var c = $3;
|
|
2502
2719
|
var f = $4;
|
|
2503
2720
|
if (!c && !f) {
|
|
2504
|
-
return
|
|
2721
|
+
return {
|
|
2722
|
+
type: "TryStatement",
|
|
2723
|
+
children: [t, b, " catch(e) {}"]
|
|
2724
|
+
};
|
|
2505
2725
|
}
|
|
2506
|
-
return
|
|
2726
|
+
return {
|
|
2727
|
+
type: "TryStatement",
|
|
2728
|
+
children: [t, b, c, f]
|
|
2729
|
+
};
|
|
2507
2730
|
});
|
|
2508
2731
|
function TryStatement(state) {
|
|
2509
2732
|
if (state.verbose)
|
|
@@ -2525,7 +2748,7 @@ var Civet = (() => {
|
|
|
2525
2748
|
}
|
|
2526
2749
|
}
|
|
2527
2750
|
var CatchBind$0 = $S(__, OpenParen, __, CatchParameter, __, CloseParen);
|
|
2528
|
-
var CatchBind$1 = $S(
|
|
2751
|
+
var CatchBind$1 = $S($N(EOS), $Q(TrailingComment), InsertOpenParen, CatchParameter, InsertCloseParen);
|
|
2529
2752
|
function CatchBind(state) {
|
|
2530
2753
|
if (state.tokenize) {
|
|
2531
2754
|
return $TOKEN("CatchBind", state, CatchBind$0(state) || CatchBind$1(state));
|
|
@@ -2599,11 +2822,21 @@ var Civet = (() => {
|
|
|
2599
2822
|
return ExpressionStatement$0(state);
|
|
2600
2823
|
}
|
|
2601
2824
|
}
|
|
2602
|
-
var KeywordStatement$0 = $S($EXPECT($L77, fail, 'KeywordStatement "break"'), NonIdContinue)
|
|
2603
|
-
|
|
2604
|
-
|
|
2605
|
-
var KeywordStatement$
|
|
2606
|
-
|
|
2825
|
+
var KeywordStatement$0 = $T($S($EXPECT($L77, fail, 'KeywordStatement "break"'), NonIdContinue), function(value) {
|
|
2826
|
+
return { "type": "BreakStatement", "children": value };
|
|
2827
|
+
});
|
|
2828
|
+
var KeywordStatement$1 = $T($S($EXPECT($L78, fail, 'KeywordStatement "continue"'), NonIdContinue), function(value) {
|
|
2829
|
+
return { "type": "ContinueStatement", "children": value };
|
|
2830
|
+
});
|
|
2831
|
+
var KeywordStatement$2 = $T($S($EXPECT($L79, fail, 'KeywordStatement "debugger"'), NonIdContinue), function(value) {
|
|
2832
|
+
return { "type": "DebuggerStatement", "children": value };
|
|
2833
|
+
});
|
|
2834
|
+
var KeywordStatement$3 = $T($S(Return, $E(MaybeNestedExpression)), function(value) {
|
|
2835
|
+
return { "type": "ReturnStatement", "children": value };
|
|
2836
|
+
});
|
|
2837
|
+
var KeywordStatement$4 = $T($S(Throw, Expression), function(value) {
|
|
2838
|
+
return { "type": "ThrowStatement", "children": value };
|
|
2839
|
+
});
|
|
2607
2840
|
function KeywordStatement(state) {
|
|
2608
2841
|
if (state.tokenize) {
|
|
2609
2842
|
return $TOKEN("KeywordStatement", state, KeywordStatement$0(state) || KeywordStatement$1(state) || KeywordStatement$2(state) || KeywordStatement$3(state) || KeywordStatement$4(state));
|
|
@@ -2620,7 +2853,7 @@ var Civet = (() => {
|
|
|
2620
2853
|
return MaybeNestedExpression$0(state) || MaybeNestedExpression$1(state);
|
|
2621
2854
|
}
|
|
2622
2855
|
}
|
|
2623
|
-
var ImportDeclaration$0 = $T($S($EXPECT($
|
|
2856
|
+
var ImportDeclaration$0 = $T($S($EXPECT($L80, fail, 'ImportDeclaration "import type"'), NonIdContinue, __, ImportClause, __, FromClause), function(value) {
|
|
2624
2857
|
return { "ts": true, "children": value };
|
|
2625
2858
|
});
|
|
2626
2859
|
var ImportDeclaration$1 = $S(Import, __, ImportClause, __, FromClause);
|
|
@@ -2758,7 +2991,7 @@ var Civet = (() => {
|
|
|
2758
2991
|
return ImportedBinding$0(state);
|
|
2759
2992
|
}
|
|
2760
2993
|
}
|
|
2761
|
-
var ExportDeclaration$0 = $S(Export, __, $EXPECT($
|
|
2994
|
+
var ExportDeclaration$0 = $S(Export, __, $EXPECT($L81, fail, 'ExportDeclaration "default"'), NonIdContinue, __, $C(HoistableDeclaration, ClassDeclaration, AssignmentExpression));
|
|
2762
2995
|
var ExportDeclaration$1 = $S(Export, __, ExportFromClause, __, FromClause);
|
|
2763
2996
|
var ExportDeclaration$2 = $S(Export, __, $C(NamedExports, VariableStatement, Declaration));
|
|
2764
2997
|
function ExportDeclaration(state) {
|
|
@@ -2818,7 +3051,9 @@ var Civet = (() => {
|
|
|
2818
3051
|
return HoistableDeclaration$0(state);
|
|
2819
3052
|
}
|
|
2820
3053
|
}
|
|
2821
|
-
var LexicalDeclaration$0 = $S(LetOrConst, __, LexicalBinding, $Q($S(__, Comma, __, LexicalBinding)))
|
|
3054
|
+
var LexicalDeclaration$0 = $T($S(LetOrConst, __, LexicalBinding, $Q($S(__, Comma, __, LexicalBinding))), function(value) {
|
|
3055
|
+
return { "type": "VariableDeclaration", "children": value };
|
|
3056
|
+
});
|
|
2822
3057
|
var LexicalDeclaration$1 = $TS($S(InsertConst, $C(BindingPattern, BindingIdentifier), $E(TypeSuffix), __, ConstAssignment, AssignmentExpression), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
2823
3058
|
var c = $1;
|
|
2824
3059
|
var ca = $5;
|
|
@@ -2826,7 +3061,10 @@ var Civet = (() => {
|
|
|
2826
3061
|
pos: ca.$loc.pos - 1,
|
|
2827
3062
|
length: ca.$loc.length + 1
|
|
2828
3063
|
};
|
|
2829
|
-
return
|
|
3064
|
+
return {
|
|
3065
|
+
type: "VariableDeclaration",
|
|
3066
|
+
children: $0
|
|
3067
|
+
};
|
|
2830
3068
|
});
|
|
2831
3069
|
function LexicalDeclaration(state) {
|
|
2832
3070
|
if (state.tokenize) {
|
|
@@ -2835,7 +3073,7 @@ var Civet = (() => {
|
|
|
2835
3073
|
return LexicalDeclaration$0(state) || LexicalDeclaration$1(state);
|
|
2836
3074
|
}
|
|
2837
3075
|
}
|
|
2838
|
-
var ConstAssignment$0 = $TV($EXPECT($
|
|
3076
|
+
var ConstAssignment$0 = $TV($EXPECT($L82, fail, 'ConstAssignment ":="'), function($skip, $loc, $0, $1) {
|
|
2839
3077
|
return { $loc, token: "=" };
|
|
2840
3078
|
});
|
|
2841
3079
|
function ConstAssignment(state) {
|
|
@@ -2866,7 +3104,9 @@ var Civet = (() => {
|
|
|
2866
3104
|
return Initializer$0(state);
|
|
2867
3105
|
}
|
|
2868
3106
|
}
|
|
2869
|
-
var VariableStatement$0 = $S(Var, __, VariableDeclarationList)
|
|
3107
|
+
var VariableStatement$0 = $T($S(Var, __, VariableDeclarationList), function(value) {
|
|
3108
|
+
return { "type": "VariableDeclaration", "children": value };
|
|
3109
|
+
});
|
|
2870
3110
|
function VariableStatement(state) {
|
|
2871
3111
|
if (state.verbose)
|
|
2872
3112
|
console.log("ENTER:", "VariableStatement");
|
|
@@ -3247,7 +3487,7 @@ var Civet = (() => {
|
|
|
3247
3487
|
return MultiLineComment$0(state) || MultiLineComment$1(state);
|
|
3248
3488
|
}
|
|
3249
3489
|
}
|
|
3250
|
-
var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($
|
|
3490
|
+
var JSMultiLineComment$0 = $TV($TEXT($S($EXPECT($L83, fail, 'JSMultiLineComment "/*"'), $Q($S($N($EXPECT($L84, fail, 'JSMultiLineComment "*/"')), $EXPECT($R21, fail, "JSMultiLineComment /./"))), $EXPECT($L84, fail, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
|
|
3251
3491
|
return { $loc, token: $1 };
|
|
3252
3492
|
});
|
|
3253
3493
|
function JSMultiLineComment(state) {
|
|
@@ -3271,7 +3511,7 @@ var Civet = (() => {
|
|
|
3271
3511
|
return CoffeeSingleLineComment$0(state);
|
|
3272
3512
|
}
|
|
3273
3513
|
}
|
|
3274
|
-
var CoffeeMultiLineComment$0 = $TS($S($EXPECT($
|
|
3514
|
+
var CoffeeMultiLineComment$0 = $TS($S($EXPECT($L85, fail, 'CoffeeMultiLineComment "###"'), $TEXT($Q($S($N($C($EXPECT($L85, fail, 'CoffeeMultiLineComment "###"'), $EXPECT($L84, fail, 'CoffeeMultiLineComment "*/"'))), $EXPECT($R21, fail, "CoffeeMultiLineComment /./")))), $EXPECT($L85, fail, 'CoffeeMultiLineComment "###"')), function($skip, $loc, $0, $1, $2, $3) {
|
|
3275
3515
|
return { $loc, token: `/*${$2}*/` };
|
|
3276
3516
|
});
|
|
3277
3517
|
function CoffeeMultiLineComment(state) {
|
|
@@ -3283,7 +3523,7 @@ var Civet = (() => {
|
|
|
3283
3523
|
return CoffeeMultiLineComment$0(state);
|
|
3284
3524
|
}
|
|
3285
3525
|
}
|
|
3286
|
-
var InlineComment$0 = $TV($TEXT($S($EXPECT($
|
|
3526
|
+
var InlineComment$0 = $TV($TEXT($S($EXPECT($L83, fail, 'InlineComment "/*"'), $TEXT($Q($S($N($EXPECT($L84, fail, 'InlineComment "*/"')), $EXPECT($R23, fail, "InlineComment /[^\\r\\n]/")))), $EXPECT($L84, fail, 'InlineComment "*/"'))), function($skip, $loc, $0, $1) {
|
|
3287
3527
|
return { $loc, token: $1 };
|
|
3288
3528
|
});
|
|
3289
3529
|
function InlineComment(state) {
|
|
@@ -3392,7 +3632,7 @@ var Civet = (() => {
|
|
|
3392
3632
|
return Loc$0(state);
|
|
3393
3633
|
}
|
|
3394
3634
|
}
|
|
3395
|
-
var As$0 = $TS($S($EXPECT($
|
|
3635
|
+
var As$0 = $TS($S($EXPECT($L86, fail, 'As "as"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3396
3636
|
return { $loc, token: $1 };
|
|
3397
3637
|
});
|
|
3398
3638
|
function As(state) {
|
|
@@ -3404,7 +3644,7 @@ var Civet = (() => {
|
|
|
3404
3644
|
return As$0(state);
|
|
3405
3645
|
}
|
|
3406
3646
|
}
|
|
3407
|
-
var Async$0 = $TV($EXPECT($
|
|
3647
|
+
var Async$0 = $TV($EXPECT($L87, fail, 'Async "async"'), function($skip, $loc, $0, $1) {
|
|
3408
3648
|
return { $loc, token: $1 };
|
|
3409
3649
|
});
|
|
3410
3650
|
function Async(state) {
|
|
@@ -3416,7 +3656,7 @@ var Civet = (() => {
|
|
|
3416
3656
|
return Async$0(state);
|
|
3417
3657
|
}
|
|
3418
3658
|
}
|
|
3419
|
-
var Await$0 = $TS($S($EXPECT($
|
|
3659
|
+
var Await$0 = $TS($S($EXPECT($L88, fail, 'Await "await"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3420
3660
|
return { $loc, token: $1 };
|
|
3421
3661
|
});
|
|
3422
3662
|
function Await(state) {
|
|
@@ -3428,7 +3668,7 @@ var Civet = (() => {
|
|
|
3428
3668
|
return Await$0(state);
|
|
3429
3669
|
}
|
|
3430
3670
|
}
|
|
3431
|
-
var Case$0 = $TS($S($EXPECT($
|
|
3671
|
+
var Case$0 = $TS($S($EXPECT($L89, fail, 'Case "case"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3432
3672
|
return { $loc, token: $1 };
|
|
3433
3673
|
});
|
|
3434
3674
|
function Case(state) {
|
|
@@ -3440,7 +3680,7 @@ var Civet = (() => {
|
|
|
3440
3680
|
return Case$0(state);
|
|
3441
3681
|
}
|
|
3442
3682
|
}
|
|
3443
|
-
var Catch$0 = $TV($EXPECT($
|
|
3683
|
+
var Catch$0 = $TV($EXPECT($L90, fail, 'Catch "catch"'), function($skip, $loc, $0, $1) {
|
|
3444
3684
|
return { $loc, token: $1 };
|
|
3445
3685
|
});
|
|
3446
3686
|
function Catch(state) {
|
|
@@ -3452,7 +3692,7 @@ var Civet = (() => {
|
|
|
3452
3692
|
return Catch$0(state);
|
|
3453
3693
|
}
|
|
3454
3694
|
}
|
|
3455
|
-
var Class$0 = $TV($EXPECT($
|
|
3695
|
+
var Class$0 = $TV($EXPECT($L91, fail, 'Class "class"'), function($skip, $loc, $0, $1) {
|
|
3456
3696
|
return { $loc, token: $1 };
|
|
3457
3697
|
});
|
|
3458
3698
|
function Class(state) {
|
|
@@ -3500,7 +3740,7 @@ var Civet = (() => {
|
|
|
3500
3740
|
return CloseParen$0(state);
|
|
3501
3741
|
}
|
|
3502
3742
|
}
|
|
3503
|
-
var CoffeeSubstitutionStart$0 = $TV($EXPECT($
|
|
3743
|
+
var CoffeeSubstitutionStart$0 = $TV($EXPECT($L92, fail, 'CoffeeSubstitutionStart "#{"'), function($skip, $loc, $0, $1) {
|
|
3504
3744
|
return { $loc, token: "${" };
|
|
3505
3745
|
});
|
|
3506
3746
|
function CoffeeSubstitutionStart(state) {
|
|
@@ -3512,7 +3752,7 @@ var Civet = (() => {
|
|
|
3512
3752
|
return CoffeeSubstitutionStart$0(state);
|
|
3513
3753
|
}
|
|
3514
3754
|
}
|
|
3515
|
-
var Colon$0 = $TV($EXPECT($
|
|
3755
|
+
var Colon$0 = $TV($EXPECT($L93, fail, 'Colon ":"'), function($skip, $loc, $0, $1) {
|
|
3516
3756
|
return { $loc, token: $1 };
|
|
3517
3757
|
});
|
|
3518
3758
|
function Colon(state) {
|
|
@@ -3536,7 +3776,7 @@ var Civet = (() => {
|
|
|
3536
3776
|
return ConstructorShorthand$0(state);
|
|
3537
3777
|
}
|
|
3538
3778
|
}
|
|
3539
|
-
var Default$0 = $TS($S($EXPECT($
|
|
3779
|
+
var Default$0 = $TS($S($EXPECT($L81, fail, 'Default "default"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3540
3780
|
return { $loc, token: $1 };
|
|
3541
3781
|
});
|
|
3542
3782
|
function Default(state) {
|
|
@@ -3548,7 +3788,7 @@ var Civet = (() => {
|
|
|
3548
3788
|
return Default$0(state);
|
|
3549
3789
|
}
|
|
3550
3790
|
}
|
|
3551
|
-
var Dot$0 = $TV($EXPECT($
|
|
3791
|
+
var Dot$0 = $TV($EXPECT($L94, fail, 'Dot "."'), function($skip, $loc, $0, $1) {
|
|
3552
3792
|
return { $loc, token: $1 };
|
|
3553
3793
|
});
|
|
3554
3794
|
function Dot(state) {
|
|
@@ -3560,7 +3800,7 @@ var Civet = (() => {
|
|
|
3560
3800
|
return Dot$0(state);
|
|
3561
3801
|
}
|
|
3562
3802
|
}
|
|
3563
|
-
var DoubleQuote$0 = $TV($EXPECT($
|
|
3803
|
+
var DoubleQuote$0 = $TV($EXPECT($L95, fail, 'DoubleQuote "\\\\\\""'), function($skip, $loc, $0, $1) {
|
|
3564
3804
|
return { $loc, token: $1 };
|
|
3565
3805
|
});
|
|
3566
3806
|
function DoubleQuote(state) {
|
|
@@ -3572,7 +3812,7 @@ var Civet = (() => {
|
|
|
3572
3812
|
return DoubleQuote$0(state);
|
|
3573
3813
|
}
|
|
3574
3814
|
}
|
|
3575
|
-
var Else$0 = $TV($EXPECT($
|
|
3815
|
+
var Else$0 = $TV($EXPECT($L96, fail, 'Else "else"'), function($skip, $loc, $0, $1) {
|
|
3576
3816
|
return { $loc, token: $1 };
|
|
3577
3817
|
});
|
|
3578
3818
|
function Else(state) {
|
|
@@ -3596,7 +3836,7 @@ var Civet = (() => {
|
|
|
3596
3836
|
return Equals$0(state);
|
|
3597
3837
|
}
|
|
3598
3838
|
}
|
|
3599
|
-
var Export$0 = $TS($S($EXPECT($
|
|
3839
|
+
var Export$0 = $TS($S($EXPECT($L97, fail, 'Export "export"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3600
3840
|
return { $loc, token: $1 };
|
|
3601
3841
|
});
|
|
3602
3842
|
function Export(state) {
|
|
@@ -3608,7 +3848,7 @@ var Civet = (() => {
|
|
|
3608
3848
|
return Export$0(state);
|
|
3609
3849
|
}
|
|
3610
3850
|
}
|
|
3611
|
-
var For$0 = $TS($S($EXPECT($
|
|
3851
|
+
var For$0 = $TS($S($EXPECT($L98, fail, 'For "for"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3612
3852
|
return { $loc, token: $1 };
|
|
3613
3853
|
});
|
|
3614
3854
|
function For(state) {
|
|
@@ -3620,7 +3860,7 @@ var Civet = (() => {
|
|
|
3620
3860
|
return For$0(state);
|
|
3621
3861
|
}
|
|
3622
3862
|
}
|
|
3623
|
-
var From$0 = $TS($S($EXPECT($
|
|
3863
|
+
var From$0 = $TS($S($EXPECT($L99, fail, 'From "from"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3624
3864
|
return { $loc, token: $1 };
|
|
3625
3865
|
});
|
|
3626
3866
|
function From(state) {
|
|
@@ -3632,7 +3872,7 @@ var Civet = (() => {
|
|
|
3632
3872
|
return From$0(state);
|
|
3633
3873
|
}
|
|
3634
3874
|
}
|
|
3635
|
-
var Function$0 = $TV($EXPECT($
|
|
3875
|
+
var Function$0 = $TV($EXPECT($L100, fail, 'Function "function"'), function($skip, $loc, $0, $1) {
|
|
3636
3876
|
return { $loc, token: $1 };
|
|
3637
3877
|
});
|
|
3638
3878
|
function Function(state) {
|
|
@@ -3644,7 +3884,7 @@ var Civet = (() => {
|
|
|
3644
3884
|
return Function$0(state);
|
|
3645
3885
|
}
|
|
3646
3886
|
}
|
|
3647
|
-
var GetOrSet$0 = $TS($S($C($EXPECT($
|
|
3887
|
+
var GetOrSet$0 = $TS($S($C($EXPECT($L101, fail, 'GetOrSet "get"'), $EXPECT($L102, fail, 'GetOrSet "set"')), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3648
3888
|
return { $loc, token: $1 };
|
|
3649
3889
|
});
|
|
3650
3890
|
function GetOrSet(state) {
|
|
@@ -3656,7 +3896,7 @@ var Civet = (() => {
|
|
|
3656
3896
|
return GetOrSet$0(state);
|
|
3657
3897
|
}
|
|
3658
3898
|
}
|
|
3659
|
-
var If$0 = $TV($EXPECT($
|
|
3899
|
+
var If$0 = $TV($EXPECT($L103, fail, 'If "if"'), function($skip, $loc, $0, $1) {
|
|
3660
3900
|
return { $loc, token: $1 };
|
|
3661
3901
|
});
|
|
3662
3902
|
function If(state) {
|
|
@@ -3692,7 +3932,7 @@ var Civet = (() => {
|
|
|
3692
3932
|
return In$0(state);
|
|
3693
3933
|
}
|
|
3694
3934
|
}
|
|
3695
|
-
var LetOrConst$0 = $TV($C($EXPECT($
|
|
3935
|
+
var LetOrConst$0 = $TV($C($EXPECT($L104, fail, 'LetOrConst "let"'), $EXPECT($L105, fail, 'LetOrConst "const"')), function($skip, $loc, $0, $1) {
|
|
3696
3936
|
return { $loc, token: $1 };
|
|
3697
3937
|
});
|
|
3698
3938
|
function LetOrConst(state) {
|
|
@@ -3704,7 +3944,7 @@ var Civet = (() => {
|
|
|
3704
3944
|
return LetOrConst$0(state);
|
|
3705
3945
|
}
|
|
3706
3946
|
}
|
|
3707
|
-
var Loop$0 = $TS($S($EXPECT($
|
|
3947
|
+
var Loop$0 = $TS($S($EXPECT($L106, fail, 'Loop "loop"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3708
3948
|
return { $loc, token: "while(true)" };
|
|
3709
3949
|
});
|
|
3710
3950
|
function Loop(state) {
|
|
@@ -3716,7 +3956,7 @@ var Civet = (() => {
|
|
|
3716
3956
|
return Loop$0(state);
|
|
3717
3957
|
}
|
|
3718
3958
|
}
|
|
3719
|
-
var New$0 = $TV($EXPECT($
|
|
3959
|
+
var New$0 = $TV($EXPECT($L107, fail, 'New "new"'), function($skip, $loc, $0, $1) {
|
|
3720
3960
|
return { $loc, token: $1 };
|
|
3721
3961
|
});
|
|
3722
3962
|
function New(state) {
|
|
@@ -3728,7 +3968,7 @@ var Civet = (() => {
|
|
|
3728
3968
|
return New$0(state);
|
|
3729
3969
|
}
|
|
3730
3970
|
}
|
|
3731
|
-
var Of$0 = $TV($EXPECT($
|
|
3971
|
+
var Of$0 = $TV($EXPECT($L108, fail, 'Of "of"'), function($skip, $loc, $0, $1) {
|
|
3732
3972
|
return { $loc, token: $1 };
|
|
3733
3973
|
});
|
|
3734
3974
|
function Of(state) {
|
|
@@ -3740,7 +3980,7 @@ var Civet = (() => {
|
|
|
3740
3980
|
return Of$0(state);
|
|
3741
3981
|
}
|
|
3742
3982
|
}
|
|
3743
|
-
var OpenBrace$0 = $TV($EXPECT($
|
|
3983
|
+
var OpenBrace$0 = $TV($EXPECT($L109, fail, 'OpenBrace "{"'), function($skip, $loc, $0, $1) {
|
|
3744
3984
|
return { $loc, token: $1 };
|
|
3745
3985
|
});
|
|
3746
3986
|
function OpenBrace(state) {
|
|
@@ -3752,7 +3992,7 @@ var Civet = (() => {
|
|
|
3752
3992
|
return OpenBrace$0(state);
|
|
3753
3993
|
}
|
|
3754
3994
|
}
|
|
3755
|
-
var OpenBracket$0 = $TV($EXPECT($
|
|
3995
|
+
var OpenBracket$0 = $TV($EXPECT($L110, fail, 'OpenBracket "["'), function($skip, $loc, $0, $1) {
|
|
3756
3996
|
return { $loc, token: $1 };
|
|
3757
3997
|
});
|
|
3758
3998
|
function OpenBracket(state) {
|
|
@@ -3764,7 +4004,7 @@ var Civet = (() => {
|
|
|
3764
4004
|
return OpenBracket$0(state);
|
|
3765
4005
|
}
|
|
3766
4006
|
}
|
|
3767
|
-
var OpenParen$0 = $TV($EXPECT($
|
|
4007
|
+
var OpenParen$0 = $TV($EXPECT($L111, fail, 'OpenParen "("'), function($skip, $loc, $0, $1) {
|
|
3768
4008
|
return { $loc, token: $1 };
|
|
3769
4009
|
});
|
|
3770
4010
|
function OpenParen(state) {
|
|
@@ -3776,7 +4016,7 @@ var Civet = (() => {
|
|
|
3776
4016
|
return OpenParen$0(state);
|
|
3777
4017
|
}
|
|
3778
4018
|
}
|
|
3779
|
-
var QuestionMark$0 = $TV($EXPECT($
|
|
4019
|
+
var QuestionMark$0 = $TV($EXPECT($L112, fail, 'QuestionMark "?"'), function($skip, $loc, $0, $1) {
|
|
3780
4020
|
return { $loc, token: $1 };
|
|
3781
4021
|
});
|
|
3782
4022
|
function QuestionMark(state) {
|
|
@@ -3788,7 +4028,7 @@ var Civet = (() => {
|
|
|
3788
4028
|
return QuestionMark$0(state);
|
|
3789
4029
|
}
|
|
3790
4030
|
}
|
|
3791
|
-
var Return$0 = $TS($S($EXPECT($
|
|
4031
|
+
var Return$0 = $TS($S($EXPECT($L113, fail, 'Return "return"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3792
4032
|
return { $loc, token: $1 };
|
|
3793
4033
|
});
|
|
3794
4034
|
function Return(state) {
|
|
@@ -3812,7 +4052,7 @@ var Civet = (() => {
|
|
|
3812
4052
|
return Semicolon$0(state);
|
|
3813
4053
|
}
|
|
3814
4054
|
}
|
|
3815
|
-
var SingleQuote$0 = $TV($EXPECT($
|
|
4055
|
+
var SingleQuote$0 = $TV($EXPECT($L114, fail, `SingleQuote "'"`), function($skip, $loc, $0, $1) {
|
|
3816
4056
|
return { $loc, token: $1 };
|
|
3817
4057
|
});
|
|
3818
4058
|
function SingleQuote(state) {
|
|
@@ -3836,10 +4076,10 @@ var Civet = (() => {
|
|
|
3836
4076
|
return Star$0(state);
|
|
3837
4077
|
}
|
|
3838
4078
|
}
|
|
3839
|
-
var Static$0 = $TV($EXPECT($
|
|
4079
|
+
var Static$0 = $TV($EXPECT($L115, fail, 'Static "static"'), function($skip, $loc, $0, $1) {
|
|
3840
4080
|
return { $loc, token: $1 };
|
|
3841
4081
|
});
|
|
3842
|
-
var Static$1 = $TS($S($EXPECT($L9, fail, 'Static "@"'), $N($EXPECT($
|
|
4082
|
+
var Static$1 = $TS($S($EXPECT($L9, fail, 'Static "@"'), $N($EXPECT($L111, fail, 'Static "("'))), function($skip, $loc, $0, $1, $2) {
|
|
3843
4083
|
return { $loc, token: "static " };
|
|
3844
4084
|
});
|
|
3845
4085
|
function Static(state) {
|
|
@@ -3849,7 +4089,7 @@ var Civet = (() => {
|
|
|
3849
4089
|
return Static$0(state) || Static$1(state);
|
|
3850
4090
|
}
|
|
3851
4091
|
}
|
|
3852
|
-
var SubstitutionStart$0 = $TV($EXPECT($
|
|
4092
|
+
var SubstitutionStart$0 = $TV($EXPECT($L116, fail, 'SubstitutionStart "${"'), function($skip, $loc, $0, $1) {
|
|
3853
4093
|
return { $loc, token: $1 };
|
|
3854
4094
|
});
|
|
3855
4095
|
function SubstitutionStart(state) {
|
|
@@ -3861,7 +4101,7 @@ var Civet = (() => {
|
|
|
3861
4101
|
return SubstitutionStart$0(state);
|
|
3862
4102
|
}
|
|
3863
4103
|
}
|
|
3864
|
-
var Switch$0 = $TS($S($EXPECT($
|
|
4104
|
+
var Switch$0 = $TS($S($EXPECT($L117, fail, 'Switch "switch"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
3865
4105
|
return { $loc, token: $1 };
|
|
3866
4106
|
});
|
|
3867
4107
|
function Switch(state) {
|
|
@@ -3873,7 +4113,7 @@ var Civet = (() => {
|
|
|
3873
4113
|
return Switch$0(state);
|
|
3874
4114
|
}
|
|
3875
4115
|
}
|
|
3876
|
-
var Target$0 = $TV($EXPECT($
|
|
4116
|
+
var Target$0 = $TV($EXPECT($L118, fail, 'Target "target"'), function($skip, $loc, $0, $1) {
|
|
3877
4117
|
return { $loc, token: $1 };
|
|
3878
4118
|
});
|
|
3879
4119
|
function Target(state) {
|
|
@@ -3885,6 +4125,18 @@ var Civet = (() => {
|
|
|
3885
4125
|
return Target$0(state);
|
|
3886
4126
|
}
|
|
3887
4127
|
}
|
|
4128
|
+
var Throw$0 = $TS($S($EXPECT($L119, fail, 'Throw "throw"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
4129
|
+
return { $loc, token: $1 };
|
|
4130
|
+
});
|
|
4131
|
+
function Throw(state) {
|
|
4132
|
+
if (state.verbose)
|
|
4133
|
+
console.log("ENTER:", "Throw");
|
|
4134
|
+
if (state.tokenize) {
|
|
4135
|
+
return $TOKEN("Throw", state, Throw$0(state));
|
|
4136
|
+
} else {
|
|
4137
|
+
return Throw$0(state);
|
|
4138
|
+
}
|
|
4139
|
+
}
|
|
3888
4140
|
var TripleDoubleQuote$0 = $TV($EXPECT($L120, fail, 'TripleDoubleQuote "\\\\\\"\\\\\\"\\\\\\""'), function($skip, $loc, $0, $1) {
|
|
3889
4141
|
return { $loc, token: "`" };
|
|
3890
4142
|
});
|
|
@@ -4244,7 +4496,7 @@ var Civet = (() => {
|
|
|
4244
4496
|
}
|
|
4245
4497
|
}
|
|
4246
4498
|
var InterfaceProperty$0 = $S($C(TypeIndexSignature, PropertyName), TypeSuffix, InterfacePropertyDelimiter);
|
|
4247
|
-
var InterfaceProperty$1 =
|
|
4499
|
+
var InterfaceProperty$1 = MethodSignature;
|
|
4248
4500
|
function InterfaceProperty(state) {
|
|
4249
4501
|
if (state.tokenize) {
|
|
4250
4502
|
return $TOKEN("InterfaceProperty", state, InterfaceProperty$0(state) || InterfaceProperty$1(state));
|
|
@@ -4322,7 +4574,7 @@ var Civet = (() => {
|
|
|
4322
4574
|
}
|
|
4323
4575
|
}
|
|
4324
4576
|
var TypeSuffix$0 = $T($S($E(QuestionMark), __, Colon, Type), function(value) {
|
|
4325
|
-
return { "ts": true, "children": value };
|
|
4577
|
+
return { "type": "TypeSuffix", "ts": true, "children": value };
|
|
4326
4578
|
});
|
|
4327
4579
|
function TypeSuffix(state) {
|
|
4328
4580
|
if (state.verbose)
|
|
@@ -4333,8 +4585,16 @@ var Civet = (() => {
|
|
|
4333
4585
|
return TypeSuffix$0(state);
|
|
4334
4586
|
}
|
|
4335
4587
|
}
|
|
4336
|
-
var ReturnTypeSuffix$0 = $
|
|
4337
|
-
|
|
4588
|
+
var ReturnTypeSuffix$0 = $TS($S(__, Colon, $E($S(__, $EXPECT($L137, fail, 'ReturnTypeSuffix "asserts"'), NonIdContinue)), TypePredicate), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
4589
|
+
if (!$3)
|
|
4590
|
+
$0.splice(2, 1);
|
|
4591
|
+
if ($1.length === 0)
|
|
4592
|
+
$0.shift();
|
|
4593
|
+
return {
|
|
4594
|
+
type: "ReturnTypeAnnotation",
|
|
4595
|
+
children: $0,
|
|
4596
|
+
ts: true
|
|
4597
|
+
};
|
|
4338
4598
|
});
|
|
4339
4599
|
function ReturnTypeSuffix(state) {
|
|
4340
4600
|
if (state.verbose)
|
|
@@ -4345,7 +4605,11 @@ var Civet = (() => {
|
|
|
4345
4605
|
return ReturnTypeSuffix$0(state);
|
|
4346
4606
|
}
|
|
4347
4607
|
}
|
|
4348
|
-
var TypePredicate$0 = $S(Type, $E($S(__, $EXPECT($L56, fail, 'TypePredicate "is"'), NonIdContinue, Type)))
|
|
4608
|
+
var TypePredicate$0 = $TS($S(Type, $E($S(__, $EXPECT($L56, fail, 'TypePredicate "is"'), NonIdContinue, Type))), function($skip, $loc, $0, $1, $2) {
|
|
4609
|
+
if (!$2)
|
|
4610
|
+
return $1;
|
|
4611
|
+
return $0;
|
|
4612
|
+
});
|
|
4349
4613
|
function TypePredicate(state) {
|
|
4350
4614
|
if (state.verbose)
|
|
4351
4615
|
console.log("ENTER:", "TypePredicate");
|
|
@@ -4365,7 +4629,11 @@ var Civet = (() => {
|
|
|
4365
4629
|
return Type$0(state);
|
|
4366
4630
|
}
|
|
4367
4631
|
}
|
|
4368
|
-
var TypeBinary$0 = $S(TypeUnary, $Q($S(__, TypeBinaryOp, __, TypeUnary)))
|
|
4632
|
+
var TypeBinary$0 = $TS($S(TypeUnary, $Q($S(__, TypeBinaryOp, __, TypeUnary))), function($skip, $loc, $0, $1, $2) {
|
|
4633
|
+
if ($2.length)
|
|
4634
|
+
return $0;
|
|
4635
|
+
return $1;
|
|
4636
|
+
});
|
|
4369
4637
|
function TypeBinary(state) {
|
|
4370
4638
|
if (state.verbose)
|
|
4371
4639
|
console.log("ENTER:", "TypeBinary");
|
|
@@ -4375,7 +4643,13 @@ var Civet = (() => {
|
|
|
4375
4643
|
return TypeBinary$0(state);
|
|
4376
4644
|
}
|
|
4377
4645
|
}
|
|
4378
|
-
var TypeUnary$0 = $S($Q($S(__, TypeUnaryOp, NonIdContinue)), TypePrimary, $Q(TypeUnarySuffix))
|
|
4646
|
+
var TypeUnary$0 = $TS($S($Q($S(__, TypeUnaryOp, NonIdContinue)), TypePrimary, $Q(TypeUnarySuffix)), function($skip, $loc, $0, $1, $2, $3) {
|
|
4647
|
+
if (!$3.length)
|
|
4648
|
+
$0.pop();
|
|
4649
|
+
if (!$1.length)
|
|
4650
|
+
$0.shift();
|
|
4651
|
+
return $0;
|
|
4652
|
+
});
|
|
4379
4653
|
function TypeUnary(state) {
|
|
4380
4654
|
if (state.verbose)
|
|
4381
4655
|
console.log("ENTER:", "TypeUnary");
|
|
@@ -4418,8 +4692,8 @@ var Civet = (() => {
|
|
|
4418
4692
|
var TypePrimary$0 = InterfaceBlock;
|
|
4419
4693
|
var TypePrimary$1 = $S(__, OpenParen, Type, __, CloseParen);
|
|
4420
4694
|
var TypePrimary$2 = $S($Q(_), FunctionType);
|
|
4421
|
-
var TypePrimary$3 = $S($Q(_),
|
|
4422
|
-
var TypePrimary$4 = $S($Q(_),
|
|
4695
|
+
var TypePrimary$3 = $S($Q(_), TypeLiteral);
|
|
4696
|
+
var TypePrimary$4 = $S($Q(_), IdentifierName, $Q($S(Dot, IdentifierName)), $E(TypeArguments));
|
|
4423
4697
|
function TypePrimary(state) {
|
|
4424
4698
|
if (state.tokenize) {
|
|
4425
4699
|
return $TOKEN("TypePrimary", state, TypePrimary$0(state) || TypePrimary$1(state) || TypePrimary$2(state) || TypePrimary$3(state) || TypePrimary$4(state));
|
|
@@ -4427,7 +4701,11 @@ var Civet = (() => {
|
|
|
4427
4701
|
return TypePrimary$0(state) || TypePrimary$1(state) || TypePrimary$2(state) || TypePrimary$3(state) || TypePrimary$4(state);
|
|
4428
4702
|
}
|
|
4429
4703
|
}
|
|
4430
|
-
var TypeConditional$0 = $S(TypeBinary, $E($S(__, $EXPECT($L6, fail, 'TypeConditional "extends"'), Type, $E($S(__, QuestionMark, Type, __, Colon, Type)))))
|
|
4704
|
+
var TypeConditional$0 = $TS($S(TypeBinary, $E($S(__, $EXPECT($L6, fail, 'TypeConditional "extends"'), Type, $E($S(__, QuestionMark, Type, __, Colon, Type))))), function($skip, $loc, $0, $1, $2) {
|
|
4705
|
+
if ($2)
|
|
4706
|
+
return $0;
|
|
4707
|
+
return $1;
|
|
4708
|
+
});
|
|
4431
4709
|
function TypeConditional(state) {
|
|
4432
4710
|
if (state.verbose)
|
|
4433
4711
|
console.log("ENTER:", "TypeConditional");
|
|
@@ -4438,8 +4716,12 @@ var Civet = (() => {
|
|
|
4438
4716
|
}
|
|
4439
4717
|
}
|
|
4440
4718
|
var TypeLiteral$0 = Literal;
|
|
4441
|
-
var TypeLiteral$1 = $EXPECT($L70, fail, 'TypeLiteral "void"')
|
|
4442
|
-
|
|
4719
|
+
var TypeLiteral$1 = $TV($EXPECT($L70, fail, 'TypeLiteral "void"'), function($skip, $loc, $0, $1) {
|
|
4720
|
+
return { $loc, token: "void" };
|
|
4721
|
+
});
|
|
4722
|
+
var TypeLiteral$2 = $TV($EXPECT($L140, fail, 'TypeLiteral "[]"'), function($skip, $loc, $0, $1) {
|
|
4723
|
+
return { $loc, token: "[]" };
|
|
4724
|
+
});
|
|
4443
4725
|
function TypeLiteral(state) {
|
|
4444
4726
|
if (state.tokenize) {
|
|
4445
4727
|
return $TOKEN("TypeLiteral", state, TypeLiteral$0(state) || TypeLiteral$1(state) || TypeLiteral$2(state));
|
|
@@ -4447,8 +4729,12 @@ var Civet = (() => {
|
|
|
4447
4729
|
return TypeLiteral$0(state) || TypeLiteral$1(state) || TypeLiteral$2(state);
|
|
4448
4730
|
}
|
|
4449
4731
|
}
|
|
4450
|
-
var TypeBinaryOp$0 = $EXPECT($L68, fail, 'TypeBinaryOp "|"')
|
|
4451
|
-
|
|
4732
|
+
var TypeBinaryOp$0 = $TV($EXPECT($L68, fail, 'TypeBinaryOp "|"'), function($skip, $loc, $0, $1) {
|
|
4733
|
+
return { $loc, token: "|" };
|
|
4734
|
+
});
|
|
4735
|
+
var TypeBinaryOp$1 = $TV($EXPECT($L66, fail, 'TypeBinaryOp "&"'), function($skip, $loc, $0, $1) {
|
|
4736
|
+
return { $loc, token: "&" };
|
|
4737
|
+
});
|
|
4452
4738
|
function TypeBinaryOp(state) {
|
|
4453
4739
|
if (state.tokenize) {
|
|
4454
4740
|
return $TOKEN("TypeBinaryOp", state, TypeBinaryOp$0(state) || TypeBinaryOp$1(state));
|
|
@@ -4722,6 +5008,7 @@ var Civet = (() => {
|
|
|
4722
5008
|
module.indentLevels = [0];
|
|
4723
5009
|
module.verbose = false;
|
|
4724
5010
|
module.coffeeCompat = false;
|
|
5011
|
+
module.implicitReturns = true;
|
|
4725
5012
|
});
|
|
4726
5013
|
function Reset(state) {
|
|
4727
5014
|
if (state.verbose)
|
|
@@ -4738,6 +5025,79 @@ var Civet = (() => {
|
|
|
4738
5025
|
const compatRe = /use coffee-compat/;
|
|
4739
5026
|
module.coffeeCompat = directives.some((d) => d[1].token?.match(compatRe));
|
|
4740
5027
|
}
|
|
5028
|
+
function hasReturnStatement(node) {
|
|
5029
|
+
if (!node)
|
|
5030
|
+
return false;
|
|
5031
|
+
if (Array.isArray(node))
|
|
5032
|
+
return node.some(hasReturnStatement);
|
|
5033
|
+
if (node.type === "ReturnStatement")
|
|
5034
|
+
return true;
|
|
5035
|
+
if (node.type === "FunctionExpression")
|
|
5036
|
+
return false;
|
|
5037
|
+
if (node.children)
|
|
5038
|
+
return hasReturnStatement(node.children);
|
|
5039
|
+
return false;
|
|
5040
|
+
}
|
|
5041
|
+
function insertReturn(node) {
|
|
5042
|
+
if (!node)
|
|
5043
|
+
return;
|
|
5044
|
+
switch (node.type) {
|
|
5045
|
+
case "AssignmentExpression":
|
|
5046
|
+
node.children.unshift("return ");
|
|
5047
|
+
return;
|
|
5048
|
+
case "BlockStatement":
|
|
5049
|
+
insertReturn(node.expressions[node.expressions.length - 1]);
|
|
5050
|
+
return;
|
|
5051
|
+
case "CaseBlock":
|
|
5052
|
+
node.clauses.forEach((clause) => {
|
|
5053
|
+
insertReturn(clause);
|
|
5054
|
+
});
|
|
5055
|
+
return;
|
|
5056
|
+
case "CaseClause":
|
|
5057
|
+
return;
|
|
5058
|
+
case "WhenClause":
|
|
5059
|
+
node.children.pop();
|
|
5060
|
+
insertReturn(node.expressions[node.expressions.length - 1]);
|
|
5061
|
+
return;
|
|
5062
|
+
case "DefaultClause":
|
|
5063
|
+
insertReturn(node.expressions[node.expressions.length - 1]);
|
|
5064
|
+
return;
|
|
5065
|
+
}
|
|
5066
|
+
if (!Array.isArray(node))
|
|
5067
|
+
return;
|
|
5068
|
+
const [, exp] = node;
|
|
5069
|
+
if (!exp)
|
|
5070
|
+
return;
|
|
5071
|
+
switch (exp.type) {
|
|
5072
|
+
case "BreakStatement":
|
|
5073
|
+
case "ContinueStatement":
|
|
5074
|
+
case "DebuggerStatement":
|
|
5075
|
+
case "EmptyStatement":
|
|
5076
|
+
case "IterationStatement":
|
|
5077
|
+
case "ThrowStatement":
|
|
5078
|
+
case "VariableDeclaration":
|
|
5079
|
+
return;
|
|
5080
|
+
case "IfStatement":
|
|
5081
|
+
insertReturn(exp.children[2]);
|
|
5082
|
+
if (exp.children[3])
|
|
5083
|
+
insertReturn(exp.children[3][2]);
|
|
5084
|
+
return;
|
|
5085
|
+
case "SwitchStatement":
|
|
5086
|
+
insertReturn(exp.children[2]);
|
|
5087
|
+
return;
|
|
5088
|
+
case "TryStatement":
|
|
5089
|
+
insertReturn(exp.children[1]);
|
|
5090
|
+
insertReturn(exp.children[2][3]);
|
|
5091
|
+
return;
|
|
5092
|
+
}
|
|
5093
|
+
node.splice(1, 0, "return ");
|
|
5094
|
+
}
|
|
5095
|
+
module.addImplicitReturns = function(block) {
|
|
5096
|
+
if (hasReturnStatement(block))
|
|
5097
|
+
return block;
|
|
5098
|
+
insertReturn(block);
|
|
5099
|
+
return block;
|
|
5100
|
+
};
|
|
4741
5101
|
module.parsePosition = function() {
|
|
4742
5102
|
let s = Error().stack.split(/\n at /);
|
|
4743
5103
|
s.shift();
|
|
@@ -4745,6 +5105,25 @@ var Civet = (() => {
|
|
|
4745
5105
|
s = s.slice(1, s.indexOf("Program") + 1);
|
|
4746
5106
|
return s;
|
|
4747
5107
|
};
|
|
5108
|
+
module.prune = function(node) {
|
|
5109
|
+
if (node === null || node === void 0)
|
|
5110
|
+
return;
|
|
5111
|
+
if (node.length === 0)
|
|
5112
|
+
return;
|
|
5113
|
+
if (Array.isArray(node)) {
|
|
5114
|
+
const a = node.map((n) => module.prune(n)).filter((n) => !!n);
|
|
5115
|
+
if (a.length > 1)
|
|
5116
|
+
return a;
|
|
5117
|
+
if (a.length === 1)
|
|
5118
|
+
return a[0];
|
|
5119
|
+
return;
|
|
5120
|
+
}
|
|
5121
|
+
if (node.children != null) {
|
|
5122
|
+
node.children = module.prune(node.children);
|
|
5123
|
+
return node;
|
|
5124
|
+
}
|
|
5125
|
+
return node;
|
|
5126
|
+
};
|
|
4748
5127
|
module.insertTrimmingSpace = function(spacing, c) {
|
|
4749
5128
|
let target = spacing;
|
|
4750
5129
|
while (Array.isArray(target)) {
|
|
@@ -5014,7 +5393,7 @@ var Civet = (() => {
|
|
|
5014
5393
|
return;
|
|
5015
5394
|
}
|
|
5016
5395
|
if (node.children != null) {
|
|
5017
|
-
node.children = prune(node.children);
|
|
5396
|
+
node.children = prune(node.children) || [];
|
|
5018
5397
|
return node;
|
|
5019
5398
|
}
|
|
5020
5399
|
return node;
|