@weborigami/language 0.3.4-jse.6 → 0.3.4-jse.8
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +3 -3
- package/src/compiler/optimize.js +29 -18
- package/src/compiler/origami.pegjs +27 -7
- package/src/compiler/parse.js +268 -175
- package/src/runtime/errors.js +56 -24
- package/src/runtime/evaluate.js +5 -27
- package/src/runtime/symbols.js +1 -0
- package/test/compiler/optimize.test.js +3 -3
- package/test/compiler/parse.test.js +6 -0
package/src/compiler/parse.js
CHANGED
|
@@ -205,7 +205,7 @@ function peg$parse(input, options) {
|
|
|
205
205
|
var peg$FAILED = {};
|
|
206
206
|
var peg$source = options.grammarSource;
|
|
207
207
|
|
|
208
|
-
var peg$startRuleFunctions = { __: peg$parse__, additiveExpression: peg$parseadditiveExpression, additiveOperator: peg$parseadditiveOperator, angleBracketLiteral: peg$parseangleBracketLiteral, angleBracketPath: peg$parseangleBracketPath, angleBracketKey: peg$parseangleBracketKey, angleBracketPathChar: peg$parseangleBracketPathChar, arguments: peg$parsearguments, arrayLiteral: peg$parsearrayLiteral, arrayEntries: peg$parsearrayEntries, arrayEntry: peg$parsearrayEntry, arrowFunction: peg$parsearrowFunction, bitwiseAndExpression: peg$parsebitwiseAndExpression, bitwiseAndOperator: peg$parsebitwiseAndOperator, bitwiseOrExpression: peg$parsebitwiseOrExpression, bitwiseOrOperator: peg$parsebitwiseOrOperator, bitwiseXorExpression: peg$parsebitwiseXorExpression, bitwiseXorOperator: peg$parsebitwiseXorOperator, callExpression: peg$parsecallExpression, commaExpression: peg$parsecommaExpression, comment: peg$parsecomment, computedPropertyAccess: peg$parsecomputedPropertyAccess, conditionalExpression: peg$parseconditionalExpression, digits: peg$parsedigits, doubleArrow: peg$parsedoubleArrow, doubleQuoteString: peg$parsedoubleQuoteString, doubleQuoteStringChar: peg$parsedoubleQuoteStringChar, ellipsis: peg$parseellipsis, equalityExpression: peg$parseequalityExpression, equalityOperator: peg$parseequalityOperator, escapedChar: peg$parseescapedChar, expectBacktick: peg$parseexpectBacktick, expectClosingBrace: peg$parseexpectClosingBrace, expectClosingBracket: peg$parseexpectClosingBracket, expectClosingParenthesis: peg$parseexpectClosingParenthesis, expectDoubleQuote: peg$parseexpectDoubleQuote, expectExpression: peg$parseexpectExpression, expectFrontDelimiter: peg$parseexpectFrontDelimiter, expectGuillemet: peg$parseexpectGuillemet, expectSingleQuote: peg$parseexpectSingleQuote, expectPipelineExpression: peg$parseexpectPipelineExpression, exponentiationExpression: peg$parseexponentiationExpression, expression: peg$parseexpression, floatLiteral: peg$parsefloatLiteral, frontDelimiter: peg$parsefrontDelimiter, frontMatterExpression: peg$parsefrontMatterExpression, frontMatterText: peg$parsefrontMatterText, frontMatterYaml: peg$parsefrontMatterYaml, group: peg$parsegroup, guillemetString: peg$parseguillemetString, guillemetStringChar: peg$parseguillemetStringChar, host: peg$parsehost, hostname: peg$parsehostname, identifier: peg$parseidentifier, identifierLiteral: peg$parseidentifierLiteral, identifierPart: peg$parseidentifierPart, identifierStart: peg$parseidentifierStart, implicitParenthesesCallExpression: peg$parseimplicitParenthesesCallExpression, implicitParensthesesArguments: peg$parseimplicitParensthesesArguments, inlineSpace: peg$parseinlineSpace, integerLiteral: peg$parseintegerLiteral, key: peg$parsekey, keyChar: peg$parsekeyChar, keyCharStart: peg$parsekeyCharStart, list: peg$parselist, logicalAndExpression: peg$parselogicalAndExpression, logicalOrExpression: peg$parselogicalOrExpression, minus: peg$parseminus, multiLineComment: peg$parsemultiLineComment, multiplicativeExpression: peg$parsemultiplicativeExpression, multiplicativeOperator: peg$parsemultiplicativeOperator, newExpression: peg$parsenewExpression, newLine: peg$parsenewLine, numericLiteral: peg$parsenumericLiteral, nullishCoalescingExpression: peg$parsenullishCoalescingExpression, objectLiteral: peg$parseobjectLiteral, objectEntries: peg$parseobjectEntries, objectEntry: peg$parseobjectEntry, objectGetter: peg$parseobjectGetter, objectHiddenKey: peg$parseobjectHiddenKey, objectKey: peg$parseobjectKey, objectProperty: peg$parseobjectProperty, objectShorthandProperty: peg$parseobjectShorthandProperty, objectPublicKey: peg$parseobjectPublicKey, optionalChaining: peg$parseoptionalChaining, parameter: peg$parseparameter, parameterList: peg$parseparameterList, parameterSingleton: peg$parseparameterSingleton, parenthesesArguments: peg$parseparenthesesArguments, pathArguments: peg$parsepathArguments, pathKeys: peg$parsepathKeys, pathLiteral: peg$parsepathLiteral, pathSegment: peg$parsepathSegment, pipelineExpression: peg$parsepipelineExpression, primary: peg$parseprimary, program: peg$parseprogram, propertyAccess: peg$parsepropertyAccess, regexFlags: peg$parseregexFlags, regexLiteral: peg$parseregexLiteral, regexLiteralChar: peg$parseregexLiteralChar, relationalExpression: peg$parserelationalExpression, relationalOperator: peg$parserelationalOperator, separator: peg$parseseparator, shebang: peg$parseshebang, shellMode: peg$parseshellMode, shiftExpression: peg$parseshiftExpression, shiftOperator: peg$parseshiftOperator, shorthandFunction: peg$parseshorthandFunction, singleArrow: peg$parsesingleArrow, singleLineComment: peg$parsesingleLineComment, singleQuoteString: peg$parsesingleQuoteString, singleQuoteStringChar: peg$parsesingleQuoteStringChar, slash: peg$parseslash, slashes: peg$parseslashes, slashFollows: peg$parseslashFollows, spreadElement: peg$parsespreadElement, stringLiteral: peg$parsestringLiteral, templateBody: peg$parsetemplateBody, templateBodyChar: peg$parsetemplateBodyChar, templateBodyText: peg$parsetemplateBodyText, templateDocument: peg$parsetemplateDocument, templateLiteral: peg$parsetemplateLiteral, templateLiteralChar: peg$parsetemplateLiteralChar, templateLiteralText: peg$parsetemplateLiteralText, templateSubstitution: peg$parsetemplateSubstitution, textChar: peg$parsetextChar, unaryExpression: peg$parseunaryExpression, uri: peg$parseuri, uriExpression: peg$parseuriExpression, uriKey: peg$parseuriKey, uriKeyChar: peg$parseuriKeyChar, uriPath: peg$parseuriPath, uriScheme: peg$parseuriScheme, unaryOperator: peg$parseunaryOperator, whitespace: peg$parsewhitespace, whitespaceWithNewLine: peg$parsewhitespaceWithNewLine };
|
|
208
|
+
var peg$startRuleFunctions = { __: peg$parse__, additiveExpression: peg$parseadditiveExpression, additiveOperator: peg$parseadditiveOperator, angleBracketLiteral: peg$parseangleBracketLiteral, angleBracketPath: peg$parseangleBracketPath, angleBracketKey: peg$parseangleBracketKey, angleBracketPathChar: peg$parseangleBracketPathChar, arguments: peg$parsearguments, arrayLiteral: peg$parsearrayLiteral, arrayEntries: peg$parsearrayEntries, arrayEntry: peg$parsearrayEntry, arrowFunction: peg$parsearrowFunction, bitwiseAndExpression: peg$parsebitwiseAndExpression, bitwiseAndOperator: peg$parsebitwiseAndOperator, bitwiseOrExpression: peg$parsebitwiseOrExpression, bitwiseOrOperator: peg$parsebitwiseOrOperator, bitwiseXorExpression: peg$parsebitwiseXorExpression, bitwiseXorOperator: peg$parsebitwiseXorOperator, callExpression: peg$parsecallExpression, commaExpression: peg$parsecommaExpression, comment: peg$parsecomment, computedPropertyAccess: peg$parsecomputedPropertyAccess, computedPropertySpace: peg$parsecomputedPropertySpace, conditionalExpression: peg$parseconditionalExpression, digits: peg$parsedigits, doubleArrow: peg$parsedoubleArrow, doubleQuoteString: peg$parsedoubleQuoteString, doubleQuoteStringChar: peg$parsedoubleQuoteStringChar, ellipsis: peg$parseellipsis, equalityExpression: peg$parseequalityExpression, equalityOperator: peg$parseequalityOperator, escapedChar: peg$parseescapedChar, expectBacktick: peg$parseexpectBacktick, expectClosingBrace: peg$parseexpectClosingBrace, expectClosingBracket: peg$parseexpectClosingBracket, expectClosingParenthesis: peg$parseexpectClosingParenthesis, expectDoubleQuote: peg$parseexpectDoubleQuote, expectExpression: peg$parseexpectExpression, expectFrontDelimiter: peg$parseexpectFrontDelimiter, expectGuillemet: peg$parseexpectGuillemet, expectSingleQuote: peg$parseexpectSingleQuote, expectPipelineExpression: peg$parseexpectPipelineExpression, expectUnaryExpression: peg$parseexpectUnaryExpression, exponentiationExpression: peg$parseexponentiationExpression, expression: peg$parseexpression, floatLiteral: peg$parsefloatLiteral, frontDelimiter: peg$parsefrontDelimiter, frontMatterExpression: peg$parsefrontMatterExpression, frontMatterText: peg$parsefrontMatterText, frontMatterYaml: peg$parsefrontMatterYaml, group: peg$parsegroup, guillemetString: peg$parseguillemetString, guillemetStringChar: peg$parseguillemetStringChar, host: peg$parsehost, hostname: peg$parsehostname, identifier: peg$parseidentifier, identifierLiteral: peg$parseidentifierLiteral, identifierPart: peg$parseidentifierPart, identifierStart: peg$parseidentifierStart, implicitParenthesesCallExpression: peg$parseimplicitParenthesesCallExpression, implicitParensthesesArguments: peg$parseimplicitParensthesesArguments, inlineSpace: peg$parseinlineSpace, integerLiteral: peg$parseintegerLiteral, key: peg$parsekey, keyChar: peg$parsekeyChar, keyCharStart: peg$parsekeyCharStart, list: peg$parselist, logicalAndExpression: peg$parselogicalAndExpression, logicalOrExpression: peg$parselogicalOrExpression, minus: peg$parseminus, multiLineComment: peg$parsemultiLineComment, multiplicativeExpression: peg$parsemultiplicativeExpression, multiplicativeOperator: peg$parsemultiplicativeOperator, newExpression: peg$parsenewExpression, newLine: peg$parsenewLine, numericLiteral: peg$parsenumericLiteral, nullishCoalescingExpression: peg$parsenullishCoalescingExpression, objectLiteral: peg$parseobjectLiteral, objectEntries: peg$parseobjectEntries, objectEntry: peg$parseobjectEntry, objectGetter: peg$parseobjectGetter, objectHiddenKey: peg$parseobjectHiddenKey, objectKey: peg$parseobjectKey, objectProperty: peg$parseobjectProperty, objectShorthandProperty: peg$parseobjectShorthandProperty, objectPublicKey: peg$parseobjectPublicKey, optionalChaining: peg$parseoptionalChaining, parameter: peg$parseparameter, parameterList: peg$parseparameterList, parameterSingleton: peg$parseparameterSingleton, parenthesesArguments: peg$parseparenthesesArguments, pathArguments: peg$parsepathArguments, pathKeys: peg$parsepathKeys, pathLiteral: peg$parsepathLiteral, pathSegment: peg$parsepathSegment, pipelineExpression: peg$parsepipelineExpression, primary: peg$parseprimary, program: peg$parseprogram, propertyAccess: peg$parsepropertyAccess, regexFlags: peg$parseregexFlags, regexLiteral: peg$parseregexLiteral, regexLiteralChar: peg$parseregexLiteralChar, relationalExpression: peg$parserelationalExpression, relationalOperator: peg$parserelationalOperator, separator: peg$parseseparator, shebang: peg$parseshebang, shellMode: peg$parseshellMode, shiftExpression: peg$parseshiftExpression, shiftOperator: peg$parseshiftOperator, shorthandFunction: peg$parseshorthandFunction, singleArrow: peg$parsesingleArrow, singleLineComment: peg$parsesingleLineComment, singleQuoteString: peg$parsesingleQuoteString, singleQuoteStringChar: peg$parsesingleQuoteStringChar, slash: peg$parseslash, slashes: peg$parseslashes, slashFollows: peg$parseslashFollows, spreadElement: peg$parsespreadElement, stringLiteral: peg$parsestringLiteral, templateBody: peg$parsetemplateBody, templateBodyChar: peg$parsetemplateBodyChar, templateBodyText: peg$parsetemplateBodyText, templateDocument: peg$parsetemplateDocument, templateLiteral: peg$parsetemplateLiteral, templateLiteralChar: peg$parsetemplateLiteralChar, templateLiteralText: peg$parsetemplateLiteralText, templateSubstitution: peg$parsetemplateSubstitution, textChar: peg$parsetextChar, unaryExpression: peg$parseunaryExpression, uri: peg$parseuri, uriExpression: peg$parseuriExpression, uriKey: peg$parseuriKey, uriKeyChar: peg$parseuriKeyChar, uriPath: peg$parseuriPath, uriScheme: peg$parseuriScheme, unaryOperator: peg$parseunaryOperator, whitespace: peg$parsewhitespace, whitespaceWithNewLine: peg$parsewhitespaceWithNewLine };
|
|
209
209
|
var peg$startRuleFunction = peg$parse__;
|
|
210
210
|
|
|
211
211
|
var peg$c0 = "+";
|
|
@@ -285,7 +285,7 @@ function peg$parse(input, options) {
|
|
|
285
285
|
var peg$r7 = /^[gimuy]/;
|
|
286
286
|
var peg$r8 = /^[^\/\n\r]/;
|
|
287
287
|
var peg$r9 = /^[^\n\r]/;
|
|
288
|
-
var peg$r10 = /^[^\/,)\]}
|
|
288
|
+
var peg$r10 = /^[^\/,)\]} \t]/;
|
|
289
289
|
var peg$r11 = /^[a-z]/;
|
|
290
290
|
var peg$r12 = /^[a-z0-9+-.]/;
|
|
291
291
|
var peg$r13 = /^[:]/;
|
|
@@ -399,7 +399,7 @@ function peg$parse(input, options) {
|
|
|
399
399
|
var peg$e105 = peg$otherExpectation("template document");
|
|
400
400
|
var peg$e106 = peg$otherExpectation("template literal");
|
|
401
401
|
var peg$e107 = peg$otherExpectation("template substitution");
|
|
402
|
-
var peg$e108 = peg$classExpectation(["/", ",", ")", "]", "}", "
|
|
402
|
+
var peg$e108 = peg$classExpectation(["/", ",", ")", "]", "}", " ", "\t"], true, false);
|
|
403
403
|
var peg$e109 = peg$otherExpectation("slash-separated path");
|
|
404
404
|
var peg$e110 = peg$classExpectation([["a", "z"]], false, false);
|
|
405
405
|
var peg$e111 = peg$classExpectation([["a", "z"], ["0", "9"], ["+", "."]], false, false);
|
|
@@ -510,7 +510,7 @@ function peg$parse(input, options) {
|
|
|
510
510
|
error("Expected closing quote");
|
|
511
511
|
};
|
|
512
512
|
var peg$f32 = function() {
|
|
513
|
-
error("Expected an
|
|
513
|
+
error("Expected an expression");
|
|
514
514
|
};
|
|
515
515
|
var peg$f33 = function() {
|
|
516
516
|
error("Expected \"---\"");
|
|
@@ -524,61 +524,64 @@ function peg$parse(input, options) {
|
|
|
524
524
|
var peg$f36 = function() {
|
|
525
525
|
error("Expected an expression");
|
|
526
526
|
};
|
|
527
|
-
var peg$f37 = function(
|
|
527
|
+
var peg$f37 = function() {
|
|
528
|
+
error("Expected an expression");
|
|
529
|
+
};
|
|
530
|
+
var peg$f38 = function(left, right) {
|
|
528
531
|
return right ? annotate([ops.exponentiation, left, right], location()) : left;
|
|
529
532
|
};
|
|
530
|
-
var peg$
|
|
533
|
+
var peg$f39 = function() {
|
|
531
534
|
return annotate([ops.literal, parseFloat(text())], location());
|
|
532
535
|
};
|
|
533
|
-
var peg$
|
|
536
|
+
var peg$f40 = function() {
|
|
534
537
|
return isOrigamiFrontMatter(input.slice(location().end.offset))
|
|
535
538
|
};
|
|
536
|
-
var peg$
|
|
539
|
+
var peg$f41 = function(chars) {
|
|
537
540
|
return chars.join("");
|
|
538
541
|
};
|
|
539
|
-
var peg$
|
|
542
|
+
var peg$f42 = function(yaml) {
|
|
540
543
|
return makeYamlObject(yaml, location());
|
|
541
544
|
};
|
|
542
|
-
var peg$
|
|
545
|
+
var peg$f43 = function(expression) {
|
|
543
546
|
return annotate(expression, location());
|
|
544
547
|
};
|
|
545
|
-
var peg$
|
|
548
|
+
var peg$f44 = function(chars) {
|
|
546
549
|
return annotate([ops.literal, chars.join("")], location());
|
|
547
550
|
};
|
|
548
|
-
var peg$
|
|
551
|
+
var peg$f45 = function(name, port, slashFollows) {
|
|
549
552
|
const portText = port ? `:${port[1]}` : "";
|
|
550
553
|
const slashText = slashFollows ? "/" : "";
|
|
551
554
|
const host = name + portText + slashText;
|
|
552
555
|
return annotate([ops.literal, host], location());
|
|
553
556
|
};
|
|
554
|
-
var peg$
|
|
557
|
+
var peg$f46 = function() {
|
|
555
558
|
return text();
|
|
556
559
|
};
|
|
557
|
-
var peg$
|
|
560
|
+
var peg$f47 = function(id) {
|
|
558
561
|
return id;
|
|
559
562
|
};
|
|
560
|
-
var peg$
|
|
563
|
+
var peg$f48 = function(id) {
|
|
561
564
|
return annotate([ops.literal, id], location());
|
|
562
565
|
};
|
|
563
|
-
var peg$
|
|
564
|
-
var peg$
|
|
565
|
-
var peg$
|
|
566
|
+
var peg$f49 = function(char) { return char.match(/[$_\p{ID_Continue}]/u) };
|
|
567
|
+
var peg$f50 = function(char) { return char.match(/[$_\p{ID_Start}]/u) };
|
|
568
|
+
var peg$f51 = function(head, args) {
|
|
566
569
|
return args ? makeCall(head, args, location()) : head;
|
|
567
570
|
};
|
|
568
|
-
var peg$
|
|
571
|
+
var peg$f52 = function(values) {
|
|
569
572
|
return annotate(values, location());
|
|
570
573
|
};
|
|
571
|
-
var peg$
|
|
574
|
+
var peg$f53 = function() {
|
|
572
575
|
return annotate([ops.literal, parseInt(text())], location());
|
|
573
576
|
};
|
|
574
|
-
var peg$
|
|
577
|
+
var peg$f54 = function() {
|
|
575
578
|
return text();
|
|
576
579
|
};
|
|
577
|
-
var peg$
|
|
578
|
-
var peg$
|
|
580
|
+
var peg$f55 = function(char) { return char.match(/[$_\p{ID_Continue}]/u) };
|
|
581
|
+
var peg$f56 = function(values) {
|
|
579
582
|
return annotate(values, location());
|
|
580
583
|
};
|
|
581
|
-
var peg$
|
|
584
|
+
var peg$f57 = function(head, tail) {
|
|
582
585
|
return tail.length === 0
|
|
583
586
|
? head
|
|
584
587
|
: annotate(
|
|
@@ -586,7 +589,7 @@ function peg$parse(input, options) {
|
|
|
586
589
|
location()
|
|
587
590
|
);
|
|
588
591
|
};
|
|
589
|
-
var peg$
|
|
592
|
+
var peg$f58 = function(head, tail) {
|
|
590
593
|
return tail.length === 0
|
|
591
594
|
? head
|
|
592
595
|
: annotate(
|
|
@@ -594,19 +597,19 @@ function peg$parse(input, options) {
|
|
|
594
597
|
location()
|
|
595
598
|
);
|
|
596
599
|
};
|
|
597
|
-
var peg$
|
|
598
|
-
var peg$
|
|
600
|
+
var peg$f59 = function() { return null; };
|
|
601
|
+
var peg$f60 = function(head, tail) {
|
|
599
602
|
return tail.reduce(makeBinaryOperation, head);
|
|
600
603
|
};
|
|
601
|
-
var peg$
|
|
604
|
+
var peg$f61 = function(head, tail) {
|
|
602
605
|
const args = tail?.[0] !== undefined ? tail : [];
|
|
603
606
|
return annotate([ops.construct, head, ...args], location());
|
|
604
607
|
};
|
|
605
|
-
var peg$
|
|
608
|
+
var peg$f62 = function(head, tail) {
|
|
606
609
|
const args = tail?.[0] !== undefined ? tail : [];
|
|
607
610
|
return annotate([ops.construct, head, ...args], location());
|
|
608
611
|
};
|
|
609
|
-
var peg$
|
|
612
|
+
var peg$f63 = function(head, tail) {
|
|
610
613
|
return tail.length === 0
|
|
611
614
|
? head
|
|
612
615
|
: annotate(
|
|
@@ -614,128 +617,133 @@ function peg$parse(input, options) {
|
|
|
614
617
|
location()
|
|
615
618
|
);
|
|
616
619
|
};
|
|
617
|
-
var peg$
|
|
620
|
+
var peg$f64 = function(entries) {
|
|
618
621
|
return makeObject(entries ?? [], location());
|
|
619
622
|
};
|
|
620
|
-
var peg$
|
|
623
|
+
var peg$f65 = function(entries) {
|
|
621
624
|
return annotate(entries, location());
|
|
622
625
|
};
|
|
623
|
-
var peg$
|
|
626
|
+
var peg$f66 = function(key, pipeline) {
|
|
624
627
|
const getter = annotate([ops.getter, pipeline], location());
|
|
625
628
|
return annotate([key, getter], location());
|
|
626
629
|
};
|
|
627
|
-
var peg$
|
|
628
|
-
var peg$
|
|
630
|
+
var peg$f67 = function(hiddenKey) { return hiddenKey.join(""); };
|
|
631
|
+
var peg$f68 = function(key, pipeline) {
|
|
629
632
|
return annotate([key, pipeline], location());
|
|
630
633
|
};
|
|
631
|
-
var peg$
|
|
634
|
+
var peg$f69 = function(key) {
|
|
632
635
|
const reference = annotate([markers.reference, key], location());
|
|
633
636
|
const traverse = annotate([markers.traverse, reference], location());
|
|
634
637
|
return annotate([key, traverse], location());
|
|
635
638
|
};
|
|
636
|
-
var peg$
|
|
639
|
+
var peg$f70 = function(path) {
|
|
637
640
|
let lastKey = path.at(-1);
|
|
638
641
|
if (lastKey instanceof Array) {
|
|
639
642
|
lastKey = lastKey[1]; // get scope identifier or literal
|
|
640
643
|
}
|
|
641
644
|
return annotate([lastKey, path], location());
|
|
642
645
|
};
|
|
643
|
-
var peg$
|
|
646
|
+
var peg$f71 = function(key, slash) {
|
|
644
647
|
return text();
|
|
645
648
|
};
|
|
646
|
-
var peg$
|
|
649
|
+
var peg$f72 = function(string) {
|
|
647
650
|
// Remove `ops.literal` from the string code
|
|
648
651
|
return string[1];
|
|
649
652
|
};
|
|
650
|
-
var peg$
|
|
653
|
+
var peg$f73 = function(property) {
|
|
651
654
|
return annotate([ops.optionalTraverse, property], location());
|
|
652
655
|
};
|
|
653
|
-
var peg$
|
|
656
|
+
var peg$f74 = function(key) {
|
|
654
657
|
return annotate([ops.literal, key], location());
|
|
655
658
|
};
|
|
656
|
-
var peg$
|
|
659
|
+
var peg$f75 = function(list) {
|
|
657
660
|
return annotate(list, location());
|
|
658
661
|
};
|
|
659
|
-
var peg$
|
|
662
|
+
var peg$f76 = function(param) {
|
|
660
663
|
return annotate([param], location());
|
|
661
664
|
};
|
|
662
|
-
var peg$
|
|
665
|
+
var peg$f77 = function(list) {
|
|
663
666
|
return annotate(list ?? [undefined], location());
|
|
664
667
|
};
|
|
665
|
-
var peg$
|
|
668
|
+
var peg$f78 = function(keys) {
|
|
666
669
|
const args = keys ?? [];
|
|
667
670
|
return annotate([markers.traverse, ...args], location());
|
|
668
671
|
};
|
|
669
|
-
var peg$
|
|
672
|
+
var peg$f79 = function(keys) {
|
|
670
673
|
return makePath(keys);
|
|
671
674
|
};
|
|
672
|
-
var peg$
|
|
675
|
+
var peg$f80 = function(key) {
|
|
673
676
|
return annotate([ops.literal, text()], location());
|
|
674
677
|
};
|
|
675
|
-
var peg$
|
|
678
|
+
var peg$f81 = function() {
|
|
676
679
|
return annotate([ops.literal, text()], location());
|
|
677
680
|
};
|
|
678
|
-
var peg$
|
|
681
|
+
var peg$f82 = function(head, tail) {
|
|
679
682
|
return annotate(
|
|
680
683
|
tail.reduce((arg, fn) => makePipeline(arg, fn, location()), head),
|
|
681
684
|
location()
|
|
682
685
|
);
|
|
683
686
|
};
|
|
684
|
-
var peg$
|
|
687
|
+
var peg$f83 = function(property) {
|
|
685
688
|
return annotate([markers.property, property], location());
|
|
686
689
|
};
|
|
687
|
-
var peg$
|
|
690
|
+
var peg$f84 = function(flags) {
|
|
688
691
|
return flags.join("");
|
|
689
692
|
};
|
|
690
|
-
var peg$
|
|
693
|
+
var peg$f85 = function(chars, flags) {
|
|
691
694
|
const regex = new RegExp(chars.join(""), flags);
|
|
692
695
|
return annotate([ops.literal, regex], location());
|
|
693
696
|
};
|
|
694
|
-
var peg$
|
|
697
|
+
var peg$f86 = function(head, tail) {
|
|
695
698
|
return tail.reduce(makeBinaryOperation, head);
|
|
696
699
|
};
|
|
697
|
-
var peg$
|
|
698
|
-
var peg$
|
|
699
|
-
var peg$
|
|
700
|
+
var peg$f87 = function() { return null; };
|
|
701
|
+
var peg$f88 = function() { return options.mode === "shell" };
|
|
702
|
+
var peg$f89 = function(head, tail) {
|
|
700
703
|
return tail.reduce(makeBinaryOperation, head);
|
|
701
704
|
};
|
|
702
|
-
var peg$
|
|
705
|
+
var peg$f90 = function(definition) {
|
|
703
706
|
const lambdaParameters = annotate(
|
|
704
707
|
[annotate([ops.literal, "_"], location())],
|
|
705
708
|
location()
|
|
706
709
|
);
|
|
707
710
|
return annotate([ops.lambda, lambdaParameters, definition], location());
|
|
708
711
|
};
|
|
709
|
-
var peg$
|
|
710
|
-
var peg$
|
|
712
|
+
var peg$f91 = function() { return null; };
|
|
713
|
+
var peg$f92 = function(chars) {
|
|
711
714
|
return annotate([ops.literal, chars.join("")], location());
|
|
712
715
|
};
|
|
713
|
-
var peg$
|
|
716
|
+
var peg$f93 = function() {
|
|
714
717
|
return annotate([ops.literal, "/"], location());
|
|
715
718
|
};
|
|
716
|
-
var peg$
|
|
719
|
+
var peg$f94 = function() {
|
|
717
720
|
return annotate([ops.literal, "/"], location());
|
|
718
721
|
};
|
|
719
|
-
var peg$
|
|
722
|
+
var peg$f95 = function() {
|
|
720
723
|
return true;
|
|
721
724
|
};
|
|
722
|
-
var peg$
|
|
725
|
+
var peg$f96 = function(value) {
|
|
723
726
|
return annotate([ops.spread, value], location());
|
|
724
727
|
};
|
|
725
|
-
var peg$
|
|
728
|
+
var peg$f97 = function(head, tail) {
|
|
726
729
|
return makeTemplate(ops.templateIndent, head, tail, location());
|
|
727
730
|
};
|
|
728
|
-
var peg$
|
|
731
|
+
var peg$f98 = function(chars) {
|
|
729
732
|
return annotate([ops.literal, chars.join("")], location());
|
|
730
733
|
};
|
|
731
|
-
var peg$
|
|
734
|
+
var peg$f99 = function(front, body) {
|
|
735
|
+
// TODO: Deprecate @template
|
|
732
736
|
const macroName = text().includes("@template") ? "@template" : "_template";
|
|
737
|
+
if (macroName === "@template") {
|
|
738
|
+
// If the front matter is a macro, apply it to the body
|
|
739
|
+
console.warn("Warning: the @template() macro is deprecated. Use _template() instead.");
|
|
740
|
+
}
|
|
733
741
|
return annotate(applyMacro(front, macroName, body), location());
|
|
734
742
|
};
|
|
735
|
-
var peg$
|
|
743
|
+
var peg$f100 = function(front, body) {
|
|
736
744
|
return makeDocument(front, body, location());
|
|
737
745
|
};
|
|
738
|
-
var peg$
|
|
746
|
+
var peg$f101 = function(body) {
|
|
739
747
|
if (options.front) {
|
|
740
748
|
return makeDocument(options.front, body, location());
|
|
741
749
|
}
|
|
@@ -745,39 +753,41 @@ function peg$parse(input, options) {
|
|
|
745
753
|
);
|
|
746
754
|
return annotate([ops.lambda, lambdaParameters, body], location());
|
|
747
755
|
};
|
|
748
|
-
var peg$
|
|
756
|
+
var peg$f102 = function(head, tail) {
|
|
749
757
|
return makeTemplate(ops.templateTree, head, tail, location());
|
|
750
758
|
};
|
|
751
|
-
var peg$
|
|
759
|
+
var peg$f103 = function(chars) {
|
|
752
760
|
return annotate([ops.literal, chars.join("")], location());
|
|
753
761
|
};
|
|
754
|
-
var peg$
|
|
762
|
+
var peg$f104 = function(expression) {
|
|
755
763
|
return annotate(expression, location());
|
|
756
764
|
};
|
|
757
|
-
var peg$
|
|
765
|
+
var peg$f105 = function(operator, expression) {
|
|
758
766
|
return makeUnaryOperation(operator, expression, location());
|
|
759
767
|
};
|
|
760
|
-
var peg$
|
|
768
|
+
var peg$f106 = function(scheme, host, path) {
|
|
761
769
|
const rest = path ? path[1] : [];
|
|
762
770
|
const keys = annotate([host, ...rest], location());
|
|
763
771
|
return makeCall(scheme, keys, location());
|
|
764
772
|
};
|
|
765
|
-
var peg$
|
|
773
|
+
var peg$f107 = function(scheme, keys) {
|
|
766
774
|
return makeCall(scheme, keys, location());
|
|
767
775
|
};
|
|
768
|
-
var peg$
|
|
776
|
+
var peg$f108 = function(chars) {
|
|
769
777
|
return annotate([ops.literal, text()], location());
|
|
770
778
|
};
|
|
771
|
-
var peg$
|
|
779
|
+
var peg$f109 = function() {
|
|
772
780
|
// A single slash is a path key
|
|
773
781
|
return annotate([ops.literal, ""], location());
|
|
774
782
|
};
|
|
775
|
-
var peg$
|
|
783
|
+
var peg$f110 = function(keys) {
|
|
776
784
|
return annotate(keys, location());
|
|
777
785
|
};
|
|
778
|
-
var peg$
|
|
786
|
+
var peg$f111 = function() {
|
|
779
787
|
return annotate([markers.global, text()], location());
|
|
780
788
|
};
|
|
789
|
+
var peg$f112 = function(char) { return /\s/.test(char); };
|
|
790
|
+
var peg$f113 = function(char) { return char; };
|
|
781
791
|
var peg$currPos = options.peg$currPos | 0;
|
|
782
792
|
var peg$savedPos = peg$currPos;
|
|
783
793
|
var peg$posDetailsCache = [{ line: 1, column: 1 }];
|
|
@@ -1893,21 +1903,26 @@ function peg$parse(input, options) {
|
|
|
1893
1903
|
var s0, s1, s2, s3, s4;
|
|
1894
1904
|
|
|
1895
1905
|
s0 = peg$currPos;
|
|
1896
|
-
s1 = peg$
|
|
1897
|
-
if (
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1903
|
-
|
|
1904
|
-
|
|
1905
|
-
|
|
1906
|
-
|
|
1907
|
-
|
|
1908
|
-
|
|
1909
|
-
peg$
|
|
1910
|
-
|
|
1906
|
+
s1 = peg$parsecomputedPropertySpace();
|
|
1907
|
+
if (s1 !== peg$FAILED) {
|
|
1908
|
+
if (input.charCodeAt(peg$currPos) === 91) {
|
|
1909
|
+
s2 = peg$c6;
|
|
1910
|
+
peg$currPos++;
|
|
1911
|
+
} else {
|
|
1912
|
+
s2 = peg$FAILED;
|
|
1913
|
+
if (peg$silentFails === 0) { peg$fail(peg$e9); }
|
|
1914
|
+
}
|
|
1915
|
+
if (s2 !== peg$FAILED) {
|
|
1916
|
+
s3 = peg$parseexpectExpression();
|
|
1917
|
+
if (s3 !== peg$FAILED) {
|
|
1918
|
+
s4 = peg$parseexpectClosingBracket();
|
|
1919
|
+
if (s4 !== peg$FAILED) {
|
|
1920
|
+
peg$savedPos = s0;
|
|
1921
|
+
s0 = peg$f16(s3);
|
|
1922
|
+
} else {
|
|
1923
|
+
peg$currPos = s0;
|
|
1924
|
+
s0 = peg$FAILED;
|
|
1925
|
+
}
|
|
1911
1926
|
} else {
|
|
1912
1927
|
peg$currPos = s0;
|
|
1913
1928
|
s0 = peg$FAILED;
|
|
@@ -1924,6 +1939,35 @@ function peg$parse(input, options) {
|
|
|
1924
1939
|
return s0;
|
|
1925
1940
|
}
|
|
1926
1941
|
|
|
1942
|
+
function peg$parsecomputedPropertySpace() {
|
|
1943
|
+
var s0, s1, s2;
|
|
1944
|
+
|
|
1945
|
+
s0 = peg$parseshellMode();
|
|
1946
|
+
if (s0 === peg$FAILED) {
|
|
1947
|
+
s0 = peg$currPos;
|
|
1948
|
+
s1 = peg$currPos;
|
|
1949
|
+
peg$silentFails++;
|
|
1950
|
+
s2 = peg$parseshellMode();
|
|
1951
|
+
peg$silentFails--;
|
|
1952
|
+
if (s2 === peg$FAILED) {
|
|
1953
|
+
s1 = undefined;
|
|
1954
|
+
} else {
|
|
1955
|
+
peg$currPos = s1;
|
|
1956
|
+
s1 = peg$FAILED;
|
|
1957
|
+
}
|
|
1958
|
+
if (s1 !== peg$FAILED) {
|
|
1959
|
+
s2 = peg$parse__();
|
|
1960
|
+
s1 = [s1, s2];
|
|
1961
|
+
s0 = s1;
|
|
1962
|
+
} else {
|
|
1963
|
+
peg$currPos = s0;
|
|
1964
|
+
s0 = peg$FAILED;
|
|
1965
|
+
}
|
|
1966
|
+
}
|
|
1967
|
+
|
|
1968
|
+
return s0;
|
|
1969
|
+
}
|
|
1970
|
+
|
|
1927
1971
|
function peg$parseconditionalExpression() {
|
|
1928
1972
|
var s0, s1, s2, s3, s4, s5, s6, s7, s8, s9, s10;
|
|
1929
1973
|
|
|
@@ -2665,6 +2709,30 @@ function peg$parse(input, options) {
|
|
|
2665
2709
|
return s0;
|
|
2666
2710
|
}
|
|
2667
2711
|
|
|
2712
|
+
function peg$parseexpectUnaryExpression() {
|
|
2713
|
+
var s0, s1;
|
|
2714
|
+
|
|
2715
|
+
s0 = peg$parseunaryExpression();
|
|
2716
|
+
if (s0 === peg$FAILED) {
|
|
2717
|
+
s0 = peg$currPos;
|
|
2718
|
+
if (input.length > peg$currPos) {
|
|
2719
|
+
s1 = input.charAt(peg$currPos);
|
|
2720
|
+
peg$currPos++;
|
|
2721
|
+
} else {
|
|
2722
|
+
s1 = peg$FAILED;
|
|
2723
|
+
if (peg$silentFails === 0) { peg$fail(peg$e41); }
|
|
2724
|
+
}
|
|
2725
|
+
if (s1 === peg$FAILED) {
|
|
2726
|
+
s1 = null;
|
|
2727
|
+
}
|
|
2728
|
+
peg$savedPos = s0;
|
|
2729
|
+
s1 = peg$f37();
|
|
2730
|
+
s0 = s1;
|
|
2731
|
+
}
|
|
2732
|
+
|
|
2733
|
+
return s0;
|
|
2734
|
+
}
|
|
2735
|
+
|
|
2668
2736
|
function peg$parseexponentiationExpression() {
|
|
2669
2737
|
var s0, s1, s2, s3, s4, s5, s6;
|
|
2670
2738
|
|
|
@@ -2707,7 +2775,7 @@ function peg$parse(input, options) {
|
|
|
2707
2775
|
s2 = null;
|
|
2708
2776
|
}
|
|
2709
2777
|
peg$savedPos = s0;
|
|
2710
|
-
s0 = peg$
|
|
2778
|
+
s0 = peg$f38(s1, s2);
|
|
2711
2779
|
} else {
|
|
2712
2780
|
peg$currPos = s0;
|
|
2713
2781
|
s0 = peg$FAILED;
|
|
@@ -2753,7 +2821,7 @@ function peg$parse(input, options) {
|
|
|
2753
2821
|
s3 = peg$parsedigits();
|
|
2754
2822
|
if (s3 !== peg$FAILED) {
|
|
2755
2823
|
peg$savedPos = s0;
|
|
2756
|
-
s0 = peg$
|
|
2824
|
+
s0 = peg$f39();
|
|
2757
2825
|
} else {
|
|
2758
2826
|
peg$currPos = s0;
|
|
2759
2827
|
s0 = peg$FAILED;
|
|
@@ -2792,7 +2860,7 @@ function peg$parse(input, options) {
|
|
|
2792
2860
|
s1 = peg$parsefrontDelimiter();
|
|
2793
2861
|
if (s1 !== peg$FAILED) {
|
|
2794
2862
|
peg$savedPos = peg$currPos;
|
|
2795
|
-
s2 = peg$
|
|
2863
|
+
s2 = peg$f40();
|
|
2796
2864
|
if (s2) {
|
|
2797
2865
|
s2 = undefined;
|
|
2798
2866
|
} else {
|
|
@@ -2891,7 +2959,7 @@ function peg$parse(input, options) {
|
|
|
2891
2959
|
}
|
|
2892
2960
|
}
|
|
2893
2961
|
peg$savedPos = s0;
|
|
2894
|
-
s1 = peg$
|
|
2962
|
+
s1 = peg$f41(s1);
|
|
2895
2963
|
s0 = s1;
|
|
2896
2964
|
|
|
2897
2965
|
return s0;
|
|
@@ -2908,7 +2976,7 @@ function peg$parse(input, options) {
|
|
|
2908
2976
|
s3 = peg$parsefrontDelimiter();
|
|
2909
2977
|
if (s3 !== peg$FAILED) {
|
|
2910
2978
|
peg$savedPos = s0;
|
|
2911
|
-
s0 = peg$
|
|
2979
|
+
s0 = peg$f42(s2);
|
|
2912
2980
|
} else {
|
|
2913
2981
|
peg$currPos = s0;
|
|
2914
2982
|
s0 = peg$FAILED;
|
|
@@ -2939,12 +3007,12 @@ function peg$parse(input, options) {
|
|
|
2939
3007
|
if (peg$silentFails === 0) { peg$fail(peg$e11); }
|
|
2940
3008
|
}
|
|
2941
3009
|
if (s1 !== peg$FAILED) {
|
|
2942
|
-
s2 = peg$
|
|
3010
|
+
s2 = peg$parseexpectExpression();
|
|
2943
3011
|
if (s2 !== peg$FAILED) {
|
|
2944
3012
|
s3 = peg$parseexpectClosingParenthesis();
|
|
2945
3013
|
if (s3 !== peg$FAILED) {
|
|
2946
3014
|
peg$savedPos = s0;
|
|
2947
|
-
s0 = peg$
|
|
3015
|
+
s0 = peg$f43(s2);
|
|
2948
3016
|
} else {
|
|
2949
3017
|
peg$currPos = s0;
|
|
2950
3018
|
s0 = peg$FAILED;
|
|
@@ -2988,7 +3056,7 @@ function peg$parse(input, options) {
|
|
|
2988
3056
|
s3 = peg$parseexpectGuillemet();
|
|
2989
3057
|
if (s3 !== peg$FAILED) {
|
|
2990
3058
|
peg$savedPos = s0;
|
|
2991
|
-
s0 = peg$
|
|
3059
|
+
s0 = peg$f44(s2);
|
|
2992
3060
|
} else {
|
|
2993
3061
|
peg$currPos = s0;
|
|
2994
3062
|
s0 = peg$FAILED;
|
|
@@ -3080,7 +3148,7 @@ function peg$parse(input, options) {
|
|
|
3080
3148
|
s3 = null;
|
|
3081
3149
|
}
|
|
3082
3150
|
peg$savedPos = s0;
|
|
3083
|
-
s0 = peg$
|
|
3151
|
+
s0 = peg$f45(s1, s2, s3);
|
|
3084
3152
|
} else {
|
|
3085
3153
|
peg$currPos = s0;
|
|
3086
3154
|
s0 = peg$FAILED;
|
|
@@ -3101,7 +3169,7 @@ function peg$parse(input, options) {
|
|
|
3101
3169
|
s1 = peg$parsekey();
|
|
3102
3170
|
if (s1 !== peg$FAILED) {
|
|
3103
3171
|
peg$savedPos = s0;
|
|
3104
|
-
s1 = peg$
|
|
3172
|
+
s1 = peg$f46();
|
|
3105
3173
|
}
|
|
3106
3174
|
s0 = s1;
|
|
3107
3175
|
|
|
@@ -3135,7 +3203,7 @@ function peg$parse(input, options) {
|
|
|
3135
3203
|
}
|
|
3136
3204
|
if (s1 !== peg$FAILED) {
|
|
3137
3205
|
peg$savedPos = s0;
|
|
3138
|
-
s1 = peg$
|
|
3206
|
+
s1 = peg$f47(s1);
|
|
3139
3207
|
}
|
|
3140
3208
|
s0 = s1;
|
|
3141
3209
|
|
|
@@ -3149,7 +3217,7 @@ function peg$parse(input, options) {
|
|
|
3149
3217
|
s1 = peg$parseidentifier();
|
|
3150
3218
|
if (s1 !== peg$FAILED) {
|
|
3151
3219
|
peg$savedPos = s0;
|
|
3152
|
-
s1 = peg$
|
|
3220
|
+
s1 = peg$f48(s1);
|
|
3153
3221
|
}
|
|
3154
3222
|
s0 = s1;
|
|
3155
3223
|
|
|
@@ -3170,7 +3238,7 @@ function peg$parse(input, options) {
|
|
|
3170
3238
|
}
|
|
3171
3239
|
if (s1 !== peg$FAILED) {
|
|
3172
3240
|
peg$savedPos = peg$currPos;
|
|
3173
|
-
s2 = peg$
|
|
3241
|
+
s2 = peg$f49(s1);
|
|
3174
3242
|
if (s2) {
|
|
3175
3243
|
s2 = undefined;
|
|
3176
3244
|
} else {
|
|
@@ -3210,7 +3278,7 @@ function peg$parse(input, options) {
|
|
|
3210
3278
|
}
|
|
3211
3279
|
if (s1 !== peg$FAILED) {
|
|
3212
3280
|
peg$savedPos = peg$currPos;
|
|
3213
|
-
s2 = peg$
|
|
3281
|
+
s2 = peg$f50(s1);
|
|
3214
3282
|
if (s2) {
|
|
3215
3283
|
s2 = undefined;
|
|
3216
3284
|
} else {
|
|
@@ -3270,7 +3338,7 @@ function peg$parse(input, options) {
|
|
|
3270
3338
|
s2 = null;
|
|
3271
3339
|
}
|
|
3272
3340
|
peg$savedPos = s0;
|
|
3273
|
-
s0 = peg$
|
|
3341
|
+
s0 = peg$f51(s1, s2);
|
|
3274
3342
|
} else {
|
|
3275
3343
|
peg$currPos = s0;
|
|
3276
3344
|
s0 = peg$FAILED;
|
|
@@ -3321,7 +3389,7 @@ function peg$parse(input, options) {
|
|
|
3321
3389
|
s3 = null;
|
|
3322
3390
|
}
|
|
3323
3391
|
peg$savedPos = s0;
|
|
3324
|
-
s0 = peg$
|
|
3392
|
+
s0 = peg$f52(s2);
|
|
3325
3393
|
} else {
|
|
3326
3394
|
peg$currPos = s0;
|
|
3327
3395
|
s0 = peg$FAILED;
|
|
@@ -3356,7 +3424,7 @@ function peg$parse(input, options) {
|
|
|
3356
3424
|
s1 = peg$parsedigits();
|
|
3357
3425
|
if (s1 !== peg$FAILED) {
|
|
3358
3426
|
peg$savedPos = s0;
|
|
3359
|
-
s1 = peg$
|
|
3427
|
+
s1 = peg$f53();
|
|
3360
3428
|
}
|
|
3361
3429
|
s0 = s1;
|
|
3362
3430
|
peg$silentFails--;
|
|
@@ -3381,7 +3449,7 @@ function peg$parse(input, options) {
|
|
|
3381
3449
|
s3 = peg$parsekeyChar();
|
|
3382
3450
|
}
|
|
3383
3451
|
peg$savedPos = s0;
|
|
3384
|
-
s0 = peg$
|
|
3452
|
+
s0 = peg$f54();
|
|
3385
3453
|
} else {
|
|
3386
3454
|
peg$currPos = s0;
|
|
3387
3455
|
s0 = peg$FAILED;
|
|
@@ -3432,7 +3500,7 @@ function peg$parse(input, options) {
|
|
|
3432
3500
|
}
|
|
3433
3501
|
if (s1 !== peg$FAILED) {
|
|
3434
3502
|
peg$savedPos = peg$currPos;
|
|
3435
|
-
s2 = peg$
|
|
3503
|
+
s2 = peg$f55(s1);
|
|
3436
3504
|
if (s2) {
|
|
3437
3505
|
s2 = undefined;
|
|
3438
3506
|
} else {
|
|
@@ -3498,7 +3566,7 @@ function peg$parse(input, options) {
|
|
|
3498
3566
|
s2 = null;
|
|
3499
3567
|
}
|
|
3500
3568
|
peg$savedPos = s0;
|
|
3501
|
-
s0 = peg$
|
|
3569
|
+
s0 = peg$f56(s1);
|
|
3502
3570
|
} else {
|
|
3503
3571
|
peg$currPos = s0;
|
|
3504
3572
|
s0 = peg$FAILED;
|
|
@@ -3567,7 +3635,7 @@ function peg$parse(input, options) {
|
|
|
3567
3635
|
}
|
|
3568
3636
|
}
|
|
3569
3637
|
peg$savedPos = s0;
|
|
3570
|
-
s0 = peg$
|
|
3638
|
+
s0 = peg$f57(s1, s2);
|
|
3571
3639
|
} else {
|
|
3572
3640
|
peg$currPos = s0;
|
|
3573
3641
|
s0 = peg$FAILED;
|
|
@@ -3631,7 +3699,7 @@ function peg$parse(input, options) {
|
|
|
3631
3699
|
}
|
|
3632
3700
|
}
|
|
3633
3701
|
peg$savedPos = s0;
|
|
3634
|
-
s0 = peg$
|
|
3702
|
+
s0 = peg$f58(s1, s2);
|
|
3635
3703
|
} else {
|
|
3636
3704
|
peg$currPos = s0;
|
|
3637
3705
|
s0 = peg$FAILED;
|
|
@@ -3800,7 +3868,7 @@ function peg$parse(input, options) {
|
|
|
3800
3868
|
}
|
|
3801
3869
|
if (s3 !== peg$FAILED) {
|
|
3802
3870
|
peg$savedPos = s0;
|
|
3803
|
-
s0 = peg$
|
|
3871
|
+
s0 = peg$f59();
|
|
3804
3872
|
} else {
|
|
3805
3873
|
peg$currPos = s0;
|
|
3806
3874
|
s0 = peg$FAILED;
|
|
@@ -3876,7 +3944,7 @@ function peg$parse(input, options) {
|
|
|
3876
3944
|
}
|
|
3877
3945
|
}
|
|
3878
3946
|
peg$savedPos = s0;
|
|
3879
|
-
s0 = peg$
|
|
3947
|
+
s0 = peg$f60(s1, s2);
|
|
3880
3948
|
} else {
|
|
3881
3949
|
peg$currPos = s0;
|
|
3882
3950
|
s0 = peg$FAILED;
|
|
@@ -3919,7 +3987,7 @@ function peg$parse(input, options) {
|
|
|
3919
3987
|
s4 = null;
|
|
3920
3988
|
}
|
|
3921
3989
|
peg$savedPos = s0;
|
|
3922
|
-
s0 = peg$
|
|
3990
|
+
s0 = peg$f61(s3, s4);
|
|
3923
3991
|
} else {
|
|
3924
3992
|
peg$currPos = s0;
|
|
3925
3993
|
s0 = peg$FAILED;
|
|
@@ -3943,7 +4011,7 @@ function peg$parse(input, options) {
|
|
|
3943
4011
|
s3 = peg$parseparenthesesArguments();
|
|
3944
4012
|
if (s3 !== peg$FAILED) {
|
|
3945
4013
|
peg$savedPos = s0;
|
|
3946
|
-
s0 = peg$
|
|
4014
|
+
s0 = peg$f62(s2, s3);
|
|
3947
4015
|
} else {
|
|
3948
4016
|
peg$currPos = s0;
|
|
3949
4017
|
s0 = peg$FAILED;
|
|
@@ -4065,7 +4133,7 @@ function peg$parse(input, options) {
|
|
|
4065
4133
|
}
|
|
4066
4134
|
}
|
|
4067
4135
|
peg$savedPos = s0;
|
|
4068
|
-
s0 = peg$
|
|
4136
|
+
s0 = peg$f63(s1, s2);
|
|
4069
4137
|
} else {
|
|
4070
4138
|
peg$currPos = s0;
|
|
4071
4139
|
s0 = peg$FAILED;
|
|
@@ -4096,7 +4164,7 @@ function peg$parse(input, options) {
|
|
|
4096
4164
|
s5 = peg$parseexpectClosingBrace();
|
|
4097
4165
|
if (s5 !== peg$FAILED) {
|
|
4098
4166
|
peg$savedPos = s0;
|
|
4099
|
-
s0 = peg$
|
|
4167
|
+
s0 = peg$f64(s3);
|
|
4100
4168
|
} else {
|
|
4101
4169
|
peg$currPos = s0;
|
|
4102
4170
|
s0 = peg$FAILED;
|
|
@@ -4149,7 +4217,7 @@ function peg$parse(input, options) {
|
|
|
4149
4217
|
s2 = null;
|
|
4150
4218
|
}
|
|
4151
4219
|
peg$savedPos = s0;
|
|
4152
|
-
s0 = peg$
|
|
4220
|
+
s0 = peg$f65(s1);
|
|
4153
4221
|
} else {
|
|
4154
4222
|
peg$currPos = s0;
|
|
4155
4223
|
s0 = peg$FAILED;
|
|
@@ -4195,7 +4263,7 @@ function peg$parse(input, options) {
|
|
|
4195
4263
|
s5 = peg$parseexpectPipelineExpression();
|
|
4196
4264
|
if (s5 !== peg$FAILED) {
|
|
4197
4265
|
peg$savedPos = s0;
|
|
4198
|
-
s0 = peg$
|
|
4266
|
+
s0 = peg$f66(s1, s5);
|
|
4199
4267
|
} else {
|
|
4200
4268
|
peg$currPos = s0;
|
|
4201
4269
|
s0 = peg$FAILED;
|
|
@@ -4256,7 +4324,7 @@ function peg$parse(input, options) {
|
|
|
4256
4324
|
}
|
|
4257
4325
|
if (s1 !== peg$FAILED) {
|
|
4258
4326
|
peg$savedPos = s0;
|
|
4259
|
-
s1 = peg$
|
|
4327
|
+
s1 = peg$f67(s1);
|
|
4260
4328
|
}
|
|
4261
4329
|
s0 = s1;
|
|
4262
4330
|
|
|
@@ -4300,7 +4368,7 @@ function peg$parse(input, options) {
|
|
|
4300
4368
|
s5 = peg$parseexpectPipelineExpression();
|
|
4301
4369
|
if (s5 !== peg$FAILED) {
|
|
4302
4370
|
peg$savedPos = s0;
|
|
4303
|
-
s0 = peg$
|
|
4371
|
+
s0 = peg$f68(s1, s5);
|
|
4304
4372
|
} else {
|
|
4305
4373
|
peg$currPos = s0;
|
|
4306
4374
|
s0 = peg$FAILED;
|
|
@@ -4330,7 +4398,7 @@ function peg$parse(input, options) {
|
|
|
4330
4398
|
s1 = peg$parseobjectPublicKey();
|
|
4331
4399
|
if (s1 !== peg$FAILED) {
|
|
4332
4400
|
peg$savedPos = s0;
|
|
4333
|
-
s1 = peg$
|
|
4401
|
+
s1 = peg$f69(s1);
|
|
4334
4402
|
}
|
|
4335
4403
|
s0 = s1;
|
|
4336
4404
|
if (s0 === peg$FAILED) {
|
|
@@ -4338,7 +4406,7 @@ function peg$parse(input, options) {
|
|
|
4338
4406
|
s1 = peg$parseangleBracketLiteral();
|
|
4339
4407
|
if (s1 !== peg$FAILED) {
|
|
4340
4408
|
peg$savedPos = s0;
|
|
4341
|
-
s1 = peg$
|
|
4409
|
+
s1 = peg$f70(s1);
|
|
4342
4410
|
}
|
|
4343
4411
|
s0 = s1;
|
|
4344
4412
|
}
|
|
@@ -4368,7 +4436,7 @@ function peg$parse(input, options) {
|
|
|
4368
4436
|
s2 = null;
|
|
4369
4437
|
}
|
|
4370
4438
|
peg$savedPos = s0;
|
|
4371
|
-
s0 = peg$
|
|
4439
|
+
s0 = peg$f71(s1, s2);
|
|
4372
4440
|
} else {
|
|
4373
4441
|
peg$currPos = s0;
|
|
4374
4442
|
s0 = peg$FAILED;
|
|
@@ -4378,7 +4446,7 @@ function peg$parse(input, options) {
|
|
|
4378
4446
|
s1 = peg$parsestringLiteral();
|
|
4379
4447
|
if (s1 !== peg$FAILED) {
|
|
4380
4448
|
peg$savedPos = s0;
|
|
4381
|
-
s1 = peg$
|
|
4449
|
+
s1 = peg$f72(s1);
|
|
4382
4450
|
}
|
|
4383
4451
|
s0 = s1;
|
|
4384
4452
|
}
|
|
@@ -4403,7 +4471,7 @@ function peg$parse(input, options) {
|
|
|
4403
4471
|
s4 = peg$parseidentifier();
|
|
4404
4472
|
if (s4 !== peg$FAILED) {
|
|
4405
4473
|
peg$savedPos = s0;
|
|
4406
|
-
s0 = peg$
|
|
4474
|
+
s0 = peg$f73(s4);
|
|
4407
4475
|
} else {
|
|
4408
4476
|
peg$currPos = s0;
|
|
4409
4477
|
s0 = peg$FAILED;
|
|
@@ -4423,7 +4491,7 @@ function peg$parse(input, options) {
|
|
|
4423
4491
|
s1 = peg$parsekey();
|
|
4424
4492
|
if (s1 !== peg$FAILED) {
|
|
4425
4493
|
peg$savedPos = s0;
|
|
4426
|
-
s1 = peg$
|
|
4494
|
+
s1 = peg$f74(s1);
|
|
4427
4495
|
}
|
|
4428
4496
|
s0 = s1;
|
|
4429
4497
|
|
|
@@ -4465,7 +4533,7 @@ function peg$parse(input, options) {
|
|
|
4465
4533
|
s2 = null;
|
|
4466
4534
|
}
|
|
4467
4535
|
peg$savedPos = s0;
|
|
4468
|
-
s0 = peg$
|
|
4536
|
+
s0 = peg$f75(s1);
|
|
4469
4537
|
} else {
|
|
4470
4538
|
peg$currPos = s0;
|
|
4471
4539
|
s0 = peg$FAILED;
|
|
@@ -4481,7 +4549,7 @@ function peg$parse(input, options) {
|
|
|
4481
4549
|
s1 = peg$parseparameter();
|
|
4482
4550
|
if (s1 !== peg$FAILED) {
|
|
4483
4551
|
peg$savedPos = s0;
|
|
4484
|
-
s1 = peg$
|
|
4552
|
+
s1 = peg$f76(s1);
|
|
4485
4553
|
}
|
|
4486
4554
|
s0 = s1;
|
|
4487
4555
|
|
|
@@ -4510,7 +4578,7 @@ function peg$parse(input, options) {
|
|
|
4510
4578
|
s5 = peg$parseexpectClosingParenthesis();
|
|
4511
4579
|
if (s5 !== peg$FAILED) {
|
|
4512
4580
|
peg$savedPos = s0;
|
|
4513
|
-
s0 = peg$
|
|
4581
|
+
s0 = peg$f77(s3);
|
|
4514
4582
|
} else {
|
|
4515
4583
|
peg$currPos = s0;
|
|
4516
4584
|
s0 = peg$FAILED;
|
|
@@ -4545,7 +4613,7 @@ function peg$parse(input, options) {
|
|
|
4545
4613
|
s2 = null;
|
|
4546
4614
|
}
|
|
4547
4615
|
peg$savedPos = s0;
|
|
4548
|
-
s0 = peg$
|
|
4616
|
+
s0 = peg$f78(s2);
|
|
4549
4617
|
} else {
|
|
4550
4618
|
peg$currPos = s0;
|
|
4551
4619
|
s0 = peg$FAILED;
|
|
@@ -4581,7 +4649,7 @@ function peg$parse(input, options) {
|
|
|
4581
4649
|
s1 = peg$parsepathKeys();
|
|
4582
4650
|
if (s1 !== peg$FAILED) {
|
|
4583
4651
|
peg$savedPos = s0;
|
|
4584
|
-
s1 = peg$
|
|
4652
|
+
s1 = peg$f79(s1);
|
|
4585
4653
|
}
|
|
4586
4654
|
s0 = s1;
|
|
4587
4655
|
|
|
@@ -4605,7 +4673,7 @@ function peg$parse(input, options) {
|
|
|
4605
4673
|
s2 = null;
|
|
4606
4674
|
}
|
|
4607
4675
|
peg$savedPos = s0;
|
|
4608
|
-
s0 = peg$
|
|
4676
|
+
s0 = peg$f80(s1);
|
|
4609
4677
|
} else {
|
|
4610
4678
|
peg$currPos = s0;
|
|
4611
4679
|
s0 = peg$FAILED;
|
|
@@ -4621,7 +4689,7 @@ function peg$parse(input, options) {
|
|
|
4621
4689
|
}
|
|
4622
4690
|
if (s1 !== peg$FAILED) {
|
|
4623
4691
|
peg$savedPos = s0;
|
|
4624
|
-
s1 = peg$
|
|
4692
|
+
s1 = peg$f81();
|
|
4625
4693
|
}
|
|
4626
4694
|
s0 = s1;
|
|
4627
4695
|
}
|
|
@@ -4672,7 +4740,7 @@ function peg$parse(input, options) {
|
|
|
4672
4740
|
}
|
|
4673
4741
|
}
|
|
4674
4742
|
peg$savedPos = s0;
|
|
4675
|
-
s0 = peg$
|
|
4743
|
+
s0 = peg$f82(s1, s2);
|
|
4676
4744
|
} else {
|
|
4677
4745
|
peg$currPos = s0;
|
|
4678
4746
|
s0 = peg$FAILED;
|
|
@@ -4777,7 +4845,7 @@ function peg$parse(input, options) {
|
|
|
4777
4845
|
s4 = peg$parseidentifierLiteral();
|
|
4778
4846
|
if (s4 !== peg$FAILED) {
|
|
4779
4847
|
peg$savedPos = s0;
|
|
4780
|
-
s0 = peg$
|
|
4848
|
+
s0 = peg$f83(s4);
|
|
4781
4849
|
} else {
|
|
4782
4850
|
peg$currPos = s0;
|
|
4783
4851
|
s0 = peg$FAILED;
|
|
@@ -4813,7 +4881,7 @@ function peg$parse(input, options) {
|
|
|
4813
4881
|
}
|
|
4814
4882
|
}
|
|
4815
4883
|
peg$savedPos = s0;
|
|
4816
|
-
s1 = peg$
|
|
4884
|
+
s1 = peg$f84(s1);
|
|
4817
4885
|
s0 = s1;
|
|
4818
4886
|
|
|
4819
4887
|
return s0;
|
|
@@ -4847,7 +4915,7 @@ function peg$parse(input, options) {
|
|
|
4847
4915
|
if (s3 !== peg$FAILED) {
|
|
4848
4916
|
s4 = peg$parseregexFlags();
|
|
4849
4917
|
peg$savedPos = s0;
|
|
4850
|
-
s0 = peg$
|
|
4918
|
+
s0 = peg$f85(s2, s4);
|
|
4851
4919
|
} else {
|
|
4852
4920
|
peg$currPos = s0;
|
|
4853
4921
|
s0 = peg$FAILED;
|
|
@@ -4930,7 +4998,7 @@ function peg$parse(input, options) {
|
|
|
4930
4998
|
}
|
|
4931
4999
|
}
|
|
4932
5000
|
peg$savedPos = s0;
|
|
4933
|
-
s0 = peg$
|
|
5001
|
+
s0 = peg$f86(s1, s2);
|
|
4934
5002
|
} else {
|
|
4935
5003
|
peg$currPos = s0;
|
|
4936
5004
|
s0 = peg$FAILED;
|
|
@@ -5045,7 +5113,7 @@ function peg$parse(input, options) {
|
|
|
5045
5113
|
}
|
|
5046
5114
|
}
|
|
5047
5115
|
peg$savedPos = s0;
|
|
5048
|
-
s0 = peg$
|
|
5116
|
+
s0 = peg$f87();
|
|
5049
5117
|
} else {
|
|
5050
5118
|
peg$currPos = s0;
|
|
5051
5119
|
s0 = peg$FAILED;
|
|
@@ -5058,7 +5126,7 @@ function peg$parse(input, options) {
|
|
|
5058
5126
|
var s0;
|
|
5059
5127
|
|
|
5060
5128
|
peg$savedPos = peg$currPos;
|
|
5061
|
-
s0 = peg$
|
|
5129
|
+
s0 = peg$f88();
|
|
5062
5130
|
if (s0) {
|
|
5063
5131
|
s0 = undefined;
|
|
5064
5132
|
} else {
|
|
@@ -5111,7 +5179,7 @@ function peg$parse(input, options) {
|
|
|
5111
5179
|
}
|
|
5112
5180
|
}
|
|
5113
5181
|
peg$savedPos = s0;
|
|
5114
|
-
s0 = peg$
|
|
5182
|
+
s0 = peg$f89(s1, s2);
|
|
5115
5183
|
} else {
|
|
5116
5184
|
peg$currPos = s0;
|
|
5117
5185
|
s0 = peg$FAILED;
|
|
@@ -5188,7 +5256,7 @@ function peg$parse(input, options) {
|
|
|
5188
5256
|
s5 = peg$parseimplicitParenthesesCallExpression();
|
|
5189
5257
|
if (s5 !== peg$FAILED) {
|
|
5190
5258
|
peg$savedPos = s0;
|
|
5191
|
-
s0 = peg$
|
|
5259
|
+
s0 = peg$f90(s5);
|
|
5192
5260
|
} else {
|
|
5193
5261
|
peg$currPos = s0;
|
|
5194
5262
|
s0 = peg$FAILED;
|
|
@@ -5271,7 +5339,7 @@ function peg$parse(input, options) {
|
|
|
5271
5339
|
}
|
|
5272
5340
|
}
|
|
5273
5341
|
peg$savedPos = s0;
|
|
5274
|
-
s0 = peg$
|
|
5342
|
+
s0 = peg$f91();
|
|
5275
5343
|
} else {
|
|
5276
5344
|
peg$currPos = s0;
|
|
5277
5345
|
s0 = peg$FAILED;
|
|
@@ -5302,7 +5370,7 @@ function peg$parse(input, options) {
|
|
|
5302
5370
|
s3 = peg$parseexpectSingleQuote();
|
|
5303
5371
|
if (s3 !== peg$FAILED) {
|
|
5304
5372
|
peg$savedPos = s0;
|
|
5305
|
-
s0 = peg$
|
|
5373
|
+
s0 = peg$f92(s2);
|
|
5306
5374
|
} else {
|
|
5307
5375
|
peg$currPos = s0;
|
|
5308
5376
|
s0 = peg$FAILED;
|
|
@@ -5366,7 +5434,7 @@ function peg$parse(input, options) {
|
|
|
5366
5434
|
s1 = peg$parseslashFollows();
|
|
5367
5435
|
if (s1 !== peg$FAILED) {
|
|
5368
5436
|
peg$savedPos = s0;
|
|
5369
|
-
s1 = peg$
|
|
5437
|
+
s1 = peg$f93();
|
|
5370
5438
|
}
|
|
5371
5439
|
s0 = s1;
|
|
5372
5440
|
|
|
@@ -5401,7 +5469,7 @@ function peg$parse(input, options) {
|
|
|
5401
5469
|
}
|
|
5402
5470
|
if (s1 !== peg$FAILED) {
|
|
5403
5471
|
peg$savedPos = s0;
|
|
5404
|
-
s1 = peg$
|
|
5472
|
+
s1 = peg$f94();
|
|
5405
5473
|
}
|
|
5406
5474
|
s0 = s1;
|
|
5407
5475
|
|
|
@@ -5430,7 +5498,7 @@ function peg$parse(input, options) {
|
|
|
5430
5498
|
}
|
|
5431
5499
|
if (s1 !== peg$FAILED) {
|
|
5432
5500
|
peg$savedPos = s0;
|
|
5433
|
-
s1 = peg$
|
|
5501
|
+
s1 = peg$f95();
|
|
5434
5502
|
}
|
|
5435
5503
|
s0 = s1;
|
|
5436
5504
|
|
|
@@ -5447,7 +5515,7 @@ function peg$parse(input, options) {
|
|
|
5447
5515
|
s3 = peg$parseexpectPipelineExpression();
|
|
5448
5516
|
if (s3 !== peg$FAILED) {
|
|
5449
5517
|
peg$savedPos = s0;
|
|
5450
|
-
s0 = peg$
|
|
5518
|
+
s0 = peg$f96(s3);
|
|
5451
5519
|
} else {
|
|
5452
5520
|
peg$currPos = s0;
|
|
5453
5521
|
s0 = peg$FAILED;
|
|
@@ -5524,7 +5592,7 @@ function peg$parse(input, options) {
|
|
|
5524
5592
|
}
|
|
5525
5593
|
}
|
|
5526
5594
|
peg$savedPos = s0;
|
|
5527
|
-
s0 = peg$
|
|
5595
|
+
s0 = peg$f97(s1, s2);
|
|
5528
5596
|
peg$silentFails--;
|
|
5529
5597
|
s1 = peg$FAILED;
|
|
5530
5598
|
if (peg$silentFails === 0) { peg$fail(peg$e102); }
|
|
@@ -5580,7 +5648,7 @@ function peg$parse(input, options) {
|
|
|
5580
5648
|
s2 = peg$parsetemplateBodyChar();
|
|
5581
5649
|
}
|
|
5582
5650
|
peg$savedPos = s0;
|
|
5583
|
-
s1 = peg$
|
|
5651
|
+
s1 = peg$f98(s1);
|
|
5584
5652
|
s0 = s1;
|
|
5585
5653
|
peg$silentFails--;
|
|
5586
5654
|
s1 = peg$FAILED;
|
|
@@ -5599,7 +5667,7 @@ function peg$parse(input, options) {
|
|
|
5599
5667
|
s2 = peg$parse__();
|
|
5600
5668
|
s3 = peg$parsetemplateBody();
|
|
5601
5669
|
peg$savedPos = s0;
|
|
5602
|
-
s0 = peg$
|
|
5670
|
+
s0 = peg$f99(s1, s3);
|
|
5603
5671
|
} else {
|
|
5604
5672
|
peg$currPos = s0;
|
|
5605
5673
|
s0 = peg$FAILED;
|
|
@@ -5610,7 +5678,7 @@ function peg$parse(input, options) {
|
|
|
5610
5678
|
if (s1 !== peg$FAILED) {
|
|
5611
5679
|
s2 = peg$parsetemplateBody();
|
|
5612
5680
|
peg$savedPos = s0;
|
|
5613
|
-
s0 = peg$
|
|
5681
|
+
s0 = peg$f100(s1, s2);
|
|
5614
5682
|
} else {
|
|
5615
5683
|
peg$currPos = s0;
|
|
5616
5684
|
s0 = peg$FAILED;
|
|
@@ -5619,7 +5687,7 @@ function peg$parse(input, options) {
|
|
|
5619
5687
|
s0 = peg$currPos;
|
|
5620
5688
|
s1 = peg$parsetemplateBody();
|
|
5621
5689
|
peg$savedPos = s0;
|
|
5622
|
-
s1 = peg$
|
|
5690
|
+
s1 = peg$f101(s1);
|
|
5623
5691
|
s0 = s1;
|
|
5624
5692
|
}
|
|
5625
5693
|
}
|
|
@@ -5673,7 +5741,7 @@ function peg$parse(input, options) {
|
|
|
5673
5741
|
s4 = peg$parseexpectBacktick();
|
|
5674
5742
|
if (s4 !== peg$FAILED) {
|
|
5675
5743
|
peg$savedPos = s0;
|
|
5676
|
-
s0 = peg$
|
|
5744
|
+
s0 = peg$f102(s2, s3);
|
|
5677
5745
|
} else {
|
|
5678
5746
|
peg$currPos = s0;
|
|
5679
5747
|
s0 = peg$FAILED;
|
|
@@ -5747,7 +5815,7 @@ function peg$parse(input, options) {
|
|
|
5747
5815
|
s2 = peg$parsetemplateLiteralChar();
|
|
5748
5816
|
}
|
|
5749
5817
|
peg$savedPos = s0;
|
|
5750
|
-
s1 = peg$
|
|
5818
|
+
s1 = peg$f103(s1);
|
|
5751
5819
|
s0 = s1;
|
|
5752
5820
|
|
|
5753
5821
|
return s0;
|
|
@@ -5777,7 +5845,7 @@ function peg$parse(input, options) {
|
|
|
5777
5845
|
}
|
|
5778
5846
|
if (s3 !== peg$FAILED) {
|
|
5779
5847
|
peg$savedPos = s0;
|
|
5780
|
-
s0 = peg$
|
|
5848
|
+
s0 = peg$f104(s2);
|
|
5781
5849
|
} else {
|
|
5782
5850
|
peg$currPos = s0;
|
|
5783
5851
|
s0 = peg$FAILED;
|
|
@@ -5823,10 +5891,10 @@ function peg$parse(input, options) {
|
|
|
5823
5891
|
s1 = peg$parseunaryOperator();
|
|
5824
5892
|
if (s1 !== peg$FAILED) {
|
|
5825
5893
|
s2 = peg$parse__();
|
|
5826
|
-
s3 = peg$
|
|
5894
|
+
s3 = peg$parseexpectUnaryExpression();
|
|
5827
5895
|
if (s3 !== peg$FAILED) {
|
|
5828
5896
|
peg$savedPos = s0;
|
|
5829
|
-
s0 = peg$
|
|
5897
|
+
s0 = peg$f105(s1, s3);
|
|
5830
5898
|
} else {
|
|
5831
5899
|
peg$currPos = s0;
|
|
5832
5900
|
s0 = peg$FAILED;
|
|
@@ -5883,7 +5951,7 @@ function peg$parse(input, options) {
|
|
|
5883
5951
|
s4 = null;
|
|
5884
5952
|
}
|
|
5885
5953
|
peg$savedPos = s0;
|
|
5886
|
-
s0 = peg$
|
|
5954
|
+
s0 = peg$f106(s1, s3, s4);
|
|
5887
5955
|
} else {
|
|
5888
5956
|
peg$currPos = s0;
|
|
5889
5957
|
s0 = peg$FAILED;
|
|
@@ -5903,7 +5971,7 @@ function peg$parse(input, options) {
|
|
|
5903
5971
|
s2 = peg$parsepathKeys();
|
|
5904
5972
|
if (s2 !== peg$FAILED) {
|
|
5905
5973
|
peg$savedPos = s0;
|
|
5906
|
-
s0 = peg$
|
|
5974
|
+
s0 = peg$f107(s1, s2);
|
|
5907
5975
|
} else {
|
|
5908
5976
|
peg$currPos = s0;
|
|
5909
5977
|
s0 = peg$FAILED;
|
|
@@ -5957,7 +6025,7 @@ function peg$parse(input, options) {
|
|
|
5957
6025
|
s2 = null;
|
|
5958
6026
|
}
|
|
5959
6027
|
peg$savedPos = s0;
|
|
5960
|
-
s0 = peg$
|
|
6028
|
+
s0 = peg$f108(s1);
|
|
5961
6029
|
} else {
|
|
5962
6030
|
peg$currPos = s0;
|
|
5963
6031
|
s0 = peg$FAILED;
|
|
@@ -5973,7 +6041,7 @@ function peg$parse(input, options) {
|
|
|
5973
6041
|
}
|
|
5974
6042
|
if (s1 !== peg$FAILED) {
|
|
5975
6043
|
peg$savedPos = s0;
|
|
5976
|
-
s1 = peg$
|
|
6044
|
+
s1 = peg$f109();
|
|
5977
6045
|
}
|
|
5978
6046
|
s0 = s1;
|
|
5979
6047
|
}
|
|
@@ -6018,7 +6086,7 @@ function peg$parse(input, options) {
|
|
|
6018
6086
|
}
|
|
6019
6087
|
if (s1 !== peg$FAILED) {
|
|
6020
6088
|
peg$savedPos = s0;
|
|
6021
|
-
s1 = peg$
|
|
6089
|
+
s1 = peg$f110(s1);
|
|
6022
6090
|
}
|
|
6023
6091
|
s0 = s1;
|
|
6024
6092
|
peg$silentFails--;
|
|
@@ -6069,7 +6137,7 @@ function peg$parse(input, options) {
|
|
|
6069
6137
|
}
|
|
6070
6138
|
if (s3 !== peg$FAILED) {
|
|
6071
6139
|
peg$savedPos = s0;
|
|
6072
|
-
s0 = peg$
|
|
6140
|
+
s0 = peg$f111();
|
|
6073
6141
|
} else {
|
|
6074
6142
|
peg$currPos = s0;
|
|
6075
6143
|
s0 = peg$FAILED;
|
|
@@ -6137,14 +6205,37 @@ function peg$parse(input, options) {
|
|
|
6137
6205
|
}
|
|
6138
6206
|
|
|
6139
6207
|
function peg$parsewhitespace() {
|
|
6140
|
-
var s0;
|
|
6208
|
+
var s0, s1, s2;
|
|
6141
6209
|
|
|
6142
|
-
s0 = peg$
|
|
6143
|
-
if (
|
|
6144
|
-
|
|
6145
|
-
|
|
6146
|
-
|
|
6210
|
+
s0 = peg$currPos;
|
|
6211
|
+
if (input.length > peg$currPos) {
|
|
6212
|
+
s1 = input.charAt(peg$currPos);
|
|
6213
|
+
peg$currPos++;
|
|
6214
|
+
} else {
|
|
6215
|
+
s1 = peg$FAILED;
|
|
6216
|
+
if (peg$silentFails === 0) { peg$fail(peg$e41); }
|
|
6217
|
+
}
|
|
6218
|
+
if (s1 !== peg$FAILED) {
|
|
6219
|
+
peg$savedPos = peg$currPos;
|
|
6220
|
+
s2 = peg$f112(s1);
|
|
6221
|
+
if (s2) {
|
|
6222
|
+
s2 = undefined;
|
|
6223
|
+
} else {
|
|
6224
|
+
s2 = peg$FAILED;
|
|
6147
6225
|
}
|
|
6226
|
+
if (s2 !== peg$FAILED) {
|
|
6227
|
+
peg$savedPos = s0;
|
|
6228
|
+
s0 = peg$f113(s1);
|
|
6229
|
+
} else {
|
|
6230
|
+
peg$currPos = s0;
|
|
6231
|
+
s0 = peg$FAILED;
|
|
6232
|
+
}
|
|
6233
|
+
} else {
|
|
6234
|
+
peg$currPos = s0;
|
|
6235
|
+
s0 = peg$FAILED;
|
|
6236
|
+
}
|
|
6237
|
+
if (s0 === peg$FAILED) {
|
|
6238
|
+
s0 = peg$parsecomment();
|
|
6148
6239
|
}
|
|
6149
6240
|
|
|
6150
6241
|
return s0;
|
|
@@ -6228,6 +6319,7 @@ const peg$allowedStartRules = [
|
|
|
6228
6319
|
"commaExpression",
|
|
6229
6320
|
"comment",
|
|
6230
6321
|
"computedPropertyAccess",
|
|
6322
|
+
"computedPropertySpace",
|
|
6231
6323
|
"conditionalExpression",
|
|
6232
6324
|
"digits",
|
|
6233
6325
|
"doubleArrow",
|
|
@@ -6247,6 +6339,7 @@ const peg$allowedStartRules = [
|
|
|
6247
6339
|
"expectGuillemet",
|
|
6248
6340
|
"expectSingleQuote",
|
|
6249
6341
|
"expectPipelineExpression",
|
|
6342
|
+
"expectUnaryExpression",
|
|
6250
6343
|
"exponentiationExpression",
|
|
6251
6344
|
"expression",
|
|
6252
6345
|
"floatLiteral",
|