@optique/core 0.4.0-dev.50 → 0.4.0-dev.51
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/parser.d.cts +140 -0
- package/dist/parser.d.ts +140 -0
- package/package.json +1 -1
package/dist/parser.d.cts
CHANGED
|
@@ -512,6 +512,7 @@ declare function or<TA, TB, TC, TD, TE, TStateA, TStateB, TStateC, TStateD, TSta
|
|
|
512
512
|
* @param f The sixth {@link Parser} to try.
|
|
513
513
|
* @return A {@link Parser} that tries to parse using the provided parsers
|
|
514
514
|
* in order, returning the result of the first successful parser.
|
|
515
|
+
* @since 0.3.0
|
|
515
516
|
*/
|
|
516
517
|
declare function or<TA, TB, TC, TD, TE, TF, TStateA, TStateB, TStateC, TStateD, TStateE, TStateF>(a: Parser<TA, TStateA>, b: Parser<TB, TStateB>, c: Parser<TC, TStateC>, d: Parser<TD, TStateD>, e: Parser<TE, TStateE>, f: Parser<TF, TStateF>): Parser<TA | TB | TC | TD | TE | TF, undefined | [0, ParserResult<TStateA>] | [1, ParserResult<TStateB>] | [2, ParserResult<TStateC>] | [3, ParserResult<TStateD>] | [4, ParserResult<TStateE>] | [5, ParserResult<TStateF>]>;
|
|
517
518
|
/**
|
|
@@ -541,6 +542,7 @@ declare function or<TA, TB, TC, TD, TE, TF, TStateA, TStateB, TStateC, TStateD,
|
|
|
541
542
|
* @param g The seventh {@link Parser} to try.
|
|
542
543
|
* @return A {@link Parser} that tries to parse using the provided parsers
|
|
543
544
|
* in order, returning the result of the first successful parser.
|
|
545
|
+
* @since 0.3.0
|
|
544
546
|
*/
|
|
545
547
|
declare function or<TA, TB, TC, TD, TE, TF, TG, TStateA, TStateB, TStateC, TStateD, TStateE, TStateF, TStateG>(a: Parser<TA, TStateA>, b: Parser<TB, TStateB>, c: Parser<TC, TStateC>, d: Parser<TD, TStateD>, e: Parser<TE, TStateE>, f: Parser<TF, TStateF>, g: Parser<TG, TStateG>): Parser<TA | TB | TC | TD | TE | TF | TG, undefined | [0, ParserResult<TStateA>] | [1, ParserResult<TStateB>] | [2, ParserResult<TStateC>] | [3, ParserResult<TStateD>] | [4, ParserResult<TStateE>] | [5, ParserResult<TStateF>] | [6, ParserResult<TStateG>]>;
|
|
546
548
|
/**
|
|
@@ -573,6 +575,7 @@ declare function or<TA, TB, TC, TD, TE, TF, TG, TStateA, TStateB, TStateC, TStat
|
|
|
573
575
|
* @param h The eighth {@link Parser} to try.
|
|
574
576
|
* @return A {@link Parser} that tries to parse using the provided parsers
|
|
575
577
|
* in order, returning the result of the first successful parser.
|
|
578
|
+
* @since 0.3.0
|
|
576
579
|
*/
|
|
577
580
|
declare function or<TA, TB, TC, TD, TE, TF, TG, TH, TStateA, TStateB, TStateC, TStateD, TStateE, TStateF, TStateG, TStateH>(a: Parser<TA, TStateA>, b: Parser<TB, TStateB>, c: Parser<TC, TStateC>, d: Parser<TD, TStateD>, e: Parser<TE, TStateE>, f: Parser<TF, TStateF>, g: Parser<TG, TStateG>, h: Parser<TH, TStateH>): Parser<TA | TB | TC | TD | TE | TF | TG | TH, undefined | [0, ParserResult<TStateA>] | [1, ParserResult<TStateB>] | [2, ParserResult<TStateC>] | [3, ParserResult<TStateD>] | [4, ParserResult<TStateE>] | [5, ParserResult<TStateF>] | [6, ParserResult<TStateG>] | [7, ParserResult<TStateH>]>;
|
|
578
581
|
/**
|
|
@@ -608,6 +611,7 @@ declare function or<TA, TB, TC, TD, TE, TF, TG, TH, TStateA, TStateB, TStateC, T
|
|
|
608
611
|
* @param i The ninth {@link Parser} to try.
|
|
609
612
|
* @return A {@link Parser} that tries to parse using the provided parsers
|
|
610
613
|
* in order, returning the result of the first successful parser.
|
|
614
|
+
* @since 0.3.0
|
|
611
615
|
*/
|
|
612
616
|
declare function or<TA, TB, TC, TD, TE, TF, TG, TH, TI, TStateA, TStateB, TStateC, TStateD, TStateE, TStateF, TStateG, TStateH, TStateI>(a: Parser<TA, TStateA>, b: Parser<TB, TStateB>, c: Parser<TC, TStateC>, d: Parser<TD, TStateD>, e: Parser<TE, TStateE>, f: Parser<TF, TStateF>, g: Parser<TG, TStateG>, h: Parser<TH, TStateH>, i: Parser<TI, TStateI>): Parser<TA | TB | TC | TD | TE | TF | TG | TH | TI, undefined | [0, ParserResult<TStateA>] | [1, ParserResult<TStateB>] | [2, ParserResult<TStateC>] | [3, ParserResult<TStateD>] | [4, ParserResult<TStateE>] | [5, ParserResult<TStateF>] | [6, ParserResult<TStateG>] | [7, ParserResult<TStateH>] | [8, ParserResult<TStateI>]>;
|
|
613
617
|
/**
|
|
@@ -646,6 +650,7 @@ declare function or<TA, TB, TC, TD, TE, TF, TG, TH, TI, TStateA, TStateB, TState
|
|
|
646
650
|
* @param j The tenth {@link Parser} to try.
|
|
647
651
|
* @return A {@link Parser} that tries to parse using the provided parsers
|
|
648
652
|
* in order, returning the result of the first successful parser.
|
|
653
|
+
* @since 0.3.0
|
|
649
654
|
*/
|
|
650
655
|
declare function or<TA, TB, TC, TD, TE, TF, TG, TH, TI, TJ, TStateA, TStateB, TStateC, TStateD, TStateE, TStateF, TStateG, TStateH, TStateI, TStateJ>(a: Parser<TA, TStateA>, b: Parser<TB, TStateB>, c: Parser<TC, TStateC>, d: Parser<TD, TStateD>, e: Parser<TE, TStateE>, f: Parser<TF, TStateF>, g: Parser<TG, TStateG>, h: Parser<TH, TStateH>, i: Parser<TI, TStateI>, j: Parser<TJ, TStateJ>): Parser<TA | TB | TC | TD | TE | TF | TG | TH | TI | TJ, undefined | [0, ParserResult<TStateA>] | [1, ParserResult<TStateB>] | [2, ParserResult<TStateC>] | [3, ParserResult<TStateD>] | [4, ParserResult<TStateE>] | [5, ParserResult<TStateF>] | [6, ParserResult<TStateG>] | [7, ParserResult<TStateH>] | [8, ParserResult<TStateI>] | [9, ParserResult<TStateJ>]>;
|
|
651
656
|
/**
|
|
@@ -808,6 +813,141 @@ declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<un
|
|
|
808
813
|
* of the two parsers into a single object.
|
|
809
814
|
*/
|
|
810
815
|
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE>, Record<string | symbol, unknown>>;
|
|
816
|
+
/**
|
|
817
|
+
* Merges multiple {@link object} parsers into a single {@link object} parser.
|
|
818
|
+
* It is useful for combining multiple {@link object} parsers so that
|
|
819
|
+
* the unified parser produces a single object containing all the values
|
|
820
|
+
* from the individual parsers while separating the fields into multiple
|
|
821
|
+
* groups.
|
|
822
|
+
* @template TA The type of the first parser.
|
|
823
|
+
* @template TB The type of the second parser.
|
|
824
|
+
* @template TC The type of the third parser.
|
|
825
|
+
* @template TD The type of the fourth parser.
|
|
826
|
+
* @template TE The type of the fifth parser.
|
|
827
|
+
* @template TF The type of the sixth parser.
|
|
828
|
+
* @param a The first {@link object} parser to merge.
|
|
829
|
+
* @param b The second {@link object} parser to merge.
|
|
830
|
+
* @param c The third {@link object} parser to merge.
|
|
831
|
+
* @param d The fourth {@link object} parser to merge.
|
|
832
|
+
* @param e The fifth {@link object} parser to merge.
|
|
833
|
+
* @param f The sixth {@link object} parser to merge.
|
|
834
|
+
* @return A new {@link object} parser that combines the values and states
|
|
835
|
+
* of the parsers into a single object.
|
|
836
|
+
* @since 0.4.0
|
|
837
|
+
*/
|
|
838
|
+
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>, TF extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE, f: TF): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : ExtractObjectTypes<TF> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE> & ExtractObjectTypes<TF>, Record<string | symbol, unknown>>;
|
|
839
|
+
/**
|
|
840
|
+
* Merges multiple {@link object} parsers into a single {@link object} parser.
|
|
841
|
+
* It is useful for combining multiple {@link object} parsers so that
|
|
842
|
+
* the unified parser produces a single object containing all the values
|
|
843
|
+
* from the individual parsers while separating the fields into multiple
|
|
844
|
+
* groups.
|
|
845
|
+
* @template TA The type of the first parser.
|
|
846
|
+
* @template TB The type of the second parser.
|
|
847
|
+
* @template TC The type of the third parser.
|
|
848
|
+
* @template TD The type of the fourth parser.
|
|
849
|
+
* @template TE The type of the fifth parser.
|
|
850
|
+
* @template TF The type of the sixth parser.
|
|
851
|
+
* @template TG The type of the seventh parser.
|
|
852
|
+
* @param a The first {@link object} parser to merge.
|
|
853
|
+
* @param b The second {@link object} parser to merge.
|
|
854
|
+
* @param c The third {@link object} parser to merge.
|
|
855
|
+
* @param d The fourth {@link object} parser to merge.
|
|
856
|
+
* @param e The fifth {@link object} parser to merge.
|
|
857
|
+
* @param f The sixth {@link object} parser to merge.
|
|
858
|
+
* @param g The seventh {@link object} parser to merge.
|
|
859
|
+
* @return A new {@link object} parser that combines the values and states
|
|
860
|
+
* of the parsers into a single object.
|
|
861
|
+
* @since 0.4.0
|
|
862
|
+
*/
|
|
863
|
+
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>, TF extends Parser<unknown, unknown>, TG extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE, f: TF, g: TG): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : ExtractObjectTypes<TF> extends never ? never : ExtractObjectTypes<TG> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE> & ExtractObjectTypes<TF> & ExtractObjectTypes<TG>, Record<string | symbol, unknown>>;
|
|
864
|
+
/**
|
|
865
|
+
* Merges multiple {@link object} parsers into a single {@link object} parser.
|
|
866
|
+
* It is useful for combining multiple {@link object} parsers so that
|
|
867
|
+
* the unified parser produces a single object containing all the values
|
|
868
|
+
* from the individual parsers while separating the fields into multiple
|
|
869
|
+
* groups.
|
|
870
|
+
* @template TA The type of the first parser.
|
|
871
|
+
* @template TB The type of the second parser.
|
|
872
|
+
* @template TC The type of the third parser.
|
|
873
|
+
* @template TD The type of the fourth parser.
|
|
874
|
+
* @template TE The type of the fifth parser.
|
|
875
|
+
* @template TF The type of the sixth parser.
|
|
876
|
+
* @template TG The type of the seventh parser.
|
|
877
|
+
* @template TH The type of the eighth parser.
|
|
878
|
+
* @param a The first {@link object} parser to merge.
|
|
879
|
+
* @param b The second {@link object} parser to merge.
|
|
880
|
+
* @param c The third {@link object} parser to merge.
|
|
881
|
+
* @param d The fourth {@link object} parser to merge.
|
|
882
|
+
* @param e The fifth {@link object} parser to merge.
|
|
883
|
+
* @param f The sixth {@link object} parser to merge.
|
|
884
|
+
* @param g The seventh {@link object} parser to merge.
|
|
885
|
+
* @param h The eighth {@link object} parser to merge.
|
|
886
|
+
* @return A new {@link object} parser that combines the values and states
|
|
887
|
+
* of the parsers into a single object.
|
|
888
|
+
* @since 0.4.0
|
|
889
|
+
*/
|
|
890
|
+
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>, TF extends Parser<unknown, unknown>, TG extends Parser<unknown, unknown>, TH extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE, f: TF, g: TG, h: TH): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : ExtractObjectTypes<TF> extends never ? never : ExtractObjectTypes<TG> extends never ? never : ExtractObjectTypes<TH> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE> & ExtractObjectTypes<TF> & ExtractObjectTypes<TG> & ExtractObjectTypes<TH>, Record<string | symbol, unknown>>;
|
|
891
|
+
/**
|
|
892
|
+
* Merges multiple {@link object} parsers into a single {@link object} parser.
|
|
893
|
+
* It is useful for combining multiple {@link object} parsers so that
|
|
894
|
+
* the unified parser produces a single object containing all the values
|
|
895
|
+
* from the individual parsers while separating the fields into multiple
|
|
896
|
+
* groups.
|
|
897
|
+
* @template TA The type of the first parser.
|
|
898
|
+
* @template TB The type of the second parser.
|
|
899
|
+
* @template TC The type of the third parser.
|
|
900
|
+
* @template TD The type of the fourth parser.
|
|
901
|
+
* @template TE The type of the fifth parser.
|
|
902
|
+
* @template TF The type of the sixth parser.
|
|
903
|
+
* @template TG The type of the seventh parser.
|
|
904
|
+
* @template TH The type of the eighth parser.
|
|
905
|
+
* @template TI The type of the ninth parser.
|
|
906
|
+
* @param a The first {@link object} parser to merge.
|
|
907
|
+
* @param b The second {@link object} parser to merge.
|
|
908
|
+
* @param c The third {@link object} parser to merge.
|
|
909
|
+
* @param d The fourth {@link object} parser to merge.
|
|
910
|
+
* @param e The fifth {@link object} parser to merge.
|
|
911
|
+
* @param f The sixth {@link object} parser to merge.
|
|
912
|
+
* @param g The seventh {@link object} parser to merge.
|
|
913
|
+
* @param h The eighth {@link object} parser to merge.
|
|
914
|
+
* @param i The ninth {@link object} parser to merge.
|
|
915
|
+
* @return A new {@link object} parser that combines the values and states
|
|
916
|
+
* of the parsers into a single object.
|
|
917
|
+
* @since 0.4.0
|
|
918
|
+
*/
|
|
919
|
+
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>, TF extends Parser<unknown, unknown>, TG extends Parser<unknown, unknown>, TH extends Parser<unknown, unknown>, TI extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE, f: TF, g: TG, h: TH, i: TI): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : ExtractObjectTypes<TF> extends never ? never : ExtractObjectTypes<TG> extends never ? never : ExtractObjectTypes<TH> extends never ? never : ExtractObjectTypes<TI> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE> & ExtractObjectTypes<TF> & ExtractObjectTypes<TG> & ExtractObjectTypes<TH> & ExtractObjectTypes<TI>, Record<string | symbol, unknown>>;
|
|
920
|
+
/**
|
|
921
|
+
* Merges multiple {@link object} parsers into a single {@link object} parser.
|
|
922
|
+
* It is useful for combining multiple {@link object} parsers so that
|
|
923
|
+
* the unified parser produces a single object containing all the values
|
|
924
|
+
* from the individual parsers while separating the fields into multiple
|
|
925
|
+
* groups.
|
|
926
|
+
* @template TA The type of the first parser.
|
|
927
|
+
* @template TB The type of the second parser.
|
|
928
|
+
* @template TC The type of the third parser.
|
|
929
|
+
* @template TD The type of the fourth parser.
|
|
930
|
+
* @template TE The type of the fifth parser.
|
|
931
|
+
* @template TF The type of the sixth parser.
|
|
932
|
+
* @template TG The type of the seventh parser.
|
|
933
|
+
* @template TH The type of the eighth parser.
|
|
934
|
+
* @template TI The type of the ninth parser.
|
|
935
|
+
* @template TJ The type of the tenth parser.
|
|
936
|
+
* @param a The first {@link object} parser to merge.
|
|
937
|
+
* @param b The second {@link object} parser to merge.
|
|
938
|
+
* @param c The third {@link object} parser to merge.
|
|
939
|
+
* @param d The fourth {@link object} parser to merge.
|
|
940
|
+
* @param e The fifth {@link object} parser to merge.
|
|
941
|
+
* @param f The sixth {@link object} parser to merge.
|
|
942
|
+
* @param g The seventh {@link object} parser to merge.
|
|
943
|
+
* @param h The eighth {@link object} parser to merge.
|
|
944
|
+
* @param i The ninth {@link object} parser to merge.
|
|
945
|
+
* @param j The tenth {@link object} parser to merge.
|
|
946
|
+
* @return A new {@link object} parser that combines the values and states
|
|
947
|
+
* of the parsers into a single object.
|
|
948
|
+
* @since 0.4.0
|
|
949
|
+
*/
|
|
950
|
+
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>, TF extends Parser<unknown, unknown>, TG extends Parser<unknown, unknown>, TH extends Parser<unknown, unknown>, TI extends Parser<unknown, unknown>, TJ extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE, f: TF, g: TG, h: TH, i: TI, j: TJ): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : ExtractObjectTypes<TF> extends never ? never : ExtractObjectTypes<TG> extends never ? never : ExtractObjectTypes<TH> extends never ? never : ExtractObjectTypes<TI> extends never ? never : ExtractObjectTypes<TJ> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE> & ExtractObjectTypes<TF> & ExtractObjectTypes<TG> & ExtractObjectTypes<TH> & ExtractObjectTypes<TI> & ExtractObjectTypes<TJ>, Record<string | symbol, unknown>>;
|
|
811
951
|
/**
|
|
812
952
|
* Concatenates two {@link tuple} parsers into a single parser that produces
|
|
813
953
|
* a flattened tuple containing the values from both parsers in order.
|
package/dist/parser.d.ts
CHANGED
|
@@ -512,6 +512,7 @@ declare function or<TA, TB, TC, TD, TE, TStateA, TStateB, TStateC, TStateD, TSta
|
|
|
512
512
|
* @param f The sixth {@link Parser} to try.
|
|
513
513
|
* @return A {@link Parser} that tries to parse using the provided parsers
|
|
514
514
|
* in order, returning the result of the first successful parser.
|
|
515
|
+
* @since 0.3.0
|
|
515
516
|
*/
|
|
516
517
|
declare function or<TA, TB, TC, TD, TE, TF, TStateA, TStateB, TStateC, TStateD, TStateE, TStateF>(a: Parser<TA, TStateA>, b: Parser<TB, TStateB>, c: Parser<TC, TStateC>, d: Parser<TD, TStateD>, e: Parser<TE, TStateE>, f: Parser<TF, TStateF>): Parser<TA | TB | TC | TD | TE | TF, undefined | [0, ParserResult<TStateA>] | [1, ParserResult<TStateB>] | [2, ParserResult<TStateC>] | [3, ParserResult<TStateD>] | [4, ParserResult<TStateE>] | [5, ParserResult<TStateF>]>;
|
|
517
518
|
/**
|
|
@@ -541,6 +542,7 @@ declare function or<TA, TB, TC, TD, TE, TF, TStateA, TStateB, TStateC, TStateD,
|
|
|
541
542
|
* @param g The seventh {@link Parser} to try.
|
|
542
543
|
* @return A {@link Parser} that tries to parse using the provided parsers
|
|
543
544
|
* in order, returning the result of the first successful parser.
|
|
545
|
+
* @since 0.3.0
|
|
544
546
|
*/
|
|
545
547
|
declare function or<TA, TB, TC, TD, TE, TF, TG, TStateA, TStateB, TStateC, TStateD, TStateE, TStateF, TStateG>(a: Parser<TA, TStateA>, b: Parser<TB, TStateB>, c: Parser<TC, TStateC>, d: Parser<TD, TStateD>, e: Parser<TE, TStateE>, f: Parser<TF, TStateF>, g: Parser<TG, TStateG>): Parser<TA | TB | TC | TD | TE | TF | TG, undefined | [0, ParserResult<TStateA>] | [1, ParserResult<TStateB>] | [2, ParserResult<TStateC>] | [3, ParserResult<TStateD>] | [4, ParserResult<TStateE>] | [5, ParserResult<TStateF>] | [6, ParserResult<TStateG>]>;
|
|
546
548
|
/**
|
|
@@ -573,6 +575,7 @@ declare function or<TA, TB, TC, TD, TE, TF, TG, TStateA, TStateB, TStateC, TStat
|
|
|
573
575
|
* @param h The eighth {@link Parser} to try.
|
|
574
576
|
* @return A {@link Parser} that tries to parse using the provided parsers
|
|
575
577
|
* in order, returning the result of the first successful parser.
|
|
578
|
+
* @since 0.3.0
|
|
576
579
|
*/
|
|
577
580
|
declare function or<TA, TB, TC, TD, TE, TF, TG, TH, TStateA, TStateB, TStateC, TStateD, TStateE, TStateF, TStateG, TStateH>(a: Parser<TA, TStateA>, b: Parser<TB, TStateB>, c: Parser<TC, TStateC>, d: Parser<TD, TStateD>, e: Parser<TE, TStateE>, f: Parser<TF, TStateF>, g: Parser<TG, TStateG>, h: Parser<TH, TStateH>): Parser<TA | TB | TC | TD | TE | TF | TG | TH, undefined | [0, ParserResult<TStateA>] | [1, ParserResult<TStateB>] | [2, ParserResult<TStateC>] | [3, ParserResult<TStateD>] | [4, ParserResult<TStateE>] | [5, ParserResult<TStateF>] | [6, ParserResult<TStateG>] | [7, ParserResult<TStateH>]>;
|
|
578
581
|
/**
|
|
@@ -608,6 +611,7 @@ declare function or<TA, TB, TC, TD, TE, TF, TG, TH, TStateA, TStateB, TStateC, T
|
|
|
608
611
|
* @param i The ninth {@link Parser} to try.
|
|
609
612
|
* @return A {@link Parser} that tries to parse using the provided parsers
|
|
610
613
|
* in order, returning the result of the first successful parser.
|
|
614
|
+
* @since 0.3.0
|
|
611
615
|
*/
|
|
612
616
|
declare function or<TA, TB, TC, TD, TE, TF, TG, TH, TI, TStateA, TStateB, TStateC, TStateD, TStateE, TStateF, TStateG, TStateH, TStateI>(a: Parser<TA, TStateA>, b: Parser<TB, TStateB>, c: Parser<TC, TStateC>, d: Parser<TD, TStateD>, e: Parser<TE, TStateE>, f: Parser<TF, TStateF>, g: Parser<TG, TStateG>, h: Parser<TH, TStateH>, i: Parser<TI, TStateI>): Parser<TA | TB | TC | TD | TE | TF | TG | TH | TI, undefined | [0, ParserResult<TStateA>] | [1, ParserResult<TStateB>] | [2, ParserResult<TStateC>] | [3, ParserResult<TStateD>] | [4, ParserResult<TStateE>] | [5, ParserResult<TStateF>] | [6, ParserResult<TStateG>] | [7, ParserResult<TStateH>] | [8, ParserResult<TStateI>]>;
|
|
613
617
|
/**
|
|
@@ -646,6 +650,7 @@ declare function or<TA, TB, TC, TD, TE, TF, TG, TH, TI, TStateA, TStateB, TState
|
|
|
646
650
|
* @param j The tenth {@link Parser} to try.
|
|
647
651
|
* @return A {@link Parser} that tries to parse using the provided parsers
|
|
648
652
|
* in order, returning the result of the first successful parser.
|
|
653
|
+
* @since 0.3.0
|
|
649
654
|
*/
|
|
650
655
|
declare function or<TA, TB, TC, TD, TE, TF, TG, TH, TI, TJ, TStateA, TStateB, TStateC, TStateD, TStateE, TStateF, TStateG, TStateH, TStateI, TStateJ>(a: Parser<TA, TStateA>, b: Parser<TB, TStateB>, c: Parser<TC, TStateC>, d: Parser<TD, TStateD>, e: Parser<TE, TStateE>, f: Parser<TF, TStateF>, g: Parser<TG, TStateG>, h: Parser<TH, TStateH>, i: Parser<TI, TStateI>, j: Parser<TJ, TStateJ>): Parser<TA | TB | TC | TD | TE | TF | TG | TH | TI | TJ, undefined | [0, ParserResult<TStateA>] | [1, ParserResult<TStateB>] | [2, ParserResult<TStateC>] | [3, ParserResult<TStateD>] | [4, ParserResult<TStateE>] | [5, ParserResult<TStateF>] | [6, ParserResult<TStateG>] | [7, ParserResult<TStateH>] | [8, ParserResult<TStateI>] | [9, ParserResult<TStateJ>]>;
|
|
651
656
|
/**
|
|
@@ -808,6 +813,141 @@ declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<un
|
|
|
808
813
|
* of the two parsers into a single object.
|
|
809
814
|
*/
|
|
810
815
|
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE>, Record<string | symbol, unknown>>;
|
|
816
|
+
/**
|
|
817
|
+
* Merges multiple {@link object} parsers into a single {@link object} parser.
|
|
818
|
+
* It is useful for combining multiple {@link object} parsers so that
|
|
819
|
+
* the unified parser produces a single object containing all the values
|
|
820
|
+
* from the individual parsers while separating the fields into multiple
|
|
821
|
+
* groups.
|
|
822
|
+
* @template TA The type of the first parser.
|
|
823
|
+
* @template TB The type of the second parser.
|
|
824
|
+
* @template TC The type of the third parser.
|
|
825
|
+
* @template TD The type of the fourth parser.
|
|
826
|
+
* @template TE The type of the fifth parser.
|
|
827
|
+
* @template TF The type of the sixth parser.
|
|
828
|
+
* @param a The first {@link object} parser to merge.
|
|
829
|
+
* @param b The second {@link object} parser to merge.
|
|
830
|
+
* @param c The third {@link object} parser to merge.
|
|
831
|
+
* @param d The fourth {@link object} parser to merge.
|
|
832
|
+
* @param e The fifth {@link object} parser to merge.
|
|
833
|
+
* @param f The sixth {@link object} parser to merge.
|
|
834
|
+
* @return A new {@link object} parser that combines the values and states
|
|
835
|
+
* of the parsers into a single object.
|
|
836
|
+
* @since 0.4.0
|
|
837
|
+
*/
|
|
838
|
+
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>, TF extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE, f: TF): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : ExtractObjectTypes<TF> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE> & ExtractObjectTypes<TF>, Record<string | symbol, unknown>>;
|
|
839
|
+
/**
|
|
840
|
+
* Merges multiple {@link object} parsers into a single {@link object} parser.
|
|
841
|
+
* It is useful for combining multiple {@link object} parsers so that
|
|
842
|
+
* the unified parser produces a single object containing all the values
|
|
843
|
+
* from the individual parsers while separating the fields into multiple
|
|
844
|
+
* groups.
|
|
845
|
+
* @template TA The type of the first parser.
|
|
846
|
+
* @template TB The type of the second parser.
|
|
847
|
+
* @template TC The type of the third parser.
|
|
848
|
+
* @template TD The type of the fourth parser.
|
|
849
|
+
* @template TE The type of the fifth parser.
|
|
850
|
+
* @template TF The type of the sixth parser.
|
|
851
|
+
* @template TG The type of the seventh parser.
|
|
852
|
+
* @param a The first {@link object} parser to merge.
|
|
853
|
+
* @param b The second {@link object} parser to merge.
|
|
854
|
+
* @param c The third {@link object} parser to merge.
|
|
855
|
+
* @param d The fourth {@link object} parser to merge.
|
|
856
|
+
* @param e The fifth {@link object} parser to merge.
|
|
857
|
+
* @param f The sixth {@link object} parser to merge.
|
|
858
|
+
* @param g The seventh {@link object} parser to merge.
|
|
859
|
+
* @return A new {@link object} parser that combines the values and states
|
|
860
|
+
* of the parsers into a single object.
|
|
861
|
+
* @since 0.4.0
|
|
862
|
+
*/
|
|
863
|
+
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>, TF extends Parser<unknown, unknown>, TG extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE, f: TF, g: TG): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : ExtractObjectTypes<TF> extends never ? never : ExtractObjectTypes<TG> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE> & ExtractObjectTypes<TF> & ExtractObjectTypes<TG>, Record<string | symbol, unknown>>;
|
|
864
|
+
/**
|
|
865
|
+
* Merges multiple {@link object} parsers into a single {@link object} parser.
|
|
866
|
+
* It is useful for combining multiple {@link object} parsers so that
|
|
867
|
+
* the unified parser produces a single object containing all the values
|
|
868
|
+
* from the individual parsers while separating the fields into multiple
|
|
869
|
+
* groups.
|
|
870
|
+
* @template TA The type of the first parser.
|
|
871
|
+
* @template TB The type of the second parser.
|
|
872
|
+
* @template TC The type of the third parser.
|
|
873
|
+
* @template TD The type of the fourth parser.
|
|
874
|
+
* @template TE The type of the fifth parser.
|
|
875
|
+
* @template TF The type of the sixth parser.
|
|
876
|
+
* @template TG The type of the seventh parser.
|
|
877
|
+
* @template TH The type of the eighth parser.
|
|
878
|
+
* @param a The first {@link object} parser to merge.
|
|
879
|
+
* @param b The second {@link object} parser to merge.
|
|
880
|
+
* @param c The third {@link object} parser to merge.
|
|
881
|
+
* @param d The fourth {@link object} parser to merge.
|
|
882
|
+
* @param e The fifth {@link object} parser to merge.
|
|
883
|
+
* @param f The sixth {@link object} parser to merge.
|
|
884
|
+
* @param g The seventh {@link object} parser to merge.
|
|
885
|
+
* @param h The eighth {@link object} parser to merge.
|
|
886
|
+
* @return A new {@link object} parser that combines the values and states
|
|
887
|
+
* of the parsers into a single object.
|
|
888
|
+
* @since 0.4.0
|
|
889
|
+
*/
|
|
890
|
+
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>, TF extends Parser<unknown, unknown>, TG extends Parser<unknown, unknown>, TH extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE, f: TF, g: TG, h: TH): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : ExtractObjectTypes<TF> extends never ? never : ExtractObjectTypes<TG> extends never ? never : ExtractObjectTypes<TH> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE> & ExtractObjectTypes<TF> & ExtractObjectTypes<TG> & ExtractObjectTypes<TH>, Record<string | symbol, unknown>>;
|
|
891
|
+
/**
|
|
892
|
+
* Merges multiple {@link object} parsers into a single {@link object} parser.
|
|
893
|
+
* It is useful for combining multiple {@link object} parsers so that
|
|
894
|
+
* the unified parser produces a single object containing all the values
|
|
895
|
+
* from the individual parsers while separating the fields into multiple
|
|
896
|
+
* groups.
|
|
897
|
+
* @template TA The type of the first parser.
|
|
898
|
+
* @template TB The type of the second parser.
|
|
899
|
+
* @template TC The type of the third parser.
|
|
900
|
+
* @template TD The type of the fourth parser.
|
|
901
|
+
* @template TE The type of the fifth parser.
|
|
902
|
+
* @template TF The type of the sixth parser.
|
|
903
|
+
* @template TG The type of the seventh parser.
|
|
904
|
+
* @template TH The type of the eighth parser.
|
|
905
|
+
* @template TI The type of the ninth parser.
|
|
906
|
+
* @param a The first {@link object} parser to merge.
|
|
907
|
+
* @param b The second {@link object} parser to merge.
|
|
908
|
+
* @param c The third {@link object} parser to merge.
|
|
909
|
+
* @param d The fourth {@link object} parser to merge.
|
|
910
|
+
* @param e The fifth {@link object} parser to merge.
|
|
911
|
+
* @param f The sixth {@link object} parser to merge.
|
|
912
|
+
* @param g The seventh {@link object} parser to merge.
|
|
913
|
+
* @param h The eighth {@link object} parser to merge.
|
|
914
|
+
* @param i The ninth {@link object} parser to merge.
|
|
915
|
+
* @return A new {@link object} parser that combines the values and states
|
|
916
|
+
* of the parsers into a single object.
|
|
917
|
+
* @since 0.4.0
|
|
918
|
+
*/
|
|
919
|
+
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>, TF extends Parser<unknown, unknown>, TG extends Parser<unknown, unknown>, TH extends Parser<unknown, unknown>, TI extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE, f: TF, g: TG, h: TH, i: TI): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : ExtractObjectTypes<TF> extends never ? never : ExtractObjectTypes<TG> extends never ? never : ExtractObjectTypes<TH> extends never ? never : ExtractObjectTypes<TI> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE> & ExtractObjectTypes<TF> & ExtractObjectTypes<TG> & ExtractObjectTypes<TH> & ExtractObjectTypes<TI>, Record<string | symbol, unknown>>;
|
|
920
|
+
/**
|
|
921
|
+
* Merges multiple {@link object} parsers into a single {@link object} parser.
|
|
922
|
+
* It is useful for combining multiple {@link object} parsers so that
|
|
923
|
+
* the unified parser produces a single object containing all the values
|
|
924
|
+
* from the individual parsers while separating the fields into multiple
|
|
925
|
+
* groups.
|
|
926
|
+
* @template TA The type of the first parser.
|
|
927
|
+
* @template TB The type of the second parser.
|
|
928
|
+
* @template TC The type of the third parser.
|
|
929
|
+
* @template TD The type of the fourth parser.
|
|
930
|
+
* @template TE The type of the fifth parser.
|
|
931
|
+
* @template TF The type of the sixth parser.
|
|
932
|
+
* @template TG The type of the seventh parser.
|
|
933
|
+
* @template TH The type of the eighth parser.
|
|
934
|
+
* @template TI The type of the ninth parser.
|
|
935
|
+
* @template TJ The type of the tenth parser.
|
|
936
|
+
* @param a The first {@link object} parser to merge.
|
|
937
|
+
* @param b The second {@link object} parser to merge.
|
|
938
|
+
* @param c The third {@link object} parser to merge.
|
|
939
|
+
* @param d The fourth {@link object} parser to merge.
|
|
940
|
+
* @param e The fifth {@link object} parser to merge.
|
|
941
|
+
* @param f The sixth {@link object} parser to merge.
|
|
942
|
+
* @param g The seventh {@link object} parser to merge.
|
|
943
|
+
* @param h The eighth {@link object} parser to merge.
|
|
944
|
+
* @param i The ninth {@link object} parser to merge.
|
|
945
|
+
* @param j The tenth {@link object} parser to merge.
|
|
946
|
+
* @return A new {@link object} parser that combines the values and states
|
|
947
|
+
* of the parsers into a single object.
|
|
948
|
+
* @since 0.4.0
|
|
949
|
+
*/
|
|
950
|
+
declare function merge<TA extends Parser<unknown, unknown>, TB extends Parser<unknown, unknown>, TC extends Parser<unknown, unknown>, TD extends Parser<unknown, unknown>, TE extends Parser<unknown, unknown>, TF extends Parser<unknown, unknown>, TG extends Parser<unknown, unknown>, TH extends Parser<unknown, unknown>, TI extends Parser<unknown, unknown>, TJ extends Parser<unknown, unknown>>(a: TA, b: TB, c: TC, d: TD, e: TE, f: TF, g: TG, h: TH, i: TI, j: TJ): ExtractObjectTypes<TA> extends never ? never : ExtractObjectTypes<TB> extends never ? never : ExtractObjectTypes<TC> extends never ? never : ExtractObjectTypes<TD> extends never ? never : ExtractObjectTypes<TE> extends never ? never : ExtractObjectTypes<TF> extends never ? never : ExtractObjectTypes<TG> extends never ? never : ExtractObjectTypes<TH> extends never ? never : ExtractObjectTypes<TI> extends never ? never : ExtractObjectTypes<TJ> extends never ? never : Parser<ExtractObjectTypes<TA> & ExtractObjectTypes<TB> & ExtractObjectTypes<TC> & ExtractObjectTypes<TD> & ExtractObjectTypes<TE> & ExtractObjectTypes<TF> & ExtractObjectTypes<TG> & ExtractObjectTypes<TH> & ExtractObjectTypes<TI> & ExtractObjectTypes<TJ>, Record<string | symbol, unknown>>;
|
|
811
951
|
/**
|
|
812
952
|
* Concatenates two {@link tuple} parsers into a single parser that produces
|
|
813
953
|
* a flattened tuple containing the values from both parsers in order.
|