@weborigami/language 0.0.38 → 0.0.40

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.
@@ -204,13 +204,14 @@ function peg$parse(input, options) {
204
204
  var peg$c16 = ",";
205
205
  var peg$c17 = "https";
206
206
  var peg$c18 = "http";
207
- var peg$c19 = "treehttps";
208
- var peg$c20 = "treehttp";
209
- var peg$c21 = "tree";
210
- var peg$c22 = "'";
211
- var peg$c23 = "{{";
212
- var peg$c24 = "`";
213
- var peg$c25 = "}}";
207
+ var peg$c19 = "package";
208
+ var peg$c20 = "treehttps";
209
+ var peg$c21 = "treehttp";
210
+ var peg$c22 = "tree";
211
+ var peg$c23 = "'";
212
+ var peg$c24 = "{{";
213
+ var peg$c25 = "`";
214
+ var peg$c26 = "}}";
214
215
 
215
216
  var peg$r0 = /^[^\n\r]/;
216
217
  var peg$r1 = /^[0-9]/;
@@ -218,40 +219,76 @@ function peg$parse(input, options) {
218
219
  var peg$r3 = /^[ \t]/;
219
220
  var peg$r4 = /^[+\-]/;
220
221
 
221
- var peg$e0 = peg$literalExpectation("=", false);
222
- var peg$e1 = peg$literalExpectation("[", false);
223
- var peg$e2 = peg$literalExpectation("]", false);
224
- var peg$e3 = peg$literalExpectation("#", false);
225
- var peg$e4 = peg$classExpectation(["\n", "\r"], true, false);
226
- var peg$e5 = peg$classExpectation([["0", "9"]], false, false);
227
- var peg$e6 = peg$literalExpectation("\"", false);
228
- var peg$e7 = peg$literalExpectation("\\", false);
229
- var peg$e8 = peg$anyExpectation();
230
- var peg$e9 = peg$otherExpectation("Origami expression");
231
- var peg$e10 = peg$literalExpectation(".", false);
232
- var peg$e11 = peg$literalExpectation("(", false);
233
- var peg$e12 = peg$literalExpectation(")", false);
234
- var peg$e13 = peg$classExpectation(["(", ")", "{", "}", "[", "]", ",", "/", ":", "=", "`", "\"", "'", "\\", "#", " ", "\t", "\n", "\r"], true, false);
235
- var peg$e14 = peg$literalExpectation(":", false);
236
- var peg$e15 = peg$classExpectation([" ", "\t"], false, false);
237
- var peg$e16 = peg$literalExpectation("/", false);
238
- var peg$e17 = peg$literalExpectation("\n", false);
239
- var peg$e18 = peg$literalExpectation("\r\n", false);
240
- var peg$e19 = peg$literalExpectation("\r", false);
241
- var peg$e20 = peg$literalExpectation("{", false);
242
- var peg$e21 = peg$literalExpectation("}", false);
243
- var peg$e22 = peg$literalExpectation(",", false);
244
- var peg$e23 = peg$classExpectation(["+", "-"], false, false);
245
- var peg$e24 = peg$literalExpectation("https", false);
246
- var peg$e25 = peg$literalExpectation("http", false);
247
- var peg$e26 = peg$literalExpectation("treehttps", false);
248
- var peg$e27 = peg$literalExpectation("treehttp", false);
249
- var peg$e28 = peg$literalExpectation("tree", false);
250
- var peg$e29 = peg$literalExpectation("'", false);
251
- var peg$e30 = peg$otherExpectation("Origami template");
252
- var peg$e31 = peg$literalExpectation("{{", false);
253
- var peg$e32 = peg$literalExpectation("`", false);
254
- var peg$e33 = peg$literalExpectation("}}", false);
222
+ var peg$e0 = peg$otherExpectation("absolute file path");
223
+ var peg$e1 = peg$otherExpectation("function arguments");
224
+ var peg$e2 = peg$otherExpectation("tree assignment");
225
+ var peg$e3 = peg$literalExpectation("=", false);
226
+ var peg$e4 = peg$otherExpectation("array");
227
+ var peg$e5 = peg$literalExpectation("[", false);
228
+ var peg$e6 = peg$literalExpectation("]", false);
229
+ var peg$e7 = peg$otherExpectation("function call");
230
+ var peg$e8 = peg$otherExpectation("comment");
231
+ var peg$e9 = peg$literalExpectation("#", false);
232
+ var peg$e10 = peg$classExpectation(["\n", "\r"], true, false);
233
+ var peg$e11 = peg$classExpectation([["0", "9"]], false, false);
234
+ var peg$e12 = peg$otherExpectation("double quote string");
235
+ var peg$e13 = peg$literalExpectation("\"", false);
236
+ var peg$e14 = peg$otherExpectation("backslash-escaped character");
237
+ var peg$e15 = peg$literalExpectation("\\", false);
238
+ var peg$e16 = peg$anyExpectation();
239
+ var peg$e17 = peg$otherExpectation("expression");
240
+ var peg$e18 = peg$otherExpectation("Origami expression");
241
+ var peg$e19 = peg$otherExpectation("floating-point number");
242
+ var peg$e20 = peg$literalExpectation(".", false);
243
+ var peg$e21 = peg$otherExpectation("function composition");
244
+ var peg$e22 = peg$otherExpectation("parenthetical group");
245
+ var peg$e23 = peg$literalExpectation("(", false);
246
+ var peg$e24 = peg$literalExpectation(")", false);
247
+ var peg$e25 = peg$otherExpectation("identifier");
248
+ var peg$e26 = peg$classExpectation(["(", ")", "{", "}", "[", "]", ",", "/", ":", "=", "`", "\"", "'", "\\", "#", " ", "\t", "\n", "\r"], true, false);
249
+ var peg$e27 = peg$otherExpectation("function call with implicit parentheses");
250
+ var peg$e28 = peg$otherExpectation("HTTP/HTTPS host");
251
+ var peg$e29 = peg$literalExpectation(":", false);
252
+ var peg$e30 = peg$classExpectation([" ", "\t"], false, false);
253
+ var peg$e31 = peg$otherExpectation("integer");
254
+ var peg$e32 = peg$otherExpectation("lambda function");
255
+ var peg$e33 = peg$otherExpectation("path with a leading slash");
256
+ var peg$e34 = peg$literalExpectation("/", false);
257
+ var peg$e35 = peg$otherExpectation("list");
258
+ var peg$e36 = peg$literalExpectation("\n", false);
259
+ var peg$e37 = peg$literalExpectation("\r\n", false);
260
+ var peg$e38 = peg$literalExpectation("\r", false);
261
+ var peg$e39 = peg$otherExpectation("number");
262
+ var peg$e40 = peg$otherExpectation("object literal");
263
+ var peg$e41 = peg$literalExpectation("{", false);
264
+ var peg$e42 = peg$literalExpectation("}", false);
265
+ var peg$e43 = peg$otherExpectation("object property");
266
+ var peg$e44 = peg$otherExpectation("function arguments in parentheses");
267
+ var peg$e45 = peg$literalExpectation(",", false);
268
+ var peg$e46 = peg$classExpectation(["+", "-"], false, false);
269
+ var peg$e47 = peg$otherExpectation("slash-separated path");
270
+ var peg$e48 = peg$otherExpectation("path element");
271
+ var peg$e49 = peg$otherExpectation("function call using protocol: syntax");
272
+ var peg$e50 = peg$otherExpectation("protocol");
273
+ var peg$e51 = peg$otherExpectation("reserved protocol");
274
+ var peg$e52 = peg$literalExpectation("https", false);
275
+ var peg$e53 = peg$literalExpectation("http", false);
276
+ var peg$e54 = peg$literalExpectation("package", false);
277
+ var peg$e55 = peg$literalExpectation("treehttps", false);
278
+ var peg$e56 = peg$literalExpectation("treehttp", false);
279
+ var peg$e57 = peg$literalExpectation("tree", false);
280
+ var peg$e58 = peg$otherExpectation("scope reference");
281
+ var peg$e59 = peg$otherExpectation("single quote string");
282
+ var peg$e60 = peg$literalExpectation("'", false);
283
+ var peg$e61 = peg$otherExpectation("string");
284
+ var peg$e62 = peg$otherExpectation("template");
285
+ var peg$e63 = peg$literalExpectation("{{", false);
286
+ var peg$e64 = peg$otherExpectation("template text");
287
+ var peg$e65 = peg$otherExpectation("template literal");
288
+ var peg$e66 = peg$literalExpectation("`", false);
289
+ var peg$e67 = peg$otherExpectation("template substitution");
290
+ var peg$e68 = peg$literalExpectation("}}", false);
291
+ var peg$e69 = peg$otherExpectation("tree literal");
255
292
 
256
293
  var peg$f0 = function() { return ""; };
257
294
  var peg$f1 = function(path) { return [[ops.filesRoot], ...path]; };
@@ -288,18 +325,19 @@ function peg$parse(input, options) {
288
325
  };
289
326
  var peg$f23 = function() { return ops.https; };
290
327
  var peg$f24 = function() { return ops.http; };
291
- var peg$f25 = function() { return ops.treeHttps; };
292
- var peg$f26 = function() { return ops.treeHttp; };
293
- var peg$f27 = function() { return ops.treeHttps; };
294
- var peg$f28 = function(key) { return [ops.scope, key]; };
295
- var peg$f29 = function(chars) { return chars.join(""); };
296
- var peg$f30 = function(contents) { return [ops.lambda, contents]; };
297
- var peg$f31 = function(parts) { return makeTemplate(parts); };
298
- var peg$f32 = function(chars) { return chars.join(""); };
299
- var peg$f33 = function(parts) { return makeTemplate(parts); };
300
- var peg$f34 = function(chars) { return chars.join(""); };
301
- var peg$f35 = function(assignments) { return [ops.tree, ...(assignments ?? [])]; };
302
- var peg$f36 = function(head, tail) {
328
+ var peg$f25 = function() { return [ops.scope, "@package"] };
329
+ var peg$f26 = function() { return ops.treeHttps; };
330
+ var peg$f27 = function() { return ops.treeHttp; };
331
+ var peg$f28 = function() { return ops.treeHttps; };
332
+ var peg$f29 = function(key) { return [ops.scope, key]; };
333
+ var peg$f30 = function(chars) { return chars.join(""); };
334
+ var peg$f31 = function(contents) { return [ops.lambda, contents]; };
335
+ var peg$f32 = function(parts) { return makeTemplate(parts); };
336
+ var peg$f33 = function(chars) { return chars.join(""); };
337
+ var peg$f34 = function(parts) { return makeTemplate(parts); };
338
+ var peg$f35 = function(chars) { return chars.join(""); };
339
+ var peg$f36 = function(assignments) { return [ops.tree, ...(assignments ?? [])]; };
340
+ var peg$f37 = function(head, tail) {
303
341
  return [head].concat(tail);
304
342
  };
305
343
  var peg$currPos = 0;
@@ -494,6 +532,7 @@ function peg$parse(input, options) {
494
532
  function peg$parseabsoluteFilePath() {
495
533
  var s0, s1;
496
534
 
535
+ peg$silentFails++;
497
536
  s0 = peg$currPos;
498
537
  s1 = peg$parseleadingSlashPath();
499
538
  if (s1 !== peg$FAILED) {
@@ -501,6 +540,11 @@ function peg$parse(input, options) {
501
540
  s1 = peg$f1(s1);
502
541
  }
503
542
  s0 = s1;
543
+ peg$silentFails--;
544
+ if (s0 === peg$FAILED) {
545
+ s1 = peg$FAILED;
546
+ if (peg$silentFails === 0) { peg$fail(peg$e0); }
547
+ }
504
548
 
505
549
  return s0;
506
550
  }
@@ -508,6 +552,7 @@ function peg$parse(input, options) {
508
552
  function peg$parseargsChain() {
509
553
  var s0, s1, s2;
510
554
 
555
+ peg$silentFails++;
511
556
  s0 = peg$currPos;
512
557
  s1 = [];
513
558
  s2 = peg$parseparensArgs();
@@ -530,6 +575,11 @@ function peg$parse(input, options) {
530
575
  s1 = peg$f2(s1);
531
576
  }
532
577
  s0 = s1;
578
+ peg$silentFails--;
579
+ if (s0 === peg$FAILED) {
580
+ s1 = peg$FAILED;
581
+ if (peg$silentFails === 0) { peg$fail(peg$e1); }
582
+ }
533
583
 
534
584
  return s0;
535
585
  }
@@ -537,6 +587,7 @@ function peg$parse(input, options) {
537
587
  function peg$parseassignment() {
538
588
  var s0, s1, s2, s3, s4, s5;
539
589
 
590
+ peg$silentFails++;
540
591
  s0 = peg$currPos;
541
592
  s1 = peg$parseidentifier();
542
593
  if (s1 !== peg$FAILED) {
@@ -546,7 +597,7 @@ function peg$parse(input, options) {
546
597
  peg$currPos++;
547
598
  } else {
548
599
  s3 = peg$FAILED;
549
- if (peg$silentFails === 0) { peg$fail(peg$e0); }
600
+ if (peg$silentFails === 0) { peg$fail(peg$e3); }
550
601
  }
551
602
  if (s3 !== peg$FAILED) {
552
603
  s4 = peg$parse__();
@@ -565,6 +616,11 @@ function peg$parse(input, options) {
565
616
  peg$currPos = s0;
566
617
  s0 = peg$FAILED;
567
618
  }
619
+ peg$silentFails--;
620
+ if (s0 === peg$FAILED) {
621
+ s1 = peg$FAILED;
622
+ if (peg$silentFails === 0) { peg$fail(peg$e2); }
623
+ }
568
624
 
569
625
  return s0;
570
626
  }
@@ -589,13 +645,14 @@ function peg$parse(input, options) {
589
645
  function peg$parsearray() {
590
646
  var s0, s1, s2, s3, s4;
591
647
 
648
+ peg$silentFails++;
592
649
  s0 = peg$currPos;
593
650
  if (input.charCodeAt(peg$currPos) === 91) {
594
651
  s1 = peg$c1;
595
652
  peg$currPos++;
596
653
  } else {
597
654
  s1 = peg$FAILED;
598
- if (peg$silentFails === 0) { peg$fail(peg$e1); }
655
+ if (peg$silentFails === 0) { peg$fail(peg$e5); }
599
656
  }
600
657
  if (s1 !== peg$FAILED) {
601
658
  s2 = peg$parse__();
@@ -608,7 +665,7 @@ function peg$parse(input, options) {
608
665
  peg$currPos++;
609
666
  } else {
610
667
  s4 = peg$FAILED;
611
- if (peg$silentFails === 0) { peg$fail(peg$e2); }
668
+ if (peg$silentFails === 0) { peg$fail(peg$e6); }
612
669
  }
613
670
  if (s4 !== peg$FAILED) {
614
671
  peg$savedPos = s0;
@@ -621,13 +678,19 @@ function peg$parse(input, options) {
621
678
  peg$currPos = s0;
622
679
  s0 = peg$FAILED;
623
680
  }
681
+ peg$silentFails--;
682
+ if (s0 === peg$FAILED) {
683
+ s1 = peg$FAILED;
684
+ if (peg$silentFails === 0) { peg$fail(peg$e4); }
685
+ }
624
686
 
625
687
  return s0;
626
688
  }
627
689
 
628
690
  function peg$parsecallTarget() {
629
- var s0;
691
+ var s0, s1;
630
692
 
693
+ peg$silentFails++;
631
694
  s0 = peg$parseabsoluteFilePath();
632
695
  if (s0 === peg$FAILED) {
633
696
  s0 = peg$parsearray();
@@ -650,6 +713,11 @@ function peg$parse(input, options) {
650
713
  }
651
714
  }
652
715
  }
716
+ peg$silentFails--;
717
+ if (s0 === peg$FAILED) {
718
+ s1 = peg$FAILED;
719
+ if (peg$silentFails === 0) { peg$fail(peg$e7); }
720
+ }
653
721
 
654
722
  return s0;
655
723
  }
@@ -657,13 +725,14 @@ function peg$parse(input, options) {
657
725
  function peg$parsecomment() {
658
726
  var s0, s1, s2, s3;
659
727
 
728
+ peg$silentFails++;
660
729
  s0 = peg$currPos;
661
730
  if (input.charCodeAt(peg$currPos) === 35) {
662
731
  s1 = peg$c3;
663
732
  peg$currPos++;
664
733
  } else {
665
734
  s1 = peg$FAILED;
666
- if (peg$silentFails === 0) { peg$fail(peg$e3); }
735
+ if (peg$silentFails === 0) { peg$fail(peg$e9); }
667
736
  }
668
737
  if (s1 !== peg$FAILED) {
669
738
  s2 = [];
@@ -672,7 +741,7 @@ function peg$parse(input, options) {
672
741
  peg$currPos++;
673
742
  } else {
674
743
  s3 = peg$FAILED;
675
- if (peg$silentFails === 0) { peg$fail(peg$e4); }
744
+ if (peg$silentFails === 0) { peg$fail(peg$e10); }
676
745
  }
677
746
  while (s3 !== peg$FAILED) {
678
747
  s2.push(s3);
@@ -681,7 +750,7 @@ function peg$parse(input, options) {
681
750
  peg$currPos++;
682
751
  } else {
683
752
  s3 = peg$FAILED;
684
- if (peg$silentFails === 0) { peg$fail(peg$e4); }
753
+ if (peg$silentFails === 0) { peg$fail(peg$e10); }
685
754
  }
686
755
  }
687
756
  s1 = [s1, s2];
@@ -690,6 +759,11 @@ function peg$parse(input, options) {
690
759
  peg$currPos = s0;
691
760
  s0 = peg$FAILED;
692
761
  }
762
+ peg$silentFails--;
763
+ if (s0 === peg$FAILED) {
764
+ s1 = peg$FAILED;
765
+ if (peg$silentFails === 0) { peg$fail(peg$e8); }
766
+ }
693
767
 
694
768
  return s0;
695
769
  }
@@ -704,7 +778,7 @@ function peg$parse(input, options) {
704
778
  peg$currPos++;
705
779
  } else {
706
780
  s2 = peg$FAILED;
707
- if (peg$silentFails === 0) { peg$fail(peg$e5); }
781
+ if (peg$silentFails === 0) { peg$fail(peg$e11); }
708
782
  }
709
783
  if (s2 !== peg$FAILED) {
710
784
  while (s2 !== peg$FAILED) {
@@ -714,7 +788,7 @@ function peg$parse(input, options) {
714
788
  peg$currPos++;
715
789
  } else {
716
790
  s2 = peg$FAILED;
717
- if (peg$silentFails === 0) { peg$fail(peg$e5); }
791
+ if (peg$silentFails === 0) { peg$fail(peg$e11); }
718
792
  }
719
793
  }
720
794
  } else {
@@ -733,13 +807,14 @@ function peg$parse(input, options) {
733
807
  function peg$parsedoubleQuoteString() {
734
808
  var s0, s1, s2, s3;
735
809
 
810
+ peg$silentFails++;
736
811
  s0 = peg$currPos;
737
812
  if (input.charCodeAt(peg$currPos) === 34) {
738
813
  s1 = peg$c4;
739
814
  peg$currPos++;
740
815
  } else {
741
816
  s1 = peg$FAILED;
742
- if (peg$silentFails === 0) { peg$fail(peg$e6); }
817
+ if (peg$silentFails === 0) { peg$fail(peg$e13); }
743
818
  }
744
819
  if (s1 !== peg$FAILED) {
745
820
  s2 = [];
@@ -753,7 +828,7 @@ function peg$parse(input, options) {
753
828
  peg$currPos++;
754
829
  } else {
755
830
  s3 = peg$FAILED;
756
- if (peg$silentFails === 0) { peg$fail(peg$e6); }
831
+ if (peg$silentFails === 0) { peg$fail(peg$e13); }
757
832
  }
758
833
  if (s3 !== peg$FAILED) {
759
834
  peg$savedPos = s0;
@@ -766,6 +841,11 @@ function peg$parse(input, options) {
766
841
  peg$currPos = s0;
767
842
  s0 = peg$FAILED;
768
843
  }
844
+ peg$silentFails--;
845
+ if (s0 === peg$FAILED) {
846
+ s1 = peg$FAILED;
847
+ if (peg$silentFails === 0) { peg$fail(peg$e12); }
848
+ }
769
849
 
770
850
  return s0;
771
851
  }
@@ -781,7 +861,7 @@ function peg$parse(input, options) {
781
861
  peg$currPos++;
782
862
  } else {
783
863
  s2 = peg$FAILED;
784
- if (peg$silentFails === 0) { peg$fail(peg$e6); }
864
+ if (peg$silentFails === 0) { peg$fail(peg$e13); }
785
865
  }
786
866
  if (s2 === peg$FAILED) {
787
867
  s2 = peg$parsenewLine();
@@ -812,13 +892,14 @@ function peg$parse(input, options) {
812
892
  function peg$parseescapedChar() {
813
893
  var s0, s1, s2;
814
894
 
895
+ peg$silentFails++;
815
896
  s0 = peg$currPos;
816
897
  if (input.charCodeAt(peg$currPos) === 92) {
817
898
  s1 = peg$c5;
818
899
  peg$currPos++;
819
900
  } else {
820
901
  s1 = peg$FAILED;
821
- if (peg$silentFails === 0) { peg$fail(peg$e7); }
902
+ if (peg$silentFails === 0) { peg$fail(peg$e15); }
822
903
  }
823
904
  if (s1 !== peg$FAILED) {
824
905
  if (input.length > peg$currPos) {
@@ -826,7 +907,7 @@ function peg$parse(input, options) {
826
907
  peg$currPos++;
827
908
  } else {
828
909
  s2 = peg$FAILED;
829
- if (peg$silentFails === 0) { peg$fail(peg$e8); }
910
+ if (peg$silentFails === 0) { peg$fail(peg$e16); }
830
911
  }
831
912
  if (s2 !== peg$FAILED) {
832
913
  s0 = s2;
@@ -838,13 +919,19 @@ function peg$parse(input, options) {
838
919
  peg$currPos = s0;
839
920
  s0 = peg$FAILED;
840
921
  }
922
+ peg$silentFails--;
923
+ if (s0 === peg$FAILED) {
924
+ s1 = peg$FAILED;
925
+ if (peg$silentFails === 0) { peg$fail(peg$e14); }
926
+ }
841
927
 
842
928
  return s0;
843
929
  }
844
930
 
845
931
  function peg$parseexpr() {
846
- var s0;
932
+ var s0, s1;
847
933
 
934
+ peg$silentFails++;
848
935
  s0 = peg$parseimplicitParensCall();
849
936
  if (s0 === peg$FAILED) {
850
937
  s0 = peg$parsefunctionComposition();
@@ -882,6 +969,11 @@ function peg$parse(input, options) {
882
969
  }
883
970
  }
884
971
  }
972
+ peg$silentFails--;
973
+ if (s0 === peg$FAILED) {
974
+ s1 = peg$FAILED;
975
+ if (peg$silentFails === 0) { peg$fail(peg$e17); }
976
+ }
885
977
 
886
978
  return s0;
887
979
  }
@@ -903,7 +995,7 @@ function peg$parse(input, options) {
903
995
  peg$silentFails--;
904
996
  if (s0 === peg$FAILED) {
905
997
  s1 = peg$FAILED;
906
- if (peg$silentFails === 0) { peg$fail(peg$e9); }
998
+ if (peg$silentFails === 0) { peg$fail(peg$e18); }
907
999
  }
908
1000
 
909
1001
  return s0;
@@ -912,6 +1004,7 @@ function peg$parse(input, options) {
912
1004
  function peg$parsefloat() {
913
1005
  var s0, s1, s2, s3, s4;
914
1006
 
1007
+ peg$silentFails++;
915
1008
  s0 = peg$currPos;
916
1009
  s1 = peg$parsesign();
917
1010
  if (s1 === peg$FAILED) {
@@ -926,7 +1019,7 @@ function peg$parse(input, options) {
926
1019
  peg$currPos++;
927
1020
  } else {
928
1021
  s3 = peg$FAILED;
929
- if (peg$silentFails === 0) { peg$fail(peg$e10); }
1022
+ if (peg$silentFails === 0) { peg$fail(peg$e20); }
930
1023
  }
931
1024
  if (s3 !== peg$FAILED) {
932
1025
  s4 = peg$parsedigits();
@@ -941,6 +1034,11 @@ function peg$parse(input, options) {
941
1034
  peg$currPos = s0;
942
1035
  s0 = peg$FAILED;
943
1036
  }
1037
+ peg$silentFails--;
1038
+ if (s0 === peg$FAILED) {
1039
+ s1 = peg$FAILED;
1040
+ if (peg$silentFails === 0) { peg$fail(peg$e19); }
1041
+ }
944
1042
 
945
1043
  return s0;
946
1044
  }
@@ -948,6 +1046,7 @@ function peg$parse(input, options) {
948
1046
  function peg$parsefunctionComposition() {
949
1047
  var s0, s1, s2;
950
1048
 
1049
+ peg$silentFails++;
951
1050
  s0 = peg$currPos;
952
1051
  s1 = peg$parsecallTarget();
953
1052
  if (s1 !== peg$FAILED) {
@@ -963,6 +1062,11 @@ function peg$parse(input, options) {
963
1062
  peg$currPos = s0;
964
1063
  s0 = peg$FAILED;
965
1064
  }
1065
+ peg$silentFails--;
1066
+ if (s0 === peg$FAILED) {
1067
+ s1 = peg$FAILED;
1068
+ if (peg$silentFails === 0) { peg$fail(peg$e21); }
1069
+ }
966
1070
 
967
1071
  return s0;
968
1072
  }
@@ -970,13 +1074,14 @@ function peg$parse(input, options) {
970
1074
  function peg$parsegroup() {
971
1075
  var s0, s1, s2, s3, s4, s5;
972
1076
 
1077
+ peg$silentFails++;
973
1078
  s0 = peg$currPos;
974
1079
  if (input.charCodeAt(peg$currPos) === 40) {
975
1080
  s1 = peg$c7;
976
1081
  peg$currPos++;
977
1082
  } else {
978
1083
  s1 = peg$FAILED;
979
- if (peg$silentFails === 0) { peg$fail(peg$e11); }
1084
+ if (peg$silentFails === 0) { peg$fail(peg$e23); }
980
1085
  }
981
1086
  if (s1 !== peg$FAILED) {
982
1087
  s2 = peg$parse__();
@@ -988,7 +1093,7 @@ function peg$parse(input, options) {
988
1093
  peg$currPos++;
989
1094
  } else {
990
1095
  s5 = peg$FAILED;
991
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
1096
+ if (peg$silentFails === 0) { peg$fail(peg$e24); }
992
1097
  }
993
1098
  if (s5 !== peg$FAILED) {
994
1099
  s0 = s3;
@@ -1004,6 +1109,11 @@ function peg$parse(input, options) {
1004
1109
  peg$currPos = s0;
1005
1110
  s0 = peg$FAILED;
1006
1111
  }
1112
+ peg$silentFails--;
1113
+ if (s0 === peg$FAILED) {
1114
+ s1 = peg$FAILED;
1115
+ if (peg$silentFails === 0) { peg$fail(peg$e22); }
1116
+ }
1007
1117
 
1008
1118
  return s0;
1009
1119
  }
@@ -1011,6 +1121,7 @@ function peg$parse(input, options) {
1011
1121
  function peg$parseidentifier() {
1012
1122
  var s0, s1, s2;
1013
1123
 
1124
+ peg$silentFails++;
1014
1125
  s0 = peg$currPos;
1015
1126
  s1 = [];
1016
1127
  s2 = peg$parseidentifierChar();
@@ -1027,6 +1138,11 @@ function peg$parse(input, options) {
1027
1138
  s1 = peg$f8(s1);
1028
1139
  }
1029
1140
  s0 = s1;
1141
+ peg$silentFails--;
1142
+ if (s0 === peg$FAILED) {
1143
+ s1 = peg$FAILED;
1144
+ if (peg$silentFails === 0) { peg$fail(peg$e25); }
1145
+ }
1030
1146
 
1031
1147
  return s0;
1032
1148
  }
@@ -1039,7 +1155,7 @@ function peg$parse(input, options) {
1039
1155
  peg$currPos++;
1040
1156
  } else {
1041
1157
  s0 = peg$FAILED;
1042
- if (peg$silentFails === 0) { peg$fail(peg$e13); }
1158
+ if (peg$silentFails === 0) { peg$fail(peg$e26); }
1043
1159
  }
1044
1160
  if (s0 === peg$FAILED) {
1045
1161
  s0 = peg$parseescapedChar();
@@ -1051,6 +1167,7 @@ function peg$parse(input, options) {
1051
1167
  function peg$parseimplicitParensCall() {
1052
1168
  var s0, s1, s2, s3;
1053
1169
 
1170
+ peg$silentFails++;
1054
1171
  s0 = peg$currPos;
1055
1172
  s1 = peg$parsefunctionComposition();
1056
1173
  if (s1 === peg$FAILED) {
@@ -1084,6 +1201,11 @@ function peg$parse(input, options) {
1084
1201
  peg$currPos = s0;
1085
1202
  s0 = peg$FAILED;
1086
1203
  }
1204
+ peg$silentFails--;
1205
+ if (s0 === peg$FAILED) {
1206
+ s1 = peg$FAILED;
1207
+ if (peg$silentFails === 0) { peg$fail(peg$e27); }
1208
+ }
1087
1209
 
1088
1210
  return s0;
1089
1211
  }
@@ -1091,6 +1213,7 @@ function peg$parse(input, options) {
1091
1213
  function peg$parsehost() {
1092
1214
  var s0, s1, s2, s3, s4;
1093
1215
 
1216
+ peg$silentFails++;
1094
1217
  s0 = peg$currPos;
1095
1218
  s1 = peg$parseidentifier();
1096
1219
  if (s1 !== peg$FAILED) {
@@ -1100,7 +1223,7 @@ function peg$parse(input, options) {
1100
1223
  peg$currPos++;
1101
1224
  } else {
1102
1225
  s3 = peg$FAILED;
1103
- if (peg$silentFails === 0) { peg$fail(peg$e14); }
1226
+ if (peg$silentFails === 0) { peg$fail(peg$e29); }
1104
1227
  }
1105
1228
  if (s3 !== peg$FAILED) {
1106
1229
  s4 = peg$parsenumber();
@@ -1124,6 +1247,11 @@ function peg$parse(input, options) {
1124
1247
  peg$currPos = s0;
1125
1248
  s0 = peg$FAILED;
1126
1249
  }
1250
+ peg$silentFails--;
1251
+ if (s0 === peg$FAILED) {
1252
+ s1 = peg$FAILED;
1253
+ if (peg$silentFails === 0) { peg$fail(peg$e28); }
1254
+ }
1127
1255
 
1128
1256
  return s0;
1129
1257
  }
@@ -1136,7 +1264,7 @@ function peg$parse(input, options) {
1136
1264
  peg$currPos++;
1137
1265
  } else {
1138
1266
  s0 = peg$FAILED;
1139
- if (peg$silentFails === 0) { peg$fail(peg$e15); }
1267
+ if (peg$silentFails === 0) { peg$fail(peg$e30); }
1140
1268
  }
1141
1269
 
1142
1270
  return s0;
@@ -1145,6 +1273,7 @@ function peg$parse(input, options) {
1145
1273
  function peg$parseinteger() {
1146
1274
  var s0, s1, s2;
1147
1275
 
1276
+ peg$silentFails++;
1148
1277
  s0 = peg$currPos;
1149
1278
  s1 = peg$parsesign();
1150
1279
  if (s1 === peg$FAILED) {
@@ -1158,6 +1287,11 @@ function peg$parse(input, options) {
1158
1287
  peg$currPos = s0;
1159
1288
  s0 = peg$FAILED;
1160
1289
  }
1290
+ peg$silentFails--;
1291
+ if (s0 === peg$FAILED) {
1292
+ s1 = peg$FAILED;
1293
+ if (peg$silentFails === 0) { peg$fail(peg$e31); }
1294
+ }
1161
1295
 
1162
1296
  return s0;
1163
1297
  }
@@ -1165,13 +1299,14 @@ function peg$parse(input, options) {
1165
1299
  function peg$parselambda() {
1166
1300
  var s0, s1, s2, s3;
1167
1301
 
1302
+ peg$silentFails++;
1168
1303
  s0 = peg$currPos;
1169
1304
  if (input.charCodeAt(peg$currPos) === 61) {
1170
1305
  s1 = peg$c0;
1171
1306
  peg$currPos++;
1172
1307
  } else {
1173
1308
  s1 = peg$FAILED;
1174
- if (peg$silentFails === 0) { peg$fail(peg$e0); }
1309
+ if (peg$silentFails === 0) { peg$fail(peg$e3); }
1175
1310
  }
1176
1311
  if (s1 !== peg$FAILED) {
1177
1312
  s2 = peg$parse__();
@@ -1187,6 +1322,11 @@ function peg$parse(input, options) {
1187
1322
  peg$currPos = s0;
1188
1323
  s0 = peg$FAILED;
1189
1324
  }
1325
+ peg$silentFails--;
1326
+ if (s0 === peg$FAILED) {
1327
+ s1 = peg$FAILED;
1328
+ if (peg$silentFails === 0) { peg$fail(peg$e32); }
1329
+ }
1190
1330
 
1191
1331
  return s0;
1192
1332
  }
@@ -1194,13 +1334,14 @@ function peg$parse(input, options) {
1194
1334
  function peg$parseleadingSlashPath() {
1195
1335
  var s0, s1, s2;
1196
1336
 
1337
+ peg$silentFails++;
1197
1338
  s0 = peg$currPos;
1198
1339
  if (input.charCodeAt(peg$currPos) === 47) {
1199
1340
  s1 = peg$c10;
1200
1341
  peg$currPos++;
1201
1342
  } else {
1202
1343
  s1 = peg$FAILED;
1203
- if (peg$silentFails === 0) { peg$fail(peg$e16); }
1344
+ if (peg$silentFails === 0) { peg$fail(peg$e34); }
1204
1345
  }
1205
1346
  if (s1 !== peg$FAILED) {
1206
1347
  s2 = peg$parsepath();
@@ -1221,7 +1362,7 @@ function peg$parse(input, options) {
1221
1362
  peg$currPos++;
1222
1363
  } else {
1223
1364
  s1 = peg$FAILED;
1224
- if (peg$silentFails === 0) { peg$fail(peg$e16); }
1365
+ if (peg$silentFails === 0) { peg$fail(peg$e34); }
1225
1366
  }
1226
1367
  if (s1 !== peg$FAILED) {
1227
1368
  peg$savedPos = s0;
@@ -1229,6 +1370,11 @@ function peg$parse(input, options) {
1229
1370
  }
1230
1371
  s0 = s1;
1231
1372
  }
1373
+ peg$silentFails--;
1374
+ if (s0 === peg$FAILED) {
1375
+ s1 = peg$FAILED;
1376
+ if (peg$silentFails === 0) { peg$fail(peg$e33); }
1377
+ }
1232
1378
 
1233
1379
  return s0;
1234
1380
  }
@@ -1236,6 +1382,7 @@ function peg$parse(input, options) {
1236
1382
  function peg$parselist() {
1237
1383
  var s0, s1, s2, s3, s4, s5;
1238
1384
 
1385
+ peg$silentFails++;
1239
1386
  s0 = peg$currPos;
1240
1387
  s1 = peg$parseexpr();
1241
1388
  if (s1 !== peg$FAILED) {
@@ -1281,6 +1428,11 @@ function peg$parse(input, options) {
1281
1428
  peg$currPos = s0;
1282
1429
  s0 = peg$FAILED;
1283
1430
  }
1431
+ peg$silentFails--;
1432
+ if (s0 === peg$FAILED) {
1433
+ s1 = peg$FAILED;
1434
+ if (peg$silentFails === 0) { peg$fail(peg$e35); }
1435
+ }
1284
1436
 
1285
1437
  return s0;
1286
1438
  }
@@ -1293,7 +1445,7 @@ function peg$parse(input, options) {
1293
1445
  peg$currPos++;
1294
1446
  } else {
1295
1447
  s0 = peg$FAILED;
1296
- if (peg$silentFails === 0) { peg$fail(peg$e17); }
1448
+ if (peg$silentFails === 0) { peg$fail(peg$e36); }
1297
1449
  }
1298
1450
  if (s0 === peg$FAILED) {
1299
1451
  if (input.substr(peg$currPos, 2) === peg$c12) {
@@ -1301,7 +1453,7 @@ function peg$parse(input, options) {
1301
1453
  peg$currPos += 2;
1302
1454
  } else {
1303
1455
  s0 = peg$FAILED;
1304
- if (peg$silentFails === 0) { peg$fail(peg$e18); }
1456
+ if (peg$silentFails === 0) { peg$fail(peg$e37); }
1305
1457
  }
1306
1458
  if (s0 === peg$FAILED) {
1307
1459
  if (input.charCodeAt(peg$currPos) === 13) {
@@ -1309,7 +1461,7 @@ function peg$parse(input, options) {
1309
1461
  peg$currPos++;
1310
1462
  } else {
1311
1463
  s0 = peg$FAILED;
1312
- if (peg$silentFails === 0) { peg$fail(peg$e19); }
1464
+ if (peg$silentFails === 0) { peg$fail(peg$e38); }
1313
1465
  }
1314
1466
  }
1315
1467
  }
@@ -1318,12 +1470,18 @@ function peg$parse(input, options) {
1318
1470
  }
1319
1471
 
1320
1472
  function peg$parsenumber() {
1321
- var s0;
1473
+ var s0, s1;
1322
1474
 
1475
+ peg$silentFails++;
1323
1476
  s0 = peg$parsefloat();
1324
1477
  if (s0 === peg$FAILED) {
1325
1478
  s0 = peg$parseinteger();
1326
1479
  }
1480
+ peg$silentFails--;
1481
+ if (s0 === peg$FAILED) {
1482
+ s1 = peg$FAILED;
1483
+ if (peg$silentFails === 0) { peg$fail(peg$e39); }
1484
+ }
1327
1485
 
1328
1486
  return s0;
1329
1487
  }
@@ -1331,13 +1489,14 @@ function peg$parse(input, options) {
1331
1489
  function peg$parseobject() {
1332
1490
  var s0, s1, s2, s3, s4;
1333
1491
 
1492
+ peg$silentFails++;
1334
1493
  s0 = peg$currPos;
1335
1494
  if (input.charCodeAt(peg$currPos) === 123) {
1336
1495
  s1 = peg$c14;
1337
1496
  peg$currPos++;
1338
1497
  } else {
1339
1498
  s1 = peg$FAILED;
1340
- if (peg$silentFails === 0) { peg$fail(peg$e20); }
1499
+ if (peg$silentFails === 0) { peg$fail(peg$e41); }
1341
1500
  }
1342
1501
  if (s1 !== peg$FAILED) {
1343
1502
  s2 = peg$parse__();
@@ -1350,7 +1509,7 @@ function peg$parse(input, options) {
1350
1509
  peg$currPos++;
1351
1510
  } else {
1352
1511
  s4 = peg$FAILED;
1353
- if (peg$silentFails === 0) { peg$fail(peg$e21); }
1512
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
1354
1513
  }
1355
1514
  if (s4 !== peg$FAILED) {
1356
1515
  peg$savedPos = s0;
@@ -1363,6 +1522,11 @@ function peg$parse(input, options) {
1363
1522
  peg$currPos = s0;
1364
1523
  s0 = peg$FAILED;
1365
1524
  }
1525
+ peg$silentFails--;
1526
+ if (s0 === peg$FAILED) {
1527
+ s1 = peg$FAILED;
1528
+ if (peg$silentFails === 0) { peg$fail(peg$e40); }
1529
+ }
1366
1530
 
1367
1531
  return s0;
1368
1532
  }
@@ -1423,6 +1587,7 @@ function peg$parse(input, options) {
1423
1587
  function peg$parseobjectProperty() {
1424
1588
  var s0, s1, s2, s3, s4, s5;
1425
1589
 
1590
+ peg$silentFails++;
1426
1591
  s0 = peg$currPos;
1427
1592
  s1 = peg$parseidentifier();
1428
1593
  if (s1 !== peg$FAILED) {
@@ -1432,7 +1597,7 @@ function peg$parse(input, options) {
1432
1597
  peg$currPos++;
1433
1598
  } else {
1434
1599
  s3 = peg$FAILED;
1435
- if (peg$silentFails === 0) { peg$fail(peg$e14); }
1600
+ if (peg$silentFails === 0) { peg$fail(peg$e29); }
1436
1601
  }
1437
1602
  if (s3 !== peg$FAILED) {
1438
1603
  s4 = peg$parse__();
@@ -1451,6 +1616,11 @@ function peg$parse(input, options) {
1451
1616
  peg$currPos = s0;
1452
1617
  s0 = peg$FAILED;
1453
1618
  }
1619
+ peg$silentFails--;
1620
+ if (s0 === peg$FAILED) {
1621
+ s1 = peg$FAILED;
1622
+ if (peg$silentFails === 0) { peg$fail(peg$e43); }
1623
+ }
1454
1624
 
1455
1625
  return s0;
1456
1626
  }
@@ -1475,13 +1645,14 @@ function peg$parse(input, options) {
1475
1645
  function peg$parseparensArgs() {
1476
1646
  var s0, s1, s2, s3, s4;
1477
1647
 
1648
+ peg$silentFails++;
1478
1649
  s0 = peg$currPos;
1479
1650
  if (input.charCodeAt(peg$currPos) === 40) {
1480
1651
  s1 = peg$c7;
1481
1652
  peg$currPos++;
1482
1653
  } else {
1483
1654
  s1 = peg$FAILED;
1484
- if (peg$silentFails === 0) { peg$fail(peg$e11); }
1655
+ if (peg$silentFails === 0) { peg$fail(peg$e23); }
1485
1656
  }
1486
1657
  if (s1 !== peg$FAILED) {
1487
1658
  s2 = peg$parse__();
@@ -1494,7 +1665,7 @@ function peg$parse(input, options) {
1494
1665
  peg$currPos++;
1495
1666
  } else {
1496
1667
  s4 = peg$FAILED;
1497
- if (peg$silentFails === 0) { peg$fail(peg$e12); }
1668
+ if (peg$silentFails === 0) { peg$fail(peg$e24); }
1498
1669
  }
1499
1670
  if (s4 !== peg$FAILED) {
1500
1671
  peg$savedPos = s0;
@@ -1507,6 +1678,11 @@ function peg$parse(input, options) {
1507
1678
  peg$currPos = s0;
1508
1679
  s0 = peg$FAILED;
1509
1680
  }
1681
+ peg$silentFails--;
1682
+ if (s0 === peg$FAILED) {
1683
+ s1 = peg$FAILED;
1684
+ if (peg$silentFails === 0) { peg$fail(peg$e44); }
1685
+ }
1510
1686
 
1511
1687
  return s0;
1512
1688
  }
@@ -1521,7 +1697,7 @@ function peg$parse(input, options) {
1521
1697
  peg$currPos++;
1522
1698
  } else {
1523
1699
  s2 = peg$FAILED;
1524
- if (peg$silentFails === 0) { peg$fail(peg$e22); }
1700
+ if (peg$silentFails === 0) { peg$fail(peg$e45); }
1525
1701
  }
1526
1702
  if (s2 !== peg$FAILED) {
1527
1703
  s3 = peg$parse__();
@@ -1546,7 +1722,7 @@ function peg$parse(input, options) {
1546
1722
  peg$currPos++;
1547
1723
  } else {
1548
1724
  s0 = peg$FAILED;
1549
- if (peg$silentFails === 0) { peg$fail(peg$e23); }
1725
+ if (peg$silentFails === 0) { peg$fail(peg$e46); }
1550
1726
  }
1551
1727
 
1552
1728
  return s0;
@@ -1555,6 +1731,7 @@ function peg$parse(input, options) {
1555
1731
  function peg$parsepath() {
1556
1732
  var s0, s1, s2, s3;
1557
1733
 
1734
+ peg$silentFails++;
1558
1735
  s0 = peg$currPos;
1559
1736
  s1 = peg$parsepathKey();
1560
1737
  if (input.charCodeAt(peg$currPos) === 47) {
@@ -1562,7 +1739,7 @@ function peg$parse(input, options) {
1562
1739
  peg$currPos++;
1563
1740
  } else {
1564
1741
  s2 = peg$FAILED;
1565
- if (peg$silentFails === 0) { peg$fail(peg$e16); }
1742
+ if (peg$silentFails === 0) { peg$fail(peg$e34); }
1566
1743
  }
1567
1744
  if (s2 !== peg$FAILED) {
1568
1745
  s3 = peg$parsepath();
@@ -1584,6 +1761,11 @@ function peg$parse(input, options) {
1584
1761
  s1 = peg$f20(s1);
1585
1762
  s0 = s1;
1586
1763
  }
1764
+ peg$silentFails--;
1765
+ if (s0 === peg$FAILED) {
1766
+ s1 = peg$FAILED;
1767
+ if (peg$silentFails === 0) { peg$fail(peg$e47); }
1768
+ }
1587
1769
 
1588
1770
  return s0;
1589
1771
  }
@@ -1591,6 +1773,7 @@ function peg$parse(input, options) {
1591
1773
  function peg$parsepathKey() {
1592
1774
  var s0, s1, s2;
1593
1775
 
1776
+ peg$silentFails++;
1594
1777
  s0 = peg$currPos;
1595
1778
  s1 = [];
1596
1779
  s2 = peg$parseidentifierChar();
@@ -1601,6 +1784,9 @@ function peg$parse(input, options) {
1601
1784
  peg$savedPos = s0;
1602
1785
  s1 = peg$f21(s1);
1603
1786
  s0 = s1;
1787
+ peg$silentFails--;
1788
+ s1 = peg$FAILED;
1789
+ if (peg$silentFails === 0) { peg$fail(peg$e48); }
1604
1790
 
1605
1791
  return s0;
1606
1792
  }
@@ -1608,6 +1794,7 @@ function peg$parse(input, options) {
1608
1794
  function peg$parseprotocolCall() {
1609
1795
  var s0, s1, s2, s3, s4, s5;
1610
1796
 
1797
+ peg$silentFails++;
1611
1798
  s0 = peg$currPos;
1612
1799
  s1 = peg$parseprotocol();
1613
1800
  if (s1 !== peg$FAILED) {
@@ -1616,7 +1803,7 @@ function peg$parse(input, options) {
1616
1803
  peg$currPos++;
1617
1804
  } else {
1618
1805
  s2 = peg$FAILED;
1619
- if (peg$silentFails === 0) { peg$fail(peg$e14); }
1806
+ if (peg$silentFails === 0) { peg$fail(peg$e29); }
1620
1807
  }
1621
1808
  if (s2 !== peg$FAILED) {
1622
1809
  s3 = [];
@@ -1625,7 +1812,7 @@ function peg$parse(input, options) {
1625
1812
  peg$currPos++;
1626
1813
  } else {
1627
1814
  s4 = peg$FAILED;
1628
- if (peg$silentFails === 0) { peg$fail(peg$e16); }
1815
+ if (peg$silentFails === 0) { peg$fail(peg$e34); }
1629
1816
  }
1630
1817
  while (s4 !== peg$FAILED) {
1631
1818
  s3.push(s4);
@@ -1637,7 +1824,7 @@ function peg$parse(input, options) {
1637
1824
  peg$currPos++;
1638
1825
  } else {
1639
1826
  s4 = peg$FAILED;
1640
- if (peg$silentFails === 0) { peg$fail(peg$e16); }
1827
+ if (peg$silentFails === 0) { peg$fail(peg$e34); }
1641
1828
  }
1642
1829
  }
1643
1830
  }
@@ -1661,17 +1848,28 @@ function peg$parse(input, options) {
1661
1848
  peg$currPos = s0;
1662
1849
  s0 = peg$FAILED;
1663
1850
  }
1851
+ peg$silentFails--;
1852
+ if (s0 === peg$FAILED) {
1853
+ s1 = peg$FAILED;
1854
+ if (peg$silentFails === 0) { peg$fail(peg$e49); }
1855
+ }
1664
1856
 
1665
1857
  return s0;
1666
1858
  }
1667
1859
 
1668
1860
  function peg$parseprotocol() {
1669
- var s0;
1861
+ var s0, s1;
1670
1862
 
1863
+ peg$silentFails++;
1671
1864
  s0 = peg$parsereservedProtocol();
1672
1865
  if (s0 === peg$FAILED) {
1673
1866
  s0 = peg$parsescopeReference();
1674
1867
  }
1868
+ peg$silentFails--;
1869
+ if (s0 === peg$FAILED) {
1870
+ s1 = peg$FAILED;
1871
+ if (peg$silentFails === 0) { peg$fail(peg$e50); }
1872
+ }
1675
1873
 
1676
1874
  return s0;
1677
1875
  }
@@ -1679,13 +1877,14 @@ function peg$parse(input, options) {
1679
1877
  function peg$parsereservedProtocol() {
1680
1878
  var s0, s1;
1681
1879
 
1880
+ peg$silentFails++;
1682
1881
  s0 = peg$currPos;
1683
1882
  if (input.substr(peg$currPos, 5) === peg$c17) {
1684
1883
  s1 = peg$c17;
1685
1884
  peg$currPos += 5;
1686
1885
  } else {
1687
1886
  s1 = peg$FAILED;
1688
- if (peg$silentFails === 0) { peg$fail(peg$e24); }
1887
+ if (peg$silentFails === 0) { peg$fail(peg$e52); }
1689
1888
  }
1690
1889
  if (s1 !== peg$FAILED) {
1691
1890
  peg$savedPos = s0;
@@ -1699,7 +1898,7 @@ function peg$parse(input, options) {
1699
1898
  peg$currPos += 4;
1700
1899
  } else {
1701
1900
  s1 = peg$FAILED;
1702
- if (peg$silentFails === 0) { peg$fail(peg$e25); }
1901
+ if (peg$silentFails === 0) { peg$fail(peg$e53); }
1703
1902
  }
1704
1903
  if (s1 !== peg$FAILED) {
1705
1904
  peg$savedPos = s0;
@@ -1708,12 +1907,12 @@ function peg$parse(input, options) {
1708
1907
  s0 = s1;
1709
1908
  if (s0 === peg$FAILED) {
1710
1909
  s0 = peg$currPos;
1711
- if (input.substr(peg$currPos, 9) === peg$c19) {
1910
+ if (input.substr(peg$currPos, 7) === peg$c19) {
1712
1911
  s1 = peg$c19;
1713
- peg$currPos += 9;
1912
+ peg$currPos += 7;
1714
1913
  } else {
1715
1914
  s1 = peg$FAILED;
1716
- if (peg$silentFails === 0) { peg$fail(peg$e26); }
1915
+ if (peg$silentFails === 0) { peg$fail(peg$e54); }
1717
1916
  }
1718
1917
  if (s1 !== peg$FAILED) {
1719
1918
  peg$savedPos = s0;
@@ -1722,12 +1921,12 @@ function peg$parse(input, options) {
1722
1921
  s0 = s1;
1723
1922
  if (s0 === peg$FAILED) {
1724
1923
  s0 = peg$currPos;
1725
- if (input.substr(peg$currPos, 8) === peg$c20) {
1924
+ if (input.substr(peg$currPos, 9) === peg$c20) {
1726
1925
  s1 = peg$c20;
1727
- peg$currPos += 8;
1926
+ peg$currPos += 9;
1728
1927
  } else {
1729
1928
  s1 = peg$FAILED;
1730
- if (peg$silentFails === 0) { peg$fail(peg$e27); }
1929
+ if (peg$silentFails === 0) { peg$fail(peg$e55); }
1731
1930
  }
1732
1931
  if (s1 !== peg$FAILED) {
1733
1932
  peg$savedPos = s0;
@@ -1736,22 +1935,42 @@ function peg$parse(input, options) {
1736
1935
  s0 = s1;
1737
1936
  if (s0 === peg$FAILED) {
1738
1937
  s0 = peg$currPos;
1739
- if (input.substr(peg$currPos, 4) === peg$c21) {
1938
+ if (input.substr(peg$currPos, 8) === peg$c21) {
1740
1939
  s1 = peg$c21;
1741
- peg$currPos += 4;
1940
+ peg$currPos += 8;
1742
1941
  } else {
1743
1942
  s1 = peg$FAILED;
1744
- if (peg$silentFails === 0) { peg$fail(peg$e28); }
1943
+ if (peg$silentFails === 0) { peg$fail(peg$e56); }
1745
1944
  }
1746
1945
  if (s1 !== peg$FAILED) {
1747
1946
  peg$savedPos = s0;
1748
1947
  s1 = peg$f27();
1749
1948
  }
1750
1949
  s0 = s1;
1950
+ if (s0 === peg$FAILED) {
1951
+ s0 = peg$currPos;
1952
+ if (input.substr(peg$currPos, 4) === peg$c22) {
1953
+ s1 = peg$c22;
1954
+ peg$currPos += 4;
1955
+ } else {
1956
+ s1 = peg$FAILED;
1957
+ if (peg$silentFails === 0) { peg$fail(peg$e57); }
1958
+ }
1959
+ if (s1 !== peg$FAILED) {
1960
+ peg$savedPos = s0;
1961
+ s1 = peg$f28();
1962
+ }
1963
+ s0 = s1;
1964
+ }
1751
1965
  }
1752
1966
  }
1753
1967
  }
1754
1968
  }
1969
+ peg$silentFails--;
1970
+ if (s0 === peg$FAILED) {
1971
+ s1 = peg$FAILED;
1972
+ if (peg$silentFails === 0) { peg$fail(peg$e51); }
1973
+ }
1755
1974
 
1756
1975
  return s0;
1757
1976
  }
@@ -1759,13 +1978,19 @@ function peg$parse(input, options) {
1759
1978
  function peg$parsescopeReference() {
1760
1979
  var s0, s1;
1761
1980
 
1981
+ peg$silentFails++;
1762
1982
  s0 = peg$currPos;
1763
1983
  s1 = peg$parseidentifier();
1764
1984
  if (s1 !== peg$FAILED) {
1765
1985
  peg$savedPos = s0;
1766
- s1 = peg$f28(s1);
1986
+ s1 = peg$f29(s1);
1767
1987
  }
1768
1988
  s0 = s1;
1989
+ peg$silentFails--;
1990
+ if (s0 === peg$FAILED) {
1991
+ s1 = peg$FAILED;
1992
+ if (peg$silentFails === 0) { peg$fail(peg$e58); }
1993
+ }
1769
1994
 
1770
1995
  return s0;
1771
1996
  }
@@ -1773,13 +1998,14 @@ function peg$parse(input, options) {
1773
1998
  function peg$parsesingleQuoteString() {
1774
1999
  var s0, s1, s2, s3;
1775
2000
 
2001
+ peg$silentFails++;
1776
2002
  s0 = peg$currPos;
1777
2003
  if (input.charCodeAt(peg$currPos) === 39) {
1778
- s1 = peg$c22;
2004
+ s1 = peg$c23;
1779
2005
  peg$currPos++;
1780
2006
  } else {
1781
2007
  s1 = peg$FAILED;
1782
- if (peg$silentFails === 0) { peg$fail(peg$e29); }
2008
+ if (peg$silentFails === 0) { peg$fail(peg$e60); }
1783
2009
  }
1784
2010
  if (s1 !== peg$FAILED) {
1785
2011
  s2 = [];
@@ -1789,15 +2015,15 @@ function peg$parse(input, options) {
1789
2015
  s3 = peg$parsesingleQuoteStringChar();
1790
2016
  }
1791
2017
  if (input.charCodeAt(peg$currPos) === 39) {
1792
- s3 = peg$c22;
2018
+ s3 = peg$c23;
1793
2019
  peg$currPos++;
1794
2020
  } else {
1795
2021
  s3 = peg$FAILED;
1796
- if (peg$silentFails === 0) { peg$fail(peg$e29); }
2022
+ if (peg$silentFails === 0) { peg$fail(peg$e60); }
1797
2023
  }
1798
2024
  if (s3 !== peg$FAILED) {
1799
2025
  peg$savedPos = s0;
1800
- s0 = peg$f29(s2);
2026
+ s0 = peg$f30(s2);
1801
2027
  } else {
1802
2028
  peg$currPos = s0;
1803
2029
  s0 = peg$FAILED;
@@ -1806,6 +2032,11 @@ function peg$parse(input, options) {
1806
2032
  peg$currPos = s0;
1807
2033
  s0 = peg$FAILED;
1808
2034
  }
2035
+ peg$silentFails--;
2036
+ if (s0 === peg$FAILED) {
2037
+ s1 = peg$FAILED;
2038
+ if (peg$silentFails === 0) { peg$fail(peg$e59); }
2039
+ }
1809
2040
 
1810
2041
  return s0;
1811
2042
  }
@@ -1817,11 +2048,11 @@ function peg$parse(input, options) {
1817
2048
  s1 = peg$currPos;
1818
2049
  peg$silentFails++;
1819
2050
  if (input.charCodeAt(peg$currPos) === 39) {
1820
- s2 = peg$c22;
2051
+ s2 = peg$c23;
1821
2052
  peg$currPos++;
1822
2053
  } else {
1823
2054
  s2 = peg$FAILED;
1824
- if (peg$silentFails === 0) { peg$fail(peg$e29); }
2055
+ if (peg$silentFails === 0) { peg$fail(peg$e60); }
1825
2056
  }
1826
2057
  if (s2 === peg$FAILED) {
1827
2058
  s2 = peg$parsenewLine();
@@ -1858,12 +2089,18 @@ function peg$parse(input, options) {
1858
2089
  }
1859
2090
 
1860
2091
  function peg$parsestring() {
1861
- var s0;
2092
+ var s0, s1;
1862
2093
 
2094
+ peg$silentFails++;
1863
2095
  s0 = peg$parsedoubleQuoteString();
1864
2096
  if (s0 === peg$FAILED) {
1865
2097
  s0 = peg$parsesingleQuoteString();
1866
2098
  }
2099
+ peg$silentFails--;
2100
+ if (s0 === peg$FAILED) {
2101
+ s1 = peg$FAILED;
2102
+ if (peg$silentFails === 0) { peg$fail(peg$e61); }
2103
+ }
1867
2104
 
1868
2105
  return s0;
1869
2106
  }
@@ -1875,11 +2112,11 @@ function peg$parse(input, options) {
1875
2112
  s0 = peg$currPos;
1876
2113
  s1 = peg$parsetemplateDocumentContents();
1877
2114
  peg$savedPos = s0;
1878
- s1 = peg$f30(s1);
2115
+ s1 = peg$f31(s1);
1879
2116
  s0 = s1;
1880
2117
  peg$silentFails--;
1881
2118
  s1 = peg$FAILED;
1882
- if (peg$silentFails === 0) { peg$fail(peg$e30); }
2119
+ if (peg$silentFails === 0) { peg$fail(peg$e62); }
1883
2120
 
1884
2121
  return s0;
1885
2122
  }
@@ -1890,12 +2127,12 @@ function peg$parse(input, options) {
1890
2127
  s0 = peg$currPos;
1891
2128
  s1 = peg$currPos;
1892
2129
  peg$silentFails++;
1893
- if (input.substr(peg$currPos, 2) === peg$c23) {
1894
- s2 = peg$c23;
2130
+ if (input.substr(peg$currPos, 2) === peg$c24) {
2131
+ s2 = peg$c24;
1895
2132
  peg$currPos += 2;
1896
2133
  } else {
1897
2134
  s2 = peg$FAILED;
1898
- if (peg$silentFails === 0) { peg$fail(peg$e31); }
2135
+ if (peg$silentFails === 0) { peg$fail(peg$e63); }
1899
2136
  }
1900
2137
  peg$silentFails--;
1901
2138
  if (s2 === peg$FAILED) {
@@ -1937,7 +2174,7 @@ function peg$parse(input, options) {
1937
2174
  }
1938
2175
  }
1939
2176
  peg$savedPos = s0;
1940
- s1 = peg$f31(s1);
2177
+ s1 = peg$f32(s1);
1941
2178
  s0 = s1;
1942
2179
 
1943
2180
  return s0;
@@ -1946,6 +2183,7 @@ function peg$parse(input, options) {
1946
2183
  function peg$parsetemplateDocumentText() {
1947
2184
  var s0, s1, s2;
1948
2185
 
2186
+ peg$silentFails++;
1949
2187
  s0 = peg$currPos;
1950
2188
  s1 = [];
1951
2189
  s2 = peg$parsetemplateDocumentChar();
@@ -1959,9 +2197,14 @@ function peg$parse(input, options) {
1959
2197
  }
1960
2198
  if (s1 !== peg$FAILED) {
1961
2199
  peg$savedPos = s0;
1962
- s1 = peg$f32(s1);
2200
+ s1 = peg$f33(s1);
1963
2201
  }
1964
2202
  s0 = s1;
2203
+ peg$silentFails--;
2204
+ if (s0 === peg$FAILED) {
2205
+ s1 = peg$FAILED;
2206
+ if (peg$silentFails === 0) { peg$fail(peg$e64); }
2207
+ }
1965
2208
 
1966
2209
  return s0;
1967
2210
  }
@@ -1969,22 +2212,23 @@ function peg$parse(input, options) {
1969
2212
  function peg$parsetemplateLiteral() {
1970
2213
  var s0, s1, s2, s3;
1971
2214
 
2215
+ peg$silentFails++;
1972
2216
  s0 = peg$currPos;
1973
2217
  if (input.charCodeAt(peg$currPos) === 96) {
1974
- s1 = peg$c24;
2218
+ s1 = peg$c25;
1975
2219
  peg$currPos++;
1976
2220
  } else {
1977
2221
  s1 = peg$FAILED;
1978
- if (peg$silentFails === 0) { peg$fail(peg$e32); }
2222
+ if (peg$silentFails === 0) { peg$fail(peg$e66); }
1979
2223
  }
1980
2224
  if (s1 !== peg$FAILED) {
1981
2225
  s2 = peg$parsetemplateLiteralContents();
1982
2226
  if (input.charCodeAt(peg$currPos) === 96) {
1983
- s3 = peg$c24;
2227
+ s3 = peg$c25;
1984
2228
  peg$currPos++;
1985
2229
  } else {
1986
2230
  s3 = peg$FAILED;
1987
- if (peg$silentFails === 0) { peg$fail(peg$e32); }
2231
+ if (peg$silentFails === 0) { peg$fail(peg$e66); }
1988
2232
  }
1989
2233
  if (s3 !== peg$FAILED) {
1990
2234
  s0 = s2;
@@ -1996,6 +2240,11 @@ function peg$parse(input, options) {
1996
2240
  peg$currPos = s0;
1997
2241
  s0 = peg$FAILED;
1998
2242
  }
2243
+ peg$silentFails--;
2244
+ if (s0 === peg$FAILED) {
2245
+ s1 = peg$FAILED;
2246
+ if (peg$silentFails === 0) { peg$fail(peg$e65); }
2247
+ }
1999
2248
 
2000
2249
  return s0;
2001
2250
  }
@@ -2007,19 +2256,19 @@ function peg$parse(input, options) {
2007
2256
  s1 = peg$currPos;
2008
2257
  peg$silentFails++;
2009
2258
  if (input.charCodeAt(peg$currPos) === 96) {
2010
- s2 = peg$c24;
2259
+ s2 = peg$c25;
2011
2260
  peg$currPos++;
2012
2261
  } else {
2013
2262
  s2 = peg$FAILED;
2014
- if (peg$silentFails === 0) { peg$fail(peg$e32); }
2263
+ if (peg$silentFails === 0) { peg$fail(peg$e66); }
2015
2264
  }
2016
2265
  if (s2 === peg$FAILED) {
2017
- if (input.substr(peg$currPos, 2) === peg$c23) {
2018
- s2 = peg$c23;
2266
+ if (input.substr(peg$currPos, 2) === peg$c24) {
2267
+ s2 = peg$c24;
2019
2268
  peg$currPos += 2;
2020
2269
  } else {
2021
2270
  s2 = peg$FAILED;
2022
- if (peg$silentFails === 0) { peg$fail(peg$e31); }
2271
+ if (peg$silentFails === 0) { peg$fail(peg$e63); }
2023
2272
  }
2024
2273
  }
2025
2274
  peg$silentFails--;
@@ -2062,7 +2311,7 @@ function peg$parse(input, options) {
2062
2311
  }
2063
2312
  }
2064
2313
  peg$savedPos = s0;
2065
- s1 = peg$f33(s1);
2314
+ s1 = peg$f34(s1);
2066
2315
  s0 = s1;
2067
2316
 
2068
2317
  return s0;
@@ -2084,7 +2333,7 @@ function peg$parse(input, options) {
2084
2333
  }
2085
2334
  if (s1 !== peg$FAILED) {
2086
2335
  peg$savedPos = s0;
2087
- s1 = peg$f34(s1);
2336
+ s1 = peg$f35(s1);
2088
2337
  }
2089
2338
  s0 = s1;
2090
2339
 
@@ -2094,23 +2343,24 @@ function peg$parse(input, options) {
2094
2343
  function peg$parsetemplateSubstitution() {
2095
2344
  var s0, s1, s2, s3;
2096
2345
 
2346
+ peg$silentFails++;
2097
2347
  s0 = peg$currPos;
2098
- if (input.substr(peg$currPos, 2) === peg$c23) {
2099
- s1 = peg$c23;
2348
+ if (input.substr(peg$currPos, 2) === peg$c24) {
2349
+ s1 = peg$c24;
2100
2350
  peg$currPos += 2;
2101
2351
  } else {
2102
2352
  s1 = peg$FAILED;
2103
- if (peg$silentFails === 0) { peg$fail(peg$e31); }
2353
+ if (peg$silentFails === 0) { peg$fail(peg$e63); }
2104
2354
  }
2105
2355
  if (s1 !== peg$FAILED) {
2106
2356
  s2 = peg$parseexpression();
2107
2357
  if (s2 !== peg$FAILED) {
2108
- if (input.substr(peg$currPos, 2) === peg$c25) {
2109
- s3 = peg$c25;
2358
+ if (input.substr(peg$currPos, 2) === peg$c26) {
2359
+ s3 = peg$c26;
2110
2360
  peg$currPos += 2;
2111
2361
  } else {
2112
2362
  s3 = peg$FAILED;
2113
- if (peg$silentFails === 0) { peg$fail(peg$e33); }
2363
+ if (peg$silentFails === 0) { peg$fail(peg$e68); }
2114
2364
  }
2115
2365
  if (s3 !== peg$FAILED) {
2116
2366
  s0 = s2;
@@ -2126,6 +2376,11 @@ function peg$parse(input, options) {
2126
2376
  peg$currPos = s0;
2127
2377
  s0 = peg$FAILED;
2128
2378
  }
2379
+ peg$silentFails--;
2380
+ if (s0 === peg$FAILED) {
2381
+ s1 = peg$FAILED;
2382
+ if (peg$silentFails === 0) { peg$fail(peg$e67); }
2383
+ }
2129
2384
 
2130
2385
  return s0;
2131
2386
  }
@@ -2140,7 +2395,7 @@ function peg$parse(input, options) {
2140
2395
  peg$currPos++;
2141
2396
  } else {
2142
2397
  s0 = peg$FAILED;
2143
- if (peg$silentFails === 0) { peg$fail(peg$e8); }
2398
+ if (peg$silentFails === 0) { peg$fail(peg$e16); }
2144
2399
  }
2145
2400
  }
2146
2401
 
@@ -2150,13 +2405,14 @@ function peg$parse(input, options) {
2150
2405
  function peg$parsetree() {
2151
2406
  var s0, s1, s2, s3, s4;
2152
2407
 
2408
+ peg$silentFails++;
2153
2409
  s0 = peg$currPos;
2154
2410
  if (input.charCodeAt(peg$currPos) === 123) {
2155
2411
  s1 = peg$c14;
2156
2412
  peg$currPos++;
2157
2413
  } else {
2158
2414
  s1 = peg$FAILED;
2159
- if (peg$silentFails === 0) { peg$fail(peg$e20); }
2415
+ if (peg$silentFails === 0) { peg$fail(peg$e41); }
2160
2416
  }
2161
2417
  if (s1 !== peg$FAILED) {
2162
2418
  s2 = peg$parse__();
@@ -2169,11 +2425,11 @@ function peg$parse(input, options) {
2169
2425
  peg$currPos++;
2170
2426
  } else {
2171
2427
  s4 = peg$FAILED;
2172
- if (peg$silentFails === 0) { peg$fail(peg$e21); }
2428
+ if (peg$silentFails === 0) { peg$fail(peg$e42); }
2173
2429
  }
2174
2430
  if (s4 !== peg$FAILED) {
2175
2431
  peg$savedPos = s0;
2176
- s0 = peg$f35(s3);
2432
+ s0 = peg$f36(s3);
2177
2433
  } else {
2178
2434
  peg$currPos = s0;
2179
2435
  s0 = peg$FAILED;
@@ -2182,6 +2438,11 @@ function peg$parse(input, options) {
2182
2438
  peg$currPos = s0;
2183
2439
  s0 = peg$FAILED;
2184
2440
  }
2441
+ peg$silentFails--;
2442
+ if (s0 === peg$FAILED) {
2443
+ s1 = peg$FAILED;
2444
+ if (peg$silentFails === 0) { peg$fail(peg$e69); }
2445
+ }
2185
2446
 
2186
2447
  return s0;
2187
2448
  }
@@ -2230,7 +2491,7 @@ function peg$parse(input, options) {
2230
2491
  }
2231
2492
  s4 = peg$parse__();
2232
2493
  peg$savedPos = s0;
2233
- s0 = peg$f36(s1, s2);
2494
+ s0 = peg$f37(s1, s2);
2234
2495
  } else {
2235
2496
  peg$currPos = s0;
2236
2497
  s0 = peg$FAILED;