@danielx/civet 0.8.3 → 0.8.5
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/CHANGELOG.md +12 -0
- package/dist/browser.js +960 -517
- package/dist/civet +5 -8
- package/dist/config.js +1 -7182
- package/dist/config.mjs +1 -7205
- package/dist/main.js +960 -517
- package/dist/main.mjs +960 -517
- package/dist/types.d.ts +2 -2
- package/package.json +2 -2
package/dist/main.js
CHANGED
|
@@ -30,9 +30,9 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
|
|
|
30
30
|
));
|
|
31
31
|
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
32
32
|
|
|
33
|
-
// node_modules
|
|
33
|
+
// node_modules/@danielx/hera/dist/machine.js
|
|
34
34
|
var require_machine = __commonJS({
|
|
35
|
-
"node_modules
|
|
35
|
+
"node_modules/@danielx/hera/dist/machine.js"(exports2, module2) {
|
|
36
36
|
"use strict";
|
|
37
37
|
var __defProp2 = Object.defineProperty;
|
|
38
38
|
var __getOwnPropDesc2 = Object.getOwnPropertyDescriptor;
|
|
@@ -62,7 +62,7 @@ var require_machine = __commonJS({
|
|
|
62
62
|
$N: () => $N2,
|
|
63
63
|
$P: () => $P2,
|
|
64
64
|
$Q: () => $Q2,
|
|
65
|
-
$R: () => $
|
|
65
|
+
$R: () => $R101,
|
|
66
66
|
$R$0: () => $R$02,
|
|
67
67
|
$S: () => $S2,
|
|
68
68
|
$T: () => $T2,
|
|
@@ -99,7 +99,7 @@ var require_machine = __commonJS({
|
|
|
99
99
|
return;
|
|
100
100
|
};
|
|
101
101
|
}
|
|
102
|
-
function $
|
|
102
|
+
function $R101(regExp) {
|
|
103
103
|
return function(_ctx, state2) {
|
|
104
104
|
const { input, pos } = state2;
|
|
105
105
|
regExp.lastIndex = state2.pos;
|
|
@@ -563,6 +563,7 @@ __export(lib_exports, {
|
|
|
563
563
|
processForInOf: () => processForInOf,
|
|
564
564
|
processProgram: () => processProgram,
|
|
565
565
|
processProgramAsync: () => processProgramAsync,
|
|
566
|
+
processRangeExpression: () => processRangeExpression,
|
|
566
567
|
processTryBlock: () => processTryBlock,
|
|
567
568
|
processUnaryExpression: () => processUnaryExpression,
|
|
568
569
|
processUnaryNestedExpression: () => processUnaryNestedExpression,
|
|
@@ -591,6 +592,13 @@ var assert = {
|
|
|
591
592
|
if (a === b) {
|
|
592
593
|
throw new Error(`Assertion failed [${msg}]: ${a} === ${b}`);
|
|
593
594
|
}
|
|
595
|
+
},
|
|
596
|
+
notNull(a, msg) {
|
|
597
|
+
if (!(a != null)) {
|
|
598
|
+
throw new Error(`Assertion failed [${msg}]: got null`);
|
|
599
|
+
}
|
|
600
|
+
;
|
|
601
|
+
return;
|
|
594
602
|
}
|
|
595
603
|
};
|
|
596
604
|
function addParentPointers(node, parent) {
|
|
@@ -1050,6 +1058,9 @@ function makeLeftHandSideExpression(expression) {
|
|
|
1050
1058
|
expression = item;
|
|
1051
1059
|
}
|
|
1052
1060
|
if (isASTNodeObject(expression)) {
|
|
1061
|
+
if (expression.token) {
|
|
1062
|
+
return expression;
|
|
1063
|
+
}
|
|
1053
1064
|
if (expression.parenthesized) {
|
|
1054
1065
|
return expression;
|
|
1055
1066
|
}
|
|
@@ -1572,86 +1583,90 @@ function gatherBindingPatternTypeSuffix(pattern) {
|
|
|
1572
1583
|
let count = 0;
|
|
1573
1584
|
switch (pattern.type) {
|
|
1574
1585
|
case "ArrayBindingPattern": {
|
|
1575
|
-
|
|
1576
|
-
|
|
1577
|
-
|
|
1578
|
-
|
|
1579
|
-
|
|
1580
|
-
|
|
1581
|
-
|
|
1582
|
-
|
|
1583
|
-
|
|
1584
|
-
|
|
1585
|
-
|
|
1586
|
-
|
|
1586
|
+
{
|
|
1587
|
+
const results = [];
|
|
1588
|
+
for (let ref2 = pattern.elements, i2 = 0, len1 = ref2.length; i2 < len1; i2++) {
|
|
1589
|
+
const elem = ref2[i2];
|
|
1590
|
+
let { typeSuffix } = elem;
|
|
1591
|
+
typeSuffix ??= elem.binding?.typeSuffix;
|
|
1592
|
+
if (typeSuffix) {
|
|
1593
|
+
count++;
|
|
1594
|
+
}
|
|
1595
|
+
let typeElement = [typeSuffix?.t, elem.delim];
|
|
1596
|
+
if (typeSuffix?.optional) {
|
|
1597
|
+
typeElement[0] = parenthesizeType(typeElement[0]);
|
|
1598
|
+
typeElement.unshift("undefined |");
|
|
1599
|
+
}
|
|
1600
|
+
if (elem.type === "BindingRestElement") {
|
|
1601
|
+
typeElement[0] ??= "unknown[]";
|
|
1602
|
+
typeElement.unshift(elem.dots);
|
|
1603
|
+
} else {
|
|
1604
|
+
typeElement[0] ??= "unknown";
|
|
1605
|
+
}
|
|
1606
|
+
results.push(typeElement);
|
|
1587
1607
|
}
|
|
1588
|
-
|
|
1589
|
-
|
|
1590
|
-
|
|
1591
|
-
|
|
1592
|
-
|
|
1608
|
+
;
|
|
1609
|
+
const types = results;
|
|
1610
|
+
if (count) {
|
|
1611
|
+
const t = [": [", types, "]"];
|
|
1612
|
+
pattern.typeSuffix = {
|
|
1613
|
+
type: "TypeSuffix",
|
|
1614
|
+
ts: true,
|
|
1615
|
+
t,
|
|
1616
|
+
children: [t]
|
|
1617
|
+
};
|
|
1593
1618
|
}
|
|
1594
|
-
results.push(typeElement);
|
|
1595
|
-
}
|
|
1596
|
-
;
|
|
1597
|
-
const types = results;
|
|
1598
|
-
if (count) {
|
|
1599
|
-
const t = [": [", types, "]"];
|
|
1600
|
-
pattern.typeSuffix = {
|
|
1601
|
-
type: "TypeSuffix",
|
|
1602
|
-
ts: true,
|
|
1603
|
-
t,
|
|
1604
|
-
children: [t]
|
|
1605
|
-
};
|
|
1606
1619
|
}
|
|
1607
1620
|
;
|
|
1608
1621
|
break;
|
|
1609
1622
|
}
|
|
1610
1623
|
case "ObjectBindingPattern": {
|
|
1611
|
-
|
|
1612
|
-
|
|
1613
|
-
|
|
1614
|
-
|
|
1615
|
-
|
|
1616
|
-
|
|
1617
|
-
|
|
1618
|
-
|
|
1619
|
-
|
|
1620
|
-
typeSuffix ??= {
|
|
1621
|
-
type: "TypeSuffix",
|
|
1622
|
-
ts: true,
|
|
1623
|
-
children: [": unknown"]
|
|
1624
|
-
};
|
|
1625
|
-
switch (prop.type) {
|
|
1626
|
-
case "BindingProperty": {
|
|
1627
|
-
const ws = prop.children.slice(0, prop.children.indexOf(prop.name));
|
|
1628
|
-
results1.push([...ws, prop.name, typeSuffix, prop.delim]);
|
|
1629
|
-
break;
|
|
1630
|
-
}
|
|
1631
|
-
case "AtBindingProperty": {
|
|
1632
|
-
const ws = prop.children.slice(0, prop.children.indexOf(prop.binding));
|
|
1633
|
-
results1.push([...ws, prop.ref.id, typeSuffix, prop.delim]);
|
|
1634
|
-
break;
|
|
1624
|
+
{
|
|
1625
|
+
let restType;
|
|
1626
|
+
const results1 = [];
|
|
1627
|
+
for (let ref3 = pattern.properties, i3 = 0, len22 = ref3.length; i3 < len22; i3++) {
|
|
1628
|
+
const prop = ref3[i3];
|
|
1629
|
+
let { typeSuffix } = prop;
|
|
1630
|
+
typeSuffix ??= prop.value?.typeSuffix;
|
|
1631
|
+
if (typeSuffix) {
|
|
1632
|
+
count++;
|
|
1635
1633
|
}
|
|
1636
|
-
|
|
1637
|
-
|
|
1638
|
-
|
|
1634
|
+
typeSuffix ??= {
|
|
1635
|
+
type: "TypeSuffix",
|
|
1636
|
+
ts: true,
|
|
1637
|
+
children: [": unknown"]
|
|
1638
|
+
};
|
|
1639
|
+
switch (prop.type) {
|
|
1640
|
+
case "BindingProperty": {
|
|
1641
|
+
const ws = prop.children.slice(0, prop.children.indexOf(prop.name));
|
|
1642
|
+
results1.push([...ws, prop.name, typeSuffix, prop.delim]);
|
|
1643
|
+
break;
|
|
1644
|
+
}
|
|
1645
|
+
case "AtBindingProperty": {
|
|
1646
|
+
const ws = prop.children.slice(0, prop.children.indexOf(prop.binding));
|
|
1647
|
+
results1.push([...ws, prop.ref.id, typeSuffix, prop.delim]);
|
|
1648
|
+
break;
|
|
1649
|
+
}
|
|
1650
|
+
case "BindingRestProperty": {
|
|
1651
|
+
restType = prop.typeSuffix?.t;
|
|
1652
|
+
continue;
|
|
1653
|
+
}
|
|
1639
1654
|
}
|
|
1640
1655
|
}
|
|
1641
|
-
|
|
1642
|
-
|
|
1643
|
-
|
|
1644
|
-
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
|
|
1656
|
+
;
|
|
1657
|
+
const types = results1;
|
|
1658
|
+
if (count) {
|
|
1659
|
+
const t = ["{", types, "}"];
|
|
1660
|
+
if (restType != null) {
|
|
1661
|
+
t.push(" & ", parenthesizeType(trimFirstSpace(restType)));
|
|
1662
|
+
}
|
|
1663
|
+
pattern.typeSuffix = {
|
|
1664
|
+
type: "TypeSuffix",
|
|
1665
|
+
ts: true,
|
|
1666
|
+
t,
|
|
1667
|
+
children: [": ", t]
|
|
1668
|
+
};
|
|
1648
1669
|
}
|
|
1649
|
-
pattern.typeSuffix = {
|
|
1650
|
-
type: "TypeSuffix",
|
|
1651
|
-
ts: true,
|
|
1652
|
-
t,
|
|
1653
|
-
children: [": ", t]
|
|
1654
|
-
};
|
|
1655
1670
|
}
|
|
1656
1671
|
;
|
|
1657
1672
|
break;
|
|
@@ -1721,6 +1736,34 @@ var declareHelper = {
|
|
|
1721
1736
|
"\n"
|
|
1722
1737
|
]]);
|
|
1723
1738
|
},
|
|
1739
|
+
rslice(rsliceRef) {
|
|
1740
|
+
const RSliceable = makeRef("RSliceable");
|
|
1741
|
+
state.prelude.push(["", [
|
|
1742
|
+
ts(["type ", RSliceable, "<R> = string | {length: number; slice(start: number, end: number): {reverse(): R}}\n"]),
|
|
1743
|
+
preludeVar,
|
|
1744
|
+
rsliceRef,
|
|
1745
|
+
ts([": <R, T extends string | ", RSliceable, "<R>>(a: T, start?: number, end?: number) => T extends string ? string : T extends ", RSliceable, "<infer R> ? R : never"]),
|
|
1746
|
+
" = ((a, start, end) => {\n",
|
|
1747
|
+
" const l = a.length\n",
|
|
1748
|
+
" start = ",
|
|
1749
|
+
getHelperRef("modulo"),
|
|
1750
|
+
"(start ?? -1, l)\n",
|
|
1751
|
+
" end = ",
|
|
1752
|
+
getHelperRef("modulo"),
|
|
1753
|
+
"((end ?? -1) + 1, l)\n",
|
|
1754
|
+
" if (typeof a === 'string') {\n",
|
|
1755
|
+
` let r = ""
|
|
1756
|
+
`,
|
|
1757
|
+
" for (let i = start; i >= end; --i) r += a[i]\n",
|
|
1758
|
+
" return r",
|
|
1759
|
+
asAny,
|
|
1760
|
+
"\n",
|
|
1761
|
+
" } else {\n",
|
|
1762
|
+
" return a.slice(end, start + 1).reverse()\n",
|
|
1763
|
+
" }\n",
|
|
1764
|
+
"});\n"
|
|
1765
|
+
]]);
|
|
1766
|
+
},
|
|
1724
1767
|
div(divRef) {
|
|
1725
1768
|
state.prelude.push(["", [
|
|
1726
1769
|
// [indent, statement]
|
|
@@ -1847,6 +1890,9 @@ function getHelperRef(base) {
|
|
|
1847
1890
|
declareHelper[base](ref);
|
|
1848
1891
|
return state.helperRefs[base] = ref;
|
|
1849
1892
|
}
|
|
1893
|
+
function peekHelperRef(base) {
|
|
1894
|
+
return state.helperRefs[base];
|
|
1895
|
+
}
|
|
1850
1896
|
function extractPreludeFor(node) {
|
|
1851
1897
|
let helpers = new Set(Object.values(state.helperRefs));
|
|
1852
1898
|
helpers = new Set(gatherRecursive(node, helpers.has.bind(helpers)));
|
|
@@ -1890,6 +1936,9 @@ function gen(root, options) {
|
|
|
1890
1936
|
let ref;
|
|
1891
1937
|
if (ref = options.sourceMap) {
|
|
1892
1938
|
const sourceMap = ref;
|
|
1939
|
+
if (node.$loc != null) {
|
|
1940
|
+
sourceMap.updateSourceMap("", node.$loc.pos);
|
|
1941
|
+
}
|
|
1893
1942
|
line = sourceMap.data.srcLine + 1;
|
|
1894
1943
|
column = sourceMap.data.srcColumn + 1;
|
|
1895
1944
|
offset = sourceMap.data.srcOffset;
|
|
@@ -2514,7 +2563,7 @@ function assignResults(node, collect) {
|
|
|
2514
2563
|
case "IterationStatement":
|
|
2515
2564
|
case "DoStatement":
|
|
2516
2565
|
case "ComptimeStatement": {
|
|
2517
|
-
wrapIterationReturningResults(exp,
|
|
2566
|
+
wrapIterationReturningResults(exp, collect);
|
|
2518
2567
|
return;
|
|
2519
2568
|
}
|
|
2520
2569
|
case "BlockStatement": {
|
|
@@ -2554,7 +2603,7 @@ function assignResults(node, collect) {
|
|
|
2554
2603
|
}
|
|
2555
2604
|
node[1] = collect(node[1]);
|
|
2556
2605
|
}
|
|
2557
|
-
function insertReturn(node
|
|
2606
|
+
function insertReturn(node) {
|
|
2558
2607
|
if (!node)
|
|
2559
2608
|
return;
|
|
2560
2609
|
switch (node.type) {
|
|
@@ -2662,7 +2711,7 @@ function insertReturn(node, outerNode = node) {
|
|
|
2662
2711
|
case "IterationStatement":
|
|
2663
2712
|
case "DoStatement":
|
|
2664
2713
|
case "ComptimeStatement": {
|
|
2665
|
-
wrapIterationReturningResults(exp
|
|
2714
|
+
wrapIterationReturningResults(exp);
|
|
2666
2715
|
return;
|
|
2667
2716
|
}
|
|
2668
2717
|
case "BlockStatement": {
|
|
@@ -2758,11 +2807,11 @@ function processBreakContinueWith(statement) {
|
|
|
2758
2807
|
}
|
|
2759
2808
|
return changed;
|
|
2760
2809
|
}
|
|
2761
|
-
function wrapIterationReturningResults(statement,
|
|
2810
|
+
function wrapIterationReturningResults(statement, collect) {
|
|
2762
2811
|
if (statement.type === "DoStatement" || statement.type === "ComptimeStatement") {
|
|
2763
2812
|
let results;
|
|
2764
2813
|
if (statement.type === "ComptimeStatement") {
|
|
2765
|
-
insertReturn(statement.block
|
|
2814
|
+
insertReturn(statement.block);
|
|
2766
2815
|
const expression = expressionizeComptime(statement);
|
|
2767
2816
|
replaceNode(statement, expression);
|
|
2768
2817
|
const parent = expression.parent;
|
|
@@ -2778,7 +2827,7 @@ function wrapIterationReturningResults(statement, outer, collect) {
|
|
|
2778
2827
|
if (collect) {
|
|
2779
2828
|
assignResults(results, collect);
|
|
2780
2829
|
} else {
|
|
2781
|
-
insertReturn(results
|
|
2830
|
+
insertReturn(results);
|
|
2782
2831
|
}
|
|
2783
2832
|
return;
|
|
2784
2833
|
}
|
|
@@ -2788,6 +2837,27 @@ function wrapIterationReturningResults(statement, outer, collect) {
|
|
|
2788
2837
|
"wrapIterationReturningResults should not be called twice on the same statement"
|
|
2789
2838
|
);
|
|
2790
2839
|
const resultsRef = statement.resultsRef = makeRef("results");
|
|
2840
|
+
const { declaration, breakWithOnly } = iterationDeclaration(statement);
|
|
2841
|
+
const { ancestor, child } = findAncestor(statement, ($4) => $4.type === "BlockStatement");
|
|
2842
|
+
assert.notNull(ancestor, `Could not find block containing ${statement.type}`);
|
|
2843
|
+
const index = findChildIndex(ancestor.expressions, child);
|
|
2844
|
+
const iterationTuple = ancestor.expressions[index];
|
|
2845
|
+
ancestor.expressions.splice(index, 0, [iterationTuple[0], declaration, ";"]);
|
|
2846
|
+
iterationTuple[0] = "";
|
|
2847
|
+
braceBlock(ancestor);
|
|
2848
|
+
if (!breakWithOnly) {
|
|
2849
|
+
assignResults(statement.block, (node) => {
|
|
2850
|
+
return [resultsRef, ".push(", node, ")"];
|
|
2851
|
+
});
|
|
2852
|
+
}
|
|
2853
|
+
if (collect) {
|
|
2854
|
+
statement.children.push(collect(resultsRef));
|
|
2855
|
+
} else {
|
|
2856
|
+
statement.children.push(";return ", resultsRef, ";");
|
|
2857
|
+
}
|
|
2858
|
+
}
|
|
2859
|
+
function iterationDeclaration(statement) {
|
|
2860
|
+
const { resultsRef } = statement;
|
|
2791
2861
|
let decl = "const";
|
|
2792
2862
|
if (statement.type === "IterationStatement" || statement.type === "ForStatement") {
|
|
2793
2863
|
if (processBreakContinueWith(statement)) {
|
|
@@ -2813,17 +2883,7 @@ function wrapIterationReturningResults(statement, outer, collect) {
|
|
|
2813
2883
|
declaration.children.push(";", resultsRef, "=[]");
|
|
2814
2884
|
}
|
|
2815
2885
|
}
|
|
2816
|
-
|
|
2817
|
-
if (!breakWithOnly) {
|
|
2818
|
-
assignResults(statement.block, (node) => {
|
|
2819
|
-
return [resultsRef, ".push(", node, ")"];
|
|
2820
|
-
});
|
|
2821
|
-
}
|
|
2822
|
-
if (collect) {
|
|
2823
|
-
statement.children.push(collect(resultsRef));
|
|
2824
|
-
} else {
|
|
2825
|
-
statement.children.push(";return ", resultsRef, ";");
|
|
2826
|
-
}
|
|
2886
|
+
return { declaration, breakWithOnly };
|
|
2827
2887
|
}
|
|
2828
2888
|
function processParams(f) {
|
|
2829
2889
|
const { type, parameters, block } = f;
|
|
@@ -2848,9 +2908,9 @@ function processParams(f) {
|
|
|
2848
2908
|
injectParamProps: isConstructor
|
|
2849
2909
|
});
|
|
2850
2910
|
if (isConstructor) {
|
|
2851
|
-
const { ancestor } = findAncestor(f, ($
|
|
2911
|
+
const { ancestor } = findAncestor(f, ($5) => $5.type === "ClassExpression");
|
|
2852
2912
|
if (ancestor != null) {
|
|
2853
|
-
const fields = new Set(gatherRecursiveWithinFunction(ancestor, ($
|
|
2913
|
+
const fields = new Set(gatherRecursiveWithinFunction(ancestor, ($6) => $6.type === "FieldDefinition").map(($7) => $7.id).filter((a) => typeof a === "object" && a != null && "type" in a && a.type === "Identifier").map(($8) => $8.name));
|
|
2854
2914
|
const classExpressions = ancestor.body.expressions;
|
|
2855
2915
|
let index = findChildIndex(classExpressions, f);
|
|
2856
2916
|
assert.notEqual(index, -1, "Could not find constructor in class");
|
|
@@ -2859,12 +2919,12 @@ function processParams(f) {
|
|
|
2859
2919
|
index--;
|
|
2860
2920
|
}
|
|
2861
2921
|
const fStatement = classExpressions[index];
|
|
2862
|
-
for (let ref8 = gatherRecursive(parameters, ($
|
|
2922
|
+
for (let ref8 = gatherRecursive(parameters, ($9) => $9.type === "Parameter"), i1 = 0, len3 = ref8.length; i1 < len3; i1++) {
|
|
2863
2923
|
const parameter = ref8[i1];
|
|
2864
2924
|
if (!parameter.typeSuffix) {
|
|
2865
2925
|
continue;
|
|
2866
2926
|
}
|
|
2867
|
-
for (let ref9 = gatherRecursive(parameter, ($
|
|
2927
|
+
for (let ref9 = gatherRecursive(parameter, ($10) => $10.type === "AtBinding"), i2 = 0, len1 = ref9.length; i2 < len1; i2++) {
|
|
2868
2928
|
const binding = ref9[i2];
|
|
2869
2929
|
const typeSuffix = binding.parent?.typeSuffix;
|
|
2870
2930
|
if (!typeSuffix) {
|
|
@@ -2876,7 +2936,6 @@ function processParams(f) {
|
|
|
2876
2936
|
}
|
|
2877
2937
|
classExpressions.splice(index++, 0, [fStatement[0], {
|
|
2878
2938
|
type: "FieldDefinition",
|
|
2879
|
-
ts: true,
|
|
2880
2939
|
id,
|
|
2881
2940
|
typeSuffix,
|
|
2882
2941
|
children: [id, typeSuffix]
|
|
@@ -2925,8 +2984,8 @@ function processSignature(f) {
|
|
|
2925
2984
|
}
|
|
2926
2985
|
if (hasYield(block) && !f.generator?.length) {
|
|
2927
2986
|
if (f.type === "ArrowFunction") {
|
|
2928
|
-
gatherRecursiveWithinFunction(block, ($
|
|
2929
|
-
const i = y.children.findIndex(($
|
|
2987
|
+
gatherRecursiveWithinFunction(block, ($11) => $11.type === "YieldExpression").forEach((y) => {
|
|
2988
|
+
const i = y.children.findIndex(($12) => $12.type === "Yield");
|
|
2930
2989
|
return y.children.splice(i + 1, 0, {
|
|
2931
2990
|
type: "Error",
|
|
2932
2991
|
message: "Can't use yield inside of => arrow function"
|
|
@@ -2954,12 +3013,12 @@ function processFunctions(statements, config2) {
|
|
|
2954
3013
|
});
|
|
2955
3014
|
}
|
|
2956
3015
|
function expressionizeIteration(exp) {
|
|
2957
|
-
|
|
3016
|
+
let { async, generator, block, children, statement } = exp;
|
|
2958
3017
|
const i = children.indexOf(statement);
|
|
2959
3018
|
if (i < 0) {
|
|
2960
3019
|
throw new Error("Could not find iteration statement in iteration expression");
|
|
2961
3020
|
}
|
|
2962
|
-
if (
|
|
3021
|
+
if (statement.type === "DoStatement" || statement.type === "ComptimeStatement") {
|
|
2963
3022
|
children.splice(i, 1, wrapIIFE([["", statement, void 0]], async, generator));
|
|
2964
3023
|
updateParentPointers(exp);
|
|
2965
3024
|
return;
|
|
@@ -2972,7 +3031,6 @@ function expressionizeIteration(exp) {
|
|
|
2972
3031
|
children: ["yield ", node]
|
|
2973
3032
|
};
|
|
2974
3033
|
});
|
|
2975
|
-
braceBlock(block);
|
|
2976
3034
|
children.splice(
|
|
2977
3035
|
i,
|
|
2978
3036
|
1,
|
|
@@ -2987,17 +3045,19 @@ function expressionizeIteration(exp) {
|
|
|
2987
3045
|
], async, generator)
|
|
2988
3046
|
);
|
|
2989
3047
|
} else {
|
|
2990
|
-
|
|
2991
|
-
const {
|
|
2992
|
-
|
|
2993
|
-
|
|
2994
|
-
|
|
2995
|
-
|
|
3048
|
+
const resultsRef = statement.resultsRef ??= makeRef("results");
|
|
3049
|
+
const { declaration, breakWithOnly } = iterationDeclaration(statement);
|
|
3050
|
+
if (!breakWithOnly) {
|
|
3051
|
+
assignResults(block, (node) => {
|
|
3052
|
+
return [resultsRef, ".push(", node, ")"];
|
|
3053
|
+
});
|
|
3054
|
+
braceBlock(block);
|
|
3055
|
+
}
|
|
2996
3056
|
children.splice(
|
|
2997
3057
|
i,
|
|
2998
3058
|
1,
|
|
2999
3059
|
wrapIIFE([
|
|
3000
|
-
["",
|
|
3060
|
+
["", declaration, ";"],
|
|
3001
3061
|
["", statement, void 0],
|
|
3002
3062
|
["", wrapWithReturn(resultsRef)]
|
|
3003
3063
|
], async)
|
|
@@ -3053,7 +3113,7 @@ function processCoffeeDo(ws, expression) {
|
|
|
3053
3113
|
expression = {
|
|
3054
3114
|
...expression,
|
|
3055
3115
|
parameters: newParameters,
|
|
3056
|
-
children: expression.children.map(($
|
|
3116
|
+
children: expression.children.map(($13) => $13 === parameters ? newParameters : $13)
|
|
3057
3117
|
};
|
|
3058
3118
|
}
|
|
3059
3119
|
return {
|
|
@@ -3075,7 +3135,7 @@ function makeAmpersandFunction(rhs) {
|
|
|
3075
3135
|
ref = makeRef("$");
|
|
3076
3136
|
inplacePrepend(ref, body);
|
|
3077
3137
|
}
|
|
3078
|
-
if (startsWithPredicate(body, ($
|
|
3138
|
+
if (startsWithPredicate(body, ($14) => $14.type === "ObjectExpression")) {
|
|
3079
3139
|
body = makeLeftHandSideExpression(body);
|
|
3080
3140
|
}
|
|
3081
3141
|
const parameters = makeNode({
|
|
@@ -4180,8 +4240,7 @@ function prependStatementExpressionBlock(initializer, statement) {
|
|
|
4180
4240
|
};
|
|
4181
4241
|
pre.unshift(refDec);
|
|
4182
4242
|
} else {
|
|
4183
|
-
wrapIterationReturningResults(statement2,
|
|
4184
|
-
});
|
|
4243
|
+
wrapIterationReturningResults(statement2, () => void 0);
|
|
4185
4244
|
ref = initializer.expression = initializer.children[2] = statement2.resultsRef;
|
|
4186
4245
|
}
|
|
4187
4246
|
} else {
|
|
@@ -4937,22 +4996,168 @@ function processPipelineExpressions(statements) {
|
|
|
4937
4996
|
}
|
|
4938
4997
|
|
|
4939
4998
|
// source/parser/for.civet
|
|
4999
|
+
function processRangeExpression(start, ws1, range, end) {
|
|
5000
|
+
ws1 = [ws1, range.children[0]];
|
|
5001
|
+
const ws2 = range.children[1];
|
|
5002
|
+
const comma = { $loc: range.$loc, token: "," };
|
|
5003
|
+
let ref;
|
|
5004
|
+
switch (range.increasing) {
|
|
5005
|
+
case true: {
|
|
5006
|
+
ref = ($) => $;
|
|
5007
|
+
break;
|
|
5008
|
+
}
|
|
5009
|
+
case false: {
|
|
5010
|
+
ref = ($1) => -$1;
|
|
5011
|
+
break;
|
|
5012
|
+
}
|
|
5013
|
+
default: {
|
|
5014
|
+
ref = Math.abs;
|
|
5015
|
+
}
|
|
5016
|
+
}
|
|
5017
|
+
;
|
|
5018
|
+
const abs = ref;
|
|
5019
|
+
const lengthAdjust = 1 - Number(!range.left.inclusive) - Number(!range.right.inclusive);
|
|
5020
|
+
let ref1;
|
|
5021
|
+
if (lengthAdjust > 0)
|
|
5022
|
+
ref1 = ` + ${lengthAdjust}`;
|
|
5023
|
+
else if (lengthAdjust < 0)
|
|
5024
|
+
ref1 = ` - ${-lengthAdjust}`;
|
|
5025
|
+
else {
|
|
5026
|
+
ref1 = void 0;
|
|
5027
|
+
}
|
|
5028
|
+
;
|
|
5029
|
+
const lengthAdjustExpression = ref1;
|
|
5030
|
+
let children;
|
|
5031
|
+
if (typeof start === "object" && start != null && "type" in start && start.type === "Literal" && (typeof end === "object" && end != null && "type" in end && end.type === "Literal")) {
|
|
5032
|
+
let startValue = literalValue(start);
|
|
5033
|
+
let endValue = literalValue(end);
|
|
5034
|
+
if (typeof startValue === "string" && typeof endValue === "string") {
|
|
5035
|
+
if (!(startValue.length === 1 && 1 === endValue.length)) {
|
|
5036
|
+
throw new Error("String range start and end must be a single character");
|
|
5037
|
+
}
|
|
5038
|
+
let startCode = startValue.charCodeAt(0);
|
|
5039
|
+
let endCode = endValue.charCodeAt(0);
|
|
5040
|
+
const step = startCode <= endCode ? 1 : -1;
|
|
5041
|
+
const length = abs(endCode - startCode) + lengthAdjust;
|
|
5042
|
+
if (!range.left.inclusive) {
|
|
5043
|
+
startCode += step;
|
|
5044
|
+
}
|
|
5045
|
+
if (length <= 26) {
|
|
5046
|
+
children = [
|
|
5047
|
+
"[",
|
|
5048
|
+
Array.from({ length }, (_2, i) => {
|
|
5049
|
+
return JSON.stringify(String.fromCharCode(startCode + i * step));
|
|
5050
|
+
}).join(", "),
|
|
5051
|
+
"]"
|
|
5052
|
+
];
|
|
5053
|
+
} else {
|
|
5054
|
+
children = [
|
|
5055
|
+
`Array.from({length: ${length.toString()}}, `,
|
|
5056
|
+
"(_, i) => String.fromCharCode(",
|
|
5057
|
+
startCode.toString(),
|
|
5058
|
+
step > 0 ? " + " : " - ",
|
|
5059
|
+
"i))"
|
|
5060
|
+
];
|
|
5061
|
+
}
|
|
5062
|
+
if (range.error != null) {
|
|
5063
|
+
children.unshift(range.error);
|
|
5064
|
+
}
|
|
5065
|
+
} else if (typeof startValue === "number" && typeof endValue === "number") {
|
|
5066
|
+
const step = startValue <= endValue ? 1 : -1;
|
|
5067
|
+
const length = abs(endValue - startValue) + lengthAdjust;
|
|
5068
|
+
if (!range.left.inclusive) {
|
|
5069
|
+
startValue += step;
|
|
5070
|
+
}
|
|
5071
|
+
if (length <= 20) {
|
|
5072
|
+
children = [
|
|
5073
|
+
"[",
|
|
5074
|
+
Array.from({ length }, (_2, i) => startValue + i * step).join(", "),
|
|
5075
|
+
"]"
|
|
5076
|
+
];
|
|
5077
|
+
if (range.error != null) {
|
|
5078
|
+
children.unshift(range.error);
|
|
5079
|
+
}
|
|
5080
|
+
}
|
|
5081
|
+
}
|
|
5082
|
+
}
|
|
5083
|
+
if (!(children != null)) {
|
|
5084
|
+
if (range.increasing != null) {
|
|
5085
|
+
const sign = range.increasing ? "+" : "-";
|
|
5086
|
+
end = makeLeftHandSideExpression(end);
|
|
5087
|
+
children = [
|
|
5088
|
+
"((s) => Array.from({length: ",
|
|
5089
|
+
range.increasing ? [ws2, end, " - s"] : ["s - ", ws2, end],
|
|
5090
|
+
lengthAdjustExpression,
|
|
5091
|
+
"}, (_, i) => s ",
|
|
5092
|
+
sign,
|
|
5093
|
+
" i))",
|
|
5094
|
+
"(",
|
|
5095
|
+
range.left.inclusive ? start : [makeLeftHandSideExpression(start), ` ${sign} 1`],
|
|
5096
|
+
...ws1,
|
|
5097
|
+
")"
|
|
5098
|
+
];
|
|
5099
|
+
} else {
|
|
5100
|
+
children = [
|
|
5101
|
+
"((s, e) => {let step = e > s ? 1 : -1; return Array.from({length: Math.abs(e - s)",
|
|
5102
|
+
lengthAdjustExpression,
|
|
5103
|
+
"}, (_, i) => s + i * step)})",
|
|
5104
|
+
"(",
|
|
5105
|
+
start,
|
|
5106
|
+
...ws1,
|
|
5107
|
+
comma,
|
|
5108
|
+
ws2,
|
|
5109
|
+
end,
|
|
5110
|
+
")"
|
|
5111
|
+
];
|
|
5112
|
+
}
|
|
5113
|
+
}
|
|
5114
|
+
return {
|
|
5115
|
+
type: "RangeExpression",
|
|
5116
|
+
children,
|
|
5117
|
+
start,
|
|
5118
|
+
end,
|
|
5119
|
+
error: range.error,
|
|
5120
|
+
left: range.left,
|
|
5121
|
+
right: range.right,
|
|
5122
|
+
increasing: range.increasing
|
|
5123
|
+
};
|
|
5124
|
+
}
|
|
4940
5125
|
function forRange(open, forDeclaration, range, stepExp, close) {
|
|
4941
|
-
const { start, end,
|
|
5126
|
+
const { start, end, left, right, increasing } = range;
|
|
4942
5127
|
const counterRef = makeRef("i");
|
|
4943
|
-
const infinite = end.type === "Identifier" && end.name === "Infinity";
|
|
4944
|
-
let stepRef;
|
|
5128
|
+
const infinite = typeof end === "object" && end != null && "type" in end && end.type === "Identifier" && "name" in end && end.name === "Infinity";
|
|
5129
|
+
let stepRef, asc;
|
|
4945
5130
|
if (stepExp) {
|
|
4946
5131
|
stepExp = insertTrimmingSpace(stepExp, "");
|
|
4947
5132
|
stepRef = maybeRef(stepExp, "step");
|
|
4948
5133
|
} else if (infinite) {
|
|
4949
5134
|
stepExp = stepRef = "1";
|
|
5135
|
+
} else if (increasing != null) {
|
|
5136
|
+
if (increasing) {
|
|
5137
|
+
stepExp = stepRef = "1";
|
|
5138
|
+
asc = true;
|
|
5139
|
+
} else {
|
|
5140
|
+
stepExp = stepRef = "-1";
|
|
5141
|
+
asc = false;
|
|
5142
|
+
}
|
|
4950
5143
|
}
|
|
4951
|
-
let
|
|
5144
|
+
let ref2;
|
|
5145
|
+
if (stepRef)
|
|
5146
|
+
ref2 = start;
|
|
5147
|
+
else
|
|
5148
|
+
ref2 = maybeRef(start, "start");
|
|
5149
|
+
let startRef = ref2;
|
|
4952
5150
|
let endRef = maybeRef(end, "end");
|
|
4953
5151
|
const startRefDec = startRef !== start ? [startRef, " = ", start, ", "] : [];
|
|
4954
5152
|
const endRefDec = endRef !== end ? [endRef, " = ", end, ", "] : [];
|
|
4955
|
-
|
|
5153
|
+
if (!left.inclusive) {
|
|
5154
|
+
startRef = [
|
|
5155
|
+
makeLeftHandSideExpression(start),
|
|
5156
|
+
" + ",
|
|
5157
|
+
stepRef
|
|
5158
|
+
];
|
|
5159
|
+
}
|
|
5160
|
+
let ascDec = [], ascRef;
|
|
4956
5161
|
if (stepRef) {
|
|
4957
5162
|
if (!(stepRef === stepExp)) {
|
|
4958
5163
|
ascDec = [", ", stepRef, " = ", stepExp];
|
|
@@ -4987,12 +5192,12 @@ function forRange(open, forDeclaration, range, stepExp, close) {
|
|
|
4987
5192
|
children: ["let ", ...startRefDec, ...endRefDec, counterRef, " = ", ...varLetAssign, startRef, ...varLet, ...ascDec],
|
|
4988
5193
|
names: forDeclaration?.names
|
|
4989
5194
|
};
|
|
4990
|
-
const counterPart = inclusive ? [counterRef, " <= ", endRef, " : ", counterRef, " >= ", endRef] : [counterRef, " < ", endRef, " : ", counterRef, " > ", endRef];
|
|
4991
|
-
const condition = infinite ? [] : stepRef ? [stepRef, " !== 0 && (", stepRef, " > 0 ? ", ...counterPart, ")"] :
|
|
4992
|
-
const increment =
|
|
5195
|
+
const counterPart = right.inclusive ? [counterRef, " <= ", endRef, " : ", counterRef, " >= ", endRef] : [counterRef, " < ", endRef, " : ", counterRef, " > ", endRef];
|
|
5196
|
+
const condition = infinite ? [] : asc != null ? asc ? counterPart.slice(0, 3) : counterPart.slice(4) : stepRef ? [stepRef, " !== 0 && (", stepRef, " > 0 ? ", ...counterPart, ")"] : [ascRef, " ? ", ...counterPart];
|
|
5197
|
+
const increment = stepRef === "1" ? [...varAssign, "++", counterRef] : stepRef === "-1" ? [...varAssign, "--", counterRef] : stepRef ? [...varAssign, counterRef, " += ", stepRef] : ascRef ? [...varAssign, ascRef, " ? ++", counterRef, " : --", counterRef] : [...varAssign, asc ? "++" : "--", counterRef];
|
|
4993
5198
|
return {
|
|
4994
5199
|
declaration,
|
|
4995
|
-
children: [open, declaration, "; ", ...condition, "; ", ...increment, close],
|
|
5200
|
+
children: [range.error, open, declaration, "; ", ...condition, "; ", ...increment, close],
|
|
4996
5201
|
blockPrefix
|
|
4997
5202
|
};
|
|
4998
5203
|
}
|
|
@@ -5634,7 +5839,131 @@ function handleThisPrivateShorthands(value) {
|
|
|
5634
5839
|
return [value, value.thisShorthand];
|
|
5635
5840
|
}
|
|
5636
5841
|
function processTryBlock($0) {
|
|
5637
|
-
let [t, , b,
|
|
5842
|
+
let [t, , b, cs, e, f] = $0;
|
|
5843
|
+
let c;
|
|
5844
|
+
let m;
|
|
5845
|
+
if (cs.some(($) => (m = $.binding?.parameter, typeof m === "object" && m != null && "type" in m && m.type === "CatchPattern"))) {
|
|
5846
|
+
const ref = makeRef("e");
|
|
5847
|
+
const binding = {
|
|
5848
|
+
type: "CatchBinding",
|
|
5849
|
+
children: ["(", ref, ")"],
|
|
5850
|
+
parameter: ref
|
|
5851
|
+
};
|
|
5852
|
+
const condition = {
|
|
5853
|
+
type: "ParenthesizedExpression",
|
|
5854
|
+
children: ["(", ref, ")"],
|
|
5855
|
+
expression: ref
|
|
5856
|
+
};
|
|
5857
|
+
let defaultClause = false;
|
|
5858
|
+
const clauses = cs.map((clause) => {
|
|
5859
|
+
let ref1;
|
|
5860
|
+
if ((ref1 = clause.binding?.parameter) && typeof ref1 === "object" && "type" in ref1 && ref1.type === "CatchPattern" && "patterns" in ref1) {
|
|
5861
|
+
const { type, patterns } = ref1;
|
|
5862
|
+
return {
|
|
5863
|
+
type: "PatternClause",
|
|
5864
|
+
patterns,
|
|
5865
|
+
block: clause.block,
|
|
5866
|
+
children: [patterns, clause.block]
|
|
5867
|
+
};
|
|
5868
|
+
} else {
|
|
5869
|
+
defaultClause = true;
|
|
5870
|
+
const parameter = clause.binding?.parameter;
|
|
5871
|
+
if (parameter != null) {
|
|
5872
|
+
assert.equal(
|
|
5873
|
+
parameter.type,
|
|
5874
|
+
"CatchParameter",
|
|
5875
|
+
`Invalid catch parameter ${parameter.type}`
|
|
5876
|
+
);
|
|
5877
|
+
const { binding: pattern, typeSuffix } = parameter;
|
|
5878
|
+
const initializer = {
|
|
5879
|
+
type: "Initializer",
|
|
5880
|
+
expression: ref,
|
|
5881
|
+
children: ["", " = ", ref]
|
|
5882
|
+
};
|
|
5883
|
+
const bindings = [{
|
|
5884
|
+
type: "Binding",
|
|
5885
|
+
names: pattern.names,
|
|
5886
|
+
pattern,
|
|
5887
|
+
typeSuffix,
|
|
5888
|
+
initializer,
|
|
5889
|
+
children: [pattern, typeSuffix, initializer],
|
|
5890
|
+
splices: [],
|
|
5891
|
+
thisAssignments: []
|
|
5892
|
+
}];
|
|
5893
|
+
clause.block.expressions.unshift(["", {
|
|
5894
|
+
type: "Declaration",
|
|
5895
|
+
children: ["let", " ", bindings],
|
|
5896
|
+
bindings,
|
|
5897
|
+
names: bindings[0].names,
|
|
5898
|
+
decl: "let"
|
|
5899
|
+
}, ";"]);
|
|
5900
|
+
}
|
|
5901
|
+
return {
|
|
5902
|
+
type: "DefaultClause",
|
|
5903
|
+
block: clause.block,
|
|
5904
|
+
children: ["default: ", clause.block]
|
|
5905
|
+
};
|
|
5906
|
+
}
|
|
5907
|
+
});
|
|
5908
|
+
if (!defaultClause) {
|
|
5909
|
+
const expressions = [[
|
|
5910
|
+
"",
|
|
5911
|
+
{
|
|
5912
|
+
type: "ThrowStatement",
|
|
5913
|
+
children: ["throw", " ", ref]
|
|
5914
|
+
}
|
|
5915
|
+
]];
|
|
5916
|
+
const block2 = {
|
|
5917
|
+
type: "BlockStatement",
|
|
5918
|
+
expressions,
|
|
5919
|
+
children: [" {", expressions, "}"],
|
|
5920
|
+
bare: false
|
|
5921
|
+
};
|
|
5922
|
+
clauses.push({
|
|
5923
|
+
type: "DefaultClause",
|
|
5924
|
+
block: block2,
|
|
5925
|
+
children: ["default: ", block2]
|
|
5926
|
+
});
|
|
5927
|
+
}
|
|
5928
|
+
const caseBlock = {
|
|
5929
|
+
type: "CaseBlock",
|
|
5930
|
+
clauses,
|
|
5931
|
+
children: [" {", clauses, "}"]
|
|
5932
|
+
};
|
|
5933
|
+
const patternSwitch = {
|
|
5934
|
+
type: "SwitchStatement",
|
|
5935
|
+
condition,
|
|
5936
|
+
caseBlock,
|
|
5937
|
+
children: ["switch", condition, caseBlock]
|
|
5938
|
+
};
|
|
5939
|
+
const block = {
|
|
5940
|
+
type: "BlockStatement",
|
|
5941
|
+
bare: false,
|
|
5942
|
+
expressions: [["", patternSwitch]],
|
|
5943
|
+
children: [" {", patternSwitch, "}"]
|
|
5944
|
+
};
|
|
5945
|
+
c = makeNode({
|
|
5946
|
+
type: "CatchClause",
|
|
5947
|
+
children: [
|
|
5948
|
+
cs[0].children[0],
|
|
5949
|
+
// whitespace
|
|
5950
|
+
cs[0].children[1],
|
|
5951
|
+
// catch token
|
|
5952
|
+
binding,
|
|
5953
|
+
block
|
|
5954
|
+
],
|
|
5955
|
+
binding,
|
|
5956
|
+
block
|
|
5957
|
+
});
|
|
5958
|
+
} else {
|
|
5959
|
+
c = cs[0];
|
|
5960
|
+
if (cs.length > 1) {
|
|
5961
|
+
c = append(c, {
|
|
5962
|
+
type: "Error",
|
|
5963
|
+
message: "Only one catch clause allowed unless using pattern matching"
|
|
5964
|
+
});
|
|
5965
|
+
}
|
|
5966
|
+
}
|
|
5638
5967
|
if (!c && (e || !f)) {
|
|
5639
5968
|
const emptyCatchBlock = makeEmptyBlock();
|
|
5640
5969
|
c = {
|
|
@@ -5733,8 +6062,9 @@ function processCallMemberExpression(node) {
|
|
|
5733
6062
|
}
|
|
5734
6063
|
}
|
|
5735
6064
|
}
|
|
5736
|
-
for (let
|
|
5737
|
-
const
|
|
6065
|
+
for (let i3 = 0, len22 = children.length; i3 < len22; i3++) {
|
|
6066
|
+
const i = i3;
|
|
6067
|
+
const glob = children[i3];
|
|
5738
6068
|
if (glob?.type === "PropertyGlob") {
|
|
5739
6069
|
let prefix = children.slice(0, i);
|
|
5740
6070
|
const parts = [];
|
|
@@ -5805,14 +6135,14 @@ function processCallMemberExpression(node) {
|
|
|
5805
6135
|
});
|
|
5806
6136
|
}
|
|
5807
6137
|
}
|
|
5808
|
-
let
|
|
6138
|
+
let ref2;
|
|
5809
6139
|
let object = {
|
|
5810
6140
|
type: "ObjectExpression",
|
|
5811
6141
|
children: [
|
|
5812
6142
|
glob.object.children[0],
|
|
5813
6143
|
// {
|
|
5814
6144
|
...parts,
|
|
5815
|
-
(
|
|
6145
|
+
(ref2 = glob.object.children)[ref2.length - 1]
|
|
5816
6146
|
// whitespace and }
|
|
5817
6147
|
],
|
|
5818
6148
|
properties: parts,
|
|
@@ -5854,6 +6184,33 @@ function processCallMemberExpression(node) {
|
|
|
5854
6184
|
...children.slice(i + 1)
|
|
5855
6185
|
]
|
|
5856
6186
|
});
|
|
6187
|
+
} else if (typeof glob === "object" && glob != null && "type" in glob && glob.type === "SliceExpression" && "reversed" in glob && glob.reversed === true) {
|
|
6188
|
+
const args = [
|
|
6189
|
+
{ ...node, children: node.children.slice(0, i) },
|
|
6190
|
+
{ ...glob.children[0], token: ", " },
|
|
6191
|
+
...glob.children.slice(1, -1)
|
|
6192
|
+
];
|
|
6193
|
+
let ref3;
|
|
6194
|
+
return makeNode({
|
|
6195
|
+
...node,
|
|
6196
|
+
children: [
|
|
6197
|
+
{
|
|
6198
|
+
type: "CallExpression",
|
|
6199
|
+
children: [
|
|
6200
|
+
getHelperRef("rslice"),
|
|
6201
|
+
makeNode({
|
|
6202
|
+
type: "Call",
|
|
6203
|
+
args,
|
|
6204
|
+
children: [
|
|
6205
|
+
"(",
|
|
6206
|
+
args,
|
|
6207
|
+
(ref3 = glob.children)[ref3.length - 1]
|
|
6208
|
+
]
|
|
6209
|
+
})
|
|
6210
|
+
]
|
|
6211
|
+
}
|
|
6212
|
+
]
|
|
6213
|
+
});
|
|
5857
6214
|
}
|
|
5858
6215
|
}
|
|
5859
6216
|
return node;
|
|
@@ -5864,9 +6221,9 @@ function replaceNode(node, newNode, parent) {
|
|
|
5864
6221
|
throw new Error("replaceNode failed: node has no parent");
|
|
5865
6222
|
}
|
|
5866
6223
|
function recurse(children) {
|
|
5867
|
-
for (let
|
|
5868
|
-
const i =
|
|
5869
|
-
const child = children[
|
|
6224
|
+
for (let i4 = 0, len3 = children.length; i4 < len3; i4++) {
|
|
6225
|
+
const i = i4;
|
|
6226
|
+
const child = children[i4];
|
|
5870
6227
|
if (child === node) {
|
|
5871
6228
|
children[i] = newNode;
|
|
5872
6229
|
return true;
|
|
@@ -5958,8 +6315,8 @@ function convertNamedImportsToObject(node, pattern) {
|
|
|
5958
6315
|
return { type: "Error", message: "cannot use `type` in dynamic import" };
|
|
5959
6316
|
} else {
|
|
5960
6317
|
const { source, binding } = specifier;
|
|
5961
|
-
let
|
|
5962
|
-
const delim = (
|
|
6318
|
+
let ref4;
|
|
6319
|
+
const delim = (ref4 = specifier.children)[ref4.length - 1];
|
|
5963
6320
|
return {
|
|
5964
6321
|
type: pattern ? "BindingProperty" : "Property",
|
|
5965
6322
|
name: source,
|
|
@@ -5969,7 +6326,7 @@ function convertNamedImportsToObject(node, pattern) {
|
|
|
5969
6326
|
};
|
|
5970
6327
|
}
|
|
5971
6328
|
});
|
|
5972
|
-
let
|
|
6329
|
+
let ref5;
|
|
5973
6330
|
return {
|
|
5974
6331
|
type: pattern ? "ObjectBindingPattern" : "ObjectExpression",
|
|
5975
6332
|
names: node.names,
|
|
@@ -5978,7 +6335,7 @@ function convertNamedImportsToObject(node, pattern) {
|
|
|
5978
6335
|
node.children[0],
|
|
5979
6336
|
// {
|
|
5980
6337
|
properties,
|
|
5981
|
-
(
|
|
6338
|
+
(ref5 = node.children)[ref5.length - 1]
|
|
5982
6339
|
// }
|
|
5983
6340
|
]
|
|
5984
6341
|
};
|
|
@@ -6084,8 +6441,8 @@ function processAssignments(statements) {
|
|
|
6084
6441
|
while (expr.type === "ParenthesizedExpression") {
|
|
6085
6442
|
expr = expr.expression;
|
|
6086
6443
|
}
|
|
6087
|
-
let
|
|
6088
|
-
if (
|
|
6444
|
+
let m1;
|
|
6445
|
+
if (m1 = expr.type, m1 === "AssignmentExpression" || m1 === "UpdateExpression") {
|
|
6089
6446
|
if (expr.type === "UpdateExpression" && expr.children[0] === expr.assigned) {
|
|
6090
6447
|
pre.push("(");
|
|
6091
6448
|
post.push([", ", lhs, ")"]);
|
|
@@ -6099,15 +6456,15 @@ function processAssignments(statements) {
|
|
|
6099
6456
|
return;
|
|
6100
6457
|
}
|
|
6101
6458
|
const pre = [], post = [];
|
|
6102
|
-
let
|
|
6459
|
+
let ref6;
|
|
6103
6460
|
switch (exp.type) {
|
|
6104
6461
|
case "AssignmentExpression": {
|
|
6105
6462
|
if (!exp.lhs)
|
|
6106
6463
|
return;
|
|
6107
6464
|
exp.lhs.forEach((lhsPart, i) => {
|
|
6108
|
-
let
|
|
6109
|
-
if (
|
|
6110
|
-
const newLhs =
|
|
6465
|
+
let ref7;
|
|
6466
|
+
if (ref7 = extractAssignment(lhsPart[1])) {
|
|
6467
|
+
const newLhs = ref7;
|
|
6111
6468
|
return lhsPart[1] = newLhs;
|
|
6112
6469
|
}
|
|
6113
6470
|
;
|
|
@@ -6116,8 +6473,8 @@ function processAssignments(statements) {
|
|
|
6116
6473
|
break;
|
|
6117
6474
|
}
|
|
6118
6475
|
case "UpdateExpression": {
|
|
6119
|
-
if (
|
|
6120
|
-
const newLhs =
|
|
6476
|
+
if (ref6 = extractAssignment(exp.assigned)) {
|
|
6477
|
+
const newLhs = ref6;
|
|
6121
6478
|
const i = exp.children.indexOf(exp.assigned);
|
|
6122
6479
|
exp.assigned = exp.children[i] = newLhs;
|
|
6123
6480
|
}
|
|
@@ -6133,7 +6490,7 @@ function processAssignments(statements) {
|
|
|
6133
6490
|
const { assigned } = exp;
|
|
6134
6491
|
const ref = makeRef();
|
|
6135
6492
|
const newMemberExp = unchainOptionalMemberExpression(assigned, ref, (children) => {
|
|
6136
|
-
return exp.children.map(($) => $ === assigned ? children : $);
|
|
6493
|
+
return exp.children.map(($3) => $3 === assigned ? children : $3);
|
|
6137
6494
|
});
|
|
6138
6495
|
if (newMemberExp !== assigned) {
|
|
6139
6496
|
if (newMemberExp.usesRef) {
|
|
@@ -6157,23 +6514,23 @@ function processAssignments(statements) {
|
|
|
6157
6514
|
(exp) => {
|
|
6158
6515
|
let { lhs: $1, expression: $2 } = exp, tail = [], len3 = $1.length;
|
|
6159
6516
|
let block;
|
|
6160
|
-
let
|
|
6161
|
-
if (exp.parent?.type === "BlockStatement" && !(
|
|
6517
|
+
let ref8;
|
|
6518
|
+
if (exp.parent?.type === "BlockStatement" && !(ref8 = $1[$1.length - 1])?.[ref8.length - 1]?.special) {
|
|
6162
6519
|
block = makeBlockFragment();
|
|
6163
|
-
let
|
|
6164
|
-
if (
|
|
6520
|
+
let ref9;
|
|
6521
|
+
if (ref9 = prependStatementExpressionBlock(
|
|
6165
6522
|
{ type: "Initializer", expression: $2, children: [void 0, void 0, $2] },
|
|
6166
6523
|
block
|
|
6167
6524
|
)) {
|
|
6168
|
-
const ref =
|
|
6169
|
-
exp.children = exp.children.map(($
|
|
6525
|
+
const ref = ref9;
|
|
6526
|
+
exp.children = exp.children.map(($4) => $4 === $2 ? ref : $4);
|
|
6170
6527
|
$2 = ref;
|
|
6171
6528
|
} else {
|
|
6172
6529
|
block = void 0;
|
|
6173
6530
|
}
|
|
6174
6531
|
}
|
|
6175
|
-
let
|
|
6176
|
-
if ($1.some(($
|
|
6532
|
+
let ref10;
|
|
6533
|
+
if ($1.some(($5) => (ref10 = $5)[ref10.length - 1].special)) {
|
|
6177
6534
|
if ($1.length !== 1)
|
|
6178
6535
|
throw new Error("Only one assignment with id= is allowed");
|
|
6179
6536
|
const [, lhs, , op] = $1[0];
|
|
@@ -6198,8 +6555,8 @@ function processAssignments(statements) {
|
|
|
6198
6555
|
if (!(op.token === "=")) {
|
|
6199
6556
|
continue;
|
|
6200
6557
|
}
|
|
6201
|
-
let
|
|
6202
|
-
if (
|
|
6558
|
+
let m2;
|
|
6559
|
+
if (m2 = lhs.type, m2 === "ObjectExpression" || m2 === "ObjectBindingPattern") {
|
|
6203
6560
|
if (!wrapped) {
|
|
6204
6561
|
wrapped = true;
|
|
6205
6562
|
lhs.children.splice(0, 0, "(");
|
|
@@ -6213,10 +6570,17 @@ function processAssignments(statements) {
|
|
|
6213
6570
|
const lastAssignment = $1[i];
|
|
6214
6571
|
if (lastAssignment[3].token === "=") {
|
|
6215
6572
|
const lhs = lastAssignment[1];
|
|
6216
|
-
let
|
|
6573
|
+
let m3;
|
|
6217
6574
|
if (lhs.type === "MemberExpression") {
|
|
6218
6575
|
const members = lhs.children;
|
|
6219
6576
|
const lastMember = members[members.length - 1];
|
|
6577
|
+
if (typeof lastMember === "object" && lastMember != null && "type" in lastMember && lastMember.type === "CallExpression" && "children" in lastMember && Array.isArray(lastMember.children) && lastMember.children.length >= 1 && lastMember.children[0] === peekHelperRef("rslice")) {
|
|
6578
|
+
lastMember.children.push({
|
|
6579
|
+
type: "Error",
|
|
6580
|
+
message: "Slice range cannot be decreasing in assignment"
|
|
6581
|
+
});
|
|
6582
|
+
break;
|
|
6583
|
+
}
|
|
6220
6584
|
if (lastMember.type === "SliceExpression") {
|
|
6221
6585
|
const { start, end, children: c } = lastMember;
|
|
6222
6586
|
c[0].token = ".splice(";
|
|
@@ -6239,9 +6603,9 @@ function processAssignments(statements) {
|
|
|
6239
6603
|
exp.names = [];
|
|
6240
6604
|
break;
|
|
6241
6605
|
}
|
|
6242
|
-
} else if (
|
|
6606
|
+
} else if (m3 = lhs.type, m3 === "ObjectBindingPattern" || m3 === "ArrayBindingPattern") {
|
|
6243
6607
|
processBindingPatternLHS(lhs, tail);
|
|
6244
|
-
gatherRecursiveAll(lhs, ($
|
|
6608
|
+
gatherRecursiveAll(lhs, ($6) => $6.type === "Ref").forEach(refsToDeclare.add.bind(refsToDeclare));
|
|
6245
6609
|
}
|
|
6246
6610
|
}
|
|
6247
6611
|
i--;
|
|
@@ -6274,7 +6638,7 @@ function processAssignments(statements) {
|
|
|
6274
6638
|
}
|
|
6275
6639
|
if (refsToDeclare.size) {
|
|
6276
6640
|
if (exp.hoistDec) {
|
|
6277
|
-
exp.hoistDec.children.push([...refsToDeclare].map(($
|
|
6641
|
+
exp.hoistDec.children.push([...refsToDeclare].map(($7) => [",", $7]));
|
|
6278
6642
|
} else {
|
|
6279
6643
|
exp.hoistDec = {
|
|
6280
6644
|
type: "Declaration",
|
|
@@ -6348,9 +6712,9 @@ function unchainOptionalMemberExpression(exp, ref, innerExp) {
|
|
|
6348
6712
|
}
|
|
6349
6713
|
j++;
|
|
6350
6714
|
}
|
|
6351
|
-
let
|
|
6352
|
-
if (
|
|
6353
|
-
const l =
|
|
6715
|
+
let ref11;
|
|
6716
|
+
if (ref11 = conditions.length) {
|
|
6717
|
+
const l = ref11;
|
|
6354
6718
|
const cs = flatJoin(conditions, " && ");
|
|
6355
6719
|
return {
|
|
6356
6720
|
...exp,
|
|
@@ -6389,27 +6753,27 @@ function processTypes(node) {
|
|
|
6389
6753
|
if (!unary.suffix.length) {
|
|
6390
6754
|
return;
|
|
6391
6755
|
}
|
|
6392
|
-
let
|
|
6393
|
-
let
|
|
6394
|
-
if (
|
|
6395
|
-
const { token } =
|
|
6756
|
+
let ref12;
|
|
6757
|
+
let m4;
|
|
6758
|
+
if (m4 = (ref12 = unary.suffix)[ref12.length - 1], typeof m4 === "object" && m4 != null && "token" in m4 && m4.token === "?") {
|
|
6759
|
+
const { token } = m4;
|
|
6396
6760
|
let last;
|
|
6397
6761
|
let count = 0;
|
|
6398
|
-
let
|
|
6399
|
-
while (unary.suffix.length && (
|
|
6762
|
+
let ref13;
|
|
6763
|
+
while (unary.suffix.length && (ref13 = unary.suffix)[ref13.length - 1]?.token === "?") {
|
|
6400
6764
|
last = unary.suffix.pop();
|
|
6401
6765
|
count++;
|
|
6402
6766
|
}
|
|
6403
|
-
let
|
|
6404
|
-
while (unary.suffix.length && (
|
|
6767
|
+
let ref14;
|
|
6768
|
+
while (unary.suffix.length && (ref14 = unary.suffix)[ref14.length - 1]?.type === "NonNullAssertion") {
|
|
6405
6769
|
unary.suffix.pop();
|
|
6406
6770
|
}
|
|
6407
|
-
let
|
|
6771
|
+
let ref15;
|
|
6408
6772
|
if (unary.suffix.length || unary.prefix.length)
|
|
6409
|
-
|
|
6773
|
+
ref15 = unary;
|
|
6410
6774
|
else
|
|
6411
|
-
|
|
6412
|
-
const t =
|
|
6775
|
+
ref15 = unary.t;
|
|
6776
|
+
const t = ref15;
|
|
6413
6777
|
if (unary.parent?.type === "TypeTuple") {
|
|
6414
6778
|
if (count === 1) {
|
|
6415
6779
|
unary.suffix.push(last);
|
|
@@ -6435,14 +6799,14 @@ function processTypes(node) {
|
|
|
6435
6799
|
]
|
|
6436
6800
|
});
|
|
6437
6801
|
}
|
|
6438
|
-
} else if (typeof
|
|
6439
|
-
const { type } =
|
|
6440
|
-
let
|
|
6441
|
-
while (unary.suffix.length && (
|
|
6802
|
+
} else if (typeof m4 === "object" && m4 != null && "type" in m4 && m4.type === "NonNullAssertion") {
|
|
6803
|
+
const { type } = m4;
|
|
6804
|
+
let ref16;
|
|
6805
|
+
while (unary.suffix.length && (ref16 = unary.suffix)[ref16.length - 1]?.type === "NonNullAssertion") {
|
|
6442
6806
|
unary.suffix.pop();
|
|
6443
6807
|
}
|
|
6444
|
-
let
|
|
6445
|
-
while (unary.suffix.length && (
|
|
6808
|
+
let ref17;
|
|
6809
|
+
while (unary.suffix.length && (ref17 = unary.suffix)[ref17.length - 1]?.token === "?") {
|
|
6446
6810
|
unary.suffix.pop();
|
|
6447
6811
|
}
|
|
6448
6812
|
const t = trimFirstSpace(
|
|
@@ -6468,14 +6832,14 @@ function processTypes(node) {
|
|
|
6468
6832
|
});
|
|
6469
6833
|
}
|
|
6470
6834
|
function processStatementExpressions(statements) {
|
|
6471
|
-
gatherRecursiveAll(statements, ($
|
|
6835
|
+
gatherRecursiveAll(statements, ($8) => $8.type === "StatementExpression").forEach((_exp) => {
|
|
6472
6836
|
const exp = _exp;
|
|
6473
6837
|
const { statement } = exp;
|
|
6474
|
-
let
|
|
6838
|
+
let ref18;
|
|
6475
6839
|
switch (statement.type) {
|
|
6476
6840
|
case "IfStatement": {
|
|
6477
|
-
if (
|
|
6478
|
-
const expression =
|
|
6841
|
+
if (ref18 = expressionizeIfStatement(statement)) {
|
|
6842
|
+
const expression = ref18;
|
|
6479
6843
|
return replaceNode(statement, expression, exp);
|
|
6480
6844
|
} else {
|
|
6481
6845
|
return replaceNode(statement, wrapIIFE([["", statement]]), exp);
|
|
@@ -6544,7 +6908,7 @@ function processProgram(root) {
|
|
|
6544
6908
|
if (config2.iife || config2.repl) {
|
|
6545
6909
|
rootIIFE = wrapIIFE(root.expressions, root.topLevelAwait);
|
|
6546
6910
|
const newExpressions = [["", rootIIFE]];
|
|
6547
|
-
root.children = root.children.map(($
|
|
6911
|
+
root.children = root.children.map(($9) => $9 === root.expressions ? newExpressions : $9);
|
|
6548
6912
|
root.expressions = newExpressions;
|
|
6549
6913
|
}
|
|
6550
6914
|
addParentPointers(root);
|
|
@@ -6584,17 +6948,17 @@ async function processProgramAsync(root) {
|
|
|
6584
6948
|
await processComptime(statements);
|
|
6585
6949
|
}
|
|
6586
6950
|
function processRepl(root, rootIIFE) {
|
|
6587
|
-
const topBlock = gatherRecursive(rootIIFE, ($
|
|
6951
|
+
const topBlock = gatherRecursive(rootIIFE, ($10) => $10.type === "BlockStatement")[0];
|
|
6588
6952
|
let i = 0;
|
|
6589
|
-
for (let
|
|
6590
|
-
const decl =
|
|
6953
|
+
for (let ref19 = gatherRecursiveWithinFunction(topBlock, ($11) => $11.type === "Declaration"), i5 = 0, len4 = ref19.length; i5 < len4; i5++) {
|
|
6954
|
+
const decl = ref19[i5];
|
|
6591
6955
|
if (decl.parent === topBlock || decl.decl === "var") {
|
|
6592
6956
|
decl.children.shift();
|
|
6593
6957
|
root.expressions.splice(i++, 0, ["", `var ${decl.names.join(",")};`]);
|
|
6594
6958
|
}
|
|
6595
6959
|
}
|
|
6596
|
-
for (let
|
|
6597
|
-
const func =
|
|
6960
|
+
for (let ref20 = gatherRecursive(topBlock, ($12) => $12.type === "FunctionExpression"), i6 = 0, len5 = ref20.length; i6 < len5; i6++) {
|
|
6961
|
+
const func = ref20[i6];
|
|
6598
6962
|
if (func.name && func.parent?.type === "BlockStatement") {
|
|
6599
6963
|
if (func.parent === topBlock) {
|
|
6600
6964
|
replaceNode(func, void 0);
|
|
@@ -6606,17 +6970,17 @@ function processRepl(root, rootIIFE) {
|
|
|
6606
6970
|
}
|
|
6607
6971
|
}
|
|
6608
6972
|
}
|
|
6609
|
-
for (let
|
|
6610
|
-
const classExp =
|
|
6611
|
-
let
|
|
6612
|
-
if (classExp.name && classExp.parent === topBlock || (
|
|
6973
|
+
for (let ref21 = gatherRecursiveWithinFunction(topBlock, ($13) => $13.type === "ClassExpression"), i7 = 0, len6 = ref21.length; i7 < len6; i7++) {
|
|
6974
|
+
const classExp = ref21[i7];
|
|
6975
|
+
let m5;
|
|
6976
|
+
if (classExp.name && classExp.parent === topBlock || (m5 = classExp.parent, typeof m5 === "object" && m5 != null && "type" in m5 && m5.type === "ReturnStatement" && "parent" in m5 && m5.parent === topBlock)) {
|
|
6613
6977
|
classExp.children.unshift(classExp.name, "=");
|
|
6614
6978
|
root.expressions.splice(i++, 0, ["", `var ${classExp.name};`]);
|
|
6615
6979
|
}
|
|
6616
6980
|
}
|
|
6617
6981
|
}
|
|
6618
6982
|
function populateRefs(statements) {
|
|
6619
|
-
const refNodes = gatherRecursive(statements, ($
|
|
6983
|
+
const refNodes = gatherRecursive(statements, ($14) => $14.type === "Ref");
|
|
6620
6984
|
if (refNodes.length) {
|
|
6621
6985
|
const ids = gatherRecursive(statements, (s) => s.type === "Identifier");
|
|
6622
6986
|
const names = new Set(ids.flatMap(({ names: names2 }) => names2 || []));
|
|
@@ -6639,11 +7003,11 @@ function populateRefs(statements) {
|
|
|
6639
7003
|
function processPlaceholders(statements) {
|
|
6640
7004
|
const placeholderMap = /* @__PURE__ */ new Map();
|
|
6641
7005
|
const liftedIfs = /* @__PURE__ */ new Set();
|
|
6642
|
-
gatherRecursiveAll(statements, ($
|
|
7006
|
+
gatherRecursiveAll(statements, ($15) => $15.type === "Placeholder").forEach((_exp) => {
|
|
6643
7007
|
const exp = _exp;
|
|
6644
7008
|
let ancestor;
|
|
6645
7009
|
if (exp.subtype === ".") {
|
|
6646
|
-
({ ancestor } = findAncestor(exp, ($
|
|
7010
|
+
({ ancestor } = findAncestor(exp, ($16) => $16.type === "Call"));
|
|
6647
7011
|
ancestor = ancestor?.parent;
|
|
6648
7012
|
while (ancestor?.parent?.type === "UnaryExpression" || ancestor?.parent?.type === "NewExpression") {
|
|
6649
7013
|
ancestor = ancestor.parent;
|
|
@@ -6662,10 +7026,10 @@ function processPlaceholders(statements) {
|
|
|
6662
7026
|
if (type === "IfStatement") {
|
|
6663
7027
|
liftedIfs.add(ancestor2);
|
|
6664
7028
|
}
|
|
6665
|
-
let m5;
|
|
6666
7029
|
let m6;
|
|
7030
|
+
let m7;
|
|
6667
7031
|
return type === "Call" || // Block, except for if/else blocks when condition already lifted
|
|
6668
|
-
type === "BlockStatement" && !((
|
|
7032
|
+
type === "BlockStatement" && !((m6 = ancestor2.parent, typeof m6 === "object" && m6 != null && "type" in m6 && m6.type === "IfStatement") && liftedIfs.has(ancestor2.parent)) && !((m7 = ancestor2.parent, typeof m7 === "object" && m7 != null && "type" in m7 && m7.type === "ElseClause" && "parent" in m7 && typeof m7.parent === "object" && m7.parent != null && "type" in m7.parent && m7.parent.type === "IfStatement") && liftedIfs.has(ancestor2.parent.parent)) || type === "PipelineExpression" || // Declaration
|
|
6669
7033
|
type === "Initializer" || // Right-hand side of assignment
|
|
6670
7034
|
type === "AssignmentExpression" && findChildIndex(ancestor2, child2) === ancestor2.children.indexOf(ancestor2.expression) || type === "ReturnStatement" || type === "YieldExpression";
|
|
6671
7035
|
}));
|
|
@@ -6741,11 +7105,11 @@ function processPlaceholders(statements) {
|
|
|
6741
7105
|
for (const [ancestor, placeholders] of placeholderMap) {
|
|
6742
7106
|
let ref = makeRef("$");
|
|
6743
7107
|
let typeSuffix;
|
|
6744
|
-
for (let
|
|
6745
|
-
const placeholder = placeholders[
|
|
7108
|
+
for (let i8 = 0, len7 = placeholders.length; i8 < len7; i8++) {
|
|
7109
|
+
const placeholder = placeholders[i8];
|
|
6746
7110
|
typeSuffix ??= placeholder.typeSuffix;
|
|
6747
|
-
let
|
|
6748
|
-
replaceNode((
|
|
7111
|
+
let ref22;
|
|
7112
|
+
replaceNode((ref22 = placeholder.children)[ref22.length - 1], ref);
|
|
6749
7113
|
}
|
|
6750
7114
|
const { parent } = ancestor;
|
|
6751
7115
|
const body = maybeUnwrap(ancestor);
|
|
@@ -6766,16 +7130,16 @@ function processPlaceholders(statements) {
|
|
|
6766
7130
|
}
|
|
6767
7131
|
case "PipelineExpression": {
|
|
6768
7132
|
const i = findChildIndex(parent, ancestor);
|
|
6769
|
-
let
|
|
7133
|
+
let ref23;
|
|
6770
7134
|
if (i === 1) {
|
|
6771
|
-
|
|
7135
|
+
ref23 = ancestor === parent.children[i];
|
|
6772
7136
|
} else if (i === 2) {
|
|
6773
|
-
|
|
7137
|
+
ref23 = ancestor === parent.children[i][findChildIndex(parent.children[i], ancestor)][3];
|
|
6774
7138
|
} else {
|
|
6775
|
-
|
|
7139
|
+
ref23 = void 0;
|
|
6776
7140
|
}
|
|
6777
7141
|
;
|
|
6778
|
-
outer =
|
|
7142
|
+
outer = ref23;
|
|
6779
7143
|
break;
|
|
6780
7144
|
}
|
|
6781
7145
|
case "AssignmentExpression":
|
|
@@ -6790,9 +7154,9 @@ function processPlaceholders(statements) {
|
|
|
6790
7154
|
fnExp = makeLeftHandSideExpression(fnExp);
|
|
6791
7155
|
}
|
|
6792
7156
|
replaceNode(ancestor, fnExp, parent);
|
|
6793
|
-
let
|
|
6794
|
-
if (
|
|
6795
|
-
const ws =
|
|
7157
|
+
let ref24;
|
|
7158
|
+
if (ref24 = getTrimmingSpace(body)) {
|
|
7159
|
+
const ws = ref24;
|
|
6796
7160
|
inplaceInsertTrimmingSpace(body, "");
|
|
6797
7161
|
inplacePrepend(ws, fnExp);
|
|
6798
7162
|
}
|
|
@@ -6837,8 +7201,8 @@ function reorderBindingRestProperty(props) {
|
|
|
6837
7201
|
}
|
|
6838
7202
|
];
|
|
6839
7203
|
}
|
|
6840
|
-
let
|
|
6841
|
-
if (Array.isArray(rest.delim) && (
|
|
7204
|
+
let ref25;
|
|
7205
|
+
if (Array.isArray(rest.delim) && (ref25 = rest.delim)[ref25.length - 1]?.token === ",") {
|
|
6842
7206
|
rest.delim = rest.delim.slice(0, -1);
|
|
6843
7207
|
rest.children = [...rest.children.slice(0, -1), rest.delim];
|
|
6844
7208
|
}
|
|
@@ -6863,9 +7227,9 @@ function replaceNodes(root, predicate, replacer) {
|
|
|
6863
7227
|
return root;
|
|
6864
7228
|
}
|
|
6865
7229
|
}
|
|
6866
|
-
for (let
|
|
6867
|
-
const i =
|
|
6868
|
-
const node = array[
|
|
7230
|
+
for (let i9 = 0, len8 = array.length; i9 < len8; i9++) {
|
|
7231
|
+
const i = i9;
|
|
7232
|
+
const node = array[i9];
|
|
6869
7233
|
if (!(node != null)) {
|
|
6870
7234
|
return;
|
|
6871
7235
|
}
|
|
@@ -6889,9 +7253,9 @@ function replaceNodesRecursive(root, predicate, replacer) {
|
|
|
6889
7253
|
return root;
|
|
6890
7254
|
}
|
|
6891
7255
|
}
|
|
6892
|
-
for (let
|
|
6893
|
-
const i =
|
|
6894
|
-
const node = array[
|
|
7256
|
+
for (let i10 = 0, len9 = array.length; i10 < len9; i10++) {
|
|
7257
|
+
const i = i10;
|
|
7258
|
+
const node = array[i10];
|
|
6895
7259
|
if (!(node != null)) {
|
|
6896
7260
|
continue;
|
|
6897
7261
|
}
|
|
@@ -7191,6 +7555,8 @@ var grammar = {
|
|
|
7191
7555
|
UpcomingAssignment,
|
|
7192
7556
|
ArrayLiteral,
|
|
7193
7557
|
_ArrayLiteral,
|
|
7558
|
+
RangeDots,
|
|
7559
|
+
RangeEnd,
|
|
7194
7560
|
RangeExpression,
|
|
7195
7561
|
ArrayLiteralContent,
|
|
7196
7562
|
NestedElementList,
|
|
@@ -7307,7 +7673,7 @@ var grammar = {
|
|
|
7307
7673
|
IgnoreColon,
|
|
7308
7674
|
TryStatement,
|
|
7309
7675
|
CatchClause,
|
|
7310
|
-
|
|
7676
|
+
CatchBinding,
|
|
7311
7677
|
FinallyClause,
|
|
7312
7678
|
CatchParameter,
|
|
7313
7679
|
Condition,
|
|
@@ -7651,6 +8017,7 @@ var grammar = {
|
|
|
7651
8017
|
TypeSuffix,
|
|
7652
8018
|
MaybeNestedType,
|
|
7653
8019
|
MaybeNestedTypePrimary,
|
|
8020
|
+
MaybeNestedTypeUnary,
|
|
7654
8021
|
ReturnTypeSuffix,
|
|
7655
8022
|
ReturnType,
|
|
7656
8023
|
TypePredicate,
|
|
@@ -8038,86 +8405,87 @@ var $R16 = (0, import_lib4.$R)(new RegExp("(?=true|false|yes|no|on|off)", "suy")
|
|
|
8038
8405
|
var $R17 = (0, import_lib4.$R)(new RegExp("(?=\\p{ID_Start}|[_$])", "suy"));
|
|
8039
8406
|
var $R18 = (0, import_lib4.$R)(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
|
|
8040
8407
|
var $R19 = (0, import_lib4.$R)(new RegExp("(?=\\[|\\s*[.\u2022])", "suy"));
|
|
8041
|
-
var $R20 = (0, import_lib4.$R)(new RegExp("[
|
|
8042
|
-
var $R21 = (0, import_lib4.$R)(new RegExp("[ \\t]
|
|
8043
|
-
var $R22 = (0, import_lib4.$R)(new RegExp("[
|
|
8044
|
-
var $R23 = (0, import_lib4.$R)(new RegExp("
|
|
8045
|
-
var $R24 = (0, import_lib4.$R)(new RegExp("[
|
|
8046
|
-
var $R25 = (0, import_lib4.$R)(new RegExp("
|
|
8047
|
-
var $R26 = (0, import_lib4.$R)(new RegExp("
|
|
8048
|
-
var $R27 = (0, import_lib4.$R)(new RegExp("
|
|
8049
|
-
var $R28 = (0, import_lib4.$R)(new RegExp("[
|
|
8050
|
-
var $R29 = (0, import_lib4.$R)(new RegExp("
|
|
8051
|
-
var $R30 = (0, import_lib4.$R)(new RegExp("(?=
|
|
8052
|
-
var $R31 = (0, import_lib4.$R)(new RegExp(
|
|
8053
|
-
var $R32 = (0, import_lib4.$R)(new RegExp("
|
|
8054
|
-
var $R33 = (0, import_lib4.$R)(new RegExp("(
|
|
8055
|
-
var $R34 = (0, import_lib4.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)
|
|
8056
|
-
var $R35 = (0, import_lib4.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(
|
|
8057
|
-
var $R36 = (0, import_lib4.$R)(new RegExp("(?:\\.[0-9](?:_[0-9]|[0-9])*)", "suy"));
|
|
8058
|
-
var $R37 = (0, import_lib4.$R)(new RegExp("(
|
|
8059
|
-
var $R38 = (0, import_lib4.$R)(new RegExp("
|
|
8060
|
-
var $R39 = (0, import_lib4.$R)(new RegExp("0[
|
|
8061
|
-
var $R40 = (0, import_lib4.$R)(new RegExp("0[
|
|
8062
|
-
var $R41 = (0, import_lib4.$R)(new RegExp("(
|
|
8063
|
-
var $R42 = (0, import_lib4.$R)(new RegExp("(
|
|
8064
|
-
var $R43 = (0, import_lib4.$R)(new RegExp(
|
|
8065
|
-
var $R44 = (0, import_lib4.$R)(new RegExp(
|
|
8066
|
-
var $R45 = (0, import_lib4.$R)(new RegExp(
|
|
8067
|
-
var $R46 = (0, import_lib4.$R)(new RegExp(
|
|
8068
|
-
var $R47 = (0, import_lib4.$R)(new RegExp('(
|
|
8069
|
-
var $R48 = (0, import_lib4.$R)(new RegExp(
|
|
8070
|
-
var $R49 = (0, import_lib4.$R)(new RegExp("(
|
|
8071
|
-
var $R50 = (0, import_lib4.$R)(new RegExp("
|
|
8072
|
-
var $R51 = (0, import_lib4.$R)(new RegExp("
|
|
8073
|
-
var $R52 = (0, import_lib4.$R)(new RegExp("
|
|
8074
|
-
var $R53 = (0, import_lib4.$R)(new RegExp("[
|
|
8075
|
-
var $R54 = (0, import_lib4.$R)(new RegExp("
|
|
8076
|
-
var $R55 = (0, import_lib4.$R)(new RegExp("(
|
|
8077
|
-
var $R56 = (0, import_lib4.$R)(new RegExp("(
|
|
8078
|
-
var $R57 = (0, import_lib4.$R)(new RegExp("(
|
|
8079
|
-
var $R58 = (0, import_lib4.$R)(new RegExp("(?:\\$(?!\\{)
|
|
8080
|
-
var $R59 = (0, import_lib4.$R)(new RegExp("(
|
|
8081
|
-
var $R60 = (0, import_lib4.$R)(new RegExp("(?:
|
|
8082
|
-
var $R61 = (0, import_lib4.$R)(new RegExp("(?:
|
|
8083
|
-
var $R62 = (0, import_lib4.$R)(new RegExp("(?:
|
|
8084
|
-
var $R63 = (0, import_lib4.$R)(new RegExp("(?:
|
|
8085
|
-
var $R64 = (0, import_lib4.$R)(new RegExp("(
|
|
8086
|
-
var $R65 = (0, import_lib4.$R)(new RegExp("
|
|
8087
|
-
var $R66 = (0, import_lib4.$R)(new RegExp("
|
|
8088
|
-
var $R67 = (0, import_lib4.$R)(new RegExp("
|
|
8089
|
-
var $R68 = (0, import_lib4.$R)(new RegExp("[
|
|
8090
|
-
var $R69 = (0, import_lib4.$R)(new RegExp("
|
|
8091
|
-
var $R70 = (0, import_lib4.$R)(new RegExp("
|
|
8092
|
-
var $R71 = (0, import_lib4.$R)(new RegExp("(
|
|
8093
|
-
var $R72 = (0, import_lib4.$R)(new RegExp("(
|
|
8094
|
-
var $R73 = (0, import_lib4.$R)(new RegExp("(
|
|
8095
|
-
var $R74 = (0, import_lib4.$R)(new RegExp("
|
|
8096
|
-
var $R75 = (0, import_lib4.$R)(new RegExp("[
|
|
8097
|
-
var $R76 = (0, import_lib4.$R)(new RegExp("
|
|
8098
|
-
var $R77 = (0, import_lib4.$R)(new RegExp("
|
|
8099
|
-
var $R78 = (0, import_lib4.$R)(new RegExp("(
|
|
8100
|
-
var $R79 = (0, import_lib4.$R)(new RegExp("[
|
|
8101
|
-
var $R80 = (0, import_lib4.$R)(new RegExp("[
|
|
8102
|
-
var $R81 = (0, import_lib4.$R)(new RegExp("
|
|
8103
|
-
var $R82 = (0, import_lib4.$R)(new RegExp(
|
|
8104
|
-
var $R83 = (0, import_lib4.$R)(new RegExp("[
|
|
8105
|
-
var $R84 = (0, import_lib4.$R)(new RegExp("[
|
|
8106
|
-
var $R85 = (0, import_lib4.$R)(new RegExp("
|
|
8107
|
-
var $R86 = (0, import_lib4.$R)(new RegExp("[
|
|
8108
|
-
var $R87 = (0, import_lib4.$R)(new RegExp("[
|
|
8109
|
-
var $R88 = (0, import_lib4.$R)(new RegExp("
|
|
8110
|
-
var $R89 = (0, import_lib4.$R)(new RegExp("
|
|
8111
|
-
var $R90 = (0, import_lib4.$R)(new RegExp("
|
|
8112
|
-
var $R91 = (0, import_lib4.$R)(new RegExp("
|
|
8113
|
-
var $R92 = (0, import_lib4.$R)(new RegExp("
|
|
8114
|
-
var $R93 = (0, import_lib4.$R)(new RegExp("[\\
|
|
8115
|
-
var $R94 = (0, import_lib4.$R)(new RegExp("[\\
|
|
8116
|
-
var $R95 = (0, import_lib4.$R)(new RegExp("
|
|
8117
|
-
var $R96 = (0, import_lib4.$R)(new RegExp("
|
|
8118
|
-
var $R97 = (0, import_lib4.$R)(new RegExp("
|
|
8119
|
-
var $R98 = (0, import_lib4.$R)(new RegExp("\\r\\n
|
|
8120
|
-
var $R99 = (0, import_lib4.$R)(new RegExp("
|
|
8408
|
+
var $R20 = (0, import_lib4.$R)(new RegExp("([<>])(=?)|([\u2264\u2265])", "suy"));
|
|
8409
|
+
var $R21 = (0, import_lib4.$R)(new RegExp("[ \\t]*", "suy"));
|
|
8410
|
+
var $R22 = (0, import_lib4.$R)(new RegExp("[ \\t]+", "suy"));
|
|
8411
|
+
var $R23 = (0, import_lib4.$R)(new RegExp("[!+-]?", "suy"));
|
|
8412
|
+
var $R24 = (0, import_lib4.$R)(new RegExp("(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
|
|
8413
|
+
var $R25 = (0, import_lib4.$R)(new RegExp("[=>]", "suy"));
|
|
8414
|
+
var $R26 = (0, import_lib4.$R)(new RegExp("(?=\\p{ID_Start}|[_$^\u226A\u226B\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2A76\u2A75\u2016\u2047&|*\\/!?%\xF7<>\u29FA+-])", "suy"));
|
|
8415
|
+
var $R27 = (0, import_lib4.$R)(new RegExp("!\\^\\^?", "suy"));
|
|
8416
|
+
var $R28 = (0, import_lib4.$R)(new RegExp("(?!\\+\\+|--)[!~+-](?!\\s)", "suy"));
|
|
8417
|
+
var $R29 = (0, import_lib4.$R)(new RegExp("[:.]", "suy"));
|
|
8418
|
+
var $R30 = (0, import_lib4.$R)(new RegExp("(?=for|if|loop|unless|until|while)", "suy"));
|
|
8419
|
+
var $R31 = (0, import_lib4.$R)(new RegExp("(?=loop|comptime|do|for|until|while)", "suy"));
|
|
8420
|
+
var $R32 = (0, import_lib4.$R)(new RegExp('[^;"\\s]+', "suy"));
|
|
8421
|
+
var $R33 = (0, import_lib4.$R)(new RegExp("(?=[0-9.])", "suy"));
|
|
8422
|
+
var $R34 = (0, import_lib4.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)n", "suy"));
|
|
8423
|
+
var $R35 = (0, import_lib4.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))", "suy"));
|
|
8424
|
+
var $R36 = (0, import_lib4.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?", "suy"));
|
|
8425
|
+
var $R37 = (0, import_lib4.$R)(new RegExp("(?:\\.[0-9](?:_[0-9]|[0-9])*)", "suy"));
|
|
8426
|
+
var $R38 = (0, import_lib4.$R)(new RegExp("(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)", "suy"));
|
|
8427
|
+
var $R39 = (0, import_lib4.$R)(new RegExp("0[bB][01](?:[01]|_[01])*n?", "suy"));
|
|
8428
|
+
var $R40 = (0, import_lib4.$R)(new RegExp("0[oO][0-7](?:[0-7]|_[0-7])*n?", "suy"));
|
|
8429
|
+
var $R41 = (0, import_lib4.$R)(new RegExp("0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?", "suy"));
|
|
8430
|
+
var $R42 = (0, import_lib4.$R)(new RegExp("(?=[0-9])", "suy"));
|
|
8431
|
+
var $R43 = (0, import_lib4.$R)(new RegExp("(?:0|[1-9](?:_[0-9]|[0-9])*)", "suy"));
|
|
8432
|
+
var $R44 = (0, import_lib4.$R)(new RegExp('(?:\\\\.|[^"])*', "suy"));
|
|
8433
|
+
var $R45 = (0, import_lib4.$R)(new RegExp("(?:\\\\.|[^'])*", "suy"));
|
|
8434
|
+
var $R46 = (0, import_lib4.$R)(new RegExp('(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+', "suy"));
|
|
8435
|
+
var $R47 = (0, import_lib4.$R)(new RegExp("(?:'(?!'')|\\\\.|[^'])*", "suy"));
|
|
8436
|
+
var $R48 = (0, import_lib4.$R)(new RegExp('(?:\\\\.|#(?!\\{)|[^"#])+', "suy"));
|
|
8437
|
+
var $R49 = (0, import_lib4.$R)(new RegExp("(?:\\\\.|[^\\]])*", "suy"));
|
|
8438
|
+
var $R50 = (0, import_lib4.$R)(new RegExp("(?:\\\\.)", "suy"));
|
|
8439
|
+
var $R51 = (0, import_lib4.$R)(new RegExp("[\\s]+", "suy"));
|
|
8440
|
+
var $R52 = (0, import_lib4.$R)(new RegExp("\\/(?!\\/\\/)", "suy"));
|
|
8441
|
+
var $R53 = (0, import_lib4.$R)(new RegExp("[^[\\/\\s#\\\\]+", "suy"));
|
|
8442
|
+
var $R54 = (0, import_lib4.$R)(new RegExp("[*\\/\\r\\n]", "suy"));
|
|
8443
|
+
var $R55 = (0, import_lib4.$R)(new RegExp("(?:\\\\.|[^[\\/\\r\\n])+", "suy"));
|
|
8444
|
+
var $R56 = (0, import_lib4.$R)(new RegExp("(?:\\p{ID_Continue}|[\\u200C\\u200D$])*", "suy"));
|
|
8445
|
+
var $R57 = (0, import_lib4.$R)(new RegExp("(?=[`'\"])", "suy"));
|
|
8446
|
+
var $R58 = (0, import_lib4.$R)(new RegExp("(?:\\$(?!\\{)|\\\\.|[^$`])+", "suy"));
|
|
8447
|
+
var $R59 = (0, import_lib4.$R)(new RegExp("(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+", "suy"));
|
|
8448
|
+
var $R60 = (0, import_lib4.$R)(new RegExp("(?:on|off|yes|no)(?!\\p{ID_Continue})", "suy"));
|
|
8449
|
+
var $R61 = (0, import_lib4.$R)(new RegExp("(?:isnt)(?!\\p{ID_Continue})", "suy"));
|
|
8450
|
+
var $R62 = (0, import_lib4.$R)(new RegExp("(?:by)(?!\\p{ID_Continue})", "suy"));
|
|
8451
|
+
var $R63 = (0, import_lib4.$R)(new RegExp("(?:of)(?!\\p{ID_Continue})", "suy"));
|
|
8452
|
+
var $R64 = (0, import_lib4.$R)(new RegExp("(?:and|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|let|loop|new|not|null|or|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})", "suy"));
|
|
8453
|
+
var $R65 = (0, import_lib4.$R)(new RegExp("(?=\\/|#)", "suy"));
|
|
8454
|
+
var $R66 = (0, import_lib4.$R)(new RegExp("\\/\\/(?!\\/)[^\\r\\n]*", "suy"));
|
|
8455
|
+
var $R67 = (0, import_lib4.$R)(new RegExp(".", "suy"));
|
|
8456
|
+
var $R68 = (0, import_lib4.$R)(new RegExp("#(?!##(?!#))([^\\r\\n]*)", "suy"));
|
|
8457
|
+
var $R69 = (0, import_lib4.$R)(new RegExp("[^]*?###", "suy"));
|
|
8458
|
+
var $R70 = (0, import_lib4.$R)(new RegExp("###(?!#)", "suy"));
|
|
8459
|
+
var $R71 = (0, import_lib4.$R)(new RegExp("\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\/", "suy"));
|
|
8460
|
+
var $R72 = (0, import_lib4.$R)(new RegExp("(?=[ \\t\\/\\\\])", "suy"));
|
|
8461
|
+
var $R73 = (0, import_lib4.$R)(new RegExp("(?=\\s|\\/|#)", "suy"));
|
|
8462
|
+
var $R74 = (0, import_lib4.$R)(new RegExp("(?!\\p{ID_Continue})", "suy"));
|
|
8463
|
+
var $R75 = (0, import_lib4.$R)(new RegExp("[=:]", "suy"));
|
|
8464
|
+
var $R76 = (0, import_lib4.$R)(new RegExp("['\u2019]s", "suy"));
|
|
8465
|
+
var $R77 = (0, import_lib4.$R)(new RegExp("\\s", "suy"));
|
|
8466
|
+
var $R78 = (0, import_lib4.$R)(new RegExp("(?=[<])", "suy"));
|
|
8467
|
+
var $R79 = (0, import_lib4.$R)(new RegExp("(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*", "suy"));
|
|
8468
|
+
var $R80 = (0, import_lib4.$R)(new RegExp("[!+-]", "suy"));
|
|
8469
|
+
var $R81 = (0, import_lib4.$R)(new RegExp("[\\s>]|\\/>", "suy"));
|
|
8470
|
+
var $R82 = (0, import_lib4.$R)(new RegExp("(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+", "suy"));
|
|
8471
|
+
var $R83 = (0, import_lib4.$R)(new RegExp(`"[^"]*"|'[^']*'`, "suy"));
|
|
8472
|
+
var $R84 = (0, import_lib4.$R)(new RegExp("[<>]", "suy"));
|
|
8473
|
+
var $R85 = (0, import_lib4.$R)(new RegExp("[!~+-](?!\\s|[!~+-]*&)", "suy"));
|
|
8474
|
+
var $R86 = (0, import_lib4.$R)(new RegExp("(?:-[^-]|[^-]*)*", "suy"));
|
|
8475
|
+
var $R87 = (0, import_lib4.$R)(new RegExp("[^{}<>\\r\\n]+", "suy"));
|
|
8476
|
+
var $R88 = (0, import_lib4.$R)(new RegExp("[+-]?", "suy"));
|
|
8477
|
+
var $R89 = (0, import_lib4.$R)(new RegExp("(?=if|unless)", "suy"));
|
|
8478
|
+
var $R90 = (0, import_lib4.$R)(new RegExp("[|&<!=\\-\u21D2\u2192]", "suy"));
|
|
8479
|
+
var $R91 = (0, import_lib4.$R)(new RegExp("(extends|not|is)(?!\\p{ID_Continue}|[\\u200C\\u200D$])", "suy"));
|
|
8480
|
+
var $R92 = (0, import_lib4.$R)(new RegExp("const|in|out", "suy"));
|
|
8481
|
+
var $R93 = (0, import_lib4.$R)(new RegExp("#![^\\r\\n]*", "suy"));
|
|
8482
|
+
var $R94 = (0, import_lib4.$R)(new RegExp("[\\t ]*", "suy"));
|
|
8483
|
+
var $R95 = (0, import_lib4.$R)(new RegExp("[\\s]*", "suy"));
|
|
8484
|
+
var $R96 = (0, import_lib4.$R)(new RegExp("\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([\\p{ID_Continue}.,+-]*))?", "suy"));
|
|
8485
|
+
var $R97 = (0, import_lib4.$R)(new RegExp("\\/\\/\\/[^\\r\\n]*", "suy"));
|
|
8486
|
+
var $R98 = (0, import_lib4.$R)(new RegExp("(?=[ \\t\\r\\n\\/#]|$)", "suy"));
|
|
8487
|
+
var $R99 = (0, import_lib4.$R)(new RegExp("\\r\\n|\\n|\\r|$", "suy"));
|
|
8488
|
+
var $R100 = (0, import_lib4.$R)(new RegExp("[^]*", "suy"));
|
|
8121
8489
|
var Program$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(Reset, Init, (0, import_lib4.$E)(EOS), TopLevelStatements, __), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
8122
8490
|
var reset = $1;
|
|
8123
8491
|
var init = $2;
|
|
@@ -8320,7 +8688,7 @@ var ExplicitArguments$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(OpenParen, Al
|
|
|
8320
8688
|
function ExplicitArguments(ctx, state2) {
|
|
8321
8689
|
return (0, import_lib4.$EVENT)(ctx, state2, "ExplicitArguments", ExplicitArguments$0);
|
|
8322
8690
|
}
|
|
8323
|
-
var ApplicationStart$0 = (0, import_lib4.$S)(IndentedApplicationAllowed, (0, import_lib4.$Y)((0, import_lib4.$S)(IndentedFurther, (0, import_lib4.$N)(IdentifierBinaryOp))), (0, import_lib4.$N)(IndentedTrailingMemberExpression));
|
|
8691
|
+
var ApplicationStart$0 = (0, import_lib4.$S)(IndentedApplicationAllowed, (0, import_lib4.$Y)((0, import_lib4.$S)(IndentedFurther, (0, import_lib4.$N)(IdentifierBinaryOp), (0, import_lib4.$N)(ReservedBinary))), (0, import_lib4.$N)(IndentedTrailingMemberExpression));
|
|
8324
8692
|
var ApplicationStart$1 = (0, import_lib4.$S)((0, import_lib4.$N)(EOS), (0, import_lib4.$Y)((0, import_lib4.$S)(_, (0, import_lib4.$C)(BracedApplicationAllowed, (0, import_lib4.$N)((0, import_lib4.$EXPECT)($L1, 'ApplicationStart "{"'))), (0, import_lib4.$N)(ForbiddenImplicitCalls))));
|
|
8325
8693
|
var ApplicationStart$$ = [ApplicationStart$0, ApplicationStart$1];
|
|
8326
8694
|
function ApplicationStart(ctx, state2) {
|
|
@@ -8489,11 +8857,15 @@ var BinaryOpExpression$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(UnaryExpress
|
|
|
8489
8857
|
function BinaryOpExpression(ctx, state2) {
|
|
8490
8858
|
return (0, import_lib4.$EVENT)(ctx, state2, "BinaryOpExpression", BinaryOpExpression$0);
|
|
8491
8859
|
}
|
|
8492
|
-
var BinaryOpNotDedented$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$
|
|
8860
|
+
var BinaryOpNotDedented$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$N)(NewlineBinaryOpAllowed), (0, import_lib4.$E)(_)), function(value) {
|
|
8861
|
+
return value[1];
|
|
8862
|
+
});
|
|
8863
|
+
var BinaryOpNotDedented$1 = (0, import_lib4.$T)((0, import_lib4.$S)(NewlineBinaryOpAllowed, (0, import_lib4.$C)(NestedBinaryOpAllowed, (0, import_lib4.$N)(Nested)), NotDedented), function(value) {
|
|
8493
8864
|
return value[1];
|
|
8494
8865
|
});
|
|
8866
|
+
var BinaryOpNotDedented$$ = [BinaryOpNotDedented$0, BinaryOpNotDedented$1];
|
|
8495
8867
|
function BinaryOpNotDedented(ctx, state2) {
|
|
8496
|
-
return (0, import_lib4.$
|
|
8868
|
+
return (0, import_lib4.$EVENT_C)(ctx, state2, "BinaryOpNotDedented", BinaryOpNotDedented$$);
|
|
8497
8869
|
}
|
|
8498
8870
|
var BinaryOpRHS$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(BinaryOpNotDedented, IsLike, (0, import_lib4.$E)(_), PatternExpressionList), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
8499
8871
|
var ws1 = $1;
|
|
@@ -8634,8 +9006,15 @@ var TypePostfix$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(_, NWTypePostfix),
|
|
|
8634
9006
|
var postfix = $2;
|
|
8635
9007
|
return prepend(ws, postfix);
|
|
8636
9008
|
});
|
|
9009
|
+
var TypePostfix$1 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$Y)(EOS), BinaryOpNotDedented, (0, import_lib4.$E)(_), NWTypePostfix), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
9010
|
+
var indent = $2;
|
|
9011
|
+
var ws = $3;
|
|
9012
|
+
var postfix = $4;
|
|
9013
|
+
return prepend(ws || " ", postfix);
|
|
9014
|
+
});
|
|
9015
|
+
var TypePostfix$$ = [TypePostfix$0, TypePostfix$1];
|
|
8637
9016
|
function TypePostfix(ctx, state2) {
|
|
8638
|
-
return (0, import_lib4.$
|
|
9017
|
+
return (0, import_lib4.$EVENT_C)(ctx, state2, "TypePostfix", TypePostfix$$);
|
|
8639
9018
|
}
|
|
8640
9019
|
var Tuple$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L8, 'Tuple "tuple"'), NonIdContinue), function($skip, $loc, $0, $1, $2) {
|
|
8641
9020
|
return {
|
|
@@ -9697,11 +10076,12 @@ var MemberBracketContent$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(OpenBracke
|
|
|
9697
10076
|
var ws = $3;
|
|
9698
10077
|
var close = $4;
|
|
9699
10078
|
if (expression.type === "SliceParameters") {
|
|
9700
|
-
const { start, end, children } = expression;
|
|
10079
|
+
const { start, end, reversed, children } = expression;
|
|
9701
10080
|
return {
|
|
9702
10081
|
type: "SliceExpression",
|
|
9703
10082
|
start,
|
|
9704
10083
|
end,
|
|
10084
|
+
reversed,
|
|
9705
10085
|
children: [
|
|
9706
10086
|
{ ...open, token: ".slice(" },
|
|
9707
10087
|
...children,
|
|
@@ -9718,20 +10098,44 @@ var MemberBracketContent$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(OpenBracke
|
|
|
9718
10098
|
function MemberBracketContent(ctx, state2) {
|
|
9719
10099
|
return (0, import_lib4.$EVENT)(ctx, state2, "MemberBracketContent", MemberBracketContent$0);
|
|
9720
10100
|
}
|
|
9721
|
-
var SliceParameters$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(
|
|
9722
|
-
var
|
|
9723
|
-
var
|
|
9724
|
-
var
|
|
9725
|
-
var
|
|
9726
|
-
|
|
10101
|
+
var SliceParameters$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(Loc, (0, import_lib4.$E)(Expression), __, RangeDots, Loc, (0, import_lib4.$E)(Expression)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
10102
|
+
var ls = $1;
|
|
10103
|
+
var start = $2;
|
|
10104
|
+
var ws = $3;
|
|
10105
|
+
var dots = $4;
|
|
10106
|
+
var le = $5;
|
|
10107
|
+
var end = $6;
|
|
10108
|
+
const reversed = dots.increasing === false;
|
|
10109
|
+
const sign = reversed ? "-" : "+";
|
|
9727
10110
|
let children;
|
|
10111
|
+
start ??= {
|
|
10112
|
+
$loc: ls.$loc,
|
|
10113
|
+
token: reversed ? "-1" : "0"
|
|
10114
|
+
};
|
|
10115
|
+
if (!end) {
|
|
10116
|
+
if (reversed) {
|
|
10117
|
+
end = {
|
|
10118
|
+
$loc: le.$loc,
|
|
10119
|
+
token: "0"
|
|
10120
|
+
};
|
|
10121
|
+
} else if (!dots.right.inclusive && !dots.triple) {
|
|
10122
|
+
end = {
|
|
10123
|
+
$loc: le.$loc,
|
|
10124
|
+
token: "-1"
|
|
10125
|
+
};
|
|
10126
|
+
}
|
|
10127
|
+
}
|
|
10128
|
+
if (!dots.left.inclusive) {
|
|
10129
|
+
start = [makeLeftHandSideExpression(start), ` ${sign} 1`];
|
|
10130
|
+
}
|
|
9728
10131
|
if (end) {
|
|
9729
10132
|
const inc = [];
|
|
9730
|
-
if (inclusive) {
|
|
9731
|
-
end = [
|
|
9732
|
-
|
|
10133
|
+
if (dots.right.inclusive) {
|
|
10134
|
+
end = [makeLeftHandSideExpression(end), ` ${sign} 1`];
|
|
10135
|
+
if (!reversed)
|
|
10136
|
+
inc.push(" || 1/0");
|
|
9733
10137
|
}
|
|
9734
|
-
children = [start, [...ws, {
|
|
10138
|
+
children = [start, [...ws, dots.children[0], { token: ", ", $loc: dots.$loc }], [dots.children[1], end, ...inc]];
|
|
9735
10139
|
} else {
|
|
9736
10140
|
children = [start, ws];
|
|
9737
10141
|
}
|
|
@@ -9739,48 +10143,12 @@ var SliceParameters$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(Expression, __,
|
|
|
9739
10143
|
type: "SliceParameters",
|
|
9740
10144
|
start,
|
|
9741
10145
|
end,
|
|
10146
|
+
reversed,
|
|
9742
10147
|
children
|
|
9743
10148
|
};
|
|
9744
10149
|
});
|
|
9745
|
-
var SliceParameters$1 = (0, import_lib4.$TS)((0, import_lib4.$S)(Loc, __, (0, import_lib4.$C)(DotDotDot, DotDot), Expression), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
9746
|
-
var l = $1;
|
|
9747
|
-
var ws = $2;
|
|
9748
|
-
var sep = $3;
|
|
9749
|
-
var end = $4;
|
|
9750
|
-
const inclusive = sep.token === "..";
|
|
9751
|
-
const inc = [];
|
|
9752
|
-
if (inclusive) {
|
|
9753
|
-
end = ["1 + ", end];
|
|
9754
|
-
inc.push(" || 1/0");
|
|
9755
|
-
}
|
|
9756
|
-
const start = {
|
|
9757
|
-
$loc: l.$loc,
|
|
9758
|
-
token: "0"
|
|
9759
|
-
};
|
|
9760
|
-
return {
|
|
9761
|
-
type: "SliceParameters",
|
|
9762
|
-
start,
|
|
9763
|
-
end,
|
|
9764
|
-
children: [start, [...ws, { ...sep, token: ", " }], [end, ...inc]]
|
|
9765
|
-
};
|
|
9766
|
-
});
|
|
9767
|
-
var SliceParameters$2 = (0, import_lib4.$TS)((0, import_lib4.$S)(Loc, __, (0, import_lib4.$C)(DotDot, DotDotDot), (0, import_lib4.$Y)((0, import_lib4.$S)(__, CloseBracket))), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
9768
|
-
var l = $1;
|
|
9769
|
-
var ws = $2;
|
|
9770
|
-
const start = {
|
|
9771
|
-
$loc: l.$loc,
|
|
9772
|
-
token: "0"
|
|
9773
|
-
};
|
|
9774
|
-
return {
|
|
9775
|
-
type: "SliceParameters",
|
|
9776
|
-
start,
|
|
9777
|
-
end: void 0,
|
|
9778
|
-
children: [start, ws]
|
|
9779
|
-
};
|
|
9780
|
-
});
|
|
9781
|
-
var SliceParameters$$ = [SliceParameters$0, SliceParameters$1, SliceParameters$2];
|
|
9782
10150
|
function SliceParameters(ctx, state2) {
|
|
9783
|
-
return (0, import_lib4.$
|
|
10151
|
+
return (0, import_lib4.$EVENT)(ctx, state2, "SliceParameters", SliceParameters$0);
|
|
9784
10152
|
}
|
|
9785
10153
|
var AccessStart$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$E)(PropertyAccessModifier), Dot, (0, import_lib4.$N)((0, import_lib4.$EXPECT)($R11, "AccessStart /[.\\s]/"))), function($skip, $loc, $0, $1, $2, $3) {
|
|
9786
10154
|
var modifier = $1;
|
|
@@ -11243,10 +11611,7 @@ var SingleLineStatements$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(ForbidNewl
|
|
|
11243
11611
|
if (last)
|
|
11244
11612
|
expressions.push(last);
|
|
11245
11613
|
const maybeComment = expressions.at(-1)?.[2]?.children?.[2]?.at(-1);
|
|
11246
|
-
|
|
11247
|
-
if (maybeComment?.type === "Comment" && maybeComment.token.startsWith("//")) {
|
|
11248
|
-
hasTrailingComment = true;
|
|
11249
|
-
}
|
|
11614
|
+
const hasTrailingComment = maybeComment?.type === "Comment" && maybeComment.token.startsWith("//");
|
|
11250
11615
|
const children = [expressions];
|
|
11251
11616
|
if (hasTrailingComment)
|
|
11252
11617
|
children.push("\n");
|
|
@@ -11445,70 +11810,83 @@ var _ArrayLiteral$$ = [_ArrayLiteral$0, _ArrayLiteral$1, _ArrayLiteral$2];
|
|
|
11445
11810
|
function _ArrayLiteral(ctx, state2) {
|
|
11446
11811
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "_ArrayLiteral", _ArrayLiteral$$);
|
|
11447
11812
|
}
|
|
11448
|
-
var
|
|
11449
|
-
|
|
11450
|
-
|
|
11451
|
-
|
|
11452
|
-
|
|
11453
|
-
|
|
11454
|
-
|
|
11455
|
-
|
|
11456
|
-
|
|
11457
|
-
|
|
11458
|
-
|
|
11459
|
-
|
|
11460
|
-
|
|
11461
|
-
|
|
11462
|
-
|
|
11463
|
-
|
|
11464
|
-
|
|
11465
|
-
|
|
11466
|
-
|
|
11467
|
-
|
|
11468
|
-
|
|
11469
|
-
|
|
11470
|
-
|
|
11471
|
-
|
|
11472
|
-
|
|
11473
|
-
|
|
11474
|
-
|
|
11475
|
-
|
|
11476
|
-
|
|
11477
|
-
|
|
11478
|
-
|
|
11479
|
-
|
|
11480
|
-
|
|
11481
|
-
|
|
11482
|
-
|
|
11483
|
-
|
|
11484
|
-
|
|
11485
|
-
|
|
11486
|
-
|
|
11487
|
-
|
|
11488
|
-
|
|
11489
|
-
|
|
11490
|
-
|
|
11491
|
-
|
|
11492
|
-
|
|
11493
|
-
|
|
11494
|
-
|
|
11495
|
-
|
|
11496
|
-
|
|
11497
|
-
|
|
11498
|
-
|
|
11499
|
-
|
|
11813
|
+
var RangeDots$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(DotDotDot), function($skip, $loc, $0, $1) {
|
|
11814
|
+
return {
|
|
11815
|
+
...$1,
|
|
11816
|
+
type: "RangeDots",
|
|
11817
|
+
left: { inclusive: true, raw: "" },
|
|
11818
|
+
right: { inclusive: false, raw: "." },
|
|
11819
|
+
increasing: void 0,
|
|
11820
|
+
triple: true,
|
|
11821
|
+
children: []
|
|
11822
|
+
};
|
|
11823
|
+
});
|
|
11824
|
+
var RangeDots$1 = (0, import_lib4.$TS)((0, import_lib4.$S)(RangeEnd, (0, import_lib4.$E)(_), DotDot, (0, import_lib4.$E)(_), RangeEnd), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
11825
|
+
var left = $1;
|
|
11826
|
+
var ws1 = $2;
|
|
11827
|
+
var dots = $3;
|
|
11828
|
+
var ws2 = $4;
|
|
11829
|
+
var right = $5;
|
|
11830
|
+
const increasing = left.increasing ?? right.increasing;
|
|
11831
|
+
if (left.increasing != null && right.increasing != null && left.increasing !== right.increasing) {
|
|
11832
|
+
const error = {
|
|
11833
|
+
type: "Error",
|
|
11834
|
+
message: `${left.raw}..${right.raw} uses inconsistent < vs. >`,
|
|
11835
|
+
$loc: dots.$loc
|
|
11836
|
+
};
|
|
11837
|
+
return {
|
|
11838
|
+
...dots,
|
|
11839
|
+
left,
|
|
11840
|
+
right,
|
|
11841
|
+
increasing,
|
|
11842
|
+
error,
|
|
11843
|
+
type: "RangeDots",
|
|
11844
|
+
children: [error]
|
|
11845
|
+
};
|
|
11846
|
+
}
|
|
11847
|
+
return {
|
|
11848
|
+
...dots,
|
|
11849
|
+
left,
|
|
11850
|
+
right,
|
|
11851
|
+
increasing,
|
|
11852
|
+
type: "RangeDots",
|
|
11853
|
+
children: [ws1, ws2]
|
|
11854
|
+
};
|
|
11855
|
+
});
|
|
11856
|
+
var RangeDots$$ = [RangeDots$0, RangeDots$1];
|
|
11857
|
+
function RangeDots(ctx, state2) {
|
|
11858
|
+
return (0, import_lib4.$EVENT_C)(ctx, state2, "RangeDots", RangeDots$$);
|
|
11859
|
+
}
|
|
11860
|
+
var RangeEnd$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R20, "RangeEnd /([<>])(=?)|([\u2264\u2265])/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
11861
|
+
let dir = $1, equal = $2, unicode = $3;
|
|
11862
|
+
if (unicode) {
|
|
11863
|
+
equal = "=";
|
|
11864
|
+
if (unicode === "\u2264") {
|
|
11865
|
+
dir = "<";
|
|
11866
|
+
} else if (unicode === "\u2265") {
|
|
11867
|
+
dir = ">";
|
|
11500
11868
|
}
|
|
11501
11869
|
}
|
|
11502
|
-
const inclusiveAdjust = inclusive ? " + 1" : "";
|
|
11503
|
-
const children = ["((s, e) => {let step = e > s ? 1 : -1; return Array.from({length: Math.abs(e - s)", inclusiveAdjust, "}, (_, i) => s + i * step)})(", s, ws, range, e, ")"];
|
|
11504
11870
|
return {
|
|
11505
|
-
|
|
11506
|
-
|
|
11507
|
-
|
|
11508
|
-
start: s,
|
|
11509
|
-
end: e
|
|
11871
|
+
increasing: dir === "<",
|
|
11872
|
+
inclusive: equal === "=",
|
|
11873
|
+
raw: $0
|
|
11510
11874
|
};
|
|
11511
11875
|
});
|
|
11876
|
+
var RangeEnd$1 = (0, import_lib4.$T)((0, import_lib4.$EXPECT)($L0, 'RangeEnd ""'), function(value) {
|
|
11877
|
+
return { "increasing": void 0, "inclusive": true, "raw": "" };
|
|
11878
|
+
});
|
|
11879
|
+
var RangeEnd$$ = [RangeEnd$0, RangeEnd$1];
|
|
11880
|
+
function RangeEnd(ctx, state2) {
|
|
11881
|
+
return (0, import_lib4.$EVENT_C)(ctx, state2, "RangeEnd", RangeEnd$$);
|
|
11882
|
+
}
|
|
11883
|
+
var RangeExpression$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(Expression, __, RangeDots, Expression), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
11884
|
+
var start = $1;
|
|
11885
|
+
var ws = $2;
|
|
11886
|
+
var range = $3;
|
|
11887
|
+
var end = $4;
|
|
11888
|
+
return processRangeExpression(start, ws, range, end);
|
|
11889
|
+
});
|
|
11512
11890
|
var RangeExpression$1 = (0, import_lib4.$TS)((0, import_lib4.$S)(Expression, __, DotDot, (0, import_lib4.$Y)((0, import_lib4.$S)(__, CloseBracket))), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
11513
11891
|
var s = $1;
|
|
11514
11892
|
var ws = $2;
|
|
@@ -11523,7 +11901,10 @@ var RangeExpression$1 = (0, import_lib4.$TS)((0, import_lib4.$S)(Expression, __,
|
|
|
11523
11901
|
type: "Identifier",
|
|
11524
11902
|
name: "Infinity",
|
|
11525
11903
|
children: ["Infinity"]
|
|
11526
|
-
}
|
|
11904
|
+
},
|
|
11905
|
+
left: { inclusive: true, raw: "" },
|
|
11906
|
+
right: { inclusive: true, raw: "" },
|
|
11907
|
+
increasing: true
|
|
11527
11908
|
};
|
|
11528
11909
|
});
|
|
11529
11910
|
var RangeExpression$$ = [RangeExpression$0, RangeExpression$1];
|
|
@@ -11737,7 +12118,7 @@ var ArrayBulletDelimiter$$ = [ArrayBulletDelimiter$0, ArrayBulletDelimiter$1];
|
|
|
11737
12118
|
function ArrayBulletDelimiter(ctx, state2) {
|
|
11738
12119
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "ArrayBulletDelimiter", ArrayBulletDelimiter$$);
|
|
11739
12120
|
}
|
|
11740
|
-
var BulletIndent$0 = (0, import_lib4.$TV)((0, import_lib4.$C)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L47, 'BulletIndent "\u2022"'), (0, import_lib4.$EXPECT)($
|
|
12121
|
+
var BulletIndent$0 = (0, import_lib4.$TV)((0, import_lib4.$C)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L47, 'BulletIndent "\u2022"'), (0, import_lib4.$EXPECT)($R21, "BulletIndent /[ \\t]*/")), (0, import_lib4.$S)((0, import_lib4.$EXPECT)($L7, 'BulletIndent "."'), (0, import_lib4.$EXPECT)($R22, "BulletIndent /[ \\t]+/"))), function($skip, $loc, $0, $1) {
|
|
11741
12122
|
const [bullet, ws] = $1;
|
|
11742
12123
|
const indent = {
|
|
11743
12124
|
token: " " + ws,
|
|
@@ -11953,7 +12334,7 @@ var PropertyDefinition$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_l
|
|
|
11953
12334
|
var prop = $2;
|
|
11954
12335
|
return prepend(ws, prop);
|
|
11955
12336
|
});
|
|
11956
|
-
var PropertyDefinition$1 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$E)(_), (0, import_lib4.$TEXT)((0, import_lib4.$EXPECT)($
|
|
12337
|
+
var PropertyDefinition$1 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$E)(_), (0, import_lib4.$TEXT)((0, import_lib4.$EXPECT)($R23, "PropertyDefinition /[!+-]?/")), PropertyName, (0, import_lib4.$Y)(ObjectPropertyDelimiter)), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
11957
12338
|
var ws = $1;
|
|
11958
12339
|
var toggle = $2;
|
|
11959
12340
|
var id = $3;
|
|
@@ -12104,7 +12485,7 @@ function SnugNamedProperty(ctx, state2) {
|
|
|
12104
12485
|
var PropertyName$0 = NumericLiteral;
|
|
12105
12486
|
var PropertyName$1 = ComputedPropertyName;
|
|
12106
12487
|
var PropertyName$2 = StringLiteral;
|
|
12107
|
-
var PropertyName$3 = (0, import_lib4.$TV)((0, import_lib4.$TEXT)((0, import_lib4.$S)((0, import_lib4.$E)(IdentifierName), (0, import_lib4.$EXPECT)($L24, 'PropertyName "-"'), (0, import_lib4.$EXPECT)($
|
|
12488
|
+
var PropertyName$3 = (0, import_lib4.$TV)((0, import_lib4.$TEXT)((0, import_lib4.$S)((0, import_lib4.$E)(IdentifierName), (0, import_lib4.$EXPECT)($L24, 'PropertyName "-"'), (0, import_lib4.$EXPECT)($R24, "PropertyName /(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"))), function($skip, $loc, $0, $1) {
|
|
12108
12489
|
return {
|
|
12109
12490
|
token: `"${$1}"`,
|
|
12110
12491
|
$loc
|
|
@@ -12503,7 +12884,7 @@ var AssignmentOpSymbol$22 = (0, import_lib4.$T)((0, import_lib4.$EXPECT)($L71, '
|
|
|
12503
12884
|
var AssignmentOpSymbol$23 = (0, import_lib4.$T)((0, import_lib4.$EXPECT)($L72, 'AssignmentOpSymbol "?="'), function(value) {
|
|
12504
12885
|
return "??=";
|
|
12505
12886
|
});
|
|
12506
|
-
var AssignmentOpSymbol$24 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L3, 'AssignmentOpSymbol "="'), (0, import_lib4.$N)((0, import_lib4.$EXPECT)($
|
|
12887
|
+
var AssignmentOpSymbol$24 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L3, 'AssignmentOpSymbol "="'), (0, import_lib4.$N)((0, import_lib4.$EXPECT)($R25, "AssignmentOpSymbol /[=>]/"))), function(value) {
|
|
12507
12888
|
return value[0];
|
|
12508
12889
|
});
|
|
12509
12890
|
var AssignmentOpSymbol$25 = (0, import_lib4.$T)((0, import_lib4.$S)(CoffeeWordAssignmentOp), function(value) {
|
|
@@ -12556,7 +12937,7 @@ var IdentifierBinaryOp$0 = (0, import_lib4.$TV)(Identifier, function($skip, $loc
|
|
|
12556
12937
|
function IdentifierBinaryOp(ctx, state2) {
|
|
12557
12938
|
return (0, import_lib4.$EVENT)(ctx, state2, "IdentifierBinaryOp", IdentifierBinaryOp$0);
|
|
12558
12939
|
}
|
|
12559
|
-
var BinaryOp$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
12940
|
+
var BinaryOp$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R26, "BinaryOp /(?=\\p{ID_Start}|[_$^\u226A\u226B\u22D9\u2264\u2265\u2208\u220B\u2209\u220C\u2263\u2261\u2262\u2260=\u2A76\u2A75\u2016\u2047&|*\\/!?%\xF7<>\u29FA+-])/"), _BinaryOp), function(value) {
|
|
12560
12941
|
var op = value[1];
|
|
12561
12942
|
return op;
|
|
12562
12943
|
});
|
|
@@ -12701,7 +13082,7 @@ var BinaryOpSymbol$35 = (0, import_lib4.$TV)((0, import_lib4.$C)((0, import_lib4
|
|
|
12701
13082
|
prec: "^^"
|
|
12702
13083
|
};
|
|
12703
13084
|
});
|
|
12704
|
-
var BinaryOpSymbol$36 = (0, import_lib4.$TV)((0, import_lib4.$C)((0, import_lib4.$EXPECT)($
|
|
13085
|
+
var BinaryOpSymbol$36 = (0, import_lib4.$TV)((0, import_lib4.$C)((0, import_lib4.$EXPECT)($R27, "BinaryOpSymbol /!\\^\\^?/"), (0, import_lib4.$S)((0, import_lib4.$EXPECT)($L109, 'BinaryOpSymbol "xnor"'), NonIdContinue)), function($skip, $loc, $0, $1) {
|
|
12705
13086
|
return {
|
|
12706
13087
|
call: getHelperRef("xnor"),
|
|
12707
13088
|
special: true,
|
|
@@ -12865,24 +13246,24 @@ var Xor$$ = [Xor$0, Xor$1];
|
|
|
12865
13246
|
function Xor(ctx, state2) {
|
|
12866
13247
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "Xor", Xor$$);
|
|
12867
13248
|
}
|
|
12868
|
-
var Xnor$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
13249
|
+
var Xnor$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R27, "Xnor /!\\^\\^?/"));
|
|
12869
13250
|
var Xnor$1 = (0, import_lib4.$EXPECT)($L109, 'Xnor "xnor"');
|
|
12870
13251
|
var Xnor$$ = [Xnor$0, Xnor$1];
|
|
12871
13252
|
function Xnor(ctx, state2) {
|
|
12872
13253
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "Xnor", Xnor$$);
|
|
12873
13254
|
}
|
|
12874
|
-
var UnaryOp$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
13255
|
+
var UnaryOp$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R28, "UnaryOp /(?!\\+\\+|--)[!~+-](?!\\s)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
12875
13256
|
return { $loc, token: $0 };
|
|
12876
13257
|
});
|
|
12877
13258
|
var UnaryOp$1 = AwaitOp;
|
|
12878
|
-
var UnaryOp$2 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$C)(Delete, Void, Typeof), (0, import_lib4.$N)((0, import_lib4.$EXPECT)($
|
|
13259
|
+
var UnaryOp$2 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$C)(Delete, Void, Typeof), (0, import_lib4.$N)((0, import_lib4.$EXPECT)($R29, "UnaryOp /[:.]/")), (0, import_lib4.$E)(_)), function($skip, $loc, $0, $1, $2, $3) {
|
|
12879
13260
|
var op = $1;
|
|
12880
13261
|
var ws = $3;
|
|
12881
13262
|
if (!ws)
|
|
12882
13263
|
return [op, [" "]];
|
|
12883
13264
|
return [op, ws];
|
|
12884
13265
|
});
|
|
12885
|
-
var UnaryOp$3 = (0, import_lib4.$T)((0, import_lib4.$S)(Not, (0, import_lib4.$N)((0, import_lib4.$EXPECT)($
|
|
13266
|
+
var UnaryOp$3 = (0, import_lib4.$T)((0, import_lib4.$S)(Not, (0, import_lib4.$N)((0, import_lib4.$EXPECT)($R29, "UnaryOp /[:.]/")), (0, import_lib4.$E)((0, import_lib4.$EXPECT)($L18, 'UnaryOp " "')), (0, import_lib4.$E)(_)), function(value) {
|
|
12886
13267
|
return [value[0], value[3]];
|
|
12887
13268
|
});
|
|
12888
13269
|
var UnaryOp$$ = [UnaryOp$0, UnaryOp$1, UnaryOp$2, UnaryOp$3];
|
|
@@ -12969,7 +13350,7 @@ var PostfixedCommaExpression$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(Postfi
|
|
|
12969
13350
|
function PostfixedCommaExpression(ctx, state2) {
|
|
12970
13351
|
return (0, import_lib4.$EVENT)(ctx, state2, "PostfixedCommaExpression", PostfixedCommaExpression$0);
|
|
12971
13352
|
}
|
|
12972
|
-
var PostfixStatement$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
13353
|
+
var PostfixStatement$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R30, "PostfixStatement /(?=for|if|loop|unless|until|while)/"), _PostfixStatement), function(value) {
|
|
12973
13354
|
return value[1];
|
|
12974
13355
|
});
|
|
12975
13356
|
function PostfixStatement(ctx, state2) {
|
|
@@ -13009,7 +13390,9 @@ function Statement(ctx, state2) {
|
|
|
13009
13390
|
}
|
|
13010
13391
|
var ShouldExpressionize$0 = AllowedTrailingCallExpressions;
|
|
13011
13392
|
var ShouldExpressionize$1 = (0, import_lib4.$S)(NotDedented, Pipe);
|
|
13012
|
-
var ShouldExpressionize
|
|
13393
|
+
var ShouldExpressionize$2 = BinaryOpRHS;
|
|
13394
|
+
var ShouldExpressionize$3 = UnaryPostfix;
|
|
13395
|
+
var ShouldExpressionize$$ = [ShouldExpressionize$0, ShouldExpressionize$1, ShouldExpressionize$2, ShouldExpressionize$3];
|
|
13013
13396
|
function ShouldExpressionize(ctx, state2) {
|
|
13014
13397
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "ShouldExpressionize", ShouldExpressionize$$);
|
|
13015
13398
|
}
|
|
@@ -13160,7 +13543,7 @@ var IfClause$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$C)(If
|
|
|
13160
13543
|
function IfClause(ctx, state2) {
|
|
13161
13544
|
return (0, import_lib4.$EVENT)(ctx, state2, "IfClause", IfClause$0);
|
|
13162
13545
|
}
|
|
13163
|
-
var IterationStatement$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
13546
|
+
var IterationStatement$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R31, "IterationStatement /(?=loop|comptime|do|for|until|while)/"), _IterationStatement), function(value) {
|
|
13164
13547
|
return value[1];
|
|
13165
13548
|
});
|
|
13166
13549
|
function IterationStatement(ctx, state2) {
|
|
@@ -13712,12 +14095,14 @@ var CaseClause$3 = (0, import_lib4.$TS)((0, import_lib4.$S)(Default, ImpliedColo
|
|
|
13712
14095
|
};
|
|
13713
14096
|
});
|
|
13714
14097
|
var CaseClause$4 = (0, import_lib4.$TS)((0, import_lib4.$S)(Else, ImpliedColon, (0, import_lib4.$C)(ThenClause, BracedBlock, EmptyBlock)), function($skip, $loc, $0, $1, $2, $3) {
|
|
14098
|
+
var e = $1;
|
|
14099
|
+
var colon = $2;
|
|
13715
14100
|
var block = $3;
|
|
13716
|
-
|
|
14101
|
+
e = { ...e, token: "default" };
|
|
13717
14102
|
return {
|
|
13718
14103
|
type: "DefaultClause",
|
|
13719
14104
|
block,
|
|
13720
|
-
children:
|
|
14105
|
+
children: [e, colon, block]
|
|
13721
14106
|
};
|
|
13722
14107
|
});
|
|
13723
14108
|
var CaseClause$$ = [CaseClause$0, CaseClause$1, CaseClause$2, CaseClause$3, CaseClause$4];
|
|
@@ -13788,36 +14173,56 @@ var IgnoreColon$0 = (0, import_lib4.$TV)((0, import_lib4.$E)((0, import_lib4.$S)
|
|
|
13788
14173
|
function IgnoreColon(ctx, state2) {
|
|
13789
14174
|
return (0, import_lib4.$EVENT)(ctx, state2, "IgnoreColon", IgnoreColon$0);
|
|
13790
14175
|
}
|
|
13791
|
-
var TryStatement$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(Try, (0, import_lib4.$N)((0, import_lib4.$EXPECT)($L16, 'TryStatement ":"')), NoPostfixBracedOrEmptyBlock, (0, import_lib4.$
|
|
14176
|
+
var TryStatement$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(Try, (0, import_lib4.$N)((0, import_lib4.$EXPECT)($L16, 'TryStatement ":"')), NoPostfixBracedOrEmptyBlock, (0, import_lib4.$Q)(CatchClause), (0, import_lib4.$E)(ElseClause), (0, import_lib4.$E)(FinallyClause)), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6) {
|
|
13792
14177
|
return processTryBlock($0);
|
|
13793
14178
|
});
|
|
13794
14179
|
function TryStatement(ctx, state2) {
|
|
13795
14180
|
return (0, import_lib4.$EVENT)(ctx, state2, "TryStatement", TryStatement$0);
|
|
13796
14181
|
}
|
|
13797
|
-
var CatchClause$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$C)(Nested, _), Catch, (0, import_lib4.$E)(
|
|
14182
|
+
var CatchClause$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$C)(Nested, _), Catch, (0, import_lib4.$E)(CatchBinding), (0, import_lib4.$C)(BracedThenClause, BracedOrEmptyBlock)), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
14183
|
+
var binding = $3;
|
|
13798
14184
|
var block = $4;
|
|
13799
14185
|
return {
|
|
13800
14186
|
type: "CatchClause",
|
|
13801
14187
|
children: $0,
|
|
13802
|
-
block
|
|
14188
|
+
block,
|
|
14189
|
+
binding
|
|
13803
14190
|
};
|
|
13804
14191
|
});
|
|
13805
14192
|
function CatchClause(ctx, state2) {
|
|
13806
14193
|
return (0, import_lib4.$EVENT)(ctx, state2, "CatchClause", CatchClause$0);
|
|
13807
14194
|
}
|
|
13808
|
-
var
|
|
13809
|
-
var
|
|
14195
|
+
var CatchBinding$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$E)(_), OpenParen, __, AllowAll, (0, import_lib4.$E)(CatchParameter), RestoreAll, __, CloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8) {
|
|
14196
|
+
var ws1 = $1;
|
|
14197
|
+
var open = $2;
|
|
14198
|
+
var ws2 = $3;
|
|
14199
|
+
var parameter = $5;
|
|
14200
|
+
var ws3 = $7;
|
|
14201
|
+
var close = $8;
|
|
14202
|
+
if (!parameter)
|
|
14203
|
+
return $skip;
|
|
14204
|
+
return {
|
|
14205
|
+
type: "CatchBinding",
|
|
14206
|
+
parameter,
|
|
14207
|
+
children: [ws1, open, ws2, parameter, ws3, close]
|
|
14208
|
+
};
|
|
14209
|
+
});
|
|
14210
|
+
var CatchBinding$1 = (0, import_lib4.$TS)((0, import_lib4.$S)(_, InsertOpenParen, (0, import_lib4.$N)(EOS), ForbidIndentedApplication, (0, import_lib4.$E)(CatchParameter), RestoreIndentedApplication, InsertCloseParen), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7) {
|
|
13810
14211
|
var ws = $1;
|
|
13811
14212
|
var open = $2;
|
|
13812
|
-
var
|
|
14213
|
+
var parameter = $5;
|
|
13813
14214
|
var close = $7;
|
|
13814
|
-
if (!
|
|
14215
|
+
if (!parameter)
|
|
13815
14216
|
return $skip;
|
|
13816
|
-
return
|
|
14217
|
+
return {
|
|
14218
|
+
type: "CatchBinding",
|
|
14219
|
+
parameter,
|
|
14220
|
+
children: [ws, open, parameter, close]
|
|
14221
|
+
};
|
|
13817
14222
|
});
|
|
13818
|
-
var
|
|
13819
|
-
function
|
|
13820
|
-
return (0, import_lib4.$EVENT_C)(ctx, state2, "
|
|
14223
|
+
var CatchBinding$$ = [CatchBinding$0, CatchBinding$1];
|
|
14224
|
+
function CatchBinding(ctx, state2) {
|
|
14225
|
+
return (0, import_lib4.$EVENT_C)(ctx, state2, "CatchBinding", CatchBinding$$);
|
|
13821
14226
|
}
|
|
13822
14227
|
var FinallyClause$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$C)(Nested, _), Finally, (0, import_lib4.$C)(BracedThenClause, BracedOrEmptyBlock)), function($skip, $loc, $0, $1, $2, $3) {
|
|
13823
14228
|
var block = $3;
|
|
@@ -13830,9 +14235,34 @@ var FinallyClause$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$
|
|
|
13830
14235
|
function FinallyClause(ctx, state2) {
|
|
13831
14236
|
return (0, import_lib4.$EVENT)(ctx, state2, "FinallyClause", FinallyClause$0);
|
|
13832
14237
|
}
|
|
13833
|
-
var CatchParameter$0 = (0, import_lib4.$S)(BindingIdentifier, (0, import_lib4.$E)(TypeSuffix))
|
|
13834
|
-
var
|
|
13835
|
-
var
|
|
14238
|
+
var CatchParameter$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(BindingIdentifier, (0, import_lib4.$E)(TypeSuffix)), function($skip, $loc, $0, $1, $2) {
|
|
14239
|
+
var binding = $1;
|
|
14240
|
+
var typeSuffix = $2;
|
|
14241
|
+
return {
|
|
14242
|
+
type: "CatchParameter",
|
|
14243
|
+
binding,
|
|
14244
|
+
typeSuffix,
|
|
14245
|
+
children: $0
|
|
14246
|
+
};
|
|
14247
|
+
});
|
|
14248
|
+
var CatchParameter$1 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$C)(ObjectBindingPattern, ArrayBindingPattern), TypeSuffix), function($skip, $loc, $0, $1, $2) {
|
|
14249
|
+
var binding = $1;
|
|
14250
|
+
var typeSuffix = $2;
|
|
14251
|
+
return {
|
|
14252
|
+
type: "CatchParameter",
|
|
14253
|
+
binding,
|
|
14254
|
+
typeSuffix,
|
|
14255
|
+
children: [binding, typeSuffix]
|
|
14256
|
+
};
|
|
14257
|
+
});
|
|
14258
|
+
var CatchParameter$2 = (0, import_lib4.$TS)((0, import_lib4.$S)(PatternExpressionList), function($skip, $loc, $0, $1) {
|
|
14259
|
+
return {
|
|
14260
|
+
type: "CatchPattern",
|
|
14261
|
+
children: $0,
|
|
14262
|
+
patterns: $1
|
|
14263
|
+
};
|
|
14264
|
+
});
|
|
14265
|
+
var CatchParameter$$ = [CatchParameter$0, CatchParameter$1, CatchParameter$2];
|
|
13836
14266
|
function CatchParameter(ctx, state2) {
|
|
13837
14267
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "CatchParameter", CatchParameter$$);
|
|
13838
14268
|
}
|
|
@@ -14600,7 +15030,7 @@ var UnprocessedModuleSpecifier$$ = [UnprocessedModuleSpecifier$0, UnprocessedMod
|
|
|
14600
15030
|
function UnprocessedModuleSpecifier(ctx, state2) {
|
|
14601
15031
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "UnprocessedModuleSpecifier", UnprocessedModuleSpecifier$$);
|
|
14602
15032
|
}
|
|
14603
|
-
var UnquotedSpecifier$0 = (0, import_lib4.$TV)((0, import_lib4.$EXPECT)($
|
|
15033
|
+
var UnquotedSpecifier$0 = (0, import_lib4.$TV)((0, import_lib4.$EXPECT)($R32, 'UnquotedSpecifier /[^;"\\s]+/'), function($skip, $loc, $0, $1) {
|
|
14604
15034
|
var spec = $0;
|
|
14605
15035
|
return { $loc, token: `"${spec}"` };
|
|
14606
15036
|
});
|
|
@@ -14860,7 +15290,7 @@ var VariableDeclarationList$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(Lexical
|
|
|
14860
15290
|
function VariableDeclarationList(ctx, state2) {
|
|
14861
15291
|
return (0, import_lib4.$EVENT)(ctx, state2, "VariableDeclarationList", VariableDeclarationList$0);
|
|
14862
15292
|
}
|
|
14863
|
-
var NumericLiteral$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
15293
|
+
var NumericLiteral$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R33, "NumericLiteral /(?=[0-9.])/"), NumericLiteralKind), function($skip, $loc, $0, $1, $2) {
|
|
14864
15294
|
var token = $2;
|
|
14865
15295
|
return { type: "NumericLiteral", $loc, token };
|
|
14866
15296
|
});
|
|
@@ -14876,36 +15306,36 @@ var NumericLiteralKind$$ = [NumericLiteralKind$0, NumericLiteralKind$1, NumericL
|
|
|
14876
15306
|
function NumericLiteralKind(ctx, state2) {
|
|
14877
15307
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "NumericLiteralKind", NumericLiteralKind$$);
|
|
14878
15308
|
}
|
|
14879
|
-
var DecimalBigIntegerLiteral$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15309
|
+
var DecimalBigIntegerLiteral$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R34, "DecimalBigIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)n/"));
|
|
14880
15310
|
function DecimalBigIntegerLiteral(ctx, state2) {
|
|
14881
15311
|
return (0, import_lib4.$EVENT)(ctx, state2, "DecimalBigIntegerLiteral", DecimalBigIntegerLiteral$0);
|
|
14882
15312
|
}
|
|
14883
|
-
var DecimalLiteral$0 = (0, import_lib4.$TV)((0, import_lib4.$TEXT)((0, import_lib4.$EXPECT)($
|
|
15313
|
+
var DecimalLiteral$0 = (0, import_lib4.$TV)((0, import_lib4.$TEXT)((0, import_lib4.$EXPECT)($R35, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?=\\.(?:\\p{ID_Start}|[_$]))/")), function($skip, $loc, $0, $1) {
|
|
14884
15314
|
return $1 + ".";
|
|
14885
15315
|
});
|
|
14886
|
-
var DecimalLiteral$1 = (0, import_lib4.$TEXT)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
14887
|
-
var DecimalLiteral$2 = (0, import_lib4.$TEXT)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
15316
|
+
var DecimalLiteral$1 = (0, import_lib4.$TEXT)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R36, "DecimalLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)(?:\\.(?:[0-9](?:_[0-9]|[0-9])*))?/"), (0, import_lib4.$E)(ExponentPart)));
|
|
15317
|
+
var DecimalLiteral$2 = (0, import_lib4.$TEXT)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R37, "DecimalLiteral /(?:\\.[0-9](?:_[0-9]|[0-9])*)/"), (0, import_lib4.$E)(ExponentPart)));
|
|
14888
15318
|
var DecimalLiteral$$ = [DecimalLiteral$0, DecimalLiteral$1, DecimalLiteral$2];
|
|
14889
15319
|
function DecimalLiteral(ctx, state2) {
|
|
14890
15320
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "DecimalLiteral", DecimalLiteral$$);
|
|
14891
15321
|
}
|
|
14892
|
-
var ExponentPart$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15322
|
+
var ExponentPart$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R38, "ExponentPart /(?:[eE][+-]?[0-9]+(?:_[0-9]|[0-9])*)/"));
|
|
14893
15323
|
function ExponentPart(ctx, state2) {
|
|
14894
15324
|
return (0, import_lib4.$EVENT)(ctx, state2, "ExponentPart", ExponentPart$0);
|
|
14895
15325
|
}
|
|
14896
|
-
var BinaryIntegerLiteral$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15326
|
+
var BinaryIntegerLiteral$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R39, "BinaryIntegerLiteral /0[bB][01](?:[01]|_[01])*n?/"));
|
|
14897
15327
|
function BinaryIntegerLiteral(ctx, state2) {
|
|
14898
15328
|
return (0, import_lib4.$EVENT)(ctx, state2, "BinaryIntegerLiteral", BinaryIntegerLiteral$0);
|
|
14899
15329
|
}
|
|
14900
|
-
var OctalIntegerLiteral$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15330
|
+
var OctalIntegerLiteral$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R40, "OctalIntegerLiteral /0[oO][0-7](?:[0-7]|_[0-7])*n?/"));
|
|
14901
15331
|
function OctalIntegerLiteral(ctx, state2) {
|
|
14902
15332
|
return (0, import_lib4.$EVENT)(ctx, state2, "OctalIntegerLiteral", OctalIntegerLiteral$0);
|
|
14903
15333
|
}
|
|
14904
|
-
var HexIntegerLiteral$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15334
|
+
var HexIntegerLiteral$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R41, "HexIntegerLiteral /0[xX][0-9a-fA-F](?:[0-9a-fA-F]|_[0-9a-fA-F])*n?/"));
|
|
14905
15335
|
function HexIntegerLiteral(ctx, state2) {
|
|
14906
15336
|
return (0, import_lib4.$EVENT)(ctx, state2, "HexIntegerLiteral", HexIntegerLiteral$0);
|
|
14907
15337
|
}
|
|
14908
|
-
var IntegerLiteral$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
15338
|
+
var IntegerLiteral$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R42, "IntegerLiteral /(?=[0-9])/"), IntegerLiteralKind), function($skip, $loc, $0, $1, $2) {
|
|
14909
15339
|
var token = $2;
|
|
14910
15340
|
return { $loc, token };
|
|
14911
15341
|
});
|
|
@@ -14921,7 +15351,7 @@ var IntegerLiteralKind$$ = [IntegerLiteralKind$0, IntegerLiteralKind$1, IntegerL
|
|
|
14921
15351
|
function IntegerLiteralKind(ctx, state2) {
|
|
14922
15352
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "IntegerLiteralKind", IntegerLiteralKind$$);
|
|
14923
15353
|
}
|
|
14924
|
-
var DecimalIntegerLiteral$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15354
|
+
var DecimalIntegerLiteral$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R43, "DecimalIntegerLiteral /(?:0|[1-9](?:_[0-9]|[0-9])*)/"));
|
|
14925
15355
|
function DecimalIntegerLiteral(ctx, state2) {
|
|
14926
15356
|
return (0, import_lib4.$EVENT)(ctx, state2, "DecimalIntegerLiteral", DecimalIntegerLiteral$0);
|
|
14927
15357
|
}
|
|
@@ -14945,25 +15375,25 @@ var StringLiteral$$ = [StringLiteral$0, StringLiteral$1];
|
|
|
14945
15375
|
function StringLiteral(ctx, state2) {
|
|
14946
15376
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "StringLiteral", StringLiteral$$);
|
|
14947
15377
|
}
|
|
14948
|
-
var DoubleStringCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15378
|
+
var DoubleStringCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R44, 'DoubleStringCharacters /(?:\\\\.|[^"])*/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
14949
15379
|
return { $loc, token: $0 };
|
|
14950
15380
|
});
|
|
14951
15381
|
function DoubleStringCharacters(ctx, state2) {
|
|
14952
15382
|
return (0, import_lib4.$EVENT)(ctx, state2, "DoubleStringCharacters", DoubleStringCharacters$0);
|
|
14953
15383
|
}
|
|
14954
|
-
var SingleStringCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15384
|
+
var SingleStringCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R45, "SingleStringCharacters /(?:\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
14955
15385
|
return { $loc, token: $0 };
|
|
14956
15386
|
});
|
|
14957
15387
|
function SingleStringCharacters(ctx, state2) {
|
|
14958
15388
|
return (0, import_lib4.$EVENT)(ctx, state2, "SingleStringCharacters", SingleStringCharacters$0);
|
|
14959
15389
|
}
|
|
14960
|
-
var TripleDoubleStringCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15390
|
+
var TripleDoubleStringCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R46, 'TripleDoubleStringCharacters /(?:"(?!"")|#(?!\\{)|\\\\.|[^#"])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
14961
15391
|
return { $loc, token: $0 };
|
|
14962
15392
|
});
|
|
14963
15393
|
function TripleDoubleStringCharacters(ctx, state2) {
|
|
14964
15394
|
return (0, import_lib4.$EVENT)(ctx, state2, "TripleDoubleStringCharacters", TripleDoubleStringCharacters$0);
|
|
14965
15395
|
}
|
|
14966
|
-
var TripleSingleStringCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15396
|
+
var TripleSingleStringCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R47, "TripleSingleStringCharacters /(?:'(?!'')|\\\\.|[^'])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
14967
15397
|
return { $loc, token: $0 };
|
|
14968
15398
|
});
|
|
14969
15399
|
function TripleSingleStringCharacters(ctx, state2) {
|
|
@@ -14986,7 +15416,7 @@ var CoffeeInterpolatedDoubleQuotedString$0 = (0, import_lib4.$TS)((0, import_lib
|
|
|
14986
15416
|
function CoffeeInterpolatedDoubleQuotedString(ctx, state2) {
|
|
14987
15417
|
return (0, import_lib4.$EVENT)(ctx, state2, "CoffeeInterpolatedDoubleQuotedString", CoffeeInterpolatedDoubleQuotedString$0);
|
|
14988
15418
|
}
|
|
14989
|
-
var CoffeeDoubleQuotedStringCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15419
|
+
var CoffeeDoubleQuotedStringCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R48, 'CoffeeDoubleQuotedStringCharacters /(?:\\\\.|#(?!\\{)|[^"#])+/'), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
14990
15420
|
return { $loc, token: $0 };
|
|
14991
15421
|
});
|
|
14992
15422
|
function CoffeeDoubleQuotedStringCharacters(ctx, state2) {
|
|
@@ -15006,7 +15436,7 @@ var RegularExpressionClass$0 = (0, import_lib4.$TV)((0, import_lib4.$TEXT)((0, i
|
|
|
15006
15436
|
function RegularExpressionClass(ctx, state2) {
|
|
15007
15437
|
return (0, import_lib4.$EVENT)(ctx, state2, "RegularExpressionClass", RegularExpressionClass$0);
|
|
15008
15438
|
}
|
|
15009
|
-
var RegularExpressionClassCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15439
|
+
var RegularExpressionClassCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R49, "RegularExpressionClassCharacters /(?:\\\\.|[^\\]])*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15010
15440
|
return { $loc, token: $0 };
|
|
15011
15441
|
});
|
|
15012
15442
|
function RegularExpressionClassCharacters(ctx, state2) {
|
|
@@ -15063,7 +15493,7 @@ var HeregexPart$1 = (0, import_lib4.$T)((0, import_lib4.$S)(CoffeeStringSubstitu
|
|
|
15063
15493
|
var HeregexPart$2 = (0, import_lib4.$T)((0, import_lib4.$S)(TemplateSubstitution), function(value) {
|
|
15064
15494
|
return { "type": "Substitution", "children": value[0] };
|
|
15065
15495
|
});
|
|
15066
|
-
var HeregexPart$3 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15496
|
+
var HeregexPart$3 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R50, "HeregexPart /(?:\\\\.)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15067
15497
|
let token = $0;
|
|
15068
15498
|
switch ($0[1]) {
|
|
15069
15499
|
case "\n":
|
|
@@ -15081,13 +15511,13 @@ var HeregexPart$3 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R49, "Heregex
|
|
|
15081
15511
|
var HeregexPart$4 = (0, import_lib4.$TS)((0, import_lib4.$S)(HeregexComment), function($skip, $loc, $0, $1) {
|
|
15082
15512
|
return { $loc, token: "" };
|
|
15083
15513
|
});
|
|
15084
|
-
var HeregexPart$5 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15514
|
+
var HeregexPart$5 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R51, "HeregexPart /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15085
15515
|
return { $loc, token: "" };
|
|
15086
15516
|
});
|
|
15087
|
-
var HeregexPart$6 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15517
|
+
var HeregexPart$6 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R52, "HeregexPart /\\/(?!\\/\\/)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15088
15518
|
return { $loc, token: "\\/" };
|
|
15089
15519
|
});
|
|
15090
|
-
var HeregexPart$7 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15520
|
+
var HeregexPart$7 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R53, "HeregexPart /[^[\\/\\s#\\\\]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15091
15521
|
return { $loc, token: $0 };
|
|
15092
15522
|
});
|
|
15093
15523
|
var HeregexPart$$ = [HeregexPart$0, HeregexPart$1, HeregexPart$2, HeregexPart$3, HeregexPart$4, HeregexPart$5, HeregexPart$6, HeregexPart$7];
|
|
@@ -15100,7 +15530,7 @@ var HeregexComment$$ = [HeregexComment$0, HeregexComment$1];
|
|
|
15100
15530
|
function HeregexComment(ctx, state2) {
|
|
15101
15531
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "HeregexComment", HeregexComment$$);
|
|
15102
15532
|
}
|
|
15103
|
-
var RegularExpressionBody$0 = (0, import_lib4.$S)((0, import_lib4.$N)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15533
|
+
var RegularExpressionBody$0 = (0, import_lib4.$S)((0, import_lib4.$N)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R54, "RegularExpressionBody /[*\\/\\r\\n]/"))), (0, import_lib4.$Q)(RegExpPart));
|
|
15104
15534
|
function RegularExpressionBody(ctx, state2) {
|
|
15105
15535
|
return (0, import_lib4.$EVENT)(ctx, state2, "RegularExpressionBody", RegularExpressionBody$0);
|
|
15106
15536
|
}
|
|
@@ -15110,15 +15540,15 @@ var RegExpPart$$ = [RegExpPart$0, RegExpPart$1];
|
|
|
15110
15540
|
function RegExpPart(ctx, state2) {
|
|
15111
15541
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "RegExpPart", RegExpPart$$);
|
|
15112
15542
|
}
|
|
15113
|
-
var RegExpCharacter$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15543
|
+
var RegExpCharacter$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R55, "RegExpCharacter /(?:\\\\.|[^[\\/\\r\\n])+/"));
|
|
15114
15544
|
function RegExpCharacter(ctx, state2) {
|
|
15115
15545
|
return (0, import_lib4.$EVENT)(ctx, state2, "RegExpCharacter", RegExpCharacter$0);
|
|
15116
15546
|
}
|
|
15117
|
-
var RegularExpressionFlags$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15547
|
+
var RegularExpressionFlags$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R56, "RegularExpressionFlags /(?:\\p{ID_Continue}|[\\u200C\\u200D$])*/"));
|
|
15118
15548
|
function RegularExpressionFlags(ctx, state2) {
|
|
15119
15549
|
return (0, import_lib4.$EVENT)(ctx, state2, "RegularExpressionFlags", RegularExpressionFlags$0);
|
|
15120
15550
|
}
|
|
15121
|
-
var TemplateLiteral$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
15551
|
+
var TemplateLiteral$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R57, "TemplateLiteral /(?=[`'\"])/"), _TemplateLiteral), function(value) {
|
|
15122
15552
|
return value[1];
|
|
15123
15553
|
});
|
|
15124
15554
|
function TemplateLiteral(ctx, state2) {
|
|
@@ -15158,28 +15588,28 @@ var TemplateSubstitution$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(Substituti
|
|
|
15158
15588
|
function TemplateSubstitution(ctx, state2) {
|
|
15159
15589
|
return (0, import_lib4.$EVENT)(ctx, state2, "TemplateSubstitution", TemplateSubstitution$0);
|
|
15160
15590
|
}
|
|
15161
|
-
var TemplateCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15591
|
+
var TemplateCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R58, "TemplateCharacters /(?:\\$(?!\\{)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15162
15592
|
return { $loc, token: $0 };
|
|
15163
15593
|
});
|
|
15164
15594
|
function TemplateCharacters(ctx, state2) {
|
|
15165
15595
|
return (0, import_lib4.$EVENT)(ctx, state2, "TemplateCharacters", TemplateCharacters$0);
|
|
15166
15596
|
}
|
|
15167
|
-
var TemplateBlockCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15597
|
+
var TemplateBlockCharacters$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R59, "TemplateBlockCharacters /(?:\\$(?!\\{)|`(?!``)|\\\\.|[^$`])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15168
15598
|
return { $loc, token: $0 };
|
|
15169
15599
|
});
|
|
15170
15600
|
function TemplateBlockCharacters(ctx, state2) {
|
|
15171
15601
|
return (0, import_lib4.$EVENT)(ctx, state2, "TemplateBlockCharacters", TemplateBlockCharacters$0);
|
|
15172
15602
|
}
|
|
15173
|
-
var ReservedWord$0 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15174
|
-
var ReservedWord$1 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15175
|
-
var ReservedWord$2 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15176
|
-
var ReservedWord$3 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15177
|
-
var ReservedWord$4 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15603
|
+
var ReservedWord$0 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R60, "ReservedWord /(?:on|off|yes|no)(?!\\p{ID_Continue})/")), CoffeeBooleansEnabled);
|
|
15604
|
+
var ReservedWord$1 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R61, "ReservedWord /(?:isnt)(?!\\p{ID_Continue})/")), CoffeeIsntEnabled);
|
|
15605
|
+
var ReservedWord$2 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R62, "ReservedWord /(?:by)(?!\\p{ID_Continue})/")), CoffeeForLoopsEnabled);
|
|
15606
|
+
var ReservedWord$3 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R63, "ReservedWord /(?:of)(?!\\p{ID_Continue})/")), CoffeeOfEnabled);
|
|
15607
|
+
var ReservedWord$4 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R64, "ReservedWord /(?:and|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|let|loop|new|not|null|or|private|protected|public|return|static|super|switch|this|throw|true|try|typeof|unless|until|var|void|while|with|yield)(?!\\p{ID_Continue})/"));
|
|
15178
15608
|
var ReservedWord$$ = [ReservedWord$0, ReservedWord$1, ReservedWord$2, ReservedWord$3, ReservedWord$4];
|
|
15179
15609
|
function ReservedWord(ctx, state2) {
|
|
15180
15610
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "ReservedWord", ReservedWord$$);
|
|
15181
15611
|
}
|
|
15182
|
-
var Comment$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
15612
|
+
var Comment$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R65, "Comment /(?=\\/|#)/"), _Comment), function(value) {
|
|
15183
15613
|
return value[1];
|
|
15184
15614
|
});
|
|
15185
15615
|
function Comment(ctx, state2) {
|
|
@@ -15197,7 +15627,7 @@ var SingleLineComment$$ = [SingleLineComment$0, SingleLineComment$1];
|
|
|
15197
15627
|
function SingleLineComment(ctx, state2) {
|
|
15198
15628
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "SingleLineComment", SingleLineComment$$);
|
|
15199
15629
|
}
|
|
15200
|
-
var JSSingleLineComment$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15630
|
+
var JSSingleLineComment$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R66, "JSSingleLineComment /\\/\\/(?!\\/)[^\\r\\n]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15201
15631
|
return { type: "Comment", $loc, token: $0 };
|
|
15202
15632
|
});
|
|
15203
15633
|
function JSSingleLineComment(ctx, state2) {
|
|
@@ -15209,30 +15639,30 @@ var MultiLineComment$$ = [MultiLineComment$0, MultiLineComment$1];
|
|
|
15209
15639
|
function MultiLineComment(ctx, state2) {
|
|
15210
15640
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "MultiLineComment", MultiLineComment$$);
|
|
15211
15641
|
}
|
|
15212
|
-
var JSMultiLineComment$0 = (0, import_lib4.$TV)((0, import_lib4.$TEXT)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L130, 'JSMultiLineComment "/*"'), (0, import_lib4.$Q)((0, import_lib4.$S)((0, import_lib4.$N)((0, import_lib4.$EXPECT)($L131, 'JSMultiLineComment "*/"')), (0, import_lib4.$EXPECT)($
|
|
15642
|
+
var JSMultiLineComment$0 = (0, import_lib4.$TV)((0, import_lib4.$TEXT)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L130, 'JSMultiLineComment "/*"'), (0, import_lib4.$Q)((0, import_lib4.$S)((0, import_lib4.$N)((0, import_lib4.$EXPECT)($L131, 'JSMultiLineComment "*/"')), (0, import_lib4.$EXPECT)($R67, "JSMultiLineComment /./"))), (0, import_lib4.$EXPECT)($L131, 'JSMultiLineComment "*/"'))), function($skip, $loc, $0, $1) {
|
|
15213
15643
|
return { type: "Comment", $loc, token: $1 };
|
|
15214
15644
|
});
|
|
15215
15645
|
function JSMultiLineComment(ctx, state2) {
|
|
15216
15646
|
return (0, import_lib4.$EVENT)(ctx, state2, "JSMultiLineComment", JSMultiLineComment$0);
|
|
15217
15647
|
}
|
|
15218
|
-
var CoffeeSingleLineComment$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15648
|
+
var CoffeeSingleLineComment$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R68, "CoffeeSingleLineComment /#(?!##(?!#))([^\\r\\n]*)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15219
15649
|
return { type: "Comment", $loc, token: `//${$1}` };
|
|
15220
15650
|
});
|
|
15221
15651
|
function CoffeeSingleLineComment(ctx, state2) {
|
|
15222
15652
|
return (0, import_lib4.$EVENT)(ctx, state2, "CoffeeSingleLineComment", CoffeeSingleLineComment$0);
|
|
15223
15653
|
}
|
|
15224
|
-
var CoffeeMultiLineComment$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(CoffeeHereCommentStart, (0, import_lib4.$TEXT)((0, import_lib4.$EXPECT)($
|
|
15654
|
+
var CoffeeMultiLineComment$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(CoffeeHereCommentStart, (0, import_lib4.$TEXT)((0, import_lib4.$EXPECT)($R69, "CoffeeMultiLineComment /[^]*?###/"))), function($skip, $loc, $0, $1, $2) {
|
|
15225
15655
|
$2 = $2.slice(0, $2.length - 3).replace(/\*\//g, "* /");
|
|
15226
15656
|
return { type: "Comment", $loc, token: `/*${$2}*/` };
|
|
15227
15657
|
});
|
|
15228
15658
|
function CoffeeMultiLineComment(ctx, state2) {
|
|
15229
15659
|
return (0, import_lib4.$EVENT)(ctx, state2, "CoffeeMultiLineComment", CoffeeMultiLineComment$0);
|
|
15230
15660
|
}
|
|
15231
|
-
var CoffeeHereCommentStart$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15661
|
+
var CoffeeHereCommentStart$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R70, "CoffeeHereCommentStart /###(?!#)/"));
|
|
15232
15662
|
function CoffeeHereCommentStart(ctx, state2) {
|
|
15233
15663
|
return (0, import_lib4.$EVENT)(ctx, state2, "CoffeeHereCommentStart", CoffeeHereCommentStart$0);
|
|
15234
15664
|
}
|
|
15235
|
-
var InlineComment$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15665
|
+
var InlineComment$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R71, "InlineComment /\\/\\*(?:(?!\\*\\/)[^\\r\\n])*\\*\\//"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15236
15666
|
return { $loc, token: $0 };
|
|
15237
15667
|
});
|
|
15238
15668
|
function InlineComment(ctx, state2) {
|
|
@@ -15246,13 +15676,13 @@ var TrailingComment$0 = (0, import_lib4.$S)((0, import_lib4.$E)(_), (0, import_l
|
|
|
15246
15676
|
function TrailingComment(ctx, state2) {
|
|
15247
15677
|
return (0, import_lib4.$EVENT)(ctx, state2, "TrailingComment", TrailingComment$0);
|
|
15248
15678
|
}
|
|
15249
|
-
var _$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
15679
|
+
var _$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R72, "_ /(?=[ \\t\\/\\\\])/"), (0, import_lib4.$P)((0, import_lib4.$C)(NonNewlineWhitespace, InlineComment))), function(value) {
|
|
15250
15680
|
return value[1];
|
|
15251
15681
|
});
|
|
15252
15682
|
function _(ctx, state2) {
|
|
15253
15683
|
return (0, import_lib4.$EVENT)(ctx, state2, "_", _$0);
|
|
15254
15684
|
}
|
|
15255
|
-
var NonNewlineWhitespace$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15685
|
+
var NonNewlineWhitespace$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R22, "NonNewlineWhitespace /[ \\t]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15256
15686
|
return { $loc, token: $0 };
|
|
15257
15687
|
});
|
|
15258
15688
|
var NonNewlineWhitespace$1 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L132, 'NonNewlineWhitespace "\\\\\\\\"'), CoffeeLineContinuationEnabled, EOL), function(value) {
|
|
@@ -15269,7 +15699,7 @@ var Trimmed_$0 = (0, import_lib4.$TV)(_, function($skip, $loc, $0, $1) {
|
|
|
15269
15699
|
function Trimmed_(ctx, state2) {
|
|
15270
15700
|
return (0, import_lib4.$EVENT)(ctx, state2, "Trimmed_", Trimmed_$0);
|
|
15271
15701
|
}
|
|
15272
|
-
var __$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
15702
|
+
var __$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R73, "__ /(?=\\s|\\/|#)/"), (0, import_lib4.$Q)((0, import_lib4.$C)(Whitespace, Comment))), function(value) {
|
|
15273
15703
|
return value[1];
|
|
15274
15704
|
});
|
|
15275
15705
|
var __$1 = (0, import_lib4.$EXPECT)($L0, '__ ""');
|
|
@@ -15277,7 +15707,7 @@ var __$$ = [__$0, __$1];
|
|
|
15277
15707
|
function __(ctx, state2) {
|
|
15278
15708
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "__", __$$);
|
|
15279
15709
|
}
|
|
15280
|
-
var Whitespace$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
15710
|
+
var Whitespace$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R51, "Whitespace /[\\s]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
15281
15711
|
return { $loc, token: $0 };
|
|
15282
15712
|
});
|
|
15283
15713
|
function Whitespace(ctx, state2) {
|
|
@@ -15315,7 +15745,7 @@ var SemicolonDelimiter$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_l
|
|
|
15315
15745
|
function SemicolonDelimiter(ctx, state2) {
|
|
15316
15746
|
return (0, import_lib4.$EVENT)(ctx, state2, "SemicolonDelimiter", SemicolonDelimiter$0);
|
|
15317
15747
|
}
|
|
15318
|
-
var NonIdContinue$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
15748
|
+
var NonIdContinue$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R74, "NonIdContinue /(?!\\p{ID_Continue})/"));
|
|
15319
15749
|
function NonIdContinue(ctx, state2) {
|
|
15320
15750
|
return (0, import_lib4.$EVENT)(ctx, state2, "NonIdContinue", NonIdContinue$0);
|
|
15321
15751
|
}
|
|
@@ -15433,7 +15863,7 @@ var CoffeeSubstitutionStart$0 = (0, import_lib4.$TV)((0, import_lib4.$EXPECT)($L
|
|
|
15433
15863
|
function CoffeeSubstitutionStart(ctx, state2) {
|
|
15434
15864
|
return (0, import_lib4.$EVENT)(ctx, state2, "CoffeeSubstitutionStart", CoffeeSubstitutionStart$0);
|
|
15435
15865
|
}
|
|
15436
|
-
var Colon$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L16, 'Colon ":"'), (0, import_lib4.$N)((0, import_lib4.$EXPECT)($
|
|
15866
|
+
var Colon$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L16, 'Colon ":"'), (0, import_lib4.$N)((0, import_lib4.$EXPECT)($R75, "Colon /[=:]/"))), function($skip, $loc, $0, $1, $2) {
|
|
15437
15867
|
return { $loc, token: $1 };
|
|
15438
15868
|
});
|
|
15439
15869
|
function Colon(ctx, state2) {
|
|
@@ -15484,7 +15914,7 @@ function Do(ctx, state2) {
|
|
|
15484
15914
|
var Dot$0 = (0, import_lib4.$TV)((0, import_lib4.$EXPECT)($L7, 'Dot "."'), function($skip, $loc, $0, $1) {
|
|
15485
15915
|
return { $loc, token: $1 };
|
|
15486
15916
|
});
|
|
15487
|
-
var Dot$1 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
15917
|
+
var Dot$1 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R76, "Dot /['\u2019]s/"), Trimmed_), function($skip, $loc, $0, $1, $2) {
|
|
15488
15918
|
var ws = $2;
|
|
15489
15919
|
return [
|
|
15490
15920
|
{ $loc, token: "." },
|
|
@@ -15611,7 +16041,7 @@ var If$0 = (0, import_lib4.$TV)((0, import_lib4.$TEXT)((0, import_lib4.$S)((0, i
|
|
|
15611
16041
|
function If(ctx, state2) {
|
|
15612
16042
|
return (0, import_lib4.$EVENT)(ctx, state2, "If", If$0);
|
|
15613
16043
|
}
|
|
15614
|
-
var Import$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L15, 'Import "import"'), (0, import_lib4.$Y)((0, import_lib4.$EXPECT)($
|
|
16044
|
+
var Import$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L15, 'Import "import"'), (0, import_lib4.$Y)((0, import_lib4.$EXPECT)($R77, "Import /\\s/"))), function($skip, $loc, $0, $1, $2) {
|
|
15615
16045
|
return { $loc, token: $1 };
|
|
15616
16046
|
});
|
|
15617
16047
|
function Import(ctx, state2) {
|
|
@@ -15969,7 +16399,7 @@ var JSXImplicitFragment$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(JSXTag, (0,
|
|
|
15969
16399
|
function JSXImplicitFragment(ctx, state2) {
|
|
15970
16400
|
return (0, import_lib4.$EVENT)(ctx, state2, "JSXImplicitFragment", JSXImplicitFragment$0);
|
|
15971
16401
|
}
|
|
15972
|
-
var JSXTag$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
16402
|
+
var JSXTag$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R78, "JSXTag /(?=[<])/"), _JSXTag), function(value) {
|
|
15973
16403
|
return value[1];
|
|
15974
16404
|
});
|
|
15975
16405
|
function JSXTag(ctx, state2) {
|
|
@@ -16116,7 +16546,7 @@ var JSXElementName$$ = [JSXElementName$0, JSXElementName$1];
|
|
|
16116
16546
|
function JSXElementName(ctx, state2) {
|
|
16117
16547
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "JSXElementName", JSXElementName$$);
|
|
16118
16548
|
}
|
|
16119
|
-
var JSXIdentifierName$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
16549
|
+
var JSXIdentifierName$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R79, "JSXIdentifierName /(?:\\p{ID_Start}|[_$])(?:\\p{ID_Continue}|[\\u200C\\u200D$-])*/"));
|
|
16120
16550
|
function JSXIdentifierName(ctx, state2) {
|
|
16121
16551
|
return (0, import_lib4.$EVENT)(ctx, state2, "JSXIdentifierName", JSXIdentifierName$0);
|
|
16122
16552
|
}
|
|
@@ -16295,7 +16725,7 @@ var JSXAttribute$6 = (0, import_lib4.$TS)((0, import_lib4.$S)(Dot, JSXShorthandS
|
|
|
16295
16725
|
class: $2
|
|
16296
16726
|
};
|
|
16297
16727
|
});
|
|
16298
|
-
var JSXAttribute$7 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$TEXT)((0, import_lib4.$EXPECT)($
|
|
16728
|
+
var JSXAttribute$7 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$TEXT)((0, import_lib4.$EXPECT)($R80, "JSXAttribute /[!+-]/")), JSXAttributeName, (0, import_lib4.$Y)(JSXAttributeSpace)), function($skip, $loc, $0, $1, $2, $3) {
|
|
16299
16729
|
var toggle = $1;
|
|
16300
16730
|
var id = $2;
|
|
16301
16731
|
const value = toggle === "+" ? "true" : "false";
|
|
@@ -16305,11 +16735,11 @@ var JSXAttribute$$ = [JSXAttribute$0, JSXAttribute$1, JSXAttribute$2, JSXAttribu
|
|
|
16305
16735
|
function JSXAttribute(ctx, state2) {
|
|
16306
16736
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "JSXAttribute", JSXAttribute$$);
|
|
16307
16737
|
}
|
|
16308
|
-
var JSXAttributeSpace$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
16738
|
+
var JSXAttributeSpace$0 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R81, "JSXAttributeSpace /[\\s>]|\\/>/"));
|
|
16309
16739
|
function JSXAttributeSpace(ctx, state2) {
|
|
16310
16740
|
return (0, import_lib4.$EVENT)(ctx, state2, "JSXAttributeSpace", JSXAttributeSpace$0);
|
|
16311
16741
|
}
|
|
16312
|
-
var JSXShorthandString$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
16742
|
+
var JSXShorthandString$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R82, "JSXShorthandString /(?:[\\w\\-:]+|\\([^()]*\\)|\\[[^\\[\\]]*\\])+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
16313
16743
|
return quoteString($0);
|
|
16314
16744
|
});
|
|
16315
16745
|
var JSXShorthandString$1 = (0, import_lib4.$TS)((0, import_lib4.$S)(TemplateLiteral), function($skip, $loc, $0, $1) {
|
|
@@ -16356,7 +16786,7 @@ var JSXAttributeValue$3 = (0, import_lib4.$TS)((0, import_lib4.$S)(InsertInlineO
|
|
|
16356
16786
|
}
|
|
16357
16787
|
return [open, value, close];
|
|
16358
16788
|
});
|
|
16359
|
-
var JSXAttributeValue$4 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
16789
|
+
var JSXAttributeValue$4 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R83, `JSXAttributeValue /"[^"]*"|'[^']*'/`));
|
|
16360
16790
|
var JSXAttributeValue$$ = [JSXAttributeValue$0, JSXAttributeValue$1, JSXAttributeValue$2, JSXAttributeValue$3, JSXAttributeValue$4];
|
|
16361
16791
|
function JSXAttributeValue(ctx, state2) {
|
|
16362
16792
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "JSXAttributeValue", JSXAttributeValue$$);
|
|
@@ -16369,7 +16799,7 @@ var InlineJSXAttributeValue$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(InlineJ
|
|
|
16369
16799
|
function InlineJSXAttributeValue(ctx, state2) {
|
|
16370
16800
|
return (0, import_lib4.$EVENT)(ctx, state2, "InlineJSXAttributeValue", InlineJSXAttributeValue$0);
|
|
16371
16801
|
}
|
|
16372
|
-
var InlineJSXBinaryOpRHS$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$N)((0, import_lib4.$EXPECT)($
|
|
16802
|
+
var InlineJSXBinaryOpRHS$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$N)((0, import_lib4.$EXPECT)($R84, "InlineJSXBinaryOpRHS /[<>]/")), BinaryOp, InlineJSXUnaryExpression), function($skip, $loc, $0, $1, $2, $3) {
|
|
16373
16803
|
var op = $2;
|
|
16374
16804
|
var rhs = $3;
|
|
16375
16805
|
return [[], op, [], rhs];
|
|
@@ -16386,7 +16816,7 @@ var InlineJSXUnaryExpression$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, im
|
|
|
16386
16816
|
function InlineJSXUnaryExpression(ctx, state2) {
|
|
16387
16817
|
return (0, import_lib4.$EVENT)(ctx, state2, "InlineJSXUnaryExpression", InlineJSXUnaryExpression$0);
|
|
16388
16818
|
}
|
|
16389
|
-
var InlineJSXUnaryOp$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
16819
|
+
var InlineJSXUnaryOp$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R85, "InlineJSXUnaryOp /[!~+-](?!\\s|[!~+-]*&)/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
16390
16820
|
return { $loc, token: $0 };
|
|
16391
16821
|
});
|
|
16392
16822
|
function InlineJSXUnaryOp(ctx, state2) {
|
|
@@ -16637,13 +17067,13 @@ var JSXComment$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXP
|
|
|
16637
17067
|
function JSXComment(ctx, state2) {
|
|
16638
17068
|
return (0, import_lib4.$EVENT)(ctx, state2, "JSXComment", JSXComment$0);
|
|
16639
17069
|
}
|
|
16640
|
-
var JSXCommentContent$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
17070
|
+
var JSXCommentContent$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R86, "JSXCommentContent /(?:-[^-]|[^-]*)*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
16641
17071
|
return { $loc, token: $0.replace(/\*\//g, "* /") };
|
|
16642
17072
|
});
|
|
16643
17073
|
function JSXCommentContent(ctx, state2) {
|
|
16644
17074
|
return (0, import_lib4.$EVENT)(ctx, state2, "JSXCommentContent", JSXCommentContent$0);
|
|
16645
17075
|
}
|
|
16646
|
-
var JSXText$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
17076
|
+
var JSXText$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R87, "JSXText /[^{}<>\\r\\n]+/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
16647
17077
|
return {
|
|
16648
17078
|
type: "JSXText",
|
|
16649
17079
|
token: $0,
|
|
@@ -17177,7 +17607,7 @@ var TypeProperty$0 = (0, import_lib4.$S)((0, import_lib4.$E)((0, import_lib4.$S)
|
|
|
17177
17607
|
function TypeProperty(ctx, state2) {
|
|
17178
17608
|
return (0, import_lib4.$EVENT)(ctx, state2, "TypeProperty", TypeProperty$0);
|
|
17179
17609
|
}
|
|
17180
|
-
var TypeIndexSignature$0 = (0, import_lib4.$S)((0, import_lib4.$E)((0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
17610
|
+
var TypeIndexSignature$0 = (0, import_lib4.$S)((0, import_lib4.$E)((0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R88, "TypeIndexSignature /[+-]?/")), Readonly, NotDedented)), OpenBracket, TypeIndex, CloseBracket, (0, import_lib4.$E)((0, import_lib4.$S)(__, (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R13, "TypeIndexSignature /[+-]/")), (0, import_lib4.$Y)((0, import_lib4.$S)((0, import_lib4.$E)(_), QuestionMark)))));
|
|
17181
17611
|
function TypeIndexSignature(ctx, state2) {
|
|
17182
17612
|
return (0, import_lib4.$EVENT)(ctx, state2, "TypeIndexSignature", TypeIndexSignature$0);
|
|
17183
17613
|
}
|
|
@@ -17238,6 +17668,19 @@ var MaybeNestedTypePrimary$$ = [MaybeNestedTypePrimary$0, MaybeNestedTypePrimary
|
|
|
17238
17668
|
function MaybeNestedTypePrimary(ctx, state2) {
|
|
17239
17669
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "MaybeNestedTypePrimary", MaybeNestedTypePrimary$$);
|
|
17240
17670
|
}
|
|
17671
|
+
var MaybeNestedTypeUnary$0 = NestedTypeBulletedTuple;
|
|
17672
|
+
var MaybeNestedTypeUnary$1 = NestedInterfaceBlock;
|
|
17673
|
+
var MaybeNestedTypeUnary$2 = NestedTypeBinaryChain;
|
|
17674
|
+
var MaybeNestedTypeUnary$3 = (0, import_lib4.$TS)((0, import_lib4.$S)(PushIndent, (0, import_lib4.$E)((0, import_lib4.$S)(Nested, Type)), PopIndent), function($skip, $loc, $0, $1, $2, $3) {
|
|
17675
|
+
if (!$2)
|
|
17676
|
+
return $skip;
|
|
17677
|
+
return $2;
|
|
17678
|
+
});
|
|
17679
|
+
var MaybeNestedTypeUnary$4 = (0, import_lib4.$S)(NotDedented, TypeUnary);
|
|
17680
|
+
var MaybeNestedTypeUnary$$ = [MaybeNestedTypeUnary$0, MaybeNestedTypeUnary$1, MaybeNestedTypeUnary$2, MaybeNestedTypeUnary$3, MaybeNestedTypeUnary$4];
|
|
17681
|
+
function MaybeNestedTypeUnary(ctx, state2) {
|
|
17682
|
+
return (0, import_lib4.$EVENT_C)(ctx, state2, "MaybeNestedTypeUnary", MaybeNestedTypeUnary$$);
|
|
17683
|
+
}
|
|
17241
17684
|
var ReturnTypeSuffix$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$E)(_), (0, import_lib4.$E)(QuestionMark), (0, import_lib4.$E)(_), Colon, ReturnType), function($skip, $loc, $0, $1, $2, $3, $4, $5) {
|
|
17242
17685
|
var optional = $2;
|
|
17243
17686
|
var t = $5;
|
|
@@ -17292,7 +17735,7 @@ var Type$0 = TypeWithPostfix;
|
|
|
17292
17735
|
function Type(ctx, state2) {
|
|
17293
17736
|
return (0, import_lib4.$EVENT)(ctx, state2, "Type", Type$0);
|
|
17294
17737
|
}
|
|
17295
|
-
var TypeBinary$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$E)((0, import_lib4.$S)(NotDedented, TypeBinaryOp, __)), TypeUnary, (0, import_lib4.$Q)((0, import_lib4.$S)(NotDedented, TypeBinaryOp,
|
|
17738
|
+
var TypeBinary$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$E)((0, import_lib4.$S)(NotDedented, TypeBinaryOp, __)), TypeUnary, (0, import_lib4.$Q)((0, import_lib4.$S)(NotDedented, TypeBinaryOp, MaybeNestedTypeUnary))), function($skip, $loc, $0, $1, $2, $3) {
|
|
17296
17739
|
var optionalPrefix = $1;
|
|
17297
17740
|
var t = $2;
|
|
17298
17741
|
var ops = $3;
|
|
@@ -17659,7 +18102,7 @@ var TypeWithPostfix$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(TypeConditional
|
|
|
17659
18102
|
function TypeWithPostfix(ctx, state2) {
|
|
17660
18103
|
return (0, import_lib4.$EVENT)(ctx, state2, "TypeWithPostfix", TypeWithPostfix$0);
|
|
17661
18104
|
}
|
|
17662
|
-
var TypeConditional$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$E)(_), (0, import_lib4.$EXPECT)($
|
|
18105
|
+
var TypeConditional$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$E)(_), (0, import_lib4.$EXPECT)($R89, "TypeConditional /(?=if|unless)/"), TypeIfThenElse), function($skip, $loc, $0, $1, $2, $3) {
|
|
17663
18106
|
return prepend($1, expressionizeTypeIf($3));
|
|
17664
18107
|
});
|
|
17665
18108
|
var TypeConditional$1 = (0, import_lib4.$TS)((0, import_lib4.$S)(TypeCondition, NotDedented, QuestionMark, __, Type, __, Colon, __, Type), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
@@ -17861,8 +18304,8 @@ function TypeApplicationStart(ctx, state2) {
|
|
|
17861
18304
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "TypeApplicationStart", TypeApplicationStart$$);
|
|
17862
18305
|
}
|
|
17863
18306
|
var ForbiddenImplicitTypeCalls$0 = ReservedBinary;
|
|
17864
|
-
var ForbiddenImplicitTypeCalls$1 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
17865
|
-
var ForbiddenImplicitTypeCalls$2 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
18307
|
+
var ForbiddenImplicitTypeCalls$1 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R90, "ForbiddenImplicitTypeCalls /[|&<!=\\-\u21D2\u2192]/"));
|
|
18308
|
+
var ForbiddenImplicitTypeCalls$2 = (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R91, "ForbiddenImplicitTypeCalls /(extends|not|is)(?!\\p{ID_Continue}|[\\u200C\\u200D$])/"));
|
|
17866
18309
|
var ForbiddenImplicitTypeCalls$$ = [ForbiddenImplicitTypeCalls$0, ForbiddenImplicitTypeCalls$1, ForbiddenImplicitTypeCalls$2];
|
|
17867
18310
|
function ForbiddenImplicitTypeCalls(ctx, state2) {
|
|
17868
18311
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "ForbiddenImplicitTypeCalls", ForbiddenImplicitTypeCalls$$);
|
|
@@ -17945,7 +18388,7 @@ var TypeParameters$0 = (0, import_lib4.$TS)((0, import_lib4.$S)(OpenAngleBracket
|
|
|
17945
18388
|
function TypeParameters(ctx, state2) {
|
|
17946
18389
|
return (0, import_lib4.$EVENT)(ctx, state2, "TypeParameters", TypeParameters$0);
|
|
17947
18390
|
}
|
|
17948
|
-
var TypeParameter$0 = (0, import_lib4.$S)(__, (0, import_lib4.$Q)((0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
18391
|
+
var TypeParameter$0 = (0, import_lib4.$S)(__, (0, import_lib4.$Q)((0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R92, "TypeParameter /const|in|out/")), _)), Identifier, (0, import_lib4.$E)(TypeConstraint), (0, import_lib4.$E)(TypeInitializer), TypeParameterDelimiter);
|
|
17949
18392
|
function TypeParameter(ctx, state2) {
|
|
17950
18393
|
return (0, import_lib4.$EVENT)(ctx, state2, "TypeParameter", TypeParameter$0);
|
|
17951
18394
|
}
|
|
@@ -17972,15 +18415,15 @@ var ThisType$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$E)(_),
|
|
|
17972
18415
|
function ThisType(ctx, state2) {
|
|
17973
18416
|
return (0, import_lib4.$EVENT)(ctx, state2, "ThisType", ThisType$0);
|
|
17974
18417
|
}
|
|
17975
|
-
var Shebang$0 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
18418
|
+
var Shebang$0 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R93, "Shebang /#![^\\r\\n]*/")), EOL);
|
|
17976
18419
|
function Shebang(ctx, state2) {
|
|
17977
18420
|
return (0, import_lib4.$EVENT)(ctx, state2, "Shebang", Shebang$0);
|
|
17978
18421
|
}
|
|
17979
|
-
var CivetPrologue$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
18422
|
+
var CivetPrologue$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R94, "CivetPrologue /[\\t ]*/"), DoubleQuote, CivetPrologueContent, DoubleQuote, SimpleStatementDelimiter, (0, import_lib4.$EXPECT)($R21, "CivetPrologue /[ \\t]*/"), (0, import_lib4.$C)(EOL, (0, import_lib4.$Y)(RestOfLine))), function(value) {
|
|
17980
18423
|
var content = value[2];
|
|
17981
18424
|
return content;
|
|
17982
18425
|
});
|
|
17983
|
-
var CivetPrologue$1 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
18426
|
+
var CivetPrologue$1 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R94, "CivetPrologue /[\\t ]*/"), SingleQuote, CivetPrologueContent, SingleQuote, SimpleStatementDelimiter, (0, import_lib4.$EXPECT)($R21, "CivetPrologue /[ \\t]*/"), (0, import_lib4.$C)(EOL, (0, import_lib4.$Y)(RestOfLine))), function(value) {
|
|
17984
18427
|
var content = value[2];
|
|
17985
18428
|
return content;
|
|
17986
18429
|
});
|
|
@@ -17988,7 +18431,7 @@ var CivetPrologue$$ = [CivetPrologue$0, CivetPrologue$1];
|
|
|
17988
18431
|
function CivetPrologue(ctx, state2) {
|
|
17989
18432
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "CivetPrologue", CivetPrologue$$);
|
|
17990
18433
|
}
|
|
17991
|
-
var CivetPrologueContent$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L238, 'CivetPrologueContent "civet"'), NonIdContinue, (0, import_lib4.$Q)(CivetOption), (0, import_lib4.$EXPECT)($
|
|
18434
|
+
var CivetPrologueContent$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($L238, 'CivetPrologueContent "civet"'), NonIdContinue, (0, import_lib4.$Q)(CivetOption), (0, import_lib4.$EXPECT)($R95, "CivetPrologueContent /[\\s]*/")), function($skip, $loc, $0, $1, $2, $3, $4) {
|
|
17992
18435
|
var options = $3;
|
|
17993
18436
|
return {
|
|
17994
18437
|
type: "CivetPrologue",
|
|
@@ -17999,7 +18442,7 @@ var CivetPrologueContent$0 = (0, import_lib4.$TS)((0, import_lib4.$S)((0, import
|
|
|
17999
18442
|
function CivetPrologueContent(ctx, state2) {
|
|
18000
18443
|
return (0, import_lib4.$EVENT)(ctx, state2, "CivetPrologueContent", CivetPrologueContent$0);
|
|
18001
18444
|
}
|
|
18002
|
-
var CivetOption$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
18445
|
+
var CivetOption$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R96, "CivetOption /\\s+([+-]?)([a-zA-Z0-9-]+)(\\s*=\\s*([\\p{ID_Continue}.,+-]*))?/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
18003
18446
|
const optionName = $2.replace(/-+([a-z]?)/g, (_2, l) => {
|
|
18004
18447
|
if (l)
|
|
18005
18448
|
return l.toUpperCase();
|
|
@@ -18021,11 +18464,11 @@ var CivetOption$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R95, "CivetOp
|
|
|
18021
18464
|
function CivetOption(ctx, state2) {
|
|
18022
18465
|
return (0, import_lib4.$EVENT)(ctx, state2, "CivetOption", CivetOption$0);
|
|
18023
18466
|
}
|
|
18024
|
-
var UnknownPrologue$0 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
18467
|
+
var UnknownPrologue$0 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R94, "UnknownPrologue /[\\t ]*/")), StringLiteral, (0, import_lib4.$TEXT)(SimpleStatementDelimiter), EOS);
|
|
18025
18468
|
function UnknownPrologue(ctx, state2) {
|
|
18026
18469
|
return (0, import_lib4.$EVENT)(ctx, state2, "UnknownPrologue", UnknownPrologue$0);
|
|
18027
18470
|
}
|
|
18028
|
-
var TripleSlashDirective$0 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
18471
|
+
var TripleSlashDirective$0 = (0, import_lib4.$S)((0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R97, "TripleSlashDirective /\\/\\/\\/[^\\r\\n]*/")), (0, import_lib4.$E)(EOS));
|
|
18029
18472
|
function TripleSlashDirective(ctx, state2) {
|
|
18030
18473
|
return (0, import_lib4.$EVENT)(ctx, state2, "TripleSlashDirective", TripleSlashDirective$0);
|
|
18031
18474
|
}
|
|
@@ -18041,13 +18484,13 @@ var PrologueString$$ = [PrologueString$0, PrologueString$1];
|
|
|
18041
18484
|
function PrologueString(ctx, state2) {
|
|
18042
18485
|
return (0, import_lib4.$EVENT_C)(ctx, state2, "PrologueString", PrologueString$$);
|
|
18043
18486
|
}
|
|
18044
|
-
var EOS$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($
|
|
18487
|
+
var EOS$0 = (0, import_lib4.$T)((0, import_lib4.$S)((0, import_lib4.$EXPECT)($R98, "EOS /(?=[ \\t\\r\\n\\/#]|$)/"), (0, import_lib4.$P)(RestOfLine)), function(value) {
|
|
18045
18488
|
return value[1];
|
|
18046
18489
|
});
|
|
18047
18490
|
function EOS(ctx, state2) {
|
|
18048
18491
|
return (0, import_lib4.$EVENT)(ctx, state2, "EOS", EOS$0);
|
|
18049
18492
|
}
|
|
18050
|
-
var EOL$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
18493
|
+
var EOL$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R99, "EOL /\\r\\n|\\n|\\r|$/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
18051
18494
|
return { $loc, token: $0 };
|
|
18052
18495
|
});
|
|
18053
18496
|
function EOL(ctx, state2) {
|
|
@@ -18456,11 +18899,11 @@ var Prologue$0 = (0, import_lib4.$Q)((0, import_lib4.$C)(TripleSlashDirective, (
|
|
|
18456
18899
|
function Prologue(ctx, state2) {
|
|
18457
18900
|
return (0, import_lib4.$EVENT)(ctx, state2, "Prologue", Prologue$0);
|
|
18458
18901
|
}
|
|
18459
|
-
var ProloguePrefix$0 = (0, import_lib4.$S)(Prologue, (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($
|
|
18902
|
+
var ProloguePrefix$0 = (0, import_lib4.$S)(Prologue, (0, import_lib4.$R$0)((0, import_lib4.$EXPECT)($R100, "ProloguePrefix /[^]*/")));
|
|
18460
18903
|
function ProloguePrefix(ctx, state2) {
|
|
18461
18904
|
return (0, import_lib4.$EVENT)(ctx, state2, "ProloguePrefix", ProloguePrefix$0);
|
|
18462
18905
|
}
|
|
18463
|
-
var Indent$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($
|
|
18906
|
+
var Indent$0 = (0, import_lib4.$TR)((0, import_lib4.$EXPECT)($R21, "Indent /[ \\t]*/"), function($skip, $loc, $0, $1, $2, $3, $4, $5, $6, $7, $8, $9) {
|
|
18464
18907
|
const level = getIndentLevel($0, config.tab);
|
|
18465
18908
|
return {
|
|
18466
18909
|
$loc,
|