simplex-lang 0.0.6 → 0.1.0
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/build/parser/index.js +765 -192
- package/build/parser/index.js.map +1 -1
- package/build/src/compiler.js +120 -19
- package/build/src/compiler.js.map +1 -1
- package/build/src/errors.d.ts +5 -0
- package/build/src/errors.js +9 -0
- package/build/src/errors.js.map +1 -1
- package/build/src/simplex-tree.d.ts +24 -2
- package/build/src/version.d.ts +1 -1
- package/build/src/version.js +1 -1
- package/build/src/version.js.map +1 -1
- package/package.json +2 -2
- package/parser/index.js +726 -192
- package/parser/index.js.map +1 -1
- package/src/compiler.ts +153 -20
- package/src/errors.ts +11 -0
- package/src/simplex-tree.ts +29 -1
- package/src/simplex.peggy +78 -2
- package/src/version.ts +1 -1
package/build/parser/index.js
CHANGED
|
@@ -225,25 +225,31 @@ function peg$parse(input, options) {
|
|
|
225
225
|
var peg$c29 = "true";
|
|
226
226
|
var peg$c30 = "typeof";
|
|
227
227
|
var peg$c31 = "mod";
|
|
228
|
-
var peg$c32 = "
|
|
229
|
-
var peg$c33 = "
|
|
230
|
-
var peg$c34 = "
|
|
231
|
-
var peg$c35 = "
|
|
232
|
-
var peg$c36 = "
|
|
233
|
-
var peg$c37 = "
|
|
234
|
-
var peg$c38 = "
|
|
235
|
-
var peg$c39 = "
|
|
236
|
-
var peg$c40 = "
|
|
237
|
-
var peg$c41 = "
|
|
238
|
-
var peg$c42 = "
|
|
239
|
-
var peg$c43 = "
|
|
240
|
-
var peg$c44 = "
|
|
241
|
-
var peg$c45 = "
|
|
242
|
-
var peg$c46 = "
|
|
243
|
-
var peg$c47 = "
|
|
244
|
-
var peg$c48 = "
|
|
245
|
-
var peg$c49 = "
|
|
246
|
-
var peg$c50 = "
|
|
228
|
+
var peg$c32 = "let";
|
|
229
|
+
var peg$c33 = ";";
|
|
230
|
+
var peg$c34 = "}";
|
|
231
|
+
var peg$c35 = "(";
|
|
232
|
+
var peg$c36 = ")";
|
|
233
|
+
var peg$c37 = "[";
|
|
234
|
+
var peg$c38 = "]";
|
|
235
|
+
var peg$c39 = ",";
|
|
236
|
+
var peg$c40 = "{";
|
|
237
|
+
var peg$c41 = ":";
|
|
238
|
+
var peg$c42 = "::";
|
|
239
|
+
var peg$c43 = "%";
|
|
240
|
+
var peg$c44 = "^";
|
|
241
|
+
var peg$c45 = "&";
|
|
242
|
+
var peg$c46 = "<=";
|
|
243
|
+
var peg$c47 = ">=";
|
|
244
|
+
var peg$c48 = "==";
|
|
245
|
+
var peg$c49 = "!=";
|
|
246
|
+
var peg$c50 = "&&";
|
|
247
|
+
var peg$c51 = "||";
|
|
248
|
+
var peg$c52 = "??";
|
|
249
|
+
var peg$c53 = "|?";
|
|
250
|
+
var peg$c54 = "|";
|
|
251
|
+
var peg$c55 = "=>";
|
|
252
|
+
var peg$c56 = "=";
|
|
247
253
|
var peg$r0 = /^[\t\v-\f \xA0\u1680\u2000-\u200A\u202F\u205F\u3000\uFEFF]/;
|
|
248
254
|
var peg$r1 = /^[\n\r\u2028\u2029]/;
|
|
249
255
|
var peg$r2 = /^[\r\u2028-\u2029]/;
|
|
@@ -337,27 +343,33 @@ function peg$parse(input, options) {
|
|
|
337
343
|
var peg$e62 = peg$literalExpectation("true", false);
|
|
338
344
|
var peg$e63 = peg$literalExpectation("typeof", false);
|
|
339
345
|
var peg$e64 = peg$literalExpectation("mod", false);
|
|
340
|
-
var peg$e65 = peg$literalExpectation("
|
|
341
|
-
var peg$e66 = peg$literalExpectation("
|
|
342
|
-
var peg$e67 = peg$literalExpectation("
|
|
343
|
-
var peg$e68 = peg$literalExpectation("
|
|
344
|
-
var peg$e69 = peg$literalExpectation("
|
|
345
|
-
var peg$e70 = peg$literalExpectation("
|
|
346
|
-
var peg$e71 = peg$literalExpectation("
|
|
347
|
-
var peg$e72 = peg$literalExpectation("
|
|
348
|
-
var peg$e73 = peg$literalExpectation("
|
|
349
|
-
var peg$e74 = peg$literalExpectation("
|
|
350
|
-
var peg$e75 = peg$literalExpectation("
|
|
351
|
-
var peg$e76 = peg$
|
|
352
|
-
var peg$e77 = peg$literalExpectation("
|
|
353
|
-
var peg$e78 = peg$
|
|
354
|
-
var peg$e79 = peg$literalExpectation("
|
|
355
|
-
var peg$e80 = peg$
|
|
356
|
-
var peg$e81 = peg$literalExpectation("
|
|
357
|
-
var peg$e82 = peg$
|
|
358
|
-
var peg$e83 = peg$literalExpectation("
|
|
359
|
-
var peg$e84 = peg$literalExpectation("
|
|
360
|
-
var peg$e85 = peg$literalExpectation("
|
|
346
|
+
var peg$e65 = peg$literalExpectation("let", false);
|
|
347
|
+
var peg$e66 = peg$literalExpectation(";", false);
|
|
348
|
+
var peg$e67 = peg$literalExpectation("}", false);
|
|
349
|
+
var peg$e68 = peg$literalExpectation("(", false);
|
|
350
|
+
var peg$e69 = peg$literalExpectation(")", false);
|
|
351
|
+
var peg$e70 = peg$literalExpectation("[", false);
|
|
352
|
+
var peg$e71 = peg$literalExpectation("]", false);
|
|
353
|
+
var peg$e72 = peg$literalExpectation(",", false);
|
|
354
|
+
var peg$e73 = peg$literalExpectation("{", false);
|
|
355
|
+
var peg$e74 = peg$literalExpectation(":", false);
|
|
356
|
+
var peg$e75 = peg$literalExpectation("::", false);
|
|
357
|
+
var peg$e76 = peg$literalExpectation("%", false);
|
|
358
|
+
var peg$e77 = peg$literalExpectation("^", false);
|
|
359
|
+
var peg$e78 = peg$classExpectation(["*", "/"], false, false);
|
|
360
|
+
var peg$e79 = peg$literalExpectation("&", false);
|
|
361
|
+
var peg$e80 = peg$literalExpectation("<=", false);
|
|
362
|
+
var peg$e81 = peg$literalExpectation(">=", false);
|
|
363
|
+
var peg$e82 = peg$classExpectation(["<", ">"], false, false);
|
|
364
|
+
var peg$e83 = peg$literalExpectation("==", false);
|
|
365
|
+
var peg$e84 = peg$literalExpectation("!=", false);
|
|
366
|
+
var peg$e85 = peg$literalExpectation("&&", false);
|
|
367
|
+
var peg$e86 = peg$literalExpectation("||", false);
|
|
368
|
+
var peg$e87 = peg$literalExpectation("??", false);
|
|
369
|
+
var peg$e88 = peg$literalExpectation("|?", false);
|
|
370
|
+
var peg$e89 = peg$literalExpectation("|", false);
|
|
371
|
+
var peg$e90 = peg$literalExpectation("=>", false);
|
|
372
|
+
var peg$e91 = peg$literalExpectation("=", false);
|
|
361
373
|
var peg$f0 = function (statement) { return statement; };
|
|
362
374
|
var peg$f1 = function (name) { return name; };
|
|
363
375
|
var peg$f2 = function (head, tail) {
|
|
@@ -589,8 +601,14 @@ function peg$parse(input, options) {
|
|
|
589
601
|
var peg$f53 = function (head, tail) {
|
|
590
602
|
return buildList(head, tail, 3);
|
|
591
603
|
};
|
|
592
|
-
var peg$f54 = function (
|
|
593
|
-
|
|
604
|
+
var peg$f54 = function () {
|
|
605
|
+
return {
|
|
606
|
+
type: 'CurryPlaceholder',
|
|
607
|
+
location: getLocation(location())
|
|
608
|
+
};
|
|
609
|
+
};
|
|
610
|
+
var peg$f55 = function (head, tail) { return buildBinaryExpression(head, tail, location()); };
|
|
611
|
+
var peg$f56 = function (operator, argument) {
|
|
594
612
|
return {
|
|
595
613
|
type: "UnaryExpression",
|
|
596
614
|
operator: operator,
|
|
@@ -599,14 +617,14 @@ function peg$parse(input, options) {
|
|
|
599
617
|
location: getLocation(location())
|
|
600
618
|
};
|
|
601
619
|
};
|
|
602
|
-
var peg$f56 = function (head, tail) { return buildBinaryExpression(head, tail, location()); };
|
|
603
620
|
var peg$f57 = function (head, tail) { return buildBinaryExpression(head, tail, location()); };
|
|
604
621
|
var peg$f58 = function (head, tail) { return buildBinaryExpression(head, tail, location()); };
|
|
605
622
|
var peg$f59 = function (head, tail) { return buildBinaryExpression(head, tail, location()); };
|
|
606
623
|
var peg$f60 = function (head, tail) { return buildBinaryExpression(head, tail, location()); };
|
|
607
|
-
var peg$f61 = function (head, tail) { return
|
|
624
|
+
var peg$f61 = function (head, tail) { return buildBinaryExpression(head, tail, location()); };
|
|
608
625
|
var peg$f62 = function (head, tail) { return buildLogicalExpression(head, tail, location()); };
|
|
609
|
-
var peg$f63 = function (
|
|
626
|
+
var peg$f63 = function (head, tail) { return buildLogicalExpression(head, tail, location()); };
|
|
627
|
+
var peg$f64 = function (test, consequent, alternate) {
|
|
610
628
|
return {
|
|
611
629
|
type: "ConditionalExpression",
|
|
612
630
|
test: test,
|
|
@@ -615,7 +633,7 @@ function peg$parse(input, options) {
|
|
|
615
633
|
location: getLocation(location())
|
|
616
634
|
};
|
|
617
635
|
};
|
|
618
|
-
var peg$
|
|
636
|
+
var peg$f65 = function (test, consequent) {
|
|
619
637
|
return {
|
|
620
638
|
type: "ConditionalExpression",
|
|
621
639
|
test: test,
|
|
@@ -624,16 +642,55 @@ function peg$parse(input, options) {
|
|
|
624
642
|
location: getLocation(location())
|
|
625
643
|
};
|
|
626
644
|
};
|
|
627
|
-
var peg$
|
|
645
|
+
var peg$f66 = function (head, tail) {
|
|
628
646
|
return buildExpression("NullishCoalescingExpression", head, tail, getLocation(location()));
|
|
629
647
|
};
|
|
630
|
-
var peg$
|
|
631
|
-
var peg$
|
|
648
|
+
var peg$f67 = function (head, operator, expression) { return { operator, expression }; };
|
|
649
|
+
var peg$f68 = function (head, tail) {
|
|
632
650
|
return tail.length > 0
|
|
633
651
|
? { type: "PipeSequence", head, tail, location: getLocation(location()) }
|
|
634
652
|
: head;
|
|
635
653
|
};
|
|
636
|
-
var peg$
|
|
654
|
+
var peg$f69 = function (params, body) {
|
|
655
|
+
return {
|
|
656
|
+
type: "LambdaExpression",
|
|
657
|
+
params: optionalList(extractOptional(params, 0)),
|
|
658
|
+
expression: body,
|
|
659
|
+
location: getLocation(location())
|
|
660
|
+
};
|
|
661
|
+
};
|
|
662
|
+
var peg$f70 = function (param, body) {
|
|
663
|
+
return {
|
|
664
|
+
type: "LambdaExpression",
|
|
665
|
+
params: [param],
|
|
666
|
+
expression: body,
|
|
667
|
+
location: getLocation(location())
|
|
668
|
+
};
|
|
669
|
+
};
|
|
670
|
+
var peg$f71 = function (head, tail) {
|
|
671
|
+
return buildList(head, tail, 3);
|
|
672
|
+
};
|
|
673
|
+
var peg$f72 = function (declarations, body) {
|
|
674
|
+
return {
|
|
675
|
+
type: "LetExpression",
|
|
676
|
+
declarations,
|
|
677
|
+
expression: body,
|
|
678
|
+
location: getLocation(location())
|
|
679
|
+
};
|
|
680
|
+
};
|
|
681
|
+
var peg$f73 = function (head, tail) {
|
|
682
|
+
return buildList(head, tail, 3);
|
|
683
|
+
};
|
|
684
|
+
var peg$f74 = function (id, init) {
|
|
685
|
+
return {
|
|
686
|
+
type: "VariableDeclarator",
|
|
687
|
+
id: id,
|
|
688
|
+
init: extractOptional(init, 1),
|
|
689
|
+
location: getLocation(location())
|
|
690
|
+
};
|
|
691
|
+
};
|
|
692
|
+
var peg$f75 = function (expression) { return expression; };
|
|
693
|
+
var peg$f76 = function (expression) {
|
|
637
694
|
return {
|
|
638
695
|
type: "ExpressionStatement",
|
|
639
696
|
expression: expression
|
|
@@ -1387,6 +1444,9 @@ function peg$parse(input, options) {
|
|
|
1387
1444
|
s0 = peg$parseThenToken();
|
|
1388
1445
|
if (s0 === peg$FAILED) {
|
|
1389
1446
|
s0 = peg$parseTypeofToken();
|
|
1447
|
+
if (s0 === peg$FAILED) {
|
|
1448
|
+
s0 = peg$parseLetToken();
|
|
1449
|
+
}
|
|
1390
1450
|
}
|
|
1391
1451
|
}
|
|
1392
1452
|
}
|
|
@@ -3059,6 +3119,46 @@ function peg$parse(input, options) {
|
|
|
3059
3119
|
}
|
|
3060
3120
|
return s0;
|
|
3061
3121
|
}
|
|
3122
|
+
function peg$parseLetToken() {
|
|
3123
|
+
var s0, s1, s2, s3;
|
|
3124
|
+
s0 = peg$currPos;
|
|
3125
|
+
if (input.substr(peg$currPos, 3) === peg$c32) {
|
|
3126
|
+
s1 = peg$c32;
|
|
3127
|
+
peg$currPos += 3;
|
|
3128
|
+
}
|
|
3129
|
+
else {
|
|
3130
|
+
s1 = peg$FAILED;
|
|
3131
|
+
if (peg$silentFails === 0) {
|
|
3132
|
+
peg$fail(peg$e65);
|
|
3133
|
+
}
|
|
3134
|
+
}
|
|
3135
|
+
if (s1 !== peg$FAILED) {
|
|
3136
|
+
s2 = peg$currPos;
|
|
3137
|
+
peg$silentFails++;
|
|
3138
|
+
s3 = peg$parseIdentifierPart();
|
|
3139
|
+
peg$silentFails--;
|
|
3140
|
+
if (s3 === peg$FAILED) {
|
|
3141
|
+
s2 = undefined;
|
|
3142
|
+
}
|
|
3143
|
+
else {
|
|
3144
|
+
peg$currPos = s2;
|
|
3145
|
+
s2 = peg$FAILED;
|
|
3146
|
+
}
|
|
3147
|
+
if (s2 !== peg$FAILED) {
|
|
3148
|
+
s1 = [s1, s2];
|
|
3149
|
+
s0 = s1;
|
|
3150
|
+
}
|
|
3151
|
+
else {
|
|
3152
|
+
peg$currPos = s0;
|
|
3153
|
+
s0 = peg$FAILED;
|
|
3154
|
+
}
|
|
3155
|
+
}
|
|
3156
|
+
else {
|
|
3157
|
+
peg$currPos = s0;
|
|
3158
|
+
s0 = peg$FAILED;
|
|
3159
|
+
}
|
|
3160
|
+
return s0;
|
|
3161
|
+
}
|
|
3062
3162
|
function peg$parse__() {
|
|
3063
3163
|
var s0, s1;
|
|
3064
3164
|
s0 = [];
|
|
@@ -3102,13 +3202,13 @@ function peg$parse(input, options) {
|
|
|
3102
3202
|
s0 = peg$currPos;
|
|
3103
3203
|
s1 = peg$parse__();
|
|
3104
3204
|
if (input.charCodeAt(peg$currPos) === 59) {
|
|
3105
|
-
s2 = peg$
|
|
3205
|
+
s2 = peg$c33;
|
|
3106
3206
|
peg$currPos++;
|
|
3107
3207
|
}
|
|
3108
3208
|
else {
|
|
3109
3209
|
s2 = peg$FAILED;
|
|
3110
3210
|
if (peg$silentFails === 0) {
|
|
3111
|
-
peg$fail(peg$
|
|
3211
|
+
peg$fail(peg$e66);
|
|
3112
3212
|
}
|
|
3113
3213
|
}
|
|
3114
3214
|
if (s2 !== peg$FAILED) {
|
|
@@ -3141,13 +3241,13 @@ function peg$parse(input, options) {
|
|
|
3141
3241
|
s2 = peg$currPos;
|
|
3142
3242
|
peg$silentFails++;
|
|
3143
3243
|
if (input.charCodeAt(peg$currPos) === 125) {
|
|
3144
|
-
s3 = peg$
|
|
3244
|
+
s3 = peg$c34;
|
|
3145
3245
|
peg$currPos++;
|
|
3146
3246
|
}
|
|
3147
3247
|
else {
|
|
3148
3248
|
s3 = peg$FAILED;
|
|
3149
3249
|
if (peg$silentFails === 0) {
|
|
3150
|
-
peg$fail(peg$
|
|
3250
|
+
peg$fail(peg$e67);
|
|
3151
3251
|
}
|
|
3152
3252
|
}
|
|
3153
3253
|
peg$silentFails--;
|
|
@@ -3219,28 +3319,28 @@ function peg$parse(input, options) {
|
|
|
3219
3319
|
if (s0 === peg$FAILED) {
|
|
3220
3320
|
s0 = peg$currPos;
|
|
3221
3321
|
if (input.charCodeAt(peg$currPos) === 40) {
|
|
3222
|
-
s1 = peg$
|
|
3322
|
+
s1 = peg$c35;
|
|
3223
3323
|
peg$currPos++;
|
|
3224
3324
|
}
|
|
3225
3325
|
else {
|
|
3226
3326
|
s1 = peg$FAILED;
|
|
3227
3327
|
if (peg$silentFails === 0) {
|
|
3228
|
-
peg$fail(peg$
|
|
3328
|
+
peg$fail(peg$e68);
|
|
3229
3329
|
}
|
|
3230
3330
|
}
|
|
3231
3331
|
if (s1 !== peg$FAILED) {
|
|
3232
3332
|
s2 = peg$parse__();
|
|
3233
|
-
s3 = peg$
|
|
3333
|
+
s3 = peg$parseExpression();
|
|
3234
3334
|
if (s3 !== peg$FAILED) {
|
|
3235
3335
|
s4 = peg$parse__();
|
|
3236
3336
|
if (input.charCodeAt(peg$currPos) === 41) {
|
|
3237
|
-
s5 = peg$
|
|
3337
|
+
s5 = peg$c36;
|
|
3238
3338
|
peg$currPos++;
|
|
3239
3339
|
}
|
|
3240
3340
|
else {
|
|
3241
3341
|
s5 = peg$FAILED;
|
|
3242
3342
|
if (peg$silentFails === 0) {
|
|
3243
|
-
peg$fail(peg$
|
|
3343
|
+
peg$fail(peg$e69);
|
|
3244
3344
|
}
|
|
3245
3345
|
}
|
|
3246
3346
|
if (s5 !== peg$FAILED) {
|
|
@@ -3271,13 +3371,13 @@ function peg$parse(input, options) {
|
|
|
3271
3371
|
var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9;
|
|
3272
3372
|
s0 = peg$currPos;
|
|
3273
3373
|
if (input.charCodeAt(peg$currPos) === 91) {
|
|
3274
|
-
s1 = peg$
|
|
3374
|
+
s1 = peg$c37;
|
|
3275
3375
|
peg$currPos++;
|
|
3276
3376
|
}
|
|
3277
3377
|
else {
|
|
3278
3378
|
s1 = peg$FAILED;
|
|
3279
3379
|
if (peg$silentFails === 0) {
|
|
3280
|
-
peg$fail(peg$
|
|
3380
|
+
peg$fail(peg$e70);
|
|
3281
3381
|
}
|
|
3282
3382
|
}
|
|
3283
3383
|
if (s1 !== peg$FAILED) {
|
|
@@ -3297,13 +3397,13 @@ function peg$parse(input, options) {
|
|
|
3297
3397
|
s3 = null;
|
|
3298
3398
|
}
|
|
3299
3399
|
if (input.charCodeAt(peg$currPos) === 93) {
|
|
3300
|
-
s4 = peg$
|
|
3400
|
+
s4 = peg$c38;
|
|
3301
3401
|
peg$currPos++;
|
|
3302
3402
|
}
|
|
3303
3403
|
else {
|
|
3304
3404
|
s4 = peg$FAILED;
|
|
3305
3405
|
if (peg$silentFails === 0) {
|
|
3306
|
-
peg$fail(peg$
|
|
3406
|
+
peg$fail(peg$e71);
|
|
3307
3407
|
}
|
|
3308
3408
|
}
|
|
3309
3409
|
if (s4 !== peg$FAILED) {
|
|
@@ -3322,13 +3422,13 @@ function peg$parse(input, options) {
|
|
|
3322
3422
|
if (s0 === peg$FAILED) {
|
|
3323
3423
|
s0 = peg$currPos;
|
|
3324
3424
|
if (input.charCodeAt(peg$currPos) === 91) {
|
|
3325
|
-
s1 = peg$
|
|
3425
|
+
s1 = peg$c37;
|
|
3326
3426
|
peg$currPos++;
|
|
3327
3427
|
}
|
|
3328
3428
|
else {
|
|
3329
3429
|
s1 = peg$FAILED;
|
|
3330
3430
|
if (peg$silentFails === 0) {
|
|
3331
|
-
peg$fail(peg$
|
|
3431
|
+
peg$fail(peg$e70);
|
|
3332
3432
|
}
|
|
3333
3433
|
}
|
|
3334
3434
|
if (s1 !== peg$FAILED) {
|
|
@@ -3337,13 +3437,13 @@ function peg$parse(input, options) {
|
|
|
3337
3437
|
if (s3 !== peg$FAILED) {
|
|
3338
3438
|
s4 = peg$parse__();
|
|
3339
3439
|
if (input.charCodeAt(peg$currPos) === 93) {
|
|
3340
|
-
s5 = peg$
|
|
3440
|
+
s5 = peg$c38;
|
|
3341
3441
|
peg$currPos++;
|
|
3342
3442
|
}
|
|
3343
3443
|
else {
|
|
3344
3444
|
s5 = peg$FAILED;
|
|
3345
3445
|
if (peg$silentFails === 0) {
|
|
3346
|
-
peg$fail(peg$
|
|
3446
|
+
peg$fail(peg$e71);
|
|
3347
3447
|
}
|
|
3348
3448
|
}
|
|
3349
3449
|
if (s5 !== peg$FAILED) {
|
|
@@ -3367,13 +3467,13 @@ function peg$parse(input, options) {
|
|
|
3367
3467
|
if (s0 === peg$FAILED) {
|
|
3368
3468
|
s0 = peg$currPos;
|
|
3369
3469
|
if (input.charCodeAt(peg$currPos) === 91) {
|
|
3370
|
-
s1 = peg$
|
|
3470
|
+
s1 = peg$c37;
|
|
3371
3471
|
peg$currPos++;
|
|
3372
3472
|
}
|
|
3373
3473
|
else {
|
|
3374
3474
|
s1 = peg$FAILED;
|
|
3375
3475
|
if (peg$silentFails === 0) {
|
|
3376
|
-
peg$fail(peg$
|
|
3476
|
+
peg$fail(peg$e70);
|
|
3377
3477
|
}
|
|
3378
3478
|
}
|
|
3379
3479
|
if (s1 !== peg$FAILED) {
|
|
@@ -3382,13 +3482,13 @@ function peg$parse(input, options) {
|
|
|
3382
3482
|
if (s3 !== peg$FAILED) {
|
|
3383
3483
|
s4 = peg$parse__();
|
|
3384
3484
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
3385
|
-
s5 = peg$
|
|
3485
|
+
s5 = peg$c39;
|
|
3386
3486
|
peg$currPos++;
|
|
3387
3487
|
}
|
|
3388
3488
|
else {
|
|
3389
3489
|
s5 = peg$FAILED;
|
|
3390
3490
|
if (peg$silentFails === 0) {
|
|
3391
|
-
peg$fail(peg$
|
|
3491
|
+
peg$fail(peg$e72);
|
|
3392
3492
|
}
|
|
3393
3493
|
}
|
|
3394
3494
|
if (s5 !== peg$FAILED) {
|
|
@@ -3408,13 +3508,13 @@ function peg$parse(input, options) {
|
|
|
3408
3508
|
s7 = null;
|
|
3409
3509
|
}
|
|
3410
3510
|
if (input.charCodeAt(peg$currPos) === 93) {
|
|
3411
|
-
s8 = peg$
|
|
3511
|
+
s8 = peg$c38;
|
|
3412
3512
|
peg$currPos++;
|
|
3413
3513
|
}
|
|
3414
3514
|
else {
|
|
3415
3515
|
s8 = peg$FAILED;
|
|
3416
3516
|
if (peg$silentFails === 0) {
|
|
3417
|
-
peg$fail(peg$
|
|
3517
|
+
peg$fail(peg$e71);
|
|
3418
3518
|
}
|
|
3419
3519
|
}
|
|
3420
3520
|
if (s8 !== peg$FAILED) {
|
|
@@ -3462,7 +3562,7 @@ function peg$parse(input, options) {
|
|
|
3462
3562
|
if (s2 === peg$FAILED) {
|
|
3463
3563
|
s2 = null;
|
|
3464
3564
|
}
|
|
3465
|
-
s3 = peg$
|
|
3565
|
+
s3 = peg$parseExpression();
|
|
3466
3566
|
if (s3 !== peg$FAILED) {
|
|
3467
3567
|
peg$savedPos = s1;
|
|
3468
3568
|
s1 = peg$f34(s2, s3);
|
|
@@ -3476,13 +3576,13 @@ function peg$parse(input, options) {
|
|
|
3476
3576
|
s3 = peg$currPos;
|
|
3477
3577
|
s4 = peg$parse__();
|
|
3478
3578
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
3479
|
-
s5 = peg$
|
|
3579
|
+
s5 = peg$c39;
|
|
3480
3580
|
peg$currPos++;
|
|
3481
3581
|
}
|
|
3482
3582
|
else {
|
|
3483
3583
|
s5 = peg$FAILED;
|
|
3484
3584
|
if (peg$silentFails === 0) {
|
|
3485
|
-
peg$fail(peg$
|
|
3585
|
+
peg$fail(peg$e72);
|
|
3486
3586
|
}
|
|
3487
3587
|
}
|
|
3488
3588
|
if (s5 !== peg$FAILED) {
|
|
@@ -3501,7 +3601,7 @@ function peg$parse(input, options) {
|
|
|
3501
3601
|
if (s7 === peg$FAILED) {
|
|
3502
3602
|
s7 = null;
|
|
3503
3603
|
}
|
|
3504
|
-
s8 = peg$
|
|
3604
|
+
s8 = peg$parseExpression();
|
|
3505
3605
|
if (s8 !== peg$FAILED) {
|
|
3506
3606
|
peg$savedPos = s3;
|
|
3507
3607
|
s3 = peg$f35(s1, s7, s8);
|
|
@@ -3520,13 +3620,13 @@ function peg$parse(input, options) {
|
|
|
3520
3620
|
s3 = peg$currPos;
|
|
3521
3621
|
s4 = peg$parse__();
|
|
3522
3622
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
3523
|
-
s5 = peg$
|
|
3623
|
+
s5 = peg$c39;
|
|
3524
3624
|
peg$currPos++;
|
|
3525
3625
|
}
|
|
3526
3626
|
else {
|
|
3527
3627
|
s5 = peg$FAILED;
|
|
3528
3628
|
if (peg$silentFails === 0) {
|
|
3529
|
-
peg$fail(peg$
|
|
3629
|
+
peg$fail(peg$e72);
|
|
3530
3630
|
}
|
|
3531
3631
|
}
|
|
3532
3632
|
if (s5 !== peg$FAILED) {
|
|
@@ -3545,7 +3645,7 @@ function peg$parse(input, options) {
|
|
|
3545
3645
|
if (s7 === peg$FAILED) {
|
|
3546
3646
|
s7 = null;
|
|
3547
3647
|
}
|
|
3548
|
-
s8 = peg$
|
|
3648
|
+
s8 = peg$parseExpression();
|
|
3549
3649
|
if (s8 !== peg$FAILED) {
|
|
3550
3650
|
peg$savedPos = s3;
|
|
3551
3651
|
s3 = peg$f35(s1, s7, s8);
|
|
@@ -3573,13 +3673,13 @@ function peg$parse(input, options) {
|
|
|
3573
3673
|
var s0, s1, s2, s3, s4, s5;
|
|
3574
3674
|
s0 = peg$currPos;
|
|
3575
3675
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
3576
|
-
s1 = peg$
|
|
3676
|
+
s1 = peg$c39;
|
|
3577
3677
|
peg$currPos++;
|
|
3578
3678
|
}
|
|
3579
3679
|
else {
|
|
3580
3680
|
s1 = peg$FAILED;
|
|
3581
3681
|
if (peg$silentFails === 0) {
|
|
3582
|
-
peg$fail(peg$
|
|
3682
|
+
peg$fail(peg$e72);
|
|
3583
3683
|
}
|
|
3584
3684
|
}
|
|
3585
3685
|
if (s1 !== peg$FAILED) {
|
|
@@ -3587,13 +3687,13 @@ function peg$parse(input, options) {
|
|
|
3587
3687
|
s3 = peg$currPos;
|
|
3588
3688
|
s4 = peg$parse__();
|
|
3589
3689
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
3590
|
-
s5 = peg$
|
|
3690
|
+
s5 = peg$c39;
|
|
3591
3691
|
peg$currPos++;
|
|
3592
3692
|
}
|
|
3593
3693
|
else {
|
|
3594
3694
|
s5 = peg$FAILED;
|
|
3595
3695
|
if (peg$silentFails === 0) {
|
|
3596
|
-
peg$fail(peg$
|
|
3696
|
+
peg$fail(peg$e72);
|
|
3597
3697
|
}
|
|
3598
3698
|
}
|
|
3599
3699
|
if (s5 !== peg$FAILED) {
|
|
@@ -3609,13 +3709,13 @@ function peg$parse(input, options) {
|
|
|
3609
3709
|
s3 = peg$currPos;
|
|
3610
3710
|
s4 = peg$parse__();
|
|
3611
3711
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
3612
|
-
s5 = peg$
|
|
3712
|
+
s5 = peg$c39;
|
|
3613
3713
|
peg$currPos++;
|
|
3614
3714
|
}
|
|
3615
3715
|
else {
|
|
3616
3716
|
s5 = peg$FAILED;
|
|
3617
3717
|
if (peg$silentFails === 0) {
|
|
3618
|
-
peg$fail(peg$
|
|
3718
|
+
peg$fail(peg$e72);
|
|
3619
3719
|
}
|
|
3620
3720
|
}
|
|
3621
3721
|
if (s5 !== peg$FAILED) {
|
|
@@ -3640,25 +3740,25 @@ function peg$parse(input, options) {
|
|
|
3640
3740
|
var s0, s1, s2, s3, s4, s5, s6, s7;
|
|
3641
3741
|
s0 = peg$currPos;
|
|
3642
3742
|
if (input.charCodeAt(peg$currPos) === 123) {
|
|
3643
|
-
s1 = peg$
|
|
3743
|
+
s1 = peg$c40;
|
|
3644
3744
|
peg$currPos++;
|
|
3645
3745
|
}
|
|
3646
3746
|
else {
|
|
3647
3747
|
s1 = peg$FAILED;
|
|
3648
3748
|
if (peg$silentFails === 0) {
|
|
3649
|
-
peg$fail(peg$
|
|
3749
|
+
peg$fail(peg$e73);
|
|
3650
3750
|
}
|
|
3651
3751
|
}
|
|
3652
3752
|
if (s1 !== peg$FAILED) {
|
|
3653
3753
|
s2 = peg$parse__();
|
|
3654
3754
|
if (input.charCodeAt(peg$currPos) === 125) {
|
|
3655
|
-
s3 = peg$
|
|
3755
|
+
s3 = peg$c34;
|
|
3656
3756
|
peg$currPos++;
|
|
3657
3757
|
}
|
|
3658
3758
|
else {
|
|
3659
3759
|
s3 = peg$FAILED;
|
|
3660
3760
|
if (peg$silentFails === 0) {
|
|
3661
|
-
peg$fail(peg$
|
|
3761
|
+
peg$fail(peg$e67);
|
|
3662
3762
|
}
|
|
3663
3763
|
}
|
|
3664
3764
|
if (s3 !== peg$FAILED) {
|
|
@@ -3677,13 +3777,13 @@ function peg$parse(input, options) {
|
|
|
3677
3777
|
if (s0 === peg$FAILED) {
|
|
3678
3778
|
s0 = peg$currPos;
|
|
3679
3779
|
if (input.charCodeAt(peg$currPos) === 123) {
|
|
3680
|
-
s1 = peg$
|
|
3780
|
+
s1 = peg$c40;
|
|
3681
3781
|
peg$currPos++;
|
|
3682
3782
|
}
|
|
3683
3783
|
else {
|
|
3684
3784
|
s1 = peg$FAILED;
|
|
3685
3785
|
if (peg$silentFails === 0) {
|
|
3686
|
-
peg$fail(peg$
|
|
3786
|
+
peg$fail(peg$e73);
|
|
3687
3787
|
}
|
|
3688
3788
|
}
|
|
3689
3789
|
if (s1 !== peg$FAILED) {
|
|
@@ -3692,13 +3792,13 @@ function peg$parse(input, options) {
|
|
|
3692
3792
|
if (s3 !== peg$FAILED) {
|
|
3693
3793
|
s4 = peg$parse__();
|
|
3694
3794
|
if (input.charCodeAt(peg$currPos) === 125) {
|
|
3695
|
-
s5 = peg$
|
|
3795
|
+
s5 = peg$c34;
|
|
3696
3796
|
peg$currPos++;
|
|
3697
3797
|
}
|
|
3698
3798
|
else {
|
|
3699
3799
|
s5 = peg$FAILED;
|
|
3700
3800
|
if (peg$silentFails === 0) {
|
|
3701
|
-
peg$fail(peg$
|
|
3801
|
+
peg$fail(peg$e67);
|
|
3702
3802
|
}
|
|
3703
3803
|
}
|
|
3704
3804
|
if (s5 !== peg$FAILED) {
|
|
@@ -3722,13 +3822,13 @@ function peg$parse(input, options) {
|
|
|
3722
3822
|
if (s0 === peg$FAILED) {
|
|
3723
3823
|
s0 = peg$currPos;
|
|
3724
3824
|
if (input.charCodeAt(peg$currPos) === 123) {
|
|
3725
|
-
s1 = peg$
|
|
3825
|
+
s1 = peg$c40;
|
|
3726
3826
|
peg$currPos++;
|
|
3727
3827
|
}
|
|
3728
3828
|
else {
|
|
3729
3829
|
s1 = peg$FAILED;
|
|
3730
3830
|
if (peg$silentFails === 0) {
|
|
3731
|
-
peg$fail(peg$
|
|
3831
|
+
peg$fail(peg$e73);
|
|
3732
3832
|
}
|
|
3733
3833
|
}
|
|
3734
3834
|
if (s1 !== peg$FAILED) {
|
|
@@ -3737,25 +3837,25 @@ function peg$parse(input, options) {
|
|
|
3737
3837
|
if (s3 !== peg$FAILED) {
|
|
3738
3838
|
s4 = peg$parse__();
|
|
3739
3839
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
3740
|
-
s5 = peg$
|
|
3840
|
+
s5 = peg$c39;
|
|
3741
3841
|
peg$currPos++;
|
|
3742
3842
|
}
|
|
3743
3843
|
else {
|
|
3744
3844
|
s5 = peg$FAILED;
|
|
3745
3845
|
if (peg$silentFails === 0) {
|
|
3746
|
-
peg$fail(peg$
|
|
3846
|
+
peg$fail(peg$e72);
|
|
3747
3847
|
}
|
|
3748
3848
|
}
|
|
3749
3849
|
if (s5 !== peg$FAILED) {
|
|
3750
3850
|
s6 = peg$parse__();
|
|
3751
3851
|
if (input.charCodeAt(peg$currPos) === 125) {
|
|
3752
|
-
s7 = peg$
|
|
3852
|
+
s7 = peg$c34;
|
|
3753
3853
|
peg$currPos++;
|
|
3754
3854
|
}
|
|
3755
3855
|
else {
|
|
3756
3856
|
s7 = peg$FAILED;
|
|
3757
3857
|
if (peg$silentFails === 0) {
|
|
3758
|
-
peg$fail(peg$
|
|
3858
|
+
peg$fail(peg$e67);
|
|
3759
3859
|
}
|
|
3760
3860
|
}
|
|
3761
3861
|
if (s7 !== peg$FAILED) {
|
|
@@ -3794,13 +3894,13 @@ function peg$parse(input, options) {
|
|
|
3794
3894
|
s3 = peg$currPos;
|
|
3795
3895
|
s4 = peg$parse__();
|
|
3796
3896
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
3797
|
-
s5 = peg$
|
|
3897
|
+
s5 = peg$c39;
|
|
3798
3898
|
peg$currPos++;
|
|
3799
3899
|
}
|
|
3800
3900
|
else {
|
|
3801
3901
|
s5 = peg$FAILED;
|
|
3802
3902
|
if (peg$silentFails === 0) {
|
|
3803
|
-
peg$fail(peg$
|
|
3903
|
+
peg$fail(peg$e72);
|
|
3804
3904
|
}
|
|
3805
3905
|
}
|
|
3806
3906
|
if (s5 !== peg$FAILED) {
|
|
@@ -3824,13 +3924,13 @@ function peg$parse(input, options) {
|
|
|
3824
3924
|
s3 = peg$currPos;
|
|
3825
3925
|
s4 = peg$parse__();
|
|
3826
3926
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
3827
|
-
s5 = peg$
|
|
3927
|
+
s5 = peg$c39;
|
|
3828
3928
|
peg$currPos++;
|
|
3829
3929
|
}
|
|
3830
3930
|
else {
|
|
3831
3931
|
s5 = peg$FAILED;
|
|
3832
3932
|
if (peg$silentFails === 0) {
|
|
3833
|
-
peg$fail(peg$
|
|
3933
|
+
peg$fail(peg$e72);
|
|
3834
3934
|
}
|
|
3835
3935
|
}
|
|
3836
3936
|
if (s5 !== peg$FAILED) {
|
|
@@ -3866,18 +3966,18 @@ function peg$parse(input, options) {
|
|
|
3866
3966
|
if (s1 !== peg$FAILED) {
|
|
3867
3967
|
s2 = peg$parse__();
|
|
3868
3968
|
if (input.charCodeAt(peg$currPos) === 58) {
|
|
3869
|
-
s3 = peg$
|
|
3969
|
+
s3 = peg$c41;
|
|
3870
3970
|
peg$currPos++;
|
|
3871
3971
|
}
|
|
3872
3972
|
else {
|
|
3873
3973
|
s3 = peg$FAILED;
|
|
3874
3974
|
if (peg$silentFails === 0) {
|
|
3875
|
-
peg$fail(peg$
|
|
3975
|
+
peg$fail(peg$e74);
|
|
3876
3976
|
}
|
|
3877
3977
|
}
|
|
3878
3978
|
if (s3 !== peg$FAILED) {
|
|
3879
3979
|
s4 = peg$parse__();
|
|
3880
|
-
s5 = peg$
|
|
3980
|
+
s5 = peg$parseExpression();
|
|
3881
3981
|
if (s5 !== peg$FAILED) {
|
|
3882
3982
|
peg$savedPos = s0;
|
|
3883
3983
|
s0 = peg$f42(s1, s5);
|
|
@@ -3918,28 +4018,28 @@ function peg$parse(input, options) {
|
|
|
3918
4018
|
s3 = peg$currPos;
|
|
3919
4019
|
s4 = peg$parse__();
|
|
3920
4020
|
if (input.charCodeAt(peg$currPos) === 91) {
|
|
3921
|
-
s5 = peg$
|
|
4021
|
+
s5 = peg$c37;
|
|
3922
4022
|
peg$currPos++;
|
|
3923
4023
|
}
|
|
3924
4024
|
else {
|
|
3925
4025
|
s5 = peg$FAILED;
|
|
3926
4026
|
if (peg$silentFails === 0) {
|
|
3927
|
-
peg$fail(peg$
|
|
4027
|
+
peg$fail(peg$e70);
|
|
3928
4028
|
}
|
|
3929
4029
|
}
|
|
3930
4030
|
if (s5 !== peg$FAILED) {
|
|
3931
4031
|
s6 = peg$parse__();
|
|
3932
|
-
s7 = peg$
|
|
4032
|
+
s7 = peg$parseExpression();
|
|
3933
4033
|
if (s7 !== peg$FAILED) {
|
|
3934
4034
|
s8 = peg$parse__();
|
|
3935
4035
|
if (input.charCodeAt(peg$currPos) === 93) {
|
|
3936
|
-
s9 = peg$
|
|
4036
|
+
s9 = peg$c38;
|
|
3937
4037
|
peg$currPos++;
|
|
3938
4038
|
}
|
|
3939
4039
|
else {
|
|
3940
4040
|
s9 = peg$FAILED;
|
|
3941
4041
|
if (peg$silentFails === 0) {
|
|
3942
|
-
peg$fail(peg$
|
|
4042
|
+
peg$fail(peg$e71);
|
|
3943
4043
|
}
|
|
3944
4044
|
}
|
|
3945
4045
|
if (s9 !== peg$FAILED) {
|
|
@@ -3992,14 +4092,14 @@ function peg$parse(input, options) {
|
|
|
3992
4092
|
if (s3 === peg$FAILED) {
|
|
3993
4093
|
s3 = peg$currPos;
|
|
3994
4094
|
s4 = peg$parse__();
|
|
3995
|
-
if (input.substr(peg$currPos, 2) === peg$
|
|
3996
|
-
s5 = peg$
|
|
4095
|
+
if (input.substr(peg$currPos, 2) === peg$c42) {
|
|
4096
|
+
s5 = peg$c42;
|
|
3997
4097
|
peg$currPos += 2;
|
|
3998
4098
|
}
|
|
3999
4099
|
else {
|
|
4000
4100
|
s5 = peg$FAILED;
|
|
4001
4101
|
if (peg$silentFails === 0) {
|
|
4002
|
-
peg$fail(peg$
|
|
4102
|
+
peg$fail(peg$e75);
|
|
4003
4103
|
}
|
|
4004
4104
|
}
|
|
4005
4105
|
if (s5 !== peg$FAILED) {
|
|
@@ -4025,28 +4125,28 @@ function peg$parse(input, options) {
|
|
|
4025
4125
|
s3 = peg$currPos;
|
|
4026
4126
|
s4 = peg$parse__();
|
|
4027
4127
|
if (input.charCodeAt(peg$currPos) === 91) {
|
|
4028
|
-
s5 = peg$
|
|
4128
|
+
s5 = peg$c37;
|
|
4029
4129
|
peg$currPos++;
|
|
4030
4130
|
}
|
|
4031
4131
|
else {
|
|
4032
4132
|
s5 = peg$FAILED;
|
|
4033
4133
|
if (peg$silentFails === 0) {
|
|
4034
|
-
peg$fail(peg$
|
|
4134
|
+
peg$fail(peg$e70);
|
|
4035
4135
|
}
|
|
4036
4136
|
}
|
|
4037
4137
|
if (s5 !== peg$FAILED) {
|
|
4038
4138
|
s6 = peg$parse__();
|
|
4039
|
-
s7 = peg$
|
|
4139
|
+
s7 = peg$parseExpression();
|
|
4040
4140
|
if (s7 !== peg$FAILED) {
|
|
4041
4141
|
s8 = peg$parse__();
|
|
4042
4142
|
if (input.charCodeAt(peg$currPos) === 93) {
|
|
4043
|
-
s9 = peg$
|
|
4143
|
+
s9 = peg$c38;
|
|
4044
4144
|
peg$currPos++;
|
|
4045
4145
|
}
|
|
4046
4146
|
else {
|
|
4047
4147
|
s9 = peg$FAILED;
|
|
4048
4148
|
if (peg$silentFails === 0) {
|
|
4049
|
-
peg$fail(peg$
|
|
4149
|
+
peg$fail(peg$e71);
|
|
4050
4150
|
}
|
|
4051
4151
|
}
|
|
4052
4152
|
if (s9 !== peg$FAILED) {
|
|
@@ -4099,14 +4199,14 @@ function peg$parse(input, options) {
|
|
|
4099
4199
|
if (s3 === peg$FAILED) {
|
|
4100
4200
|
s3 = peg$currPos;
|
|
4101
4201
|
s4 = peg$parse__();
|
|
4102
|
-
if (input.substr(peg$currPos, 2) === peg$
|
|
4103
|
-
s5 = peg$
|
|
4202
|
+
if (input.substr(peg$currPos, 2) === peg$c42) {
|
|
4203
|
+
s5 = peg$c42;
|
|
4104
4204
|
peg$currPos += 2;
|
|
4105
4205
|
}
|
|
4106
4206
|
else {
|
|
4107
4207
|
s5 = peg$FAILED;
|
|
4108
4208
|
if (peg$silentFails === 0) {
|
|
4109
|
-
peg$fail(peg$
|
|
4209
|
+
peg$fail(peg$e75);
|
|
4110
4210
|
}
|
|
4111
4211
|
}
|
|
4112
4212
|
if (s5 !== peg$FAILED) {
|
|
@@ -4175,28 +4275,28 @@ function peg$parse(input, options) {
|
|
|
4175
4275
|
s3 = peg$currPos;
|
|
4176
4276
|
s4 = peg$parse__();
|
|
4177
4277
|
if (input.charCodeAt(peg$currPos) === 91) {
|
|
4178
|
-
s5 = peg$
|
|
4278
|
+
s5 = peg$c37;
|
|
4179
4279
|
peg$currPos++;
|
|
4180
4280
|
}
|
|
4181
4281
|
else {
|
|
4182
4282
|
s5 = peg$FAILED;
|
|
4183
4283
|
if (peg$silentFails === 0) {
|
|
4184
|
-
peg$fail(peg$
|
|
4284
|
+
peg$fail(peg$e70);
|
|
4185
4285
|
}
|
|
4186
4286
|
}
|
|
4187
4287
|
if (s5 !== peg$FAILED) {
|
|
4188
4288
|
s6 = peg$parse__();
|
|
4189
|
-
s7 = peg$
|
|
4289
|
+
s7 = peg$parseExpression();
|
|
4190
4290
|
if (s7 !== peg$FAILED) {
|
|
4191
4291
|
s8 = peg$parse__();
|
|
4192
4292
|
if (input.charCodeAt(peg$currPos) === 93) {
|
|
4193
|
-
s9 = peg$
|
|
4293
|
+
s9 = peg$c38;
|
|
4194
4294
|
peg$currPos++;
|
|
4195
4295
|
}
|
|
4196
4296
|
else {
|
|
4197
4297
|
s9 = peg$FAILED;
|
|
4198
4298
|
if (peg$silentFails === 0) {
|
|
4199
|
-
peg$fail(peg$
|
|
4299
|
+
peg$fail(peg$e71);
|
|
4200
4300
|
}
|
|
4201
4301
|
}
|
|
4202
4302
|
if (s9 !== peg$FAILED) {
|
|
@@ -4265,28 +4365,28 @@ function peg$parse(input, options) {
|
|
|
4265
4365
|
s3 = peg$currPos;
|
|
4266
4366
|
s4 = peg$parse__();
|
|
4267
4367
|
if (input.charCodeAt(peg$currPos) === 91) {
|
|
4268
|
-
s5 = peg$
|
|
4368
|
+
s5 = peg$c37;
|
|
4269
4369
|
peg$currPos++;
|
|
4270
4370
|
}
|
|
4271
4371
|
else {
|
|
4272
4372
|
s5 = peg$FAILED;
|
|
4273
4373
|
if (peg$silentFails === 0) {
|
|
4274
|
-
peg$fail(peg$
|
|
4374
|
+
peg$fail(peg$e70);
|
|
4275
4375
|
}
|
|
4276
4376
|
}
|
|
4277
4377
|
if (s5 !== peg$FAILED) {
|
|
4278
4378
|
s6 = peg$parse__();
|
|
4279
|
-
s7 = peg$
|
|
4379
|
+
s7 = peg$parseExpression();
|
|
4280
4380
|
if (s7 !== peg$FAILED) {
|
|
4281
4381
|
s8 = peg$parse__();
|
|
4282
4382
|
if (input.charCodeAt(peg$currPos) === 93) {
|
|
4283
|
-
s9 = peg$
|
|
4383
|
+
s9 = peg$c38;
|
|
4284
4384
|
peg$currPos++;
|
|
4285
4385
|
}
|
|
4286
4386
|
else {
|
|
4287
4387
|
s9 = peg$FAILED;
|
|
4288
4388
|
if (peg$silentFails === 0) {
|
|
4289
|
-
peg$fail(peg$
|
|
4389
|
+
peg$fail(peg$e71);
|
|
4290
4390
|
}
|
|
4291
4391
|
}
|
|
4292
4392
|
if (s9 !== peg$FAILED) {
|
|
@@ -4352,13 +4452,13 @@ function peg$parse(input, options) {
|
|
|
4352
4452
|
var s0, s1, s2, s3, s4, s5;
|
|
4353
4453
|
s0 = peg$currPos;
|
|
4354
4454
|
if (input.charCodeAt(peg$currPos) === 40) {
|
|
4355
|
-
s1 = peg$
|
|
4455
|
+
s1 = peg$c35;
|
|
4356
4456
|
peg$currPos++;
|
|
4357
4457
|
}
|
|
4358
4458
|
else {
|
|
4359
4459
|
s1 = peg$FAILED;
|
|
4360
4460
|
if (peg$silentFails === 0) {
|
|
4361
|
-
peg$fail(peg$
|
|
4461
|
+
peg$fail(peg$e68);
|
|
4362
4462
|
}
|
|
4363
4463
|
}
|
|
4364
4464
|
if (s1 !== peg$FAILED) {
|
|
@@ -4378,13 +4478,13 @@ function peg$parse(input, options) {
|
|
|
4378
4478
|
s3 = null;
|
|
4379
4479
|
}
|
|
4380
4480
|
if (input.charCodeAt(peg$currPos) === 41) {
|
|
4381
|
-
s4 = peg$
|
|
4481
|
+
s4 = peg$c36;
|
|
4382
4482
|
peg$currPos++;
|
|
4383
4483
|
}
|
|
4384
4484
|
else {
|
|
4385
4485
|
s4 = peg$FAILED;
|
|
4386
4486
|
if (peg$silentFails === 0) {
|
|
4387
|
-
peg$fail(peg$
|
|
4487
|
+
peg$fail(peg$e69);
|
|
4388
4488
|
}
|
|
4389
4489
|
}
|
|
4390
4490
|
if (s4 !== peg$FAILED) {
|
|
@@ -4405,24 +4505,24 @@ function peg$parse(input, options) {
|
|
|
4405
4505
|
function peg$parseArgumentList() {
|
|
4406
4506
|
var s0, s1, s2, s3, s4, s5, s6, s7;
|
|
4407
4507
|
s0 = peg$currPos;
|
|
4408
|
-
s1 = peg$
|
|
4508
|
+
s1 = peg$parseCallArgument();
|
|
4409
4509
|
if (s1 !== peg$FAILED) {
|
|
4410
4510
|
s2 = [];
|
|
4411
4511
|
s3 = peg$currPos;
|
|
4412
4512
|
s4 = peg$parse__();
|
|
4413
4513
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
4414
|
-
s5 = peg$
|
|
4514
|
+
s5 = peg$c39;
|
|
4415
4515
|
peg$currPos++;
|
|
4416
4516
|
}
|
|
4417
4517
|
else {
|
|
4418
4518
|
s5 = peg$FAILED;
|
|
4419
4519
|
if (peg$silentFails === 0) {
|
|
4420
|
-
peg$fail(peg$
|
|
4520
|
+
peg$fail(peg$e72);
|
|
4421
4521
|
}
|
|
4422
4522
|
}
|
|
4423
4523
|
if (s5 !== peg$FAILED) {
|
|
4424
4524
|
s6 = peg$parse__();
|
|
4425
|
-
s7 = peg$
|
|
4525
|
+
s7 = peg$parseCallArgument();
|
|
4426
4526
|
if (s7 !== peg$FAILED) {
|
|
4427
4527
|
s4 = [s4, s5, s6, s7];
|
|
4428
4528
|
s3 = s4;
|
|
@@ -4441,18 +4541,18 @@ function peg$parse(input, options) {
|
|
|
4441
4541
|
s3 = peg$currPos;
|
|
4442
4542
|
s4 = peg$parse__();
|
|
4443
4543
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
4444
|
-
s5 = peg$
|
|
4544
|
+
s5 = peg$c39;
|
|
4445
4545
|
peg$currPos++;
|
|
4446
4546
|
}
|
|
4447
4547
|
else {
|
|
4448
4548
|
s5 = peg$FAILED;
|
|
4449
4549
|
if (peg$silentFails === 0) {
|
|
4450
|
-
peg$fail(peg$
|
|
4550
|
+
peg$fail(peg$e72);
|
|
4451
4551
|
}
|
|
4452
4552
|
}
|
|
4453
4553
|
if (s5 !== peg$FAILED) {
|
|
4454
4554
|
s6 = peg$parse__();
|
|
4455
|
-
s7 = peg$
|
|
4555
|
+
s7 = peg$parseCallArgument();
|
|
4456
4556
|
if (s7 !== peg$FAILED) {
|
|
4457
4557
|
s4 = [s4, s5, s6, s7];
|
|
4458
4558
|
s3 = s4;
|
|
@@ -4476,6 +4576,34 @@ function peg$parse(input, options) {
|
|
|
4476
4576
|
}
|
|
4477
4577
|
return s0;
|
|
4478
4578
|
}
|
|
4579
|
+
function peg$parseCallArgument() {
|
|
4580
|
+
var s0;
|
|
4581
|
+
s0 = peg$parseExpression();
|
|
4582
|
+
if (s0 === peg$FAILED) {
|
|
4583
|
+
s0 = peg$parseCurryPlaceholder();
|
|
4584
|
+
}
|
|
4585
|
+
return s0;
|
|
4586
|
+
}
|
|
4587
|
+
function peg$parseCurryPlaceholder() {
|
|
4588
|
+
var s0, s1;
|
|
4589
|
+
s0 = peg$currPos;
|
|
4590
|
+
if (input.charCodeAt(peg$currPos) === 37) {
|
|
4591
|
+
s1 = peg$c43;
|
|
4592
|
+
peg$currPos++;
|
|
4593
|
+
}
|
|
4594
|
+
else {
|
|
4595
|
+
s1 = peg$FAILED;
|
|
4596
|
+
if (peg$silentFails === 0) {
|
|
4597
|
+
peg$fail(peg$e76);
|
|
4598
|
+
}
|
|
4599
|
+
}
|
|
4600
|
+
if (s1 !== peg$FAILED) {
|
|
4601
|
+
peg$savedPos = s0;
|
|
4602
|
+
s1 = peg$f54();
|
|
4603
|
+
}
|
|
4604
|
+
s0 = s1;
|
|
4605
|
+
return s0;
|
|
4606
|
+
}
|
|
4479
4607
|
function peg$parseLeftHandSideExpression() {
|
|
4480
4608
|
var s0;
|
|
4481
4609
|
s0 = peg$parseCallExpression();
|
|
@@ -4532,7 +4660,7 @@ function peg$parse(input, options) {
|
|
|
4532
4660
|
}
|
|
4533
4661
|
}
|
|
4534
4662
|
peg$savedPos = s0;
|
|
4535
|
-
s0 = peg$
|
|
4663
|
+
s0 = peg$f55(s1, s2);
|
|
4536
4664
|
}
|
|
4537
4665
|
else {
|
|
4538
4666
|
peg$currPos = s0;
|
|
@@ -4543,13 +4671,13 @@ function peg$parse(input, options) {
|
|
|
4543
4671
|
function peg$parseExponentiationOperator() {
|
|
4544
4672
|
var s0;
|
|
4545
4673
|
if (input.charCodeAt(peg$currPos) === 94) {
|
|
4546
|
-
s0 = peg$
|
|
4674
|
+
s0 = peg$c44;
|
|
4547
4675
|
peg$currPos++;
|
|
4548
4676
|
}
|
|
4549
4677
|
else {
|
|
4550
4678
|
s0 = peg$FAILED;
|
|
4551
4679
|
if (peg$silentFails === 0) {
|
|
4552
|
-
peg$fail(peg$
|
|
4680
|
+
peg$fail(peg$e77);
|
|
4553
4681
|
}
|
|
4554
4682
|
}
|
|
4555
4683
|
return s0;
|
|
@@ -4565,7 +4693,7 @@ function peg$parse(input, options) {
|
|
|
4565
4693
|
s3 = peg$parseUnaryExpression();
|
|
4566
4694
|
if (s3 !== peg$FAILED) {
|
|
4567
4695
|
peg$savedPos = s0;
|
|
4568
|
-
s0 = peg$
|
|
4696
|
+
s0 = peg$f56(s1, s3);
|
|
4569
4697
|
}
|
|
4570
4698
|
else {
|
|
4571
4699
|
peg$currPos = s0;
|
|
@@ -4661,7 +4789,7 @@ function peg$parse(input, options) {
|
|
|
4661
4789
|
}
|
|
4662
4790
|
}
|
|
4663
4791
|
peg$savedPos = s0;
|
|
4664
|
-
s0 = peg$
|
|
4792
|
+
s0 = peg$f57(s1, s2);
|
|
4665
4793
|
}
|
|
4666
4794
|
else {
|
|
4667
4795
|
peg$currPos = s0;
|
|
@@ -4678,7 +4806,7 @@ function peg$parse(input, options) {
|
|
|
4678
4806
|
else {
|
|
4679
4807
|
s0 = peg$FAILED;
|
|
4680
4808
|
if (peg$silentFails === 0) {
|
|
4681
|
-
peg$fail(peg$
|
|
4809
|
+
peg$fail(peg$e78);
|
|
4682
4810
|
}
|
|
4683
4811
|
}
|
|
4684
4812
|
if (s0 === peg$FAILED) {
|
|
@@ -4741,7 +4869,7 @@ function peg$parse(input, options) {
|
|
|
4741
4869
|
}
|
|
4742
4870
|
}
|
|
4743
4871
|
peg$savedPos = s0;
|
|
4744
|
-
s0 = peg$
|
|
4872
|
+
s0 = peg$f58(s1, s2);
|
|
4745
4873
|
}
|
|
4746
4874
|
else {
|
|
4747
4875
|
peg$currPos = s0;
|
|
@@ -4811,7 +4939,7 @@ function peg$parse(input, options) {
|
|
|
4811
4939
|
}
|
|
4812
4940
|
}
|
|
4813
4941
|
peg$savedPos = s0;
|
|
4814
|
-
s0 = peg$
|
|
4942
|
+
s0 = peg$f59(s1, s2);
|
|
4815
4943
|
}
|
|
4816
4944
|
else {
|
|
4817
4945
|
peg$currPos = s0;
|
|
@@ -4822,13 +4950,13 @@ function peg$parse(input, options) {
|
|
|
4822
4950
|
function peg$parseConcatenationOperator() {
|
|
4823
4951
|
var s0;
|
|
4824
4952
|
if (input.charCodeAt(peg$currPos) === 38) {
|
|
4825
|
-
s0 = peg$
|
|
4953
|
+
s0 = peg$c45;
|
|
4826
4954
|
peg$currPos++;
|
|
4827
4955
|
}
|
|
4828
4956
|
else {
|
|
4829
4957
|
s0 = peg$FAILED;
|
|
4830
4958
|
if (peg$silentFails === 0) {
|
|
4831
|
-
peg$fail(peg$
|
|
4959
|
+
peg$fail(peg$e79);
|
|
4832
4960
|
}
|
|
4833
4961
|
}
|
|
4834
4962
|
return s0;
|
|
@@ -4881,7 +5009,7 @@ function peg$parse(input, options) {
|
|
|
4881
5009
|
}
|
|
4882
5010
|
}
|
|
4883
5011
|
peg$savedPos = s0;
|
|
4884
|
-
s0 = peg$
|
|
5012
|
+
s0 = peg$f60(s1, s2);
|
|
4885
5013
|
}
|
|
4886
5014
|
else {
|
|
4887
5015
|
peg$currPos = s0;
|
|
@@ -4891,25 +5019,25 @@ function peg$parse(input, options) {
|
|
|
4891
5019
|
}
|
|
4892
5020
|
function peg$parseRelationalOperator() {
|
|
4893
5021
|
var s0, s1;
|
|
4894
|
-
if (input.substr(peg$currPos, 2) === peg$
|
|
4895
|
-
s0 = peg$
|
|
5022
|
+
if (input.substr(peg$currPos, 2) === peg$c46) {
|
|
5023
|
+
s0 = peg$c46;
|
|
4896
5024
|
peg$currPos += 2;
|
|
4897
5025
|
}
|
|
4898
5026
|
else {
|
|
4899
5027
|
s0 = peg$FAILED;
|
|
4900
5028
|
if (peg$silentFails === 0) {
|
|
4901
|
-
peg$fail(peg$
|
|
5029
|
+
peg$fail(peg$e80);
|
|
4902
5030
|
}
|
|
4903
5031
|
}
|
|
4904
5032
|
if (s0 === peg$FAILED) {
|
|
4905
|
-
if (input.substr(peg$currPos, 2) === peg$
|
|
4906
|
-
s0 = peg$
|
|
5033
|
+
if (input.substr(peg$currPos, 2) === peg$c47) {
|
|
5034
|
+
s0 = peg$c47;
|
|
4907
5035
|
peg$currPos += 2;
|
|
4908
5036
|
}
|
|
4909
5037
|
else {
|
|
4910
5038
|
s0 = peg$FAILED;
|
|
4911
5039
|
if (peg$silentFails === 0) {
|
|
4912
|
-
peg$fail(peg$
|
|
5040
|
+
peg$fail(peg$e81);
|
|
4913
5041
|
}
|
|
4914
5042
|
}
|
|
4915
5043
|
if (s0 === peg$FAILED) {
|
|
@@ -4920,7 +5048,7 @@ function peg$parse(input, options) {
|
|
|
4920
5048
|
else {
|
|
4921
5049
|
s0 = peg$FAILED;
|
|
4922
5050
|
if (peg$silentFails === 0) {
|
|
4923
|
-
peg$fail(peg$
|
|
5051
|
+
peg$fail(peg$e82);
|
|
4924
5052
|
}
|
|
4925
5053
|
}
|
|
4926
5054
|
if (s0 === peg$FAILED) {
|
|
@@ -4985,7 +5113,7 @@ function peg$parse(input, options) {
|
|
|
4985
5113
|
}
|
|
4986
5114
|
}
|
|
4987
5115
|
peg$savedPos = s0;
|
|
4988
|
-
s0 = peg$
|
|
5116
|
+
s0 = peg$f61(s1, s2);
|
|
4989
5117
|
}
|
|
4990
5118
|
else {
|
|
4991
5119
|
peg$currPos = s0;
|
|
@@ -4995,25 +5123,25 @@ function peg$parse(input, options) {
|
|
|
4995
5123
|
}
|
|
4996
5124
|
function peg$parseEqualityOperator() {
|
|
4997
5125
|
var s0;
|
|
4998
|
-
if (input.substr(peg$currPos, 2) === peg$
|
|
4999
|
-
s0 = peg$
|
|
5126
|
+
if (input.substr(peg$currPos, 2) === peg$c48) {
|
|
5127
|
+
s0 = peg$c48;
|
|
5000
5128
|
peg$currPos += 2;
|
|
5001
5129
|
}
|
|
5002
5130
|
else {
|
|
5003
5131
|
s0 = peg$FAILED;
|
|
5004
5132
|
if (peg$silentFails === 0) {
|
|
5005
|
-
peg$fail(peg$
|
|
5133
|
+
peg$fail(peg$e83);
|
|
5006
5134
|
}
|
|
5007
5135
|
}
|
|
5008
5136
|
if (s0 === peg$FAILED) {
|
|
5009
|
-
if (input.substr(peg$currPos, 2) === peg$
|
|
5010
|
-
s0 = peg$
|
|
5137
|
+
if (input.substr(peg$currPos, 2) === peg$c49) {
|
|
5138
|
+
s0 = peg$c49;
|
|
5011
5139
|
peg$currPos += 2;
|
|
5012
5140
|
}
|
|
5013
5141
|
else {
|
|
5014
5142
|
s0 = peg$FAILED;
|
|
5015
5143
|
if (peg$silentFails === 0) {
|
|
5016
|
-
peg$fail(peg$
|
|
5144
|
+
peg$fail(peg$e84);
|
|
5017
5145
|
}
|
|
5018
5146
|
}
|
|
5019
5147
|
}
|
|
@@ -5067,7 +5195,7 @@ function peg$parse(input, options) {
|
|
|
5067
5195
|
}
|
|
5068
5196
|
}
|
|
5069
5197
|
peg$savedPos = s0;
|
|
5070
|
-
s0 = peg$
|
|
5198
|
+
s0 = peg$f62(s1, s2);
|
|
5071
5199
|
}
|
|
5072
5200
|
else {
|
|
5073
5201
|
peg$currPos = s0;
|
|
@@ -5085,6 +5213,18 @@ function peg$parse(input, options) {
|
|
|
5085
5213
|
else {
|
|
5086
5214
|
s0 = s1;
|
|
5087
5215
|
}
|
|
5216
|
+
if (s0 === peg$FAILED) {
|
|
5217
|
+
if (input.substr(peg$currPos, 2) === peg$c50) {
|
|
5218
|
+
s0 = peg$c50;
|
|
5219
|
+
peg$currPos += 2;
|
|
5220
|
+
}
|
|
5221
|
+
else {
|
|
5222
|
+
s0 = peg$FAILED;
|
|
5223
|
+
if (peg$silentFails === 0) {
|
|
5224
|
+
peg$fail(peg$e85);
|
|
5225
|
+
}
|
|
5226
|
+
}
|
|
5227
|
+
}
|
|
5088
5228
|
return s0;
|
|
5089
5229
|
}
|
|
5090
5230
|
function peg$parseLogicalORExpression() {
|
|
@@ -5135,7 +5275,7 @@ function peg$parse(input, options) {
|
|
|
5135
5275
|
}
|
|
5136
5276
|
}
|
|
5137
5277
|
peg$savedPos = s0;
|
|
5138
|
-
s0 = peg$
|
|
5278
|
+
s0 = peg$f63(s1, s2);
|
|
5139
5279
|
}
|
|
5140
5280
|
else {
|
|
5141
5281
|
peg$currPos = s0;
|
|
@@ -5153,6 +5293,18 @@ function peg$parse(input, options) {
|
|
|
5153
5293
|
else {
|
|
5154
5294
|
s0 = s1;
|
|
5155
5295
|
}
|
|
5296
|
+
if (s0 === peg$FAILED) {
|
|
5297
|
+
if (input.substr(peg$currPos, 2) === peg$c51) {
|
|
5298
|
+
s0 = peg$c51;
|
|
5299
|
+
peg$currPos += 2;
|
|
5300
|
+
}
|
|
5301
|
+
else {
|
|
5302
|
+
s0 = peg$FAILED;
|
|
5303
|
+
if (peg$silentFails === 0) {
|
|
5304
|
+
peg$fail(peg$e86);
|
|
5305
|
+
}
|
|
5306
|
+
}
|
|
5307
|
+
}
|
|
5156
5308
|
return s0;
|
|
5157
5309
|
}
|
|
5158
5310
|
function peg$parseConditionalExpression() {
|
|
@@ -5161,22 +5313,22 @@ function peg$parse(input, options) {
|
|
|
5161
5313
|
s1 = peg$parseIfToken();
|
|
5162
5314
|
if (s1 !== peg$FAILED) {
|
|
5163
5315
|
s2 = peg$parse__();
|
|
5164
|
-
s3 = peg$
|
|
5316
|
+
s3 = peg$parseExpression();
|
|
5165
5317
|
if (s3 !== peg$FAILED) {
|
|
5166
5318
|
s4 = peg$parse__();
|
|
5167
5319
|
s5 = peg$parseThenToken();
|
|
5168
5320
|
if (s5 !== peg$FAILED) {
|
|
5169
5321
|
s6 = peg$parse__();
|
|
5170
|
-
s7 = peg$
|
|
5322
|
+
s7 = peg$parseExpression();
|
|
5171
5323
|
if (s7 !== peg$FAILED) {
|
|
5172
5324
|
s8 = peg$parse__();
|
|
5173
5325
|
s9 = peg$parseElseToken();
|
|
5174
5326
|
if (s9 !== peg$FAILED) {
|
|
5175
5327
|
s10 = peg$parse__();
|
|
5176
|
-
s11 = peg$
|
|
5328
|
+
s11 = peg$parseExpression();
|
|
5177
5329
|
if (s11 !== peg$FAILED) {
|
|
5178
5330
|
peg$savedPos = s0;
|
|
5179
|
-
s0 = peg$
|
|
5331
|
+
s0 = peg$f64(s3, s7, s11);
|
|
5180
5332
|
}
|
|
5181
5333
|
else {
|
|
5182
5334
|
peg$currPos = s0;
|
|
@@ -5212,16 +5364,16 @@ function peg$parse(input, options) {
|
|
|
5212
5364
|
s1 = peg$parseIfToken();
|
|
5213
5365
|
if (s1 !== peg$FAILED) {
|
|
5214
5366
|
s2 = peg$parse__();
|
|
5215
|
-
s3 = peg$
|
|
5367
|
+
s3 = peg$parseExpression();
|
|
5216
5368
|
if (s3 !== peg$FAILED) {
|
|
5217
5369
|
s4 = peg$parse__();
|
|
5218
5370
|
s5 = peg$parseThenToken();
|
|
5219
5371
|
if (s5 !== peg$FAILED) {
|
|
5220
5372
|
s6 = peg$parse__();
|
|
5221
|
-
s7 = peg$
|
|
5373
|
+
s7 = peg$parseExpression();
|
|
5222
5374
|
if (s7 !== peg$FAILED) {
|
|
5223
5375
|
peg$savedPos = s0;
|
|
5224
|
-
s0 = peg$
|
|
5376
|
+
s0 = peg$f65(s3, s7);
|
|
5225
5377
|
}
|
|
5226
5378
|
else {
|
|
5227
5379
|
peg$currPos = s0;
|
|
@@ -5296,7 +5448,7 @@ function peg$parse(input, options) {
|
|
|
5296
5448
|
}
|
|
5297
5449
|
}
|
|
5298
5450
|
peg$savedPos = s0;
|
|
5299
|
-
s0 = peg$
|
|
5451
|
+
s0 = peg$f66(s1, s2);
|
|
5300
5452
|
}
|
|
5301
5453
|
else {
|
|
5302
5454
|
peg$currPos = s0;
|
|
@@ -5306,14 +5458,14 @@ function peg$parse(input, options) {
|
|
|
5306
5458
|
}
|
|
5307
5459
|
function peg$parseNullishCoalescingOperator() {
|
|
5308
5460
|
var s0;
|
|
5309
|
-
if (input.substr(peg$currPos, 2) === peg$
|
|
5310
|
-
s0 = peg$
|
|
5461
|
+
if (input.substr(peg$currPos, 2) === peg$c52) {
|
|
5462
|
+
s0 = peg$c52;
|
|
5311
5463
|
peg$currPos += 2;
|
|
5312
5464
|
}
|
|
5313
5465
|
else {
|
|
5314
5466
|
s0 = peg$FAILED;
|
|
5315
5467
|
if (peg$silentFails === 0) {
|
|
5316
|
-
peg$fail(peg$
|
|
5468
|
+
peg$fail(peg$e87);
|
|
5317
5469
|
}
|
|
5318
5470
|
}
|
|
5319
5471
|
return s0;
|
|
@@ -5332,7 +5484,7 @@ function peg$parse(input, options) {
|
|
|
5332
5484
|
s7 = peg$parseNullishCoalescingExpression();
|
|
5333
5485
|
if (s7 !== peg$FAILED) {
|
|
5334
5486
|
peg$savedPos = s3;
|
|
5335
|
-
s3 = peg$
|
|
5487
|
+
s3 = peg$f67(s1, s5, s7);
|
|
5336
5488
|
}
|
|
5337
5489
|
else {
|
|
5338
5490
|
peg$currPos = s3;
|
|
@@ -5353,7 +5505,7 @@ function peg$parse(input, options) {
|
|
|
5353
5505
|
s7 = peg$parseNullishCoalescingExpression();
|
|
5354
5506
|
if (s7 !== peg$FAILED) {
|
|
5355
5507
|
peg$savedPos = s3;
|
|
5356
|
-
s3 = peg$
|
|
5508
|
+
s3 = peg$f67(s1, s5, s7);
|
|
5357
5509
|
}
|
|
5358
5510
|
else {
|
|
5359
5511
|
peg$currPos = s3;
|
|
@@ -5366,7 +5518,7 @@ function peg$parse(input, options) {
|
|
|
5366
5518
|
}
|
|
5367
5519
|
}
|
|
5368
5520
|
peg$savedPos = s0;
|
|
5369
|
-
s0 = peg$
|
|
5521
|
+
s0 = peg$f68(s1, s2);
|
|
5370
5522
|
}
|
|
5371
5523
|
else {
|
|
5372
5524
|
peg$currPos = s0;
|
|
@@ -5376,41 +5528,462 @@ function peg$parse(input, options) {
|
|
|
5376
5528
|
}
|
|
5377
5529
|
function peg$parsePipeOperator() {
|
|
5378
5530
|
var s0;
|
|
5379
|
-
if (input.substr(peg$currPos, 2) === peg$
|
|
5380
|
-
s0 = peg$
|
|
5531
|
+
if (input.substr(peg$currPos, 2) === peg$c53) {
|
|
5532
|
+
s0 = peg$c53;
|
|
5381
5533
|
peg$currPos += 2;
|
|
5382
5534
|
}
|
|
5383
5535
|
else {
|
|
5384
5536
|
s0 = peg$FAILED;
|
|
5385
5537
|
if (peg$silentFails === 0) {
|
|
5386
|
-
peg$fail(peg$
|
|
5538
|
+
peg$fail(peg$e88);
|
|
5387
5539
|
}
|
|
5388
5540
|
}
|
|
5389
5541
|
if (s0 === peg$FAILED) {
|
|
5390
5542
|
if (input.charCodeAt(peg$currPos) === 124) {
|
|
5391
|
-
s0 = peg$
|
|
5543
|
+
s0 = peg$c54;
|
|
5392
5544
|
peg$currPos++;
|
|
5393
5545
|
}
|
|
5394
5546
|
else {
|
|
5395
5547
|
s0 = peg$FAILED;
|
|
5396
5548
|
if (peg$silentFails === 0) {
|
|
5397
|
-
peg$fail(peg$
|
|
5549
|
+
peg$fail(peg$e89);
|
|
5550
|
+
}
|
|
5551
|
+
}
|
|
5552
|
+
}
|
|
5553
|
+
return s0;
|
|
5554
|
+
}
|
|
5555
|
+
function peg$parseLambdaExpression() {
|
|
5556
|
+
var s0, s1, s2, s3, s4, s5, s6, s7, s8;
|
|
5557
|
+
s0 = peg$currPos;
|
|
5558
|
+
if (input.charCodeAt(peg$currPos) === 40) {
|
|
5559
|
+
s1 = peg$c35;
|
|
5560
|
+
peg$currPos++;
|
|
5561
|
+
}
|
|
5562
|
+
else {
|
|
5563
|
+
s1 = peg$FAILED;
|
|
5564
|
+
if (peg$silentFails === 0) {
|
|
5565
|
+
peg$fail(peg$e68);
|
|
5566
|
+
}
|
|
5567
|
+
}
|
|
5568
|
+
if (s1 !== peg$FAILED) {
|
|
5569
|
+
s2 = peg$parse__();
|
|
5570
|
+
s3 = peg$currPos;
|
|
5571
|
+
s4 = peg$parseFormalParameterList();
|
|
5572
|
+
if (s4 !== peg$FAILED) {
|
|
5573
|
+
s5 = peg$parse__();
|
|
5574
|
+
s4 = [s4, s5];
|
|
5575
|
+
s3 = s4;
|
|
5576
|
+
}
|
|
5577
|
+
else {
|
|
5578
|
+
peg$currPos = s3;
|
|
5579
|
+
s3 = peg$FAILED;
|
|
5580
|
+
}
|
|
5581
|
+
if (s3 === peg$FAILED) {
|
|
5582
|
+
s3 = null;
|
|
5583
|
+
}
|
|
5584
|
+
if (input.charCodeAt(peg$currPos) === 41) {
|
|
5585
|
+
s4 = peg$c36;
|
|
5586
|
+
peg$currPos++;
|
|
5587
|
+
}
|
|
5588
|
+
else {
|
|
5589
|
+
s4 = peg$FAILED;
|
|
5590
|
+
if (peg$silentFails === 0) {
|
|
5591
|
+
peg$fail(peg$e69);
|
|
5592
|
+
}
|
|
5593
|
+
}
|
|
5594
|
+
if (s4 !== peg$FAILED) {
|
|
5595
|
+
s5 = peg$parse__();
|
|
5596
|
+
s6 = peg$parseLambdaArrow();
|
|
5597
|
+
if (s6 !== peg$FAILED) {
|
|
5598
|
+
s7 = peg$parse__();
|
|
5599
|
+
s8 = peg$parseExpression();
|
|
5600
|
+
if (s8 !== peg$FAILED) {
|
|
5601
|
+
peg$savedPos = s0;
|
|
5602
|
+
s0 = peg$f69(s3, s8);
|
|
5603
|
+
}
|
|
5604
|
+
else {
|
|
5605
|
+
peg$currPos = s0;
|
|
5606
|
+
s0 = peg$FAILED;
|
|
5607
|
+
}
|
|
5608
|
+
}
|
|
5609
|
+
else {
|
|
5610
|
+
peg$currPos = s0;
|
|
5611
|
+
s0 = peg$FAILED;
|
|
5612
|
+
}
|
|
5613
|
+
}
|
|
5614
|
+
else {
|
|
5615
|
+
peg$currPos = s0;
|
|
5616
|
+
s0 = peg$FAILED;
|
|
5617
|
+
}
|
|
5618
|
+
}
|
|
5619
|
+
else {
|
|
5620
|
+
peg$currPos = s0;
|
|
5621
|
+
s0 = peg$FAILED;
|
|
5622
|
+
}
|
|
5623
|
+
if (s0 === peg$FAILED) {
|
|
5624
|
+
s0 = peg$currPos;
|
|
5625
|
+
s1 = peg$parse__();
|
|
5626
|
+
s2 = peg$parseIdentifier();
|
|
5627
|
+
if (s2 !== peg$FAILED) {
|
|
5628
|
+
s3 = peg$parse__();
|
|
5629
|
+
s4 = peg$parseLambdaArrow();
|
|
5630
|
+
if (s4 !== peg$FAILED) {
|
|
5631
|
+
s5 = peg$parse__();
|
|
5632
|
+
s6 = peg$parseExpression();
|
|
5633
|
+
if (s6 !== peg$FAILED) {
|
|
5634
|
+
peg$savedPos = s0;
|
|
5635
|
+
s0 = peg$f70(s2, s6);
|
|
5636
|
+
}
|
|
5637
|
+
else {
|
|
5638
|
+
peg$currPos = s0;
|
|
5639
|
+
s0 = peg$FAILED;
|
|
5640
|
+
}
|
|
5641
|
+
}
|
|
5642
|
+
else {
|
|
5643
|
+
peg$currPos = s0;
|
|
5644
|
+
s0 = peg$FAILED;
|
|
5398
5645
|
}
|
|
5399
5646
|
}
|
|
5647
|
+
else {
|
|
5648
|
+
peg$currPos = s0;
|
|
5649
|
+
s0 = peg$FAILED;
|
|
5650
|
+
}
|
|
5651
|
+
}
|
|
5652
|
+
return s0;
|
|
5653
|
+
}
|
|
5654
|
+
function peg$parseLambdaArrow() {
|
|
5655
|
+
var s0;
|
|
5656
|
+
if (input.substr(peg$currPos, 2) === peg$c55) {
|
|
5657
|
+
s0 = peg$c55;
|
|
5658
|
+
peg$currPos += 2;
|
|
5659
|
+
}
|
|
5660
|
+
else {
|
|
5661
|
+
s0 = peg$FAILED;
|
|
5662
|
+
if (peg$silentFails === 0) {
|
|
5663
|
+
peg$fail(peg$e90);
|
|
5664
|
+
}
|
|
5665
|
+
}
|
|
5666
|
+
return s0;
|
|
5667
|
+
}
|
|
5668
|
+
function peg$parseFormalParameterList() {
|
|
5669
|
+
var s0, s1, s2, s3, s4, s5, s6, s7;
|
|
5670
|
+
s0 = peg$currPos;
|
|
5671
|
+
s1 = peg$parseIdentifier();
|
|
5672
|
+
if (s1 !== peg$FAILED) {
|
|
5673
|
+
s2 = [];
|
|
5674
|
+
s3 = peg$currPos;
|
|
5675
|
+
s4 = peg$parse__();
|
|
5676
|
+
if (input.charCodeAt(peg$currPos) === 44) {
|
|
5677
|
+
s5 = peg$c39;
|
|
5678
|
+
peg$currPos++;
|
|
5679
|
+
}
|
|
5680
|
+
else {
|
|
5681
|
+
s5 = peg$FAILED;
|
|
5682
|
+
if (peg$silentFails === 0) {
|
|
5683
|
+
peg$fail(peg$e72);
|
|
5684
|
+
}
|
|
5685
|
+
}
|
|
5686
|
+
if (s5 !== peg$FAILED) {
|
|
5687
|
+
s6 = peg$parse__();
|
|
5688
|
+
s7 = peg$parseIdentifier();
|
|
5689
|
+
if (s7 !== peg$FAILED) {
|
|
5690
|
+
s4 = [s4, s5, s6, s7];
|
|
5691
|
+
s3 = s4;
|
|
5692
|
+
}
|
|
5693
|
+
else {
|
|
5694
|
+
peg$currPos = s3;
|
|
5695
|
+
s3 = peg$FAILED;
|
|
5696
|
+
}
|
|
5697
|
+
}
|
|
5698
|
+
else {
|
|
5699
|
+
peg$currPos = s3;
|
|
5700
|
+
s3 = peg$FAILED;
|
|
5701
|
+
}
|
|
5702
|
+
while (s3 !== peg$FAILED) {
|
|
5703
|
+
s2.push(s3);
|
|
5704
|
+
s3 = peg$currPos;
|
|
5705
|
+
s4 = peg$parse__();
|
|
5706
|
+
if (input.charCodeAt(peg$currPos) === 44) {
|
|
5707
|
+
s5 = peg$c39;
|
|
5708
|
+
peg$currPos++;
|
|
5709
|
+
}
|
|
5710
|
+
else {
|
|
5711
|
+
s5 = peg$FAILED;
|
|
5712
|
+
if (peg$silentFails === 0) {
|
|
5713
|
+
peg$fail(peg$e72);
|
|
5714
|
+
}
|
|
5715
|
+
}
|
|
5716
|
+
if (s5 !== peg$FAILED) {
|
|
5717
|
+
s6 = peg$parse__();
|
|
5718
|
+
s7 = peg$parseIdentifier();
|
|
5719
|
+
if (s7 !== peg$FAILED) {
|
|
5720
|
+
s4 = [s4, s5, s6, s7];
|
|
5721
|
+
s3 = s4;
|
|
5722
|
+
}
|
|
5723
|
+
else {
|
|
5724
|
+
peg$currPos = s3;
|
|
5725
|
+
s3 = peg$FAILED;
|
|
5726
|
+
}
|
|
5727
|
+
}
|
|
5728
|
+
else {
|
|
5729
|
+
peg$currPos = s3;
|
|
5730
|
+
s3 = peg$FAILED;
|
|
5731
|
+
}
|
|
5732
|
+
}
|
|
5733
|
+
peg$savedPos = s0;
|
|
5734
|
+
s0 = peg$f71(s1, s2);
|
|
5735
|
+
}
|
|
5736
|
+
else {
|
|
5737
|
+
peg$currPos = s0;
|
|
5738
|
+
s0 = peg$FAILED;
|
|
5739
|
+
}
|
|
5740
|
+
return s0;
|
|
5741
|
+
}
|
|
5742
|
+
function peg$parseLetExpression() {
|
|
5743
|
+
var s0, s1, s2, s3, s4, s5, s6, s7;
|
|
5744
|
+
s0 = peg$currPos;
|
|
5745
|
+
s1 = peg$parseLetToken();
|
|
5746
|
+
if (s1 !== peg$FAILED) {
|
|
5747
|
+
s2 = peg$parse__();
|
|
5748
|
+
s3 = peg$parseVariableDeclarationList();
|
|
5749
|
+
if (s3 !== peg$FAILED) {
|
|
5750
|
+
s4 = peg$parse__();
|
|
5751
|
+
if (input.charCodeAt(peg$currPos) === 44) {
|
|
5752
|
+
s5 = peg$c39;
|
|
5753
|
+
peg$currPos++;
|
|
5754
|
+
}
|
|
5755
|
+
else {
|
|
5756
|
+
s5 = peg$FAILED;
|
|
5757
|
+
if (peg$silentFails === 0) {
|
|
5758
|
+
peg$fail(peg$e72);
|
|
5759
|
+
}
|
|
5760
|
+
}
|
|
5761
|
+
if (s5 !== peg$FAILED) {
|
|
5762
|
+
s6 = peg$parse__();
|
|
5763
|
+
s7 = peg$parseExpression();
|
|
5764
|
+
if (s7 !== peg$FAILED) {
|
|
5765
|
+
peg$savedPos = s0;
|
|
5766
|
+
s0 = peg$f72(s3, s7);
|
|
5767
|
+
}
|
|
5768
|
+
else {
|
|
5769
|
+
peg$currPos = s0;
|
|
5770
|
+
s0 = peg$FAILED;
|
|
5771
|
+
}
|
|
5772
|
+
}
|
|
5773
|
+
else {
|
|
5774
|
+
peg$currPos = s0;
|
|
5775
|
+
s0 = peg$FAILED;
|
|
5776
|
+
}
|
|
5777
|
+
}
|
|
5778
|
+
else {
|
|
5779
|
+
peg$currPos = s0;
|
|
5780
|
+
s0 = peg$FAILED;
|
|
5781
|
+
}
|
|
5782
|
+
}
|
|
5783
|
+
else {
|
|
5784
|
+
peg$currPos = s0;
|
|
5785
|
+
s0 = peg$FAILED;
|
|
5786
|
+
}
|
|
5787
|
+
return s0;
|
|
5788
|
+
}
|
|
5789
|
+
function peg$parseVariableDeclarationList() {
|
|
5790
|
+
var s0, s1, s2, s3, s4, s5, s6, s7;
|
|
5791
|
+
s0 = peg$currPos;
|
|
5792
|
+
s1 = peg$parseVariableDeclaration();
|
|
5793
|
+
if (s1 !== peg$FAILED) {
|
|
5794
|
+
s2 = [];
|
|
5795
|
+
s3 = peg$currPos;
|
|
5796
|
+
s4 = peg$parse__();
|
|
5797
|
+
if (input.charCodeAt(peg$currPos) === 44) {
|
|
5798
|
+
s5 = peg$c39;
|
|
5799
|
+
peg$currPos++;
|
|
5800
|
+
}
|
|
5801
|
+
else {
|
|
5802
|
+
s5 = peg$FAILED;
|
|
5803
|
+
if (peg$silentFails === 0) {
|
|
5804
|
+
peg$fail(peg$e72);
|
|
5805
|
+
}
|
|
5806
|
+
}
|
|
5807
|
+
if (s5 !== peg$FAILED) {
|
|
5808
|
+
s6 = peg$parse__();
|
|
5809
|
+
s7 = peg$parseVariableDeclaration();
|
|
5810
|
+
if (s7 !== peg$FAILED) {
|
|
5811
|
+
s4 = [s4, s5, s6, s7];
|
|
5812
|
+
s3 = s4;
|
|
5813
|
+
}
|
|
5814
|
+
else {
|
|
5815
|
+
peg$currPos = s3;
|
|
5816
|
+
s3 = peg$FAILED;
|
|
5817
|
+
}
|
|
5818
|
+
}
|
|
5819
|
+
else {
|
|
5820
|
+
peg$currPos = s3;
|
|
5821
|
+
s3 = peg$FAILED;
|
|
5822
|
+
}
|
|
5823
|
+
while (s3 !== peg$FAILED) {
|
|
5824
|
+
s2.push(s3);
|
|
5825
|
+
s3 = peg$currPos;
|
|
5826
|
+
s4 = peg$parse__();
|
|
5827
|
+
if (input.charCodeAt(peg$currPos) === 44) {
|
|
5828
|
+
s5 = peg$c39;
|
|
5829
|
+
peg$currPos++;
|
|
5830
|
+
}
|
|
5831
|
+
else {
|
|
5832
|
+
s5 = peg$FAILED;
|
|
5833
|
+
if (peg$silentFails === 0) {
|
|
5834
|
+
peg$fail(peg$e72);
|
|
5835
|
+
}
|
|
5836
|
+
}
|
|
5837
|
+
if (s5 !== peg$FAILED) {
|
|
5838
|
+
s6 = peg$parse__();
|
|
5839
|
+
s7 = peg$parseVariableDeclaration();
|
|
5840
|
+
if (s7 !== peg$FAILED) {
|
|
5841
|
+
s4 = [s4, s5, s6, s7];
|
|
5842
|
+
s3 = s4;
|
|
5843
|
+
}
|
|
5844
|
+
else {
|
|
5845
|
+
peg$currPos = s3;
|
|
5846
|
+
s3 = peg$FAILED;
|
|
5847
|
+
}
|
|
5848
|
+
}
|
|
5849
|
+
else {
|
|
5850
|
+
peg$currPos = s3;
|
|
5851
|
+
s3 = peg$FAILED;
|
|
5852
|
+
}
|
|
5853
|
+
}
|
|
5854
|
+
peg$savedPos = s0;
|
|
5855
|
+
s0 = peg$f73(s1, s2);
|
|
5856
|
+
}
|
|
5857
|
+
else {
|
|
5858
|
+
peg$currPos = s0;
|
|
5859
|
+
s0 = peg$FAILED;
|
|
5860
|
+
}
|
|
5861
|
+
return s0;
|
|
5862
|
+
}
|
|
5863
|
+
function peg$parseVariableDeclaration() {
|
|
5864
|
+
var s0, s1, s2, s3, s4;
|
|
5865
|
+
s0 = peg$currPos;
|
|
5866
|
+
s1 = peg$parseIdentifier();
|
|
5867
|
+
if (s1 !== peg$FAILED) {
|
|
5868
|
+
s2 = peg$currPos;
|
|
5869
|
+
s3 = peg$parse__();
|
|
5870
|
+
s4 = peg$parseInitialiser();
|
|
5871
|
+
if (s4 !== peg$FAILED) {
|
|
5872
|
+
s3 = [s3, s4];
|
|
5873
|
+
s2 = s3;
|
|
5874
|
+
}
|
|
5875
|
+
else {
|
|
5876
|
+
peg$currPos = s2;
|
|
5877
|
+
s2 = peg$FAILED;
|
|
5878
|
+
}
|
|
5879
|
+
if (s2 !== peg$FAILED) {
|
|
5880
|
+
peg$savedPos = s0;
|
|
5881
|
+
s0 = peg$f74(s1, s2);
|
|
5882
|
+
}
|
|
5883
|
+
else {
|
|
5884
|
+
peg$currPos = s0;
|
|
5885
|
+
s0 = peg$FAILED;
|
|
5886
|
+
}
|
|
5887
|
+
}
|
|
5888
|
+
else {
|
|
5889
|
+
peg$currPos = s0;
|
|
5890
|
+
s0 = peg$FAILED;
|
|
5891
|
+
}
|
|
5892
|
+
return s0;
|
|
5893
|
+
}
|
|
5894
|
+
function peg$parseInitialiser() {
|
|
5895
|
+
var s0, s1, s2, s3;
|
|
5896
|
+
s0 = peg$currPos;
|
|
5897
|
+
s1 = peg$parseEqualOperator();
|
|
5898
|
+
if (s1 !== peg$FAILED) {
|
|
5899
|
+
s2 = peg$parse__();
|
|
5900
|
+
s3 = peg$parseExpression();
|
|
5901
|
+
if (s3 !== peg$FAILED) {
|
|
5902
|
+
peg$savedPos = s0;
|
|
5903
|
+
s0 = peg$f75(s3);
|
|
5904
|
+
}
|
|
5905
|
+
else {
|
|
5906
|
+
peg$currPos = s0;
|
|
5907
|
+
s0 = peg$FAILED;
|
|
5908
|
+
}
|
|
5909
|
+
}
|
|
5910
|
+
else {
|
|
5911
|
+
peg$currPos = s0;
|
|
5912
|
+
s0 = peg$FAILED;
|
|
5913
|
+
}
|
|
5914
|
+
return s0;
|
|
5915
|
+
}
|
|
5916
|
+
function peg$parseEqualOperator() {
|
|
5917
|
+
var s0, s1, s2, s3;
|
|
5918
|
+
s0 = peg$currPos;
|
|
5919
|
+
if (input.charCodeAt(peg$currPos) === 61) {
|
|
5920
|
+
s1 = peg$c56;
|
|
5921
|
+
peg$currPos++;
|
|
5922
|
+
}
|
|
5923
|
+
else {
|
|
5924
|
+
s1 = peg$FAILED;
|
|
5925
|
+
if (peg$silentFails === 0) {
|
|
5926
|
+
peg$fail(peg$e91);
|
|
5927
|
+
}
|
|
5928
|
+
}
|
|
5929
|
+
if (s1 !== peg$FAILED) {
|
|
5930
|
+
s2 = peg$currPos;
|
|
5931
|
+
peg$silentFails++;
|
|
5932
|
+
if (input.charCodeAt(peg$currPos) === 61) {
|
|
5933
|
+
s3 = peg$c56;
|
|
5934
|
+
peg$currPos++;
|
|
5935
|
+
}
|
|
5936
|
+
else {
|
|
5937
|
+
s3 = peg$FAILED;
|
|
5938
|
+
if (peg$silentFails === 0) {
|
|
5939
|
+
peg$fail(peg$e91);
|
|
5940
|
+
}
|
|
5941
|
+
}
|
|
5942
|
+
peg$silentFails--;
|
|
5943
|
+
if (s3 === peg$FAILED) {
|
|
5944
|
+
s2 = undefined;
|
|
5945
|
+
}
|
|
5946
|
+
else {
|
|
5947
|
+
peg$currPos = s2;
|
|
5948
|
+
s2 = peg$FAILED;
|
|
5949
|
+
}
|
|
5950
|
+
if (s2 !== peg$FAILED) {
|
|
5951
|
+
s1 = [s1, s2];
|
|
5952
|
+
s0 = s1;
|
|
5953
|
+
}
|
|
5954
|
+
else {
|
|
5955
|
+
peg$currPos = s0;
|
|
5956
|
+
s0 = peg$FAILED;
|
|
5957
|
+
}
|
|
5958
|
+
}
|
|
5959
|
+
else {
|
|
5960
|
+
peg$currPos = s0;
|
|
5961
|
+
s0 = peg$FAILED;
|
|
5962
|
+
}
|
|
5963
|
+
return s0;
|
|
5964
|
+
}
|
|
5965
|
+
function peg$parseExpression() {
|
|
5966
|
+
var s0;
|
|
5967
|
+
s0 = peg$parseLetExpression();
|
|
5968
|
+
if (s0 === peg$FAILED) {
|
|
5969
|
+
s0 = peg$parseLambdaExpression();
|
|
5970
|
+
if (s0 === peg$FAILED) {
|
|
5971
|
+
s0 = peg$parsePipeExpression();
|
|
5972
|
+
}
|
|
5400
5973
|
}
|
|
5401
5974
|
return s0;
|
|
5402
5975
|
}
|
|
5403
5976
|
function peg$parseExpressionStatement() {
|
|
5404
5977
|
var s0, s1, s2;
|
|
5405
5978
|
s0 = peg$currPos;
|
|
5406
|
-
s1 = peg$
|
|
5979
|
+
s1 = peg$parseExpression();
|
|
5407
5980
|
if (s1 === peg$FAILED) {
|
|
5408
5981
|
s1 = null;
|
|
5409
5982
|
}
|
|
5410
5983
|
s2 = peg$parseEOS();
|
|
5411
5984
|
if (s2 !== peg$FAILED) {
|
|
5412
5985
|
peg$savedPos = s0;
|
|
5413
|
-
s0 = peg$
|
|
5986
|
+
s0 = peg$f76(s1);
|
|
5414
5987
|
}
|
|
5415
5988
|
else {
|
|
5416
5989
|
peg$currPos = s0;
|