@malloydata/malloy-filter 0.0.422 → 0.0.423
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/dist/boolean_filter_expression.js +4 -1
- package/dist/boolean_filter_expression.js.map +1 -1
- package/dist/clause_utils.js +4 -1
- package/dist/clause_utils.js.map +1 -1
- package/dist/filter_interface.d.ts +6 -4
- package/dist/filter_interface.js +4 -1
- package/dist/filter_interface.js.map +1 -1
- package/dist/lib/fexpr_number_parser.js +283 -231
- package/dist/lib/fexpr_number_parser.js.map +1 -1
- package/dist/lib/ftemporal_parser.js +305 -253
- package/dist/lib/ftemporal_parser.js.map +1 -1
- package/dist/number_filter_expression.js +3 -0
- package/dist/number_filter_expression.js.map +1 -1
- package/dist/string_filter_expression.js +2 -0
- package/dist/string_filter_expression.js.map +1 -1
- package/dist/temporal_filter_expression.js +3 -1
- package/dist/temporal_filter_expression.js.map +1 -1
- package/package.json +1 -1
- package/src/boolean_filter_expression.ts +3 -1
- package/src/clause_utils.ts +4 -1
- package/src/filter_interface.ts +13 -2
- package/src/grammars/fexpr_number.peggy +2 -0
- package/src/grammars/ftemporal.peggy +2 -0
- package/src/lib/fexpr_number_parser.js +252 -203
- package/src/lib/ftemporal_parser.js +291 -242
- package/src/number_filter_expression.ts +3 -0
- package/src/string_filter_expression.ts +2 -0
- package/src/temporal_filter_expression.ts +6 -1
|
@@ -165,9 +165,10 @@ function peg$parse(input, options) {
|
|
|
165
165
|
var peg$c10 = ".";
|
|
166
166
|
var peg$c11 = "not";
|
|
167
167
|
var peg$c12 = "null";
|
|
168
|
-
var peg$c13 = "
|
|
169
|
-
var peg$c14 = "
|
|
170
|
-
var peg$c15 = "
|
|
168
|
+
var peg$c13 = "none";
|
|
169
|
+
var peg$c14 = "and";
|
|
170
|
+
var peg$c15 = "or";
|
|
171
|
+
var peg$c16 = "to";
|
|
171
172
|
var peg$r0 = /^[<>]/;
|
|
172
173
|
var peg$r1 = /^[0-9]/;
|
|
173
174
|
var peg$r2 = /^[Ee]/;
|
|
@@ -191,32 +192,34 @@ function peg$parse(input, options) {
|
|
|
191
192
|
var peg$e14 = peg$classExpectation(["+", "-"], false, false);
|
|
192
193
|
var peg$e15 = peg$literalExpectation("not", true);
|
|
193
194
|
var peg$e16 = peg$literalExpectation("null", true);
|
|
194
|
-
var peg$e17 = peg$literalExpectation("
|
|
195
|
-
var peg$e18 = peg$literalExpectation("
|
|
196
|
-
var peg$e19 = peg$literalExpectation("
|
|
197
|
-
var peg$e20 = peg$
|
|
198
|
-
var peg$e21 = peg$
|
|
199
|
-
var peg$e22 = peg$
|
|
195
|
+
var peg$e17 = peg$literalExpectation("none", true);
|
|
196
|
+
var peg$e18 = peg$literalExpectation("and", true);
|
|
197
|
+
var peg$e19 = peg$literalExpectation("or", true);
|
|
198
|
+
var peg$e20 = peg$literalExpectation("to", true);
|
|
199
|
+
var peg$e21 = peg$classExpectation([["a", "z"], ["A", "Z"]], false, false);
|
|
200
|
+
var peg$e22 = peg$otherExpectation("whitespace");
|
|
201
|
+
var peg$e23 = peg$classExpectation([" ", "\t"], false, false);
|
|
200
202
|
var peg$f0 = function (head, tail) {
|
|
201
203
|
return tail.reduce((left, [, cop, , right]) => joinNumbers(left, cop, right), head);
|
|
202
204
|
};
|
|
203
205
|
var peg$f1 = function (not, clause) { return numNot(clause, not); };
|
|
204
206
|
var peg$f2 = function (clause) { return clause; };
|
|
205
207
|
var peg$f3 = function () { return { operator: 'null' }; };
|
|
206
|
-
var peg$f4 = function (
|
|
207
|
-
var peg$f5 = function (
|
|
208
|
-
var peg$f6 = function (
|
|
209
|
-
var peg$f7 = function (n, nList) { return { operator: '
|
|
210
|
-
var peg$f8 = function (
|
|
211
|
-
var peg$f9 = function (
|
|
212
|
-
var peg$f10 = function () { return
|
|
213
|
-
var peg$f11 = function () { return "
|
|
214
|
-
var peg$f12 = function () { return "
|
|
215
|
-
var peg$f13 = function () { return "
|
|
216
|
-
var peg$f14 = function (
|
|
217
|
-
var peg$f15 = function () { return
|
|
218
|
-
var peg$f16 = function () { return "
|
|
219
|
-
var peg$f17 = function () { return "
|
|
208
|
+
var peg$f4 = function () { return { operator: 'none' }; };
|
|
209
|
+
var peg$f5 = function (expr) { return { operator: "()", expr }; };
|
|
210
|
+
var peg$f6 = function (open, b, e, close) { return mkRange(open, b, e, close); };
|
|
211
|
+
var peg$f7 = function (n, nList) { return { operator: '!=', ...mkValues(n, nList.map(x => x[3])) }; };
|
|
212
|
+
var peg$f8 = function (n, nList) { return { operator: '=', ...mkValues(n, nList.map(x => x[3])) }; };
|
|
213
|
+
var peg$f9 = function (op, n) { return { operator: op, values: [n] }; };
|
|
214
|
+
var peg$f10 = function (n, nList) { return { operator: '=', ...mkValues(n, nList.map(x => x[3])) }; };
|
|
215
|
+
var peg$f11 = function () { return "["; };
|
|
216
|
+
var peg$f12 = function () { return "("; };
|
|
217
|
+
var peg$f13 = function () { return "]"; };
|
|
218
|
+
var peg$f14 = function () { return ")"; };
|
|
219
|
+
var peg$f15 = function (n) { return n; };
|
|
220
|
+
var peg$f16 = function () { return "or"; };
|
|
221
|
+
var peg$f17 = function () { return "and"; };
|
|
222
|
+
var peg$f18 = function () { return "not"; };
|
|
220
223
|
var peg$currPos = options.peg$currPos | 0;
|
|
221
224
|
var peg$savedPos = peg$currPos;
|
|
222
225
|
var peg$posDetailsCache = [{ line: 1, column: 1 }];
|
|
@@ -442,78 +445,43 @@ function peg$parse(input, options) {
|
|
|
442
445
|
s0 = s1;
|
|
443
446
|
if (s0 === peg$FAILED) {
|
|
444
447
|
s0 = peg$currPos;
|
|
445
|
-
|
|
446
|
-
s1 = peg$c0;
|
|
447
|
-
peg$currPos++;
|
|
448
|
-
}
|
|
449
|
-
else {
|
|
450
|
-
s1 = peg$FAILED;
|
|
451
|
-
if (peg$silentFails === 0) {
|
|
452
|
-
peg$fail(peg$e0);
|
|
453
|
-
}
|
|
454
|
-
}
|
|
448
|
+
s1 = peg$parseNONE();
|
|
455
449
|
if (s1 !== peg$FAILED) {
|
|
456
|
-
|
|
457
|
-
|
|
458
|
-
if (s3 !== peg$FAILED) {
|
|
459
|
-
s4 = peg$parse_();
|
|
460
|
-
if (input.charCodeAt(peg$currPos) === 41) {
|
|
461
|
-
s5 = peg$c1;
|
|
462
|
-
peg$currPos++;
|
|
463
|
-
}
|
|
464
|
-
else {
|
|
465
|
-
s5 = peg$FAILED;
|
|
466
|
-
if (peg$silentFails === 0) {
|
|
467
|
-
peg$fail(peg$e1);
|
|
468
|
-
}
|
|
469
|
-
}
|
|
470
|
-
if (s5 !== peg$FAILED) {
|
|
471
|
-
peg$savedPos = s0;
|
|
472
|
-
s0 = peg$f4(s3);
|
|
473
|
-
}
|
|
474
|
-
else {
|
|
475
|
-
peg$currPos = s0;
|
|
476
|
-
s0 = peg$FAILED;
|
|
477
|
-
}
|
|
478
|
-
}
|
|
479
|
-
else {
|
|
480
|
-
peg$currPos = s0;
|
|
481
|
-
s0 = peg$FAILED;
|
|
482
|
-
}
|
|
483
|
-
}
|
|
484
|
-
else {
|
|
485
|
-
peg$currPos = s0;
|
|
486
|
-
s0 = peg$FAILED;
|
|
450
|
+
peg$savedPos = s0;
|
|
451
|
+
s1 = peg$f4();
|
|
487
452
|
}
|
|
453
|
+
s0 = s1;
|
|
488
454
|
if (s0 === peg$FAILED) {
|
|
489
455
|
s0 = peg$currPos;
|
|
490
|
-
|
|
456
|
+
if (input.charCodeAt(peg$currPos) === 40) {
|
|
457
|
+
s1 = peg$c0;
|
|
458
|
+
peg$currPos++;
|
|
459
|
+
}
|
|
460
|
+
else {
|
|
461
|
+
s1 = peg$FAILED;
|
|
462
|
+
if (peg$silentFails === 0) {
|
|
463
|
+
peg$fail(peg$e0);
|
|
464
|
+
}
|
|
465
|
+
}
|
|
491
466
|
if (s1 !== peg$FAILED) {
|
|
492
467
|
s2 = peg$parse_();
|
|
493
|
-
s3 = peg$
|
|
468
|
+
s3 = peg$parsenumberFilter();
|
|
494
469
|
if (s3 !== peg$FAILED) {
|
|
495
470
|
s4 = peg$parse_();
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
peg$savedPos = s0;
|
|
505
|
-
s0 = peg$f5(s1, s3, s7, s9);
|
|
506
|
-
}
|
|
507
|
-
else {
|
|
508
|
-
peg$currPos = s0;
|
|
509
|
-
s0 = peg$FAILED;
|
|
510
|
-
}
|
|
511
|
-
}
|
|
512
|
-
else {
|
|
513
|
-
peg$currPos = s0;
|
|
514
|
-
s0 = peg$FAILED;
|
|
471
|
+
if (input.charCodeAt(peg$currPos) === 41) {
|
|
472
|
+
s5 = peg$c1;
|
|
473
|
+
peg$currPos++;
|
|
474
|
+
}
|
|
475
|
+
else {
|
|
476
|
+
s5 = peg$FAILED;
|
|
477
|
+
if (peg$silentFails === 0) {
|
|
478
|
+
peg$fail(peg$e1);
|
|
515
479
|
}
|
|
516
480
|
}
|
|
481
|
+
if (s5 !== peg$FAILED) {
|
|
482
|
+
peg$savedPos = s0;
|
|
483
|
+
s0 = peg$f5(s3);
|
|
484
|
+
}
|
|
517
485
|
else {
|
|
518
486
|
peg$currPos = s0;
|
|
519
487
|
s0 = peg$FAILED;
|
|
@@ -530,82 +498,37 @@ function peg$parse(input, options) {
|
|
|
530
498
|
}
|
|
531
499
|
if (s0 === peg$FAILED) {
|
|
532
500
|
s0 = peg$currPos;
|
|
533
|
-
|
|
534
|
-
s1 = peg$c2;
|
|
535
|
-
peg$currPos += 2;
|
|
536
|
-
}
|
|
537
|
-
else {
|
|
538
|
-
s1 = peg$FAILED;
|
|
539
|
-
if (peg$silentFails === 0) {
|
|
540
|
-
peg$fail(peg$e2);
|
|
541
|
-
}
|
|
542
|
-
}
|
|
501
|
+
s1 = peg$parseopenInterval();
|
|
543
502
|
if (s1 !== peg$FAILED) {
|
|
544
503
|
s2 = peg$parse_();
|
|
545
504
|
s3 = peg$parseN();
|
|
546
505
|
if (s3 !== peg$FAILED) {
|
|
547
|
-
s4 =
|
|
548
|
-
s5 = peg$
|
|
549
|
-
|
|
550
|
-
if (input.charCodeAt(peg$currPos) === 44) {
|
|
551
|
-
s7 = peg$c3;
|
|
552
|
-
peg$currPos++;
|
|
553
|
-
}
|
|
554
|
-
else {
|
|
555
|
-
s7 = peg$FAILED;
|
|
556
|
-
if (peg$silentFails === 0) {
|
|
557
|
-
peg$fail(peg$e3);
|
|
558
|
-
}
|
|
559
|
-
}
|
|
560
|
-
if (s7 !== peg$FAILED) {
|
|
561
|
-
s8 = peg$parse_();
|
|
562
|
-
s9 = peg$parseN();
|
|
563
|
-
if (s9 !== peg$FAILED) {
|
|
564
|
-
s6 = [s6, s7, s8, s9];
|
|
565
|
-
s5 = s6;
|
|
566
|
-
}
|
|
567
|
-
else {
|
|
568
|
-
peg$currPos = s5;
|
|
569
|
-
s5 = peg$FAILED;
|
|
570
|
-
}
|
|
571
|
-
}
|
|
572
|
-
else {
|
|
573
|
-
peg$currPos = s5;
|
|
574
|
-
s5 = peg$FAILED;
|
|
575
|
-
}
|
|
576
|
-
while (s5 !== peg$FAILED) {
|
|
577
|
-
s4.push(s5);
|
|
578
|
-
s5 = peg$currPos;
|
|
506
|
+
s4 = peg$parse_();
|
|
507
|
+
s5 = peg$parseTO();
|
|
508
|
+
if (s5 !== peg$FAILED) {
|
|
579
509
|
s6 = peg$parse_();
|
|
580
|
-
|
|
581
|
-
s7 = peg$c3;
|
|
582
|
-
peg$currPos++;
|
|
583
|
-
}
|
|
584
|
-
else {
|
|
585
|
-
s7 = peg$FAILED;
|
|
586
|
-
if (peg$silentFails === 0) {
|
|
587
|
-
peg$fail(peg$e3);
|
|
588
|
-
}
|
|
589
|
-
}
|
|
510
|
+
s7 = peg$parseN();
|
|
590
511
|
if (s7 !== peg$FAILED) {
|
|
591
512
|
s8 = peg$parse_();
|
|
592
|
-
s9 = peg$
|
|
513
|
+
s9 = peg$parsecloseInterval();
|
|
593
514
|
if (s9 !== peg$FAILED) {
|
|
594
|
-
|
|
595
|
-
|
|
515
|
+
peg$savedPos = s0;
|
|
516
|
+
s0 = peg$f6(s1, s3, s7, s9);
|
|
596
517
|
}
|
|
597
518
|
else {
|
|
598
|
-
peg$currPos =
|
|
599
|
-
|
|
519
|
+
peg$currPos = s0;
|
|
520
|
+
s0 = peg$FAILED;
|
|
600
521
|
}
|
|
601
522
|
}
|
|
602
523
|
else {
|
|
603
|
-
peg$currPos =
|
|
604
|
-
|
|
524
|
+
peg$currPos = s0;
|
|
525
|
+
s0 = peg$FAILED;
|
|
605
526
|
}
|
|
606
527
|
}
|
|
607
|
-
|
|
608
|
-
|
|
528
|
+
else {
|
|
529
|
+
peg$currPos = s0;
|
|
530
|
+
s0 = peg$FAILED;
|
|
531
|
+
}
|
|
609
532
|
}
|
|
610
533
|
else {
|
|
611
534
|
peg$currPos = s0;
|
|
@@ -618,14 +541,14 @@ function peg$parse(input, options) {
|
|
|
618
541
|
}
|
|
619
542
|
if (s0 === peg$FAILED) {
|
|
620
543
|
s0 = peg$currPos;
|
|
621
|
-
if (input.
|
|
622
|
-
s1 = peg$
|
|
623
|
-
peg$currPos
|
|
544
|
+
if (input.substr(peg$currPos, 2) === peg$c2) {
|
|
545
|
+
s1 = peg$c2;
|
|
546
|
+
peg$currPos += 2;
|
|
624
547
|
}
|
|
625
548
|
else {
|
|
626
549
|
s1 = peg$FAILED;
|
|
627
550
|
if (peg$silentFails === 0) {
|
|
628
|
-
peg$fail(peg$
|
|
551
|
+
peg$fail(peg$e2);
|
|
629
552
|
}
|
|
630
553
|
}
|
|
631
554
|
if (s1 !== peg$FAILED) {
|
|
@@ -706,53 +629,82 @@ function peg$parse(input, options) {
|
|
|
706
629
|
}
|
|
707
630
|
if (s0 === peg$FAILED) {
|
|
708
631
|
s0 = peg$currPos;
|
|
709
|
-
|
|
710
|
-
|
|
711
|
-
|
|
712
|
-
peg$currPos += 2;
|
|
632
|
+
if (input.charCodeAt(peg$currPos) === 61) {
|
|
633
|
+
s1 = peg$c4;
|
|
634
|
+
peg$currPos++;
|
|
713
635
|
}
|
|
714
636
|
else {
|
|
715
|
-
|
|
637
|
+
s1 = peg$FAILED;
|
|
716
638
|
if (peg$silentFails === 0) {
|
|
717
|
-
peg$fail(peg$
|
|
639
|
+
peg$fail(peg$e4);
|
|
718
640
|
}
|
|
719
641
|
}
|
|
720
|
-
if (
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
|
|
725
|
-
|
|
726
|
-
|
|
727
|
-
if (peg$
|
|
728
|
-
peg$
|
|
729
|
-
}
|
|
730
|
-
}
|
|
731
|
-
if (s2 === peg$FAILED) {
|
|
732
|
-
s2 = input.charAt(peg$currPos);
|
|
733
|
-
if (peg$r0.test(s2)) {
|
|
642
|
+
if (s1 !== peg$FAILED) {
|
|
643
|
+
s2 = peg$parse_();
|
|
644
|
+
s3 = peg$parseN();
|
|
645
|
+
if (s3 !== peg$FAILED) {
|
|
646
|
+
s4 = [];
|
|
647
|
+
s5 = peg$currPos;
|
|
648
|
+
s6 = peg$parse_();
|
|
649
|
+
if (input.charCodeAt(peg$currPos) === 44) {
|
|
650
|
+
s7 = peg$c3;
|
|
734
651
|
peg$currPos++;
|
|
735
652
|
}
|
|
736
653
|
else {
|
|
737
|
-
|
|
654
|
+
s7 = peg$FAILED;
|
|
738
655
|
if (peg$silentFails === 0) {
|
|
739
|
-
peg$fail(peg$
|
|
656
|
+
peg$fail(peg$e3);
|
|
657
|
+
}
|
|
658
|
+
}
|
|
659
|
+
if (s7 !== peg$FAILED) {
|
|
660
|
+
s8 = peg$parse_();
|
|
661
|
+
s9 = peg$parseN();
|
|
662
|
+
if (s9 !== peg$FAILED) {
|
|
663
|
+
s6 = [s6, s7, s8, s9];
|
|
664
|
+
s5 = s6;
|
|
665
|
+
}
|
|
666
|
+
else {
|
|
667
|
+
peg$currPos = s5;
|
|
668
|
+
s5 = peg$FAILED;
|
|
669
|
+
}
|
|
670
|
+
}
|
|
671
|
+
else {
|
|
672
|
+
peg$currPos = s5;
|
|
673
|
+
s5 = peg$FAILED;
|
|
674
|
+
}
|
|
675
|
+
while (s5 !== peg$FAILED) {
|
|
676
|
+
s4.push(s5);
|
|
677
|
+
s5 = peg$currPos;
|
|
678
|
+
s6 = peg$parse_();
|
|
679
|
+
if (input.charCodeAt(peg$currPos) === 44) {
|
|
680
|
+
s7 = peg$c3;
|
|
681
|
+
peg$currPos++;
|
|
682
|
+
}
|
|
683
|
+
else {
|
|
684
|
+
s7 = peg$FAILED;
|
|
685
|
+
if (peg$silentFails === 0) {
|
|
686
|
+
peg$fail(peg$e3);
|
|
687
|
+
}
|
|
688
|
+
}
|
|
689
|
+
if (s7 !== peg$FAILED) {
|
|
690
|
+
s8 = peg$parse_();
|
|
691
|
+
s9 = peg$parseN();
|
|
692
|
+
if (s9 !== peg$FAILED) {
|
|
693
|
+
s6 = [s6, s7, s8, s9];
|
|
694
|
+
s5 = s6;
|
|
695
|
+
}
|
|
696
|
+
else {
|
|
697
|
+
peg$currPos = s5;
|
|
698
|
+
s5 = peg$FAILED;
|
|
699
|
+
}
|
|
700
|
+
}
|
|
701
|
+
else {
|
|
702
|
+
peg$currPos = s5;
|
|
703
|
+
s5 = peg$FAILED;
|
|
740
704
|
}
|
|
741
705
|
}
|
|
742
|
-
}
|
|
743
|
-
}
|
|
744
|
-
if (s2 !== peg$FAILED) {
|
|
745
|
-
s1 = input.substring(s1, peg$currPos);
|
|
746
|
-
}
|
|
747
|
-
else {
|
|
748
|
-
s1 = s2;
|
|
749
|
-
}
|
|
750
|
-
if (s1 !== peg$FAILED) {
|
|
751
|
-
s2 = peg$parse_();
|
|
752
|
-
s3 = peg$parseN();
|
|
753
|
-
if (s3 !== peg$FAILED) {
|
|
754
706
|
peg$savedPos = s0;
|
|
755
|
-
s0 = peg$f8(
|
|
707
|
+
s0 = peg$f8(s3, s4);
|
|
756
708
|
}
|
|
757
709
|
else {
|
|
758
710
|
peg$currPos = s0;
|
|
@@ -765,39 +717,68 @@ function peg$parse(input, options) {
|
|
|
765
717
|
}
|
|
766
718
|
if (s0 === peg$FAILED) {
|
|
767
719
|
s0 = peg$currPos;
|
|
768
|
-
s1 = peg$
|
|
769
|
-
if (
|
|
770
|
-
s2 =
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
774
|
-
|
|
775
|
-
|
|
720
|
+
s1 = peg$currPos;
|
|
721
|
+
if (input.substr(peg$currPos, 2) === peg$c5) {
|
|
722
|
+
s2 = peg$c5;
|
|
723
|
+
peg$currPos += 2;
|
|
724
|
+
}
|
|
725
|
+
else {
|
|
726
|
+
s2 = peg$FAILED;
|
|
727
|
+
if (peg$silentFails === 0) {
|
|
728
|
+
peg$fail(peg$e5);
|
|
729
|
+
}
|
|
730
|
+
}
|
|
731
|
+
if (s2 === peg$FAILED) {
|
|
732
|
+
if (input.substr(peg$currPos, 2) === peg$c6) {
|
|
733
|
+
s2 = peg$c6;
|
|
734
|
+
peg$currPos += 2;
|
|
776
735
|
}
|
|
777
736
|
else {
|
|
778
|
-
|
|
737
|
+
s2 = peg$FAILED;
|
|
779
738
|
if (peg$silentFails === 0) {
|
|
780
|
-
peg$fail(peg$
|
|
739
|
+
peg$fail(peg$e6);
|
|
781
740
|
}
|
|
782
741
|
}
|
|
783
|
-
if (
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
s4 = [s4, s5, s6, s7];
|
|
788
|
-
s3 = s4;
|
|
742
|
+
if (s2 === peg$FAILED) {
|
|
743
|
+
s2 = input.charAt(peg$currPos);
|
|
744
|
+
if (peg$r0.test(s2)) {
|
|
745
|
+
peg$currPos++;
|
|
789
746
|
}
|
|
790
747
|
else {
|
|
791
|
-
|
|
792
|
-
|
|
748
|
+
s2 = peg$FAILED;
|
|
749
|
+
if (peg$silentFails === 0) {
|
|
750
|
+
peg$fail(peg$e7);
|
|
751
|
+
}
|
|
793
752
|
}
|
|
794
753
|
}
|
|
754
|
+
}
|
|
755
|
+
if (s2 !== peg$FAILED) {
|
|
756
|
+
s1 = input.substring(s1, peg$currPos);
|
|
757
|
+
}
|
|
758
|
+
else {
|
|
759
|
+
s1 = s2;
|
|
760
|
+
}
|
|
761
|
+
if (s1 !== peg$FAILED) {
|
|
762
|
+
s2 = peg$parse_();
|
|
763
|
+
s3 = peg$parseN();
|
|
764
|
+
if (s3 !== peg$FAILED) {
|
|
765
|
+
peg$savedPos = s0;
|
|
766
|
+
s0 = peg$f9(s1, s3);
|
|
767
|
+
}
|
|
795
768
|
else {
|
|
796
|
-
peg$currPos =
|
|
797
|
-
|
|
769
|
+
peg$currPos = s0;
|
|
770
|
+
s0 = peg$FAILED;
|
|
798
771
|
}
|
|
799
|
-
|
|
800
|
-
|
|
772
|
+
}
|
|
773
|
+
else {
|
|
774
|
+
peg$currPos = s0;
|
|
775
|
+
s0 = peg$FAILED;
|
|
776
|
+
}
|
|
777
|
+
if (s0 === peg$FAILED) {
|
|
778
|
+
s0 = peg$currPos;
|
|
779
|
+
s1 = peg$parseN();
|
|
780
|
+
if (s1 !== peg$FAILED) {
|
|
781
|
+
s2 = [];
|
|
801
782
|
s3 = peg$currPos;
|
|
802
783
|
s4 = peg$parse_();
|
|
803
784
|
if (input.charCodeAt(peg$currPos) === 44) {
|
|
@@ -826,13 +807,44 @@ function peg$parse(input, options) {
|
|
|
826
807
|
peg$currPos = s3;
|
|
827
808
|
s3 = peg$FAILED;
|
|
828
809
|
}
|
|
810
|
+
while (s3 !== peg$FAILED) {
|
|
811
|
+
s2.push(s3);
|
|
812
|
+
s3 = peg$currPos;
|
|
813
|
+
s4 = peg$parse_();
|
|
814
|
+
if (input.charCodeAt(peg$currPos) === 44) {
|
|
815
|
+
s5 = peg$c3;
|
|
816
|
+
peg$currPos++;
|
|
817
|
+
}
|
|
818
|
+
else {
|
|
819
|
+
s5 = peg$FAILED;
|
|
820
|
+
if (peg$silentFails === 0) {
|
|
821
|
+
peg$fail(peg$e3);
|
|
822
|
+
}
|
|
823
|
+
}
|
|
824
|
+
if (s5 !== peg$FAILED) {
|
|
825
|
+
s6 = peg$parse_();
|
|
826
|
+
s7 = peg$parseN();
|
|
827
|
+
if (s7 !== peg$FAILED) {
|
|
828
|
+
s4 = [s4, s5, s6, s7];
|
|
829
|
+
s3 = s4;
|
|
830
|
+
}
|
|
831
|
+
else {
|
|
832
|
+
peg$currPos = s3;
|
|
833
|
+
s3 = peg$FAILED;
|
|
834
|
+
}
|
|
835
|
+
}
|
|
836
|
+
else {
|
|
837
|
+
peg$currPos = s3;
|
|
838
|
+
s3 = peg$FAILED;
|
|
839
|
+
}
|
|
840
|
+
}
|
|
841
|
+
peg$savedPos = s0;
|
|
842
|
+
s0 = peg$f10(s1, s2);
|
|
843
|
+
}
|
|
844
|
+
else {
|
|
845
|
+
peg$currPos = s0;
|
|
846
|
+
s0 = peg$FAILED;
|
|
829
847
|
}
|
|
830
|
-
peg$savedPos = s0;
|
|
831
|
-
s0 = peg$f9(s1, s2);
|
|
832
|
-
}
|
|
833
|
-
else {
|
|
834
|
-
peg$currPos = s0;
|
|
835
|
-
s0 = peg$FAILED;
|
|
836
848
|
}
|
|
837
849
|
}
|
|
838
850
|
}
|
|
@@ -857,7 +869,7 @@ function peg$parse(input, options) {
|
|
|
857
869
|
}
|
|
858
870
|
if (s1 !== peg$FAILED) {
|
|
859
871
|
peg$savedPos = s0;
|
|
860
|
-
s1 = peg$
|
|
872
|
+
s1 = peg$f11();
|
|
861
873
|
}
|
|
862
874
|
s0 = s1;
|
|
863
875
|
if (s0 === peg$FAILED) {
|
|
@@ -874,7 +886,7 @@ function peg$parse(input, options) {
|
|
|
874
886
|
}
|
|
875
887
|
if (s1 !== peg$FAILED) {
|
|
876
888
|
peg$savedPos = s0;
|
|
877
|
-
s1 = peg$
|
|
889
|
+
s1 = peg$f12();
|
|
878
890
|
}
|
|
879
891
|
s0 = s1;
|
|
880
892
|
}
|
|
@@ -895,7 +907,7 @@ function peg$parse(input, options) {
|
|
|
895
907
|
}
|
|
896
908
|
if (s1 !== peg$FAILED) {
|
|
897
909
|
peg$savedPos = s0;
|
|
898
|
-
s1 = peg$
|
|
910
|
+
s1 = peg$f13();
|
|
899
911
|
}
|
|
900
912
|
s0 = s1;
|
|
901
913
|
if (s0 === peg$FAILED) {
|
|
@@ -912,7 +924,7 @@ function peg$parse(input, options) {
|
|
|
912
924
|
}
|
|
913
925
|
if (s1 !== peg$FAILED) {
|
|
914
926
|
peg$savedPos = s0;
|
|
915
|
-
s1 = peg$
|
|
927
|
+
s1 = peg$f14();
|
|
916
928
|
}
|
|
917
929
|
s0 = s1;
|
|
918
930
|
}
|
|
@@ -1177,7 +1189,7 @@ function peg$parse(input, options) {
|
|
|
1177
1189
|
}
|
|
1178
1190
|
if (s1 !== peg$FAILED) {
|
|
1179
1191
|
peg$savedPos = s0;
|
|
1180
|
-
s1 = peg$
|
|
1192
|
+
s1 = peg$f15(s1);
|
|
1181
1193
|
}
|
|
1182
1194
|
s0 = s1;
|
|
1183
1195
|
return s0;
|
|
@@ -1188,7 +1200,7 @@ function peg$parse(input, options) {
|
|
|
1188
1200
|
s1 = peg$parseOR();
|
|
1189
1201
|
if (s1 !== peg$FAILED) {
|
|
1190
1202
|
peg$savedPos = s0;
|
|
1191
|
-
s1 = peg$
|
|
1203
|
+
s1 = peg$f16();
|
|
1192
1204
|
}
|
|
1193
1205
|
s0 = s1;
|
|
1194
1206
|
if (s0 === peg$FAILED) {
|
|
@@ -1196,7 +1208,7 @@ function peg$parse(input, options) {
|
|
|
1196
1208
|
s1 = peg$parseAND();
|
|
1197
1209
|
if (s1 !== peg$FAILED) {
|
|
1198
1210
|
peg$savedPos = s0;
|
|
1199
|
-
s1 = peg$
|
|
1211
|
+
s1 = peg$f17();
|
|
1200
1212
|
}
|
|
1201
1213
|
s0 = s1;
|
|
1202
1214
|
}
|
|
@@ -1229,7 +1241,7 @@ function peg$parse(input, options) {
|
|
|
1229
1241
|
}
|
|
1230
1242
|
if (s2 !== peg$FAILED) {
|
|
1231
1243
|
peg$savedPos = s0;
|
|
1232
|
-
s0 = peg$
|
|
1244
|
+
s0 = peg$f18();
|
|
1233
1245
|
}
|
|
1234
1246
|
else {
|
|
1235
1247
|
peg$currPos = s0;
|
|
@@ -1282,17 +1294,57 @@ function peg$parse(input, options) {
|
|
|
1282
1294
|
}
|
|
1283
1295
|
return s0;
|
|
1284
1296
|
}
|
|
1297
|
+
function peg$parseNONE() {
|
|
1298
|
+
var s0, s1, s2, s3;
|
|
1299
|
+
s0 = peg$currPos;
|
|
1300
|
+
s1 = input.substr(peg$currPos, 4);
|
|
1301
|
+
if (s1.toLowerCase() === peg$c13) {
|
|
1302
|
+
peg$currPos += 4;
|
|
1303
|
+
}
|
|
1304
|
+
else {
|
|
1305
|
+
s1 = peg$FAILED;
|
|
1306
|
+
if (peg$silentFails === 0) {
|
|
1307
|
+
peg$fail(peg$e17);
|
|
1308
|
+
}
|
|
1309
|
+
}
|
|
1310
|
+
if (s1 !== peg$FAILED) {
|
|
1311
|
+
s2 = peg$currPos;
|
|
1312
|
+
peg$silentFails++;
|
|
1313
|
+
s3 = peg$parseidChar();
|
|
1314
|
+
peg$silentFails--;
|
|
1315
|
+
if (s3 === peg$FAILED) {
|
|
1316
|
+
s2 = undefined;
|
|
1317
|
+
}
|
|
1318
|
+
else {
|
|
1319
|
+
peg$currPos = s2;
|
|
1320
|
+
s2 = peg$FAILED;
|
|
1321
|
+
}
|
|
1322
|
+
if (s2 !== peg$FAILED) {
|
|
1323
|
+
s1 = [s1, s2];
|
|
1324
|
+
s0 = s1;
|
|
1325
|
+
}
|
|
1326
|
+
else {
|
|
1327
|
+
peg$currPos = s0;
|
|
1328
|
+
s0 = peg$FAILED;
|
|
1329
|
+
}
|
|
1330
|
+
}
|
|
1331
|
+
else {
|
|
1332
|
+
peg$currPos = s0;
|
|
1333
|
+
s0 = peg$FAILED;
|
|
1334
|
+
}
|
|
1335
|
+
return s0;
|
|
1336
|
+
}
|
|
1285
1337
|
function peg$parseAND() {
|
|
1286
1338
|
var s0, s1, s2, s3;
|
|
1287
1339
|
s0 = peg$currPos;
|
|
1288
1340
|
s1 = input.substr(peg$currPos, 3);
|
|
1289
|
-
if (s1.toLowerCase() === peg$
|
|
1341
|
+
if (s1.toLowerCase() === peg$c14) {
|
|
1290
1342
|
peg$currPos += 3;
|
|
1291
1343
|
}
|
|
1292
1344
|
else {
|
|
1293
1345
|
s1 = peg$FAILED;
|
|
1294
1346
|
if (peg$silentFails === 0) {
|
|
1295
|
-
peg$fail(peg$
|
|
1347
|
+
peg$fail(peg$e18);
|
|
1296
1348
|
}
|
|
1297
1349
|
}
|
|
1298
1350
|
if (s1 !== peg$FAILED) {
|
|
@@ -1326,13 +1378,13 @@ function peg$parse(input, options) {
|
|
|
1326
1378
|
var s0, s1, s2, s3;
|
|
1327
1379
|
s0 = peg$currPos;
|
|
1328
1380
|
s1 = input.substr(peg$currPos, 2);
|
|
1329
|
-
if (s1.toLowerCase() === peg$
|
|
1381
|
+
if (s1.toLowerCase() === peg$c15) {
|
|
1330
1382
|
peg$currPos += 2;
|
|
1331
1383
|
}
|
|
1332
1384
|
else {
|
|
1333
1385
|
s1 = peg$FAILED;
|
|
1334
1386
|
if (peg$silentFails === 0) {
|
|
1335
|
-
peg$fail(peg$
|
|
1387
|
+
peg$fail(peg$e19);
|
|
1336
1388
|
}
|
|
1337
1389
|
}
|
|
1338
1390
|
if (s1 !== peg$FAILED) {
|
|
@@ -1366,13 +1418,13 @@ function peg$parse(input, options) {
|
|
|
1366
1418
|
var s0, s1, s2, s3;
|
|
1367
1419
|
s0 = peg$currPos;
|
|
1368
1420
|
s1 = input.substr(peg$currPos, 2);
|
|
1369
|
-
if (s1.toLowerCase() === peg$
|
|
1421
|
+
if (s1.toLowerCase() === peg$c16) {
|
|
1370
1422
|
peg$currPos += 2;
|
|
1371
1423
|
}
|
|
1372
1424
|
else {
|
|
1373
1425
|
s1 = peg$FAILED;
|
|
1374
1426
|
if (peg$silentFails === 0) {
|
|
1375
|
-
peg$fail(peg$
|
|
1427
|
+
peg$fail(peg$e20);
|
|
1376
1428
|
}
|
|
1377
1429
|
}
|
|
1378
1430
|
if (s1 !== peg$FAILED) {
|
|
@@ -1411,7 +1463,7 @@ function peg$parse(input, options) {
|
|
|
1411
1463
|
else {
|
|
1412
1464
|
s0 = peg$FAILED;
|
|
1413
1465
|
if (peg$silentFails === 0) {
|
|
1414
|
-
peg$fail(peg$
|
|
1466
|
+
peg$fail(peg$e21);
|
|
1415
1467
|
}
|
|
1416
1468
|
}
|
|
1417
1469
|
return s0;
|
|
@@ -1427,7 +1479,7 @@ function peg$parse(input, options) {
|
|
|
1427
1479
|
else {
|
|
1428
1480
|
s1 = peg$FAILED;
|
|
1429
1481
|
if (peg$silentFails === 0) {
|
|
1430
|
-
peg$fail(peg$
|
|
1482
|
+
peg$fail(peg$e23);
|
|
1431
1483
|
}
|
|
1432
1484
|
}
|
|
1433
1485
|
while (s1 !== peg$FAILED) {
|
|
@@ -1439,14 +1491,14 @@ function peg$parse(input, options) {
|
|
|
1439
1491
|
else {
|
|
1440
1492
|
s1 = peg$FAILED;
|
|
1441
1493
|
if (peg$silentFails === 0) {
|
|
1442
|
-
peg$fail(peg$
|
|
1494
|
+
peg$fail(peg$e23);
|
|
1443
1495
|
}
|
|
1444
1496
|
}
|
|
1445
1497
|
}
|
|
1446
1498
|
peg$silentFails--;
|
|
1447
1499
|
s1 = peg$FAILED;
|
|
1448
1500
|
if (peg$silentFails === 0) {
|
|
1449
|
-
peg$fail(peg$
|
|
1501
|
+
peg$fail(peg$e22);
|
|
1450
1502
|
}
|
|
1451
1503
|
return s0;
|
|
1452
1504
|
}
|