@fncts/base 0.0.3 → 0.0.6
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/_cjs/collection/Iterable/api/traverseConc.cjs +21 -15
- package/_cjs/collection/Iterable/api/traverseConc.cjs.map +1 -1
- package/_cjs/collection/Iterable/api.cjs +23 -37
- package/_cjs/collection/Iterable/api.cjs.map +1 -1
- package/_cjs/collection/compat/Array/api.cjs +1 -1
- package/_cjs/collection/compat/Array/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/api.cjs +41 -53
- package/_cjs/collection/immutable/Conc/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/definition.cjs +49 -39
- package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/Dictionary/definition.cjs +4 -2
- package/_cjs/collection/immutable/Dictionary/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/HashMap/api.cjs +35 -108
- package/_cjs/collection/immutable/HashMap/api.cjs.map +1 -1
- package/_cjs/collection/immutable/HashMap/definition.cjs +19 -15
- package/_cjs/collection/immutable/HashMap/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/HashSet/api.cjs +10 -10
- package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs +22 -0
- package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs.map +1 -0
- package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs +20 -0
- package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs.map +1 -0
- package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs +20 -0
- package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs.map +1 -0
- package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs +33 -0
- package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs.map +1 -0
- package/_cjs/collection/immutable/ImmutableArray/api.cjs +252 -409
- package/_cjs/collection/immutable/ImmutableArray/api.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/definition.cjs +12 -10
- package/_cjs/collection/immutable/ImmutableArray/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/instances.cjs +153 -157
- package/_cjs/collection/immutable/ImmutableArray/instances.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray.cjs +52 -0
- package/_cjs/collection/immutable/ImmutableArray.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs +125 -184
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs +2 -4
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs +25 -2
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs +5 -3
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs +45 -81
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs.map +1 -1
- package/_cjs/collection/immutable/List/api.cjs +4 -7
- package/_cjs/collection/immutable/List/api.cjs.map +1 -1
- package/_cjs/collection/immutable/RoseTree/api.cjs +484 -0
- package/_cjs/collection/immutable/RoseTree/api.cjs.map +1 -0
- package/_cjs/collection/immutable/RoseTree/definition.cjs +58 -0
- package/_cjs/collection/immutable/RoseTree/definition.cjs.map +1 -0
- package/_cjs/collection/immutable/RoseTree.cjs +32 -0
- package/_cjs/collection/immutable/RoseTree.cjs.map +1 -0
- package/_cjs/collection/immutable/SortedMap/api.cjs +65 -65
- package/_cjs/collection/immutable/SortedMap/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Vector/api.cjs +70 -15
- package/_cjs/collection/immutable/Vector/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Vector/definition.cjs +13 -11
- package/_cjs/collection/immutable/Vector/definition.cjs.map +1 -1
- package/_cjs/collection/mutable/HashMap.cjs +5 -5
- package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
- package/_cjs/collection/mutable/HashSet.cjs +4 -4
- package/_cjs/collection/mutable/HashSet.cjs.map +1 -1
- package/_cjs/control/Eval/api.cjs +6 -0
- package/_cjs/control/Eval/api.cjs.map +1 -1
- package/_cjs/control/Eval/definition.cjs +7 -0
- package/_cjs/control/Eval/definition.cjs.map +1 -1
- package/_cjs/control/Eval/instance.cjs +14 -25
- package/_cjs/control/Eval/instance.cjs.map +1 -1
- package/_cjs/control/Z/definition.cjs +9 -3
- package/_cjs/control/Z/definition.cjs.map +1 -1
- package/_cjs/control/Z/instances.cjs +6 -13
- package/_cjs/control/Z/instances.cjs.map +1 -1
- package/_cjs/data/Branded/definition.cjs +29 -0
- package/_cjs/data/Branded/definition.cjs.map +1 -0
- package/_cjs/data/Branded/derivations.cjs +58 -0
- package/_cjs/data/Branded/derivations.cjs.map +1 -0
- package/_cjs/data/Branded.cjs +32 -0
- package/_cjs/data/Branded.cjs.map +1 -0
- package/_cjs/data/CaseClass.cjs +4 -2
- package/_cjs/data/CaseClass.cjs.map +1 -1
- package/_cjs/data/Cause/api/fold.cjs +2 -0
- package/_cjs/data/Cause/api/fold.cjs.map +1 -1
- package/_cjs/data/Cause/api.cjs +23 -0
- package/_cjs/data/Cause/api.cjs.map +1 -1
- package/_cjs/data/Const/api.cjs +3 -7
- package/_cjs/data/Const/api.cjs.map +1 -1
- package/_cjs/data/Const/definition.cjs +19 -1
- package/_cjs/data/Const/definition.cjs.map +1 -1
- package/_cjs/data/Const/instances.cjs +9 -20
- package/_cjs/data/Const/instances.cjs.map +1 -1
- package/_cjs/data/DecodeError/definition.cjs +308 -0
- package/_cjs/data/DecodeError/definition.cjs.map +1 -0
- package/_cjs/data/DecodeError.cjs +19 -0
- package/_cjs/data/DecodeError.cjs.map +1 -0
- package/_cjs/data/Decoder/api.cjs +217 -0
- package/_cjs/data/Decoder/api.cjs.map +1 -0
- package/_cjs/data/Decoder/definition.cjs +41 -0
- package/_cjs/data/Decoder/definition.cjs.map +1 -0
- package/_cjs/data/Decoder.cjs +32 -0
- package/_cjs/data/Decoder.cjs.map +1 -0
- package/_cjs/data/Duration/api.cjs +22 -9
- package/_cjs/data/Duration/api.cjs.map +1 -1
- package/_cjs/data/Either/api/alignWith.cjs +2 -0
- package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
- package/_cjs/data/Either/api.cjs +105 -42
- package/_cjs/data/Either/api.cjs.map +1 -1
- package/_cjs/data/Either/definition.cjs +39 -10
- package/_cjs/data/Either/definition.cjs.map +1 -1
- package/_cjs/data/Either/destructors.cjs +2 -0
- package/_cjs/data/Either/destructors.cjs.map +1 -1
- package/_cjs/data/Either/instances.cjs +123 -40
- package/_cjs/data/Either/instances.cjs.map +1 -1
- package/_cjs/data/Environment/api.cjs +29 -8
- package/_cjs/data/Environment/api.cjs.map +1 -1
- package/_cjs/data/Identity/api.cjs +35 -6
- package/_cjs/data/Identity/api.cjs.map +1 -1
- package/_cjs/data/Identity/definition.cjs +10 -1
- package/_cjs/data/Identity/definition.cjs.map +1 -1
- package/_cjs/data/Identity/instances.cjs +11 -25
- package/_cjs/data/Identity/instances.cjs.map +1 -1
- package/_cjs/data/Interval.cjs +154 -0
- package/_cjs/data/Interval.cjs.map +1 -0
- package/_cjs/data/Maybe/api.cjs +30 -43
- package/_cjs/data/Maybe/api.cjs.map +1 -1
- package/_cjs/data/Maybe/definition.cjs +45 -18
- package/_cjs/data/Maybe/definition.cjs.map +1 -1
- package/_cjs/data/Maybe/destructors.cjs +1 -0
- package/_cjs/data/Maybe/destructors.cjs.map +1 -1
- package/_cjs/data/Maybe/instances.cjs +62 -42
- package/_cjs/data/Maybe/instances.cjs.map +1 -1
- package/_cjs/data/Newtype.cjs +5 -3
- package/_cjs/data/Newtype.cjs.map +1 -1
- package/_cjs/data/Patch/api.cjs +1 -1
- package/_cjs/data/Patch/api.cjs.map +1 -1
- package/_cjs/data/Refinement/api.cjs +0 -4
- package/_cjs/data/Refinement/api.cjs.map +1 -1
- package/_cjs/data/Struct/definition.cjs +4 -2
- package/_cjs/data/Struct/definition.cjs.map +1 -1
- package/_cjs/data/These/api.cjs +299 -0
- package/_cjs/data/These/api.cjs.map +1 -0
- package/_cjs/data/These/constructors.cjs +24 -4
- package/_cjs/data/These/constructors.cjs.map +1 -1
- package/_cjs/data/These/definition.cjs +16 -0
- package/_cjs/data/These/definition.cjs.map +1 -1
- package/_cjs/data/These/destructors.cjs +70 -0
- package/_cjs/data/These/destructors.cjs.map +1 -1
- package/_cjs/data/These/instances.cjs +54 -0
- package/_cjs/data/These/instances.cjs.map +1 -0
- package/_cjs/data/These.cjs +13 -0
- package/_cjs/data/These.cjs.map +1 -1
- package/_cjs/data/bigint/definition.cjs +6 -0
- package/_cjs/data/bigint/definition.cjs.map +1 -0
- package/_cjs/data/bigint/instances.cjs +24 -0
- package/_cjs/data/bigint/instances.cjs.map +1 -0
- package/_cjs/data/bigint.cjs +32 -0
- package/_cjs/data/bigint.cjs.map +1 -0
- package/_cjs/data/boolean/definition.cjs +6 -0
- package/_cjs/data/boolean/definition.cjs.map +1 -0
- package/_cjs/data/boolean/instances.cjs +24 -0
- package/_cjs/data/boolean/instances.cjs.map +1 -0
- package/_cjs/data/boolean.cjs +32 -0
- package/_cjs/data/boolean.cjs.map +1 -0
- package/_cjs/data/number/instances.cjs +18 -5
- package/_cjs/data/number/instances.cjs.map +1 -1
- package/_cjs/data/object/instances.cjs +24 -0
- package/_cjs/data/object/instances.cjs.map +1 -0
- package/_cjs/data/string/instances.cjs +24 -9
- package/_cjs/data/string/instances.cjs.map +1 -1
- package/_cjs/internal/Stack.cjs +4 -0
- package/_cjs/internal/Stack.cjs.map +1 -1
- package/_cjs/json/EitherJson.cjs +33 -0
- package/_cjs/json/EitherJson.cjs.map +1 -0
- package/_cjs/json/MaybeJson.cjs +31 -0
- package/_cjs/json/MaybeJson.cjs.map +1 -0
- package/_cjs/json/TheseJson.cjs +37 -0
- package/_cjs/json/TheseJson.cjs.map +1 -0
- package/_cjs/optics/Optional/definition.cjs +6 -4
- package/_cjs/optics/Optional/definition.cjs.map +1 -1
- package/_cjs/optics/Traversal/api/compose.cjs +1 -1
- package/_cjs/optics/Traversal/api/compose.cjs.map +1 -1
- package/_cjs/optics/Traversal/api/fromTraversable.cjs +4 -4
- package/_cjs/optics/Traversal/api/fromTraversable.cjs.map +1 -1
- package/_cjs/optics/Traversal/definition.cjs +17 -12
- package/_cjs/optics/Traversal/definition.cjs.map +1 -1
- package/_cjs/typeclass/Align.cjs +0 -20
- package/_cjs/typeclass/Align.cjs.map +1 -1
- package/_cjs/typeclass/Alt.cjs +5 -15
- package/_cjs/typeclass/Alt.cjs.map +1 -1
- package/_cjs/typeclass/Alternative.cjs +0 -23
- package/_cjs/typeclass/Alternative.cjs.map +1 -1
- package/_cjs/typeclass/Applicative.cjs +0 -22
- package/_cjs/typeclass/Applicative.cjs.map +1 -1
- package/_cjs/typeclass/ApplicativeExcept.cjs +40 -34
- package/_cjs/typeclass/ApplicativeExcept.cjs.map +1 -1
- package/_cjs/typeclass/Apply.cjs +93 -49
- package/_cjs/typeclass/Apply.cjs.map +1 -1
- package/_cjs/typeclass/Chain.cjs +40 -17
- package/_cjs/typeclass/Chain.cjs.map +1 -1
- package/_cjs/typeclass/Closure.cjs +1 -4
- package/_cjs/typeclass/Closure.cjs.map +1 -1
- package/_cjs/typeclass/Eq/definition.cjs +18 -0
- package/_cjs/typeclass/Eq/definition.cjs.map +1 -0
- package/_cjs/typeclass/Eq/derivations.cjs +59 -0
- package/_cjs/typeclass/Eq/derivations.cjs.map +1 -0
- package/_cjs/typeclass/Eq.cjs +11 -13
- package/_cjs/typeclass/Eq.cjs.map +1 -1
- package/_cjs/typeclass/Fail.cjs +6 -12
- package/_cjs/typeclass/Fail.cjs.map +1 -1
- package/_cjs/typeclass/Filterable.cjs +31 -18
- package/_cjs/typeclass/Filterable.cjs.map +1 -1
- package/_cjs/typeclass/FilterableWithIndex.cjs +0 -26
- package/_cjs/typeclass/FilterableWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/Foldable.cjs +33 -19
- package/_cjs/typeclass/Foldable.cjs.map +1 -1
- package/_cjs/typeclass/FoldableWithIndex.cjs +33 -21
- package/_cjs/typeclass/FoldableWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/Functor.cjs +19 -16
- package/_cjs/typeclass/Functor.cjs.map +1 -1
- package/_cjs/typeclass/FunctorWithIndex.cjs +0 -21
- package/_cjs/typeclass/FunctorWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/Guard/api.cjs +40 -0
- package/_cjs/typeclass/Guard/api.cjs.map +1 -0
- package/_cjs/typeclass/Guard/definition.cjs +40 -0
- package/_cjs/typeclass/Guard/definition.cjs.map +1 -0
- package/_cjs/typeclass/Guard/derivations.cjs +85 -0
- package/_cjs/typeclass/Guard/derivations.cjs.map +1 -0
- package/_cjs/typeclass/Guard.cjs +32 -0
- package/_cjs/typeclass/Guard.cjs.map +1 -0
- package/_cjs/typeclass/HashEq.cjs +3 -3
- package/_cjs/typeclass/HashEq.cjs.map +1 -1
- package/_cjs/typeclass/Monad.cjs +0 -22
- package/_cjs/typeclass/Monad.cjs.map +1 -1
- package/_cjs/typeclass/MonadExcept.cjs +12 -19
- package/_cjs/typeclass/MonadExcept.cjs.map +1 -1
- package/_cjs/typeclass/Monoid.cjs +56 -2
- package/_cjs/typeclass/Monoid.cjs.map +1 -1
- package/_cjs/typeclass/Nil.cjs +10 -0
- package/_cjs/typeclass/Nil.cjs.map +1 -1
- package/_cjs/typeclass/Ord/api/contramap.cjs +2 -4
- package/_cjs/typeclass/Ord/api/contramap.cjs.map +1 -1
- package/_cjs/typeclass/Ord/api/max.cjs +1 -1
- package/_cjs/typeclass/Ord/api/max.cjs.map +1 -1
- package/_cjs/typeclass/Ord/api/min.cjs +1 -1
- package/_cjs/typeclass/Ord/api/min.cjs.map +1 -1
- package/_cjs/typeclass/Ord/definition.cjs +2 -3
- package/_cjs/typeclass/Ord/definition.cjs.map +1 -1
- package/_cjs/typeclass/Ord/instances.cjs +7 -7
- package/_cjs/typeclass/Ord/instances.cjs.map +1 -1
- package/_cjs/typeclass/Pointed.cjs +6 -11
- package/_cjs/typeclass/Pointed.cjs.map +1 -1
- package/_cjs/typeclass/Semialign.cjs +77 -94
- package/_cjs/typeclass/Semialign.cjs.map +1 -1
- package/_cjs/typeclass/Semigroup/api.cjs +2 -2
- package/_cjs/typeclass/Semigroup/api.cjs.map +1 -1
- package/_cjs/typeclass/Semigroup/definition.cjs.map +1 -1
- package/_cjs/typeclass/Semigroup/derivations.cjs +63 -0
- package/_cjs/typeclass/Semigroup/derivations.cjs.map +1 -0
- package/_cjs/typeclass/Semimonoidal.cjs +9 -13
- package/_cjs/typeclass/Semimonoidal.cjs.map +1 -1
- package/_cjs/typeclass/Showable/show.cjs +11 -11
- package/_cjs/typeclass/Showable/show.cjs.map +1 -1
- package/_cjs/typeclass/Traversable.cjs +26 -34
- package/_cjs/typeclass/Traversable.cjs.map +1 -1
- package/_cjs/typeclass/TraversableWithIndex.cjs +7 -38
- package/_cjs/typeclass/TraversableWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/Witherable.cjs +41 -42
- package/_cjs/typeclass/Witherable.cjs.map +1 -1
- package/_cjs/typeclass/WitherableWithIndex.cjs +41 -50
- package/_cjs/typeclass/WitherableWithIndex.cjs.map +1 -1
- package/_cjs/typeclass.cjs +13 -0
- package/_cjs/typeclass.cjs.map +1 -1
- package/_cjs/util/predicates.cjs +5 -0
- package/_cjs/util/predicates.cjs.map +1 -1
- package/_mjs/collection/Iterable/api/traverseConc.mjs +20 -15
- package/_mjs/collection/Iterable/api/traverseConc.mjs.map +1 -1
- package/_mjs/collection/Iterable/api.mjs +21 -31
- package/_mjs/collection/Iterable/api.mjs.map +1 -1
- package/_mjs/collection/compat/Array/api.mjs +1 -1
- package/_mjs/collection/compat/Array/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/api.mjs +35 -36
- package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/definition.mjs +48 -39
- package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/Dictionary/definition.mjs +3 -2
- package/_mjs/collection/immutable/Dictionary/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/HashMap/api.mjs +26 -66
- package/_mjs/collection/immutable/HashMap/api.mjs.map +1 -1
- package/_mjs/collection/immutable/HashMap/definition.mjs +18 -15
- package/_mjs/collection/immutable/HashMap/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/HashSet/api.mjs +5 -5
- package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs +10 -0
- package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs.map +1 -0
- package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs +9 -0
- package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs.map +1 -0
- package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs +9 -0
- package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs.map +1 -0
- package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs +21 -0
- package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs.map +1 -0
- package/_mjs/collection/immutable/ImmutableArray/api.mjs +229 -326
- package/_mjs/collection/immutable/ImmutableArray/api.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/definition.mjs +11 -10
- package/_mjs/collection/immutable/ImmutableArray/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/instances.mjs +151 -138
- package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray.mjs +7 -1
- package/_mjs/collection/immutable/ImmutableArray.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs +113 -145
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs +7 -7
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs +20 -2
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs +4 -3
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs +46 -67
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs.map +1 -1
- package/_mjs/collection/immutable/List/api.mjs +4 -5
- package/_mjs/collection/immutable/List/api.mjs.map +1 -1
- package/_mjs/collection/immutable/RoseTree/api.mjs +447 -0
- package/_mjs/collection/immutable/RoseTree/api.mjs.map +1 -0
- package/_mjs/collection/immutable/RoseTree/definition.mjs +35 -0
- package/_mjs/collection/immutable/RoseTree/definition.mjs.map +1 -0
- package/_mjs/collection/immutable/RoseTree.mjs +4 -0
- package/_mjs/collection/immutable/RoseTree.mjs.map +1 -0
- package/_mjs/collection/immutable/SortedMap/api.mjs +65 -65
- package/_mjs/collection/immutable/SortedMap/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Vector/api.mjs +59 -15
- package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Vector/definition.mjs +12 -11
- package/_mjs/collection/immutable/Vector/definition.mjs.map +1 -1
- package/_mjs/collection/mutable/HashMap.mjs +5 -5
- package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
- package/_mjs/collection/mutable/HashSet.mjs +4 -4
- package/_mjs/collection/mutable/HashSet.mjs.map +1 -1
- package/_mjs/control/Eval/api.mjs +5 -2
- package/_mjs/control/Eval/api.mjs.map +1 -1
- package/_mjs/control/Eval/definition.mjs +1 -0
- package/_mjs/control/Eval/definition.mjs.map +1 -1
- package/_mjs/control/Eval/instance.mjs +15 -18
- package/_mjs/control/Eval/instance.mjs.map +1 -1
- package/_mjs/control/Z/definition.mjs +2 -0
- package/_mjs/control/Z/definition.mjs.map +1 -1
- package/_mjs/control/Z/instances.mjs +7 -8
- package/_mjs/control/Z/instances.mjs.map +1 -1
- package/_mjs/data/Branded/definition.mjs +18 -0
- package/_mjs/data/Branded/definition.mjs.map +1 -0
- package/_mjs/data/Branded/derivations.mjs +39 -0
- package/_mjs/data/Branded/derivations.mjs.map +1 -0
- package/_mjs/data/Branded.mjs +4 -0
- package/_mjs/data/Branded.mjs.map +1 -0
- package/_mjs/data/CaseClass.mjs +3 -2
- package/_mjs/data/CaseClass.mjs.map +1 -1
- package/_mjs/data/Cause/api/fold.mjs +2 -0
- package/_mjs/data/Cause/api/fold.mjs.map +1 -1
- package/_mjs/data/Cause/api.mjs +20 -0
- package/_mjs/data/Cause/api.mjs.map +1 -1
- package/_mjs/data/Const/api.mjs +3 -3
- package/_mjs/data/Const/api.mjs.map +1 -1
- package/_mjs/data/Const/definition.mjs +13 -1
- package/_mjs/data/Const/definition.mjs.map +1 -1
- package/_mjs/data/Const/instances.mjs +7 -15
- package/_mjs/data/Const/instances.mjs.map +1 -1
- package/_mjs/data/DecodeError/definition.mjs +226 -0
- package/_mjs/data/DecodeError/definition.mjs.map +1 -0
- package/_mjs/data/DecodeError.mjs +3 -0
- package/_mjs/data/DecodeError.mjs.map +1 -0
- package/_mjs/data/Decoder/api.mjs +179 -0
- package/_mjs/data/Decoder/api.mjs.map +1 -0
- package/_mjs/data/Decoder/definition.mjs +24 -0
- package/_mjs/data/Decoder/definition.mjs.map +1 -0
- package/_mjs/data/Decoder.mjs +4 -0
- package/_mjs/data/Decoder.mjs.map +1 -0
- package/_mjs/data/Duration/api.mjs +17 -8
- package/_mjs/data/Duration/api.mjs.map +1 -1
- package/_mjs/data/Either/api/alignWith.mjs +2 -0
- package/_mjs/data/Either/api/alignWith.mjs.map +1 -1
- package/_mjs/data/Either/api.mjs +91 -21
- package/_mjs/data/Either/api.mjs.map +1 -1
- package/_mjs/data/Either/definition.mjs +25 -5
- package/_mjs/data/Either/definition.mjs.map +1 -1
- package/_mjs/data/Either/destructors.mjs +2 -0
- package/_mjs/data/Either/destructors.mjs.map +1 -1
- package/_mjs/data/Either/instances.mjs +109 -39
- package/_mjs/data/Either/instances.mjs.map +1 -1
- package/_mjs/data/Environment/api.mjs +23 -7
- package/_mjs/data/Environment/api.mjs.map +1 -1
- package/_mjs/data/Identity/api.mjs +24 -5
- package/_mjs/data/Identity/api.mjs.map +1 -1
- package/_mjs/data/Identity/definition.mjs +3 -1
- package/_mjs/data/Identity/definition.mjs.map +1 -1
- package/_mjs/data/Identity/instances.mjs +12 -18
- package/_mjs/data/Identity/instances.mjs.map +1 -1
- package/_mjs/data/Interval.mjs +114 -0
- package/_mjs/data/Interval.mjs.map +1 -0
- package/_mjs/data/Maybe/api.mjs +30 -35
- package/_mjs/data/Maybe/api.mjs.map +1 -1
- package/_mjs/data/Maybe/definition.mjs +37 -14
- package/_mjs/data/Maybe/definition.mjs.map +1 -1
- package/_mjs/data/Maybe/destructors.mjs +1 -0
- package/_mjs/data/Maybe/destructors.mjs.map +1 -1
- package/_mjs/data/Maybe/instances.mjs +56 -39
- package/_mjs/data/Maybe/instances.mjs.map +1 -1
- package/_mjs/data/Newtype.mjs +4 -3
- package/_mjs/data/Newtype.mjs.map +1 -1
- package/_mjs/data/Patch/api.mjs +1 -1
- package/_mjs/data/Patch/api.mjs.map +1 -1
- package/_mjs/data/Refinement/api.mjs +0 -4
- package/_mjs/data/Refinement/api.mjs.map +1 -1
- package/_mjs/data/Struct/definition.mjs +3 -2
- package/_mjs/data/Struct/definition.mjs.map +1 -1
- package/_mjs/data/These/api.mjs +262 -0
- package/_mjs/data/These/api.mjs.map +1 -0
- package/_mjs/data/These/constructors.mjs +14 -2
- package/_mjs/data/These/constructors.mjs.map +1 -1
- package/_mjs/data/These/definition.mjs +8 -0
- package/_mjs/data/These/definition.mjs.map +1 -1
- package/_mjs/data/These/destructors.mjs +53 -0
- package/_mjs/data/These/destructors.mjs.map +1 -1
- package/_mjs/data/These/instances.mjs +36 -0
- package/_mjs/data/These/instances.mjs.map +1 -0
- package/_mjs/data/These.mjs +1 -0
- package/_mjs/data/These.mjs.map +1 -1
- package/_mjs/data/bigint/definition.mjs +2 -0
- package/_mjs/data/bigint/definition.mjs.map +1 -0
- package/_mjs/data/bigint/instances.mjs +10 -0
- package/_mjs/data/bigint/instances.mjs.map +1 -0
- package/_mjs/data/bigint.mjs +4 -0
- package/_mjs/data/bigint.mjs.map +1 -0
- package/_mjs/data/boolean/definition.mjs +2 -0
- package/_mjs/data/boolean/definition.mjs.map +1 -0
- package/_mjs/data/boolean/instances.mjs +10 -0
- package/_mjs/data/boolean/instances.mjs.map +1 -0
- package/_mjs/data/boolean.mjs +4 -0
- package/_mjs/data/boolean.mjs.map +1 -0
- package/_mjs/data/number/instances.mjs +14 -4
- package/_mjs/data/number/instances.mjs.map +1 -1
- package/_mjs/data/object/instances.mjs +10 -0
- package/_mjs/data/object/instances.mjs.map +1 -0
- package/_mjs/data/string/instances.mjs +20 -8
- package/_mjs/data/string/instances.mjs.map +1 -1
- package/_mjs/internal/Stack.mjs +4 -0
- package/_mjs/internal/Stack.mjs.map +1 -1
- package/_mjs/json/EitherJson.mjs +18 -0
- package/_mjs/json/EitherJson.mjs.map +1 -0
- package/_mjs/json/MaybeJson.mjs +16 -0
- package/_mjs/json/MaybeJson.mjs.map +1 -0
- package/_mjs/json/TheseJson.mjs +22 -0
- package/_mjs/json/TheseJson.mjs.map +1 -0
- package/_mjs/optics/Optional/definition.mjs +5 -4
- package/_mjs/optics/Optional/definition.mjs.map +1 -1
- package/_mjs/optics/Traversal/api/compose.mjs +1 -1
- package/_mjs/optics/Traversal/api/compose.mjs.map +1 -1
- package/_mjs/optics/Traversal/api/fromTraversable.mjs +5 -4
- package/_mjs/optics/Traversal/api/fromTraversable.mjs.map +1 -1
- package/_mjs/optics/Traversal/definition.mjs +14 -12
- package/_mjs/optics/Traversal/definition.mjs.map +1 -1
- package/_mjs/typeclass/Align.mjs +0 -11
- package/_mjs/typeclass/Align.mjs.map +1 -1
- package/_mjs/typeclass/Alt.mjs +4 -7
- package/_mjs/typeclass/Alt.mjs.map +1 -1
- package/_mjs/typeclass/Alternative.mjs +0 -13
- package/_mjs/typeclass/Alternative.mjs.map +1 -1
- package/_mjs/typeclass/Applicative.mjs +0 -12
- package/_mjs/typeclass/Applicative.mjs.map +1 -1
- package/_mjs/typeclass/ApplicativeExcept.mjs +32 -24
- package/_mjs/typeclass/ApplicativeExcept.mjs.map +1 -1
- package/_mjs/typeclass/Apply.mjs +85 -42
- package/_mjs/typeclass/Apply.mjs.map +1 -1
- package/_mjs/typeclass/Chain.mjs +33 -12
- package/_mjs/typeclass/Chain.mjs.map +1 -1
- package/_mjs/typeclass/Closure.mjs +1 -4
- package/_mjs/typeclass/Closure.mjs.map +1 -1
- package/_mjs/typeclass/Eq/definition.mjs +9 -0
- package/_mjs/typeclass/Eq/definition.mjs.map +1 -0
- package/_mjs/typeclass/Eq/derivations.mjs +46 -0
- package/_mjs/typeclass/Eq/derivations.mjs.map +1 -0
- package/_mjs/typeclass/Eq.mjs +1 -11
- package/_mjs/typeclass/Eq.mjs.map +1 -1
- package/_mjs/typeclass/Fail.mjs +5 -7
- package/_mjs/typeclass/Fail.mjs.map +1 -1
- package/_mjs/typeclass/Filterable.mjs +27 -13
- package/_mjs/typeclass/Filterable.mjs.map +1 -1
- package/_mjs/typeclass/FilterableWithIndex.mjs +0 -16
- package/_mjs/typeclass/FilterableWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/Foldable.mjs +29 -12
- package/_mjs/typeclass/Foldable.mjs.map +1 -1
- package/_mjs/typeclass/FoldableWithIndex.mjs +29 -13
- package/_mjs/typeclass/FoldableWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/Functor.mjs +16 -9
- package/_mjs/typeclass/Functor.mjs.map +1 -1
- package/_mjs/typeclass/FunctorWithIndex.mjs +0 -12
- package/_mjs/typeclass/FunctorWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/Guard/api.mjs +23 -0
- package/_mjs/typeclass/Guard/api.mjs.map +1 -0
- package/_mjs/typeclass/Guard/definition.mjs +23 -0
- package/_mjs/typeclass/Guard/definition.mjs.map +1 -0
- package/_mjs/typeclass/Guard/derivations.mjs +67 -0
- package/_mjs/typeclass/Guard/derivations.mjs.map +1 -0
- package/_mjs/typeclass/Guard.mjs +4 -0
- package/_mjs/typeclass/Guard.mjs.map +1 -0
- package/_mjs/typeclass/HashEq.mjs +3 -3
- package/_mjs/typeclass/HashEq.mjs.map +1 -1
- package/_mjs/typeclass/Monad.mjs +0 -12
- package/_mjs/typeclass/Monad.mjs.map +1 -1
- package/_mjs/typeclass/MonadExcept.mjs +9 -13
- package/_mjs/typeclass/MonadExcept.mjs.map +1 -1
- package/_mjs/typeclass/Monoid.mjs +50 -1
- package/_mjs/typeclass/Monoid.mjs.map +1 -1
- package/_mjs/typeclass/Nil.mjs +8 -1
- package/_mjs/typeclass/Nil.mjs.map +1 -1
- package/_mjs/typeclass/Ord/api/contramap.mjs +2 -4
- package/_mjs/typeclass/Ord/api/contramap.mjs.map +1 -1
- package/_mjs/typeclass/Ord/api/max.mjs +1 -1
- package/_mjs/typeclass/Ord/api/max.mjs.map +1 -1
- package/_mjs/typeclass/Ord/api/min.mjs +1 -1
- package/_mjs/typeclass/Ord/api/min.mjs.map +1 -1
- package/_mjs/typeclass/Ord/definition.mjs +2 -3
- package/_mjs/typeclass/Ord/definition.mjs.map +1 -1
- package/_mjs/typeclass/Ord/instances.mjs +7 -7
- package/_mjs/typeclass/Ord/instances.mjs.map +1 -1
- package/_mjs/typeclass/Pointed.mjs +5 -4
- package/_mjs/typeclass/Pointed.mjs.map +1 -1
- package/_mjs/typeclass/Semialign.mjs +67 -74
- package/_mjs/typeclass/Semialign.mjs.map +1 -1
- package/_mjs/typeclass/Semigroup/api.mjs +2 -2
- package/_mjs/typeclass/Semigroup/api.mjs.map +1 -1
- package/_mjs/typeclass/Semigroup/definition.mjs.map +1 -1
- package/_mjs/typeclass/Semigroup/derivations.mjs +50 -0
- package/_mjs/typeclass/Semigroup/derivations.mjs.map +1 -0
- package/_mjs/typeclass/Semigroup.mjs +1 -1
- package/_mjs/typeclass/Semimonoidal.mjs +8 -6
- package/_mjs/typeclass/Semimonoidal.mjs.map +1 -1
- package/_mjs/typeclass/Showable/show.mjs +11 -11
- package/_mjs/typeclass/Showable/show.mjs.map +1 -1
- package/_mjs/typeclass/Traversable.mjs +25 -24
- package/_mjs/typeclass/Traversable.mjs.map +1 -1
- package/_mjs/typeclass/TraversableWithIndex.mjs +6 -24
- package/_mjs/typeclass/TraversableWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/Witherable.mjs +39 -32
- package/_mjs/typeclass/Witherable.mjs.map +1 -1
- package/_mjs/typeclass/WitherableWithIndex.mjs +39 -37
- package/_mjs/typeclass/WitherableWithIndex.mjs.map +1 -1
- package/_mjs/typeclass.mjs +1 -0
- package/_mjs/typeclass.mjs.map +1 -1
- package/_mjs/util/predicates.mjs +3 -0
- package/_mjs/util/predicates.mjs.map +1 -1
- package/_src/collection/Iterable/api/traverseConc.ts +21 -29
- package/_src/collection/Iterable/api.ts +20 -34
- package/_src/collection/compat/Array/api.ts +1 -1
- package/_src/collection/immutable/Conc/api.ts +26 -46
- package/_src/collection/immutable/Conc/definition.ts +19 -8
- package/_src/collection/immutable/Dictionary/definition.ts +1 -1
- package/_src/collection/immutable/HashMap/api.ts +24 -81
- package/_src/collection/immutable/HashMap/definition.ts +7 -9
- package/_src/collection/immutable/HashMap/internal.ts +1 -1
- package/_src/collection/immutable/HashSet/api.ts +4 -4
- package/_src/collection/immutable/ImmutableArray/api/chunksOf.ts +6 -0
- package/_src/collection/immutable/ImmutableArray/api/slice.ts +6 -0
- package/_src/collection/immutable/ImmutableArray/api/splitAt.ts +6 -0
- package/_src/collection/immutable/ImmutableArray/api/splitWhere.ts +18 -0
- package/_src/collection/immutable/ImmutableArray/api.ts +181 -267
- package/_src/collection/immutable/ImmutableArray/definition.ts +6 -8
- package/_src/collection/immutable/ImmutableArray/instances.ts +156 -134
- package/_src/collection/immutable/ImmutableArray.ts +7 -0
- package/_src/collection/immutable/ImmutableNonEmptyArray/api.ts +87 -157
- package/_src/collection/immutable/ImmutableNonEmptyArray/constructors.ts +2 -0
- package/_src/collection/immutable/ImmutableNonEmptyArray/definition.ts +18 -6
- package/_src/collection/immutable/ImmutableNonEmptyArray/instances.ts +39 -49
- package/_src/collection/immutable/List/api.ts +2 -6
- package/_src/collection/immutable/RoseTree/api.ts +272 -0
- package/_src/collection/immutable/RoseTree/definition.ts +29 -0
- package/_src/collection/immutable/RoseTree.ts +4 -0
- package/_src/collection/immutable/SortedMap/api.ts +56 -53
- package/_src/collection/immutable/Vector/api.ts +57 -17
- package/_src/collection/immutable/Vector/definition.ts +10 -0
- package/_src/collection/mutable/HashMap.ts +5 -5
- package/_src/collection/mutable/HashSet.ts +4 -4
- package/_src/control/Eval/api.ts +5 -1
- package/_src/control/Eval/definition.ts +5 -8
- package/_src/control/Eval/instance.ts +16 -15
- package/_src/control/Z/definition.ts +26 -19
- package/_src/control/Z/instances.ts +9 -8
- package/_src/data/Branded/definition.ts +47 -0
- package/_src/data/Branded/derivations.ts +57 -0
- package/_src/data/Branded.ts +4 -0
- package/_src/data/CaseClass.ts +2 -2
- package/_src/data/Cause/api/fold.ts +1 -0
- package/_src/data/Cause/api.ts +18 -0
- package/_src/data/Const/api.ts +3 -3
- package/_src/data/Const/definition.ts +22 -5
- package/_src/data/Const/instances.ts +12 -21
- package/_src/data/DecodeError/definition.ts +227 -0
- package/_src/data/DecodeError.ts +3 -0
- package/_src/data/Decoder/api.ts +198 -0
- package/_src/data/Decoder/definition.ts +25 -0
- package/_src/data/Decoder.ts +4 -0
- package/_src/data/Duration/api.ts +21 -14
- package/_src/data/Either/api/alignWith.ts +2 -0
- package/_src/data/Either/api.ts +85 -30
- package/_src/data/Either/definition.ts +41 -19
- package/_src/data/Either/destructors.ts +1 -0
- package/_src/data/Either/instances.ts +102 -51
- package/_src/data/Environment/api.ts +19 -4
- package/_src/data/Identity/api.ts +19 -4
- package/_src/data/Identity/definition.ts +7 -3
- package/_src/data/Identity/instances.ts +15 -8
- package/_src/data/Interval.ts +103 -0
- package/_src/data/Maybe/api.ts +21 -31
- package/_src/data/Maybe/definition.ts +31 -19
- package/_src/data/Maybe/destructors.ts +1 -0
- package/_src/data/Maybe/instances.ts +61 -34
- package/_src/data/Newtype.ts +11 -32
- package/_src/data/Patch/api.ts +1 -1
- package/_src/data/Refinement/api.ts +4 -2
- package/_src/data/Struct/definition.ts +1 -1
- package/_src/data/These/api.ts +184 -0
- package/_src/data/These/constructors.ts +10 -0
- package/_src/data/These/definition.ts +7 -0
- package/_src/data/These/destructors.ts +45 -0
- package/_src/data/These/instances.ts +43 -0
- package/_src/data/These.ts +1 -0
- package/_src/data/bigint/definition.ts +13 -0
- package/_src/data/bigint/instances.ts +8 -0
- package/_src/data/bigint.ts +4 -0
- package/_src/data/boolean/definition.ts +13 -0
- package/_src/data/boolean/instances.ts +8 -0
- package/_src/data/boolean.ts +4 -0
- package/_src/data/number/instances.ts +13 -3
- package/_src/data/object/instances.ts +7 -0
- package/_src/data/string/instances.ts +17 -5
- package/_src/internal/Stack.ts +4 -0
- package/_src/json/EitherJson.ts +28 -0
- package/_src/json/MaybeJson.ts +27 -0
- package/_src/json/TheseJson.ts +31 -0
- package/_src/optics/Optional/definition.ts +2 -2
- package/_src/optics/Traversal/api/compose.ts +1 -1
- package/_src/optics/Traversal/api/fromTraversable.ts +15 -41
- package/_src/optics/Traversal/definition.ts +21 -23
- package/_src/typeclass/Align.ts +4 -18
- package/_src/typeclass/Alt.ts +59 -90
- package/_src/typeclass/Alternative.ts +4 -20
- package/_src/typeclass/Applicative.ts +3 -23
- package/_src/typeclass/ApplicativeExcept.ts +94 -193
- package/_src/typeclass/Apply.ts +319 -509
- package/_src/typeclass/Chain.ts +127 -199
- package/_src/typeclass/Closure.ts +4 -20
- package/_src/typeclass/Eq/definition.ts +20 -0
- package/_src/typeclass/Eq/derivations.ts +61 -0
- package/_src/typeclass/Eq.ts +2 -36
- package/_src/typeclass/Fail.ts +28 -27
- package/_src/typeclass/Filterable.ts +70 -117
- package/_src/typeclass/FilterableWithIndex.ts +27 -131
- package/_src/typeclass/Foldable.ts +35 -52
- package/_src/typeclass/FoldableWithIndex.ts +40 -75
- package/_src/typeclass/Functor.ts +21 -59
- package/_src/typeclass/FunctorWithIndex.ts +6 -34
- package/_src/typeclass/Guard/api.ts +32 -0
- package/_src/typeclass/Guard/definition.ts +23 -0
- package/_src/typeclass/Guard/derivations.ts +80 -0
- package/_src/typeclass/Guard.ts +5 -0
- package/_src/typeclass/HashEq.ts +3 -4
- package/_src/typeclass/Monad.ts +3 -18
- package/_src/typeclass/MonadExcept.ts +9 -32
- package/_src/typeclass/Monoid.ts +60 -2
- package/_src/typeclass/Nil.ts +26 -17
- package/_src/typeclass/Ord/api/contramap.ts +2 -4
- package/_src/typeclass/Ord/api/max.ts +1 -1
- package/_src/typeclass/Ord/api/min.ts +1 -1
- package/_src/typeclass/Ord/definition.ts +3 -19
- package/_src/typeclass/Ord/instances.ts +6 -6
- package/_src/typeclass/Pointed.ts +29 -25
- package/_src/typeclass/Semialign.ts +308 -444
- package/_src/typeclass/Semigroup/api.ts +2 -2
- package/_src/typeclass/Semigroup/definition.ts +2 -6
- package/_src/typeclass/Semigroup/derivations.ts +64 -0
- package/_src/typeclass/Semigroup.ts +1 -1
- package/_src/typeclass/Semimonoidal.ts +55 -84
- package/_src/typeclass/Showable/show.ts +6 -8
- package/_src/typeclass/Traversable.ts +67 -157
- package/_src/typeclass/TraversableWithIndex.ts +37 -127
- package/_src/typeclass/Witherable.ts +120 -279
- package/_src/typeclass/WitherableWithIndex.ts +129 -337
- package/_src/typeclass.ts +2 -0
- package/_src/util/predicates.ts +4 -0
- package/collection/Iterable/api/traverseConc.d.ts +6 -4
- package/collection/Iterable/api.d.ts +5 -13
- package/collection/immutable/Conc/api.d.ts +15 -23
- package/collection/immutable/Conc/definition.d.ts +14 -7
- package/collection/immutable/Dictionary/definition.d.ts +1 -1
- package/collection/immutable/HashMap/api.d.ts +15 -27
- package/collection/immutable/HashMap/definition.d.ts +7 -9
- package/collection/immutable/HashMap/internal.d.ts +2 -2
- package/collection/immutable/HashSet/definition.d.ts +1 -0
- package/collection/immutable/ImmutableArray/api/chunksOf.d.ts +6 -0
- package/collection/immutable/ImmutableArray/api/slice.d.ts +6 -0
- package/collection/immutable/ImmutableArray/api/splitAt.d.ts +6 -0
- package/collection/immutable/ImmutableArray/api/splitWhere.d.ts +7 -0
- package/collection/immutable/ImmutableArray/api.d.ts +42 -119
- package/collection/immutable/ImmutableArray/definition.d.ts +6 -7
- package/collection/immutable/ImmutableArray/instances.d.ts +86 -17
- package/collection/immutable/ImmutableArray.d.ts +4 -0
- package/collection/immutable/ImmutableNonEmptyArray/api.d.ts +27 -48
- package/collection/immutable/ImmutableNonEmptyArray/constructors.d.ts +2 -1
- package/collection/immutable/ImmutableNonEmptyArray/definition.d.ts +15 -7
- package/collection/immutable/ImmutableNonEmptyArray/instances.d.ts +1 -1
- package/collection/immutable/List/api.d.ts +1 -2
- package/collection/immutable/RoseTree/api.d.ts +63 -0
- package/collection/immutable/RoseTree/definition.d.ts +24 -0
- package/collection/immutable/RoseTree.d.ts +2 -0
- package/collection/immutable/SortedMap/api.d.ts +2 -1
- package/collection/immutable/SortedMap/iterator.d.ts +1 -1
- package/collection/immutable/Vector/api.d.ts +31 -8
- package/collection/immutable/Vector/definition.d.ts +13 -0
- package/collection/mutable/HashMap.d.ts +2 -1
- package/collection/mutable/HashSet.d.ts +1 -0
- package/collection/mutable/ListBuffer.d.ts +1 -0
- package/control/Eval/api.d.ts +1 -0
- package/control/Eval/definition.d.ts +5 -7
- package/control/Eval/instance.d.ts +4 -1
- package/control/Z/definition.d.ts +23 -17
- package/control/Z/instances.d.ts +4 -3
- package/data/Branded/definition.d.ts +36 -0
- package/data/Branded/derivations.d.ts +24 -0
- package/data/Branded.d.ts +2 -0
- package/data/Cause/api.d.ts +7 -1
- package/data/Const/api.d.ts +1 -1
- package/data/Const/definition.d.ts +24 -7
- package/data/Const/instances.d.ts +4 -12
- package/data/DecodeError/definition.d.ts +141 -0
- package/data/DecodeError.d.ts +1 -0
- package/data/Decoder/api.d.ts +65 -0
- package/data/Decoder/definition.d.ts +25 -0
- package/data/Decoder.d.ts +2 -0
- package/data/Duration/api.d.ts +12 -8
- package/data/Either/api.d.ts +29 -17
- package/data/Either/definition.d.ts +32 -14
- package/data/Either/instances.d.ts +26 -11
- package/data/Environment/api.d.ts +5 -0
- package/data/Exit/definition.d.ts +1 -0
- package/data/Identity/api.d.ts +11 -0
- package/data/Identity/definition.d.ts +8 -2
- package/data/Identity/instances.d.ts +5 -9
- package/data/Interval.d.ts +71 -0
- package/data/Maybe/api.d.ts +3 -17
- package/data/Maybe/definition.d.ts +23 -14
- package/data/Maybe/instances.d.ts +14 -8
- package/data/Newtype.d.ts +8 -9
- package/data/Refinement/api.d.ts +2 -0
- package/data/Struct/definition.d.ts +1 -1
- package/data/These/api.d.ts +73 -0
- package/data/These/constructors.d.ts +7 -1
- package/data/These/definition.d.ts +5 -0
- package/data/These/destructors.d.ts +27 -1
- package/data/These/instances.d.ts +13 -0
- package/data/These.d.ts +1 -0
- package/data/bigint/definition.d.ts +13 -0
- package/data/bigint/instances.d.ts +7 -0
- package/data/bigint.d.ts +2 -0
- package/data/boolean/definition.d.ts +13 -0
- package/data/boolean/instances.d.ts +7 -0
- package/data/boolean.d.ts +2 -0
- package/data/number/instances.d.ts +8 -0
- package/data/object/instances.d.ts +7 -0
- package/data/string/instances.d.ts +10 -0
- package/internal/Stack.d.ts +1 -0
- package/json/EitherJson.d.ts +24 -0
- package/json/MaybeJson.d.ts +23 -0
- package/json/TheseJson.d.ts +26 -0
- package/optics/Traversal/api/fromTraversable.d.ts +1 -1
- package/optics/Traversal/definition.d.ts +4 -9
- package/package.json +2 -2
- package/typeclass/Align.d.ts +3 -10
- package/typeclass/Alt.d.ts +6 -19
- package/typeclass/Alternative.d.ts +4 -12
- package/typeclass/Applicative.d.ts +3 -12
- package/typeclass/ApplicativeExcept.d.ts +14 -39
- package/typeclass/Apply.d.ts +41 -72
- package/typeclass/Chain.d.ts +18 -28
- package/typeclass/Closure.d.ts +2 -12
- package/typeclass/Eq/definition.d.ts +17 -0
- package/typeclass/Eq/derivations.d.ts +24 -0
- package/typeclass/Eq.d.ts +2 -27
- package/typeclass/Fail.d.ts +4 -10
- package/typeclass/Filterable.d.ts +30 -51
- package/typeclass/FilterableWithIndex.d.ts +10 -53
- package/typeclass/Foldable.d.ts +19 -31
- package/typeclass/FoldableWithIndex.d.ts +20 -33
- package/typeclass/Functor.d.ts +11 -22
- package/typeclass/FunctorWithIndex.d.ts +3 -19
- package/typeclass/Guard/api.d.ts +20 -0
- package/typeclass/Guard/definition.d.ts +23 -0
- package/typeclass/Guard/derivations.d.ts +36 -0
- package/typeclass/Guard.d.ts +2 -0
- package/typeclass/HashEq.d.ts +1 -2
- package/typeclass/Monad.d.ts +3 -11
- package/typeclass/MonadExcept.d.ts +6 -17
- package/typeclass/Monoid.d.ts +24 -2
- package/typeclass/Nil.d.ts +7 -8
- package/typeclass/Ord/definition.d.ts +2 -14
- package/typeclass/Pointed.d.ts +4 -10
- package/typeclass/Semialign.d.ts +51 -63
- package/typeclass/Semigroup/definition.d.ts +3 -5
- package/typeclass/Semigroup/derivations.d.ts +25 -0
- package/typeclass/Semimonoidal.d.ts +5 -14
- package/typeclass/Showable/show.d.ts +1 -0
- package/typeclass/Traversable.d.ts +17 -57
- package/typeclass/TraversableWithIndex.d.ts +9 -52
- package/typeclass/Witherable.d.ts +22 -82
- package/typeclass/WitherableWithIndex.d.ts +26 -98
- package/typeclass.d.ts +1 -0
- package/util/predicates.d.ts +1 -0
@@ -81,6 +81,13 @@ export function crossWith_<A, B, C>(
|
|
81
81
|
return self.flatMap((a) => fb.map((b) => f(a, b)));
|
82
82
|
}
|
83
83
|
|
84
|
+
/**
|
85
|
+
* @tsplus fluent fncts.ImmutableArray cross
|
86
|
+
*/
|
87
|
+
export function cross_<A, B>(self: ImmutableArray<A>, fb: ImmutableArray<B>): ImmutableArray<readonly [A, B]> {
|
88
|
+
return self.crossWith(fb, tuple);
|
89
|
+
}
|
90
|
+
|
84
91
|
/**
|
85
92
|
* @tsplus static fncts.ImmutableArrayOps chainRecDepthFirst
|
86
93
|
*/
|
@@ -90,6 +97,7 @@ export function chainRecDepthFirst<A, B>(a: A, f: (a: A) => ImmutableArray<Eithe
|
|
90
97
|
|
91
98
|
while (buffer.length > 0) {
|
92
99
|
const e = buffer.shift()!;
|
100
|
+
Either.concrete(e);
|
93
101
|
if (e._tag === EitherTag.Left) {
|
94
102
|
buffer.unshift(...f(e.left));
|
95
103
|
} else {
|
@@ -109,6 +117,7 @@ export function chainRecBreadthFirst<A, B>(a: A, f: (a: A) => ImmutableArray<Eit
|
|
109
117
|
const out: Array<B> = [];
|
110
118
|
|
111
119
|
function go(e: Either<A, B>): void {
|
120
|
+
Either.concrete(e);
|
112
121
|
if (e._tag === "Left") {
|
113
122
|
f(e.left).forEach((v) => buffer.push(v));
|
114
123
|
} else {
|
@@ -184,7 +193,7 @@ export function chop_<A, B>(
|
|
184
193
|
): ImmutableArray<B> {
|
185
194
|
const result: Array<B> = [];
|
186
195
|
let cs: ImmutableArray<A> = as;
|
187
|
-
while (isNonEmpty(
|
196
|
+
while (cs.isNonEmpty()) {
|
188
197
|
const [b, c] = f(cs);
|
189
198
|
result.push(b);
|
190
199
|
cs = c;
|
@@ -194,13 +203,6 @@ export function chop_<A, B>(
|
|
194
203
|
|
195
204
|
export const chop = Pipeable(chop_);
|
196
205
|
|
197
|
-
/**
|
198
|
-
* @tsplus fluent fncts.ImmutableArray chunksOf
|
199
|
-
*/
|
200
|
-
export function chunksOf_<A>(self: ImmutableArray<A>, n: number): ImmutableArray<ImmutableArray<A>> {
|
201
|
-
return self.chop((as) => as.splitAt(n));
|
202
|
-
}
|
203
|
-
|
204
206
|
/**
|
205
207
|
* @tsplus fluent fncts.ImmutableArray collectWhile
|
206
208
|
*/
|
@@ -226,9 +228,7 @@ function comprehensionLoop<A, R>(
|
|
226
228
|
if (input.length === 0) {
|
227
229
|
return g(...scope) ? Eval.now(ImmutableArray(f(...scope))) : Eval.now(ImmutableArray.empty());
|
228
230
|
} else {
|
229
|
-
return input[0]
|
230
|
-
.traverse(Eval.Applicative)((a) => comprehensionLoop(scope.append(a), input.slice(1), f, g))
|
231
|
-
.map((rs) => rs.flatten);
|
231
|
+
return input[0]!.traverse((a) => comprehensionLoop(scope.append(a), input.slice(1), f, g)).map((rs) => rs.flatten);
|
232
232
|
}
|
233
233
|
}
|
234
234
|
|
@@ -266,7 +266,6 @@ export function comprehension<A, R>(
|
|
266
266
|
/**
|
267
267
|
* @tsplus fluent fncts.ImmutableArray concat
|
268
268
|
* @tsplus operator fncts.ImmutableArray +
|
269
|
-
* @tsplus operator fncts.base.MutableArray +
|
270
269
|
*/
|
271
270
|
export function concat_<A, B>(self: ImmutableArray<A>, that: ImmutableArray<B>): ImmutableArray<A | B> {
|
272
271
|
const lenx = self._array.length;
|
@@ -295,20 +294,14 @@ export function deleteAt_<A>(as: ImmutableArray<A>, i: number): Maybe<ImmutableA
|
|
295
294
|
}
|
296
295
|
|
297
296
|
/**
|
298
|
-
* @
|
297
|
+
* @tsplus fluent fncts.ImmutableArray difference
|
299
298
|
*/
|
300
|
-
export function difference_<A>(
|
301
|
-
|
302
|
-
|
303
|
-
|
304
|
-
|
305
|
-
|
306
|
-
* @tsplus getter fncts.ImmutableArray difference
|
307
|
-
*/
|
308
|
-
export function differenceSelf<A>(self: ImmutableArray<A>) {
|
309
|
-
return (E: P.Eq<A>) =>
|
310
|
-
(that: ImmutableArray<A>): ImmutableArray<A> =>
|
311
|
-
difference_(E)(self, that);
|
299
|
+
export function difference_<A>(
|
300
|
+
self: ImmutableArray<A>,
|
301
|
+
ys: ImmutableArray<A>,
|
302
|
+
/** @tsplus auto */ E: P.Eq<A>,
|
303
|
+
): ImmutableArray<A> {
|
304
|
+
return self.filter((a) => !ys.elem(a, E));
|
312
305
|
}
|
313
306
|
|
314
307
|
/**
|
@@ -344,32 +337,17 @@ export function dropLastWhile_<A>(as: ImmutableArray<A>, p: Predicate<A>): Immut
|
|
344
337
|
* argument which returns the function to use to search for a value of type `A` in
|
345
338
|
* an array of type `ImmutableArray<A>`.
|
346
339
|
*
|
347
|
-
* @
|
348
|
-
*/
|
349
|
-
export function elem_<A>(E: P.Eq<A>) {
|
350
|
-
return (as: ImmutableArray<A>, a: A): boolean => {
|
351
|
-
const predicate = (element: A) => E.equals_(element, a);
|
352
|
-
const len = as.length;
|
353
|
-
for (let i = 0; i < len; i++) {
|
354
|
-
if (predicate(as._array[i]!)) {
|
355
|
-
return true;
|
356
|
-
}
|
357
|
-
}
|
358
|
-
return false;
|
359
|
-
};
|
360
|
-
}
|
361
|
-
|
362
|
-
/**
|
363
|
-
* Test if a value is a member of an array. Takes an `Eq<A>` as a single
|
364
|
-
* argument which returns the function to use to search for a value of type `A` in
|
365
|
-
* an array of type `ImmutableArray<A>`.
|
366
|
-
*
|
367
|
-
* @tsplus getter fncts.ImmutableArray elem
|
340
|
+
* @tsplus fluent fncts.ImmutableArray elem
|
368
341
|
*/
|
369
|
-
export function
|
370
|
-
|
371
|
-
|
372
|
-
|
342
|
+
export function elem_<A>(as: ImmutableArray<A>, a: A, /** @tsplus auto */ E: P.Eq<A>): boolean {
|
343
|
+
const predicate = (element: A) => E.equals(element, a);
|
344
|
+
const len = as.length;
|
345
|
+
for (let i = 0; i < len; i++) {
|
346
|
+
if (predicate(as._array[i]!)) {
|
347
|
+
return true;
|
348
|
+
}
|
349
|
+
}
|
350
|
+
return false;
|
373
351
|
}
|
374
352
|
|
375
353
|
/**
|
@@ -604,59 +582,33 @@ export function foldLeftWithIndexWhile_<A, B>(
|
|
604
582
|
return out;
|
605
583
|
}
|
606
584
|
|
607
|
-
export function fold<M>(M: Monoid<M>) {
|
608
|
-
return (self: ImmutableArray<M>): M => self.foldLeft(M.nat, M.combine_);
|
609
|
-
}
|
610
|
-
|
611
585
|
/**
|
612
586
|
* @tsplus fluent fncts.ImmutableArray fold
|
613
|
-
* @tsplus fluent fncts.base.MutableArray fold
|
614
|
-
*/
|
615
|
-
export function foldSelf<M>(self: ImmutableArray<M>, M: Monoid<M>): M {
|
616
|
-
return self.foldLeft(M.nat, M.combine_);
|
617
|
-
}
|
618
|
-
|
619
|
-
/**
|
620
|
-
* @constrained
|
621
|
-
*/
|
622
|
-
export function foldMapWithIndex_<M>(M: Monoid<M>) {
|
623
|
-
return <A>(self: ImmutableArray<A>, f: (i: number, a: A) => M): M => {
|
624
|
-
return self.foldLeftWithIndex(M.nat, (i, b, a) => M.combine_(b, f(i, a)));
|
625
|
-
};
|
626
|
-
}
|
627
|
-
|
628
|
-
/**
|
629
|
-
* @tsplus getter fncts.ImmutableArray foldMapWithIndex
|
630
|
-
* @tsplus getter fncts.base.MutableArray foldMapWithIndex
|
631
587
|
*/
|
632
|
-
export function
|
633
|
-
return
|
634
|
-
(f: (i: number, a: A) => M): M =>
|
635
|
-
foldMapWithIndex_(M)(self, f);
|
588
|
+
export function fold<M>(self: ImmutableArray<M>, /** @tsplus auto */ M: Monoid<M>): M {
|
589
|
+
return self.foldLeft(M.nat, M.combine);
|
636
590
|
}
|
637
591
|
|
638
592
|
/**
|
639
|
-
* @
|
593
|
+
* @tsplus fluent fncts.ImmutableArray foldMapWithIndex
|
640
594
|
*/
|
641
|
-
export function
|
642
|
-
|
643
|
-
|
644
|
-
|
595
|
+
export function foldMapWithIndex_<A, M>(
|
596
|
+
self: ImmutableArray<A>,
|
597
|
+
f: (i: number, a: A) => M,
|
598
|
+
/** @tsplus auto */ M: Monoid<M>,
|
599
|
+
): M {
|
600
|
+
return self.foldLeftWithIndex(M.nat, (i, b, a) => M.combine(b, f(i, a)));
|
645
601
|
}
|
646
602
|
|
647
603
|
/**
|
648
|
-
* @tsplus
|
649
|
-
* @tsplus getter fncts.base.MutableArray foldMap
|
604
|
+
* @tsplus fluent fncts.ImmutableArray foldMap
|
650
605
|
*/
|
651
|
-
export function
|
652
|
-
return
|
653
|
-
(f: (a: A) => M): M =>
|
654
|
-
self.foldMapWithIndex(M)((_, a) => f(a));
|
606
|
+
export function foldMap_<A, M>(self: ImmutableArray<A>, f: (a: A) => M, /** @tsplus auto */ M: Monoid<M>): M {
|
607
|
+
return self.foldMapWithIndex((_, a) => f(a), M);
|
655
608
|
}
|
656
609
|
|
657
610
|
/**
|
658
611
|
* @tsplus fluent fncts.ImmutableArray foldRightWithIndex
|
659
|
-
* @tsplus fluent fncts.base.MutableArray foldRightWithIndex
|
660
612
|
*/
|
661
613
|
export function foldRightWithIndex_<A, B>(self: ImmutableArray<A>, b: B, f: (i: number, a: A, b: B) => B): B {
|
662
614
|
let r = b;
|
@@ -668,7 +620,6 @@ export function foldRightWithIndex_<A, B>(self: ImmutableArray<A>, b: B, f: (i:
|
|
668
620
|
|
669
621
|
/**
|
670
622
|
* @tsplus fluent fncts.ImmutableArray foldRight
|
671
|
-
* @tsplus fluent fncts.base.MutableArray foldRight
|
672
623
|
*/
|
673
624
|
export function foldRight_<A, B>(self: ImmutableArray<A>, b: B, f: (a: A, b: B) => B): B {
|
674
625
|
return self.foldRightWithIndex(b, (_, a, b) => f(a, b));
|
@@ -676,7 +627,6 @@ export function foldRight_<A, B>(self: ImmutableArray<A>, b: B, f: (a: A, b: B)
|
|
676
627
|
|
677
628
|
/**
|
678
629
|
* @tsplus fluent fncts.ImmutableArray foldRighWhile
|
679
|
-
* @tsplus fluent fncts.base.MutableArray foldRightWhile
|
680
630
|
*/
|
681
631
|
export function foldRightWhile_<A, B>(self: ImmutableArray<A>, b: B, p: Predicate<B>, f: (a: A, b: B) => B): B {
|
682
632
|
return self.foldRightWithIndexWhile(b, p, (_, a, b) => f(a, b));
|
@@ -684,7 +634,6 @@ export function foldRightWhile_<A, B>(self: ImmutableArray<A>, b: B, p: Predicat
|
|
684
634
|
|
685
635
|
/**
|
686
636
|
* @tsplus fluent fncts.ImmutableArray foldRightWithIndexWhile
|
687
|
-
* @tsplus fluent fncts.base.MutableArray foldRightWithIndexWhile
|
688
637
|
*/
|
689
638
|
export function foldRightWithIndexWhile_<A, B>(
|
690
639
|
self: ImmutableArray<A>,
|
@@ -723,7 +672,7 @@ export function group<A>(E: P.Eq<A>): (self: ImmutableArray<A>) => ImmutableArra
|
|
723
672
|
let i = 1;
|
724
673
|
for (; i < self.length; i++) {
|
725
674
|
const a = self._array[i]!;
|
726
|
-
if (E.
|
675
|
+
if (E.equals(a, h)) {
|
727
676
|
out.push(a);
|
728
677
|
} else {
|
729
678
|
break;
|
@@ -782,18 +731,15 @@ export function insertAt_<A>(self: ImmutableArray<A>, i: number, a: A): Maybe<Im
|
|
782
731
|
return self.isOutOfBound(i) ? Nothing() : Just(self.unsafeInsertAt(i, a));
|
783
732
|
}
|
784
733
|
|
785
|
-
export function intersection_<A>(E: P.Eq<A>) {
|
786
|
-
const elemE = elem_(E);
|
787
|
-
return (self: ImmutableArray<A>, that: ImmutableArray<A>): ImmutableArray<A> => self.filter((a) => elemE(that, a));
|
788
|
-
}
|
789
|
-
|
790
734
|
/**
|
791
|
-
* @tsplus
|
735
|
+
* @tsplus fluent fncts.ImmutableArray intersection
|
792
736
|
*/
|
793
|
-
export function
|
794
|
-
|
795
|
-
|
796
|
-
|
737
|
+
export function intersection_<A>(
|
738
|
+
self: ImmutableArray<A>,
|
739
|
+
that: ImmutableArray<A>,
|
740
|
+
/** @tsplus auto */ E: P.Eq<A>,
|
741
|
+
): ImmutableArray<A> {
|
742
|
+
return self.filter((a) => that.elem(a, E));
|
797
743
|
}
|
798
744
|
|
799
745
|
export function intersperse_<A>(self: ImmutableArray<A>, a: A): ImmutableArray<A> {
|
@@ -808,13 +754,6 @@ export function isEmpty<A>(self: ImmutableArray<A>): boolean {
|
|
808
754
|
return self.length === 0;
|
809
755
|
}
|
810
756
|
|
811
|
-
/**
|
812
|
-
* @tsplus fluent fncts.ImmutableArray isNonEmpty
|
813
|
-
*/
|
814
|
-
export function isNonEmpty<A>(self: ImmutableArray<A>): self is ImmutableNonEmptyArray<A> {
|
815
|
-
return self.length > 0;
|
816
|
-
}
|
817
|
-
|
818
757
|
/**
|
819
758
|
* @tsplus fluent fncts.ImmutableArray isOutOfBound
|
820
759
|
*/
|
@@ -850,6 +789,7 @@ export function lefts<E, A>(self: ImmutableArray<Either<E, A>>): ImmutableArray<
|
|
850
789
|
const ls: Array<E> = [];
|
851
790
|
for (let i = 0; i < self.length; i++) {
|
852
791
|
const a = self._array[i]!;
|
792
|
+
Either.concrete(a);
|
853
793
|
if (a._tag === EitherTag.Left) {
|
854
794
|
ls.push(a.left);
|
855
795
|
}
|
@@ -974,6 +914,7 @@ export function partitionMapWithIndex_<A, B, C>(
|
|
974
914
|
const right = [] as Array<C>;
|
975
915
|
for (let i = 0; i < self.length; i++) {
|
976
916
|
const ea = f(i, self._array[i]!);
|
917
|
+
Either.concrete(ea);
|
977
918
|
switch (ea._tag) {
|
978
919
|
case EitherTag.Left:
|
979
920
|
left.push(ea.left);
|
@@ -1045,6 +986,7 @@ export function rights<E, A>(self: ImmutableArray<Either<E, A>>): ImmutableArray
|
|
1045
986
|
const rs: Array<A> = [];
|
1046
987
|
for (let i = 0; i < self.length; i++) {
|
1047
988
|
const a = self._array[i]!;
|
989
|
+
Either.concrete(a);
|
1048
990
|
if (a._tag === EitherTag.Right) {
|
1049
991
|
rs.push(a.right);
|
1050
992
|
}
|
@@ -1095,14 +1037,14 @@ export function scanRight_<A, B>(self: ImmutableArray<A>, b: B, f: (a: A, b: B)
|
|
1095
1037
|
/**
|
1096
1038
|
* @tsplus fluent fncts.ImmutableArray sort
|
1097
1039
|
*/
|
1098
|
-
export function sort<A
|
1099
|
-
return self.isEmpty() || self.length === 1 ? self : self._array.slice().sort(O.
|
1040
|
+
export function sort<A>(self: ImmutableArray<A>, /** @tsplus auto */ O: P.Ord<A>): ImmutableArray<A> {
|
1041
|
+
return self.isEmpty() || self.length === 1 ? self : self._array.slice().sort(O.compare).asImmutableArray;
|
1100
1042
|
}
|
1101
1043
|
|
1102
1044
|
/**
|
1103
1045
|
* @tsplus fluent fncts.ImmutableArray sortBy
|
1104
1046
|
*/
|
1105
|
-
export function sortBy<A
|
1047
|
+
export function sortBy<A>(self: ImmutableArray<A>, Os: ImmutableArray<P.Ord<A>>): ImmutableArray<A> {
|
1106
1048
|
return self.sort(Os.fold(P.Ord.getMonoid()));
|
1107
1049
|
}
|
1108
1050
|
|
@@ -1186,47 +1128,6 @@ export function spanIndexRight_<A>(as: ImmutableArray<A>, predicate: Predicate<A
|
|
1186
1128
|
return i;
|
1187
1129
|
}
|
1188
1130
|
|
1189
|
-
/**
|
1190
|
-
* @tsplus fluent fncts.ImmutableArray slice
|
1191
|
-
*/
|
1192
|
-
export function slice_<A>(self: ImmutableArray<A>, start?: number, end?: number): ImmutableArray<A> {
|
1193
|
-
return self._array.slice(start, end).asImmutableArray;
|
1194
|
-
}
|
1195
|
-
|
1196
|
-
/**
|
1197
|
-
* @tsplus fluent fncts.ImmutableArray splitAt
|
1198
|
-
*/
|
1199
|
-
export function splitAt_<A>(as: ImmutableArray<A>, n: number): readonly [ImmutableArray<A>, ImmutableArray<A>] {
|
1200
|
-
return [as.slice(0, n), as.slice(n)];
|
1201
|
-
}
|
1202
|
-
|
1203
|
-
/**
|
1204
|
-
* @tsplus fluent fncts.ImmutableArray splitWhere
|
1205
|
-
*/
|
1206
|
-
export function splitWhere_<A>(
|
1207
|
-
self: ImmutableArray<A>,
|
1208
|
-
p: Predicate<A>,
|
1209
|
-
): readonly [ImmutableArray<A>, ImmutableArray<A>] {
|
1210
|
-
let cont = true;
|
1211
|
-
let i = 0;
|
1212
|
-
while (cont && i < self.length) {
|
1213
|
-
if (p(self._array[i]!)) {
|
1214
|
-
cont = false;
|
1215
|
-
} else {
|
1216
|
-
i++;
|
1217
|
-
}
|
1218
|
-
}
|
1219
|
-
return self.splitAt(i);
|
1220
|
-
}
|
1221
|
-
|
1222
|
-
export const sequence: P.sequence<ImmutableArrayF> = (A) => (self) => self.traverse(A)(identity);
|
1223
|
-
|
1224
|
-
/**
|
1225
|
-
* @tsplus getter fncts.ImmutableArray sequence
|
1226
|
-
*/
|
1227
|
-
export const sequenceSelf: P.sequenceSelf<ImmutableArrayF> = (self) => (A) =>
|
1228
|
-
unsafeCoerce(self.traverse(A)(unsafeCoerce(identity)));
|
1229
|
-
|
1230
1131
|
/**
|
1231
1132
|
* @tsplus getter fncts.ImmutableArray tail
|
1232
1133
|
*/
|
@@ -1262,67 +1163,45 @@ export function takeWhile_<A>(self: ImmutableArray<A>, p: Predicate<A>): Immutab
|
|
1262
1163
|
return init.asImmutableArray;
|
1263
1164
|
}
|
1264
1165
|
|
1265
|
-
export const traverseWithIndex_: P.traverseWithIndex_<ImmutableArrayF> = P.mkTraverseWithIndex_<ImmutableArrayF>()(
|
1266
|
-
(_) => (A) => (ta, f) =>
|
1267
|
-
ta.foldLeftWithIndex(A.pure(ImmutableArray.empty<typeof _.B>()), (i, fbs, a) =>
|
1268
|
-
A.zipWith_(fbs, f(i, a), (bs, b) => bs.append(b)),
|
1269
|
-
),
|
1270
|
-
);
|
1271
|
-
|
1272
1166
|
/**
|
1273
|
-
* @tsplus
|
1167
|
+
* @tsplus fluent fncts.ImmutableArray traverseWithIndex
|
1274
1168
|
*/
|
1275
|
-
export const
|
1276
|
-
|
1169
|
+
export const traverseWithIndex_: P.TraversableWithIndex<ImmutableArrayF>["traverseWithIndex"] = (ta, f, G) =>
|
1170
|
+
ta.foldLeftWithIndex(G.pure(ImmutableArray.empty()), (i, fbs, a) => fbs.zipWith(f(i, a), (bs, b) => bs.append(b), G));
|
1277
1171
|
|
1278
1172
|
/**
|
1279
|
-
* @tsplus
|
1173
|
+
* @tsplus fluent fncts.ImmutableArray traverse
|
1280
1174
|
*/
|
1281
|
-
export const
|
1282
|
-
|
1283
|
-
|
1284
|
-
export const traverse_: P.traverse_<ImmutableArrayF> = (A) => (self, f) => self.traverseWithIndex(A)((_, a) => f(a));
|
1175
|
+
export const traverse_: P.Traversable<ImmutableArrayF>["traverse"] = (self, f, G) =>
|
1176
|
+
self.traverseWithIndex((_, a) => f(a), G);
|
1285
1177
|
|
1286
1178
|
/**
|
1287
|
-
* @tsplus
|
1179
|
+
* @tsplus fluent fncts.ImmutableArray union
|
1288
1180
|
*/
|
1289
|
-
export
|
1290
|
-
|
1291
|
-
|
1292
|
-
|
1293
|
-
|
1294
|
-
|
1295
|
-
self.traverseWithIndex(A)((_, a) => f(a));
|
1296
|
-
|
1297
|
-
export function union_<A>(E: P.Eq<A>) {
|
1298
|
-
const elemE = elem_(E);
|
1299
|
-
return (self: ImmutableArray<A>, that: ImmutableArray<A>): ImmutableArray<A> =>
|
1300
|
-
self.concat(that.filter((a) => !elemE(self, a)));
|
1301
|
-
}
|
1302
|
-
|
1303
|
-
export function uniq<A>(E: P.Eq<A>) {
|
1304
|
-
return (self: ImmutableArray<A>): ImmutableArray<A> => {
|
1305
|
-
if (self.length === 1) {
|
1306
|
-
return self;
|
1307
|
-
}
|
1308
|
-
const elemE_ = elem_(E);
|
1309
|
-
const out = [] as Array<A>;
|
1310
|
-
const len = self.length;
|
1311
|
-
for (let i = 0; i < len; i++) {
|
1312
|
-
const a = self._array[i]!;
|
1313
|
-
if (!elemE_(out.asImmutableArray, a)) {
|
1314
|
-
out.push(a);
|
1315
|
-
}
|
1316
|
-
}
|
1317
|
-
return out.asImmutableArray;
|
1318
|
-
};
|
1181
|
+
export function union_<A>(
|
1182
|
+
self: ImmutableArray<A>,
|
1183
|
+
that: ImmutableArray<A>,
|
1184
|
+
/** @tsplus auto */ E: P.Eq<A>,
|
1185
|
+
): ImmutableArray<A> {
|
1186
|
+
return self.concat(that.filter((a) => !self.elem(a, E)));
|
1319
1187
|
}
|
1320
1188
|
|
1321
1189
|
/**
|
1322
1190
|
* @tsplus fluent fncts.ImmutableArray uniq
|
1323
1191
|
*/
|
1324
|
-
export function
|
1325
|
-
|
1192
|
+
export function uniq<A>(self: ImmutableArray<A>, /** @tsplus auto */ E: P.Eq<A>): ImmutableArray<A> {
|
1193
|
+
if (self.length === 1) {
|
1194
|
+
return self;
|
1195
|
+
}
|
1196
|
+
const out = [] as Array<A>;
|
1197
|
+
const len = self.length;
|
1198
|
+
for (let i = 0; i < len; i++) {
|
1199
|
+
const a = self._array[i]!;
|
1200
|
+
if (!out.asImmutableArray.elem(a, E)) {
|
1201
|
+
out.push(a);
|
1202
|
+
}
|
1203
|
+
}
|
1204
|
+
return out.asImmutableArray;
|
1326
1205
|
}
|
1327
1206
|
|
1328
1207
|
/**
|
@@ -1412,88 +1291,123 @@ export function updateAt_<A>(as: ImmutableArray<A>, i: number, a: A): Maybe<Immu
|
|
1412
1291
|
return as.isOutOfBound(i) ? Nothing() : Just(as.unsafeUpdateAt(i, a));
|
1413
1292
|
}
|
1414
1293
|
|
1415
|
-
export const wilt_: P.wilt_<ImmutableArrayF> = (A) => (self, f) => self.wiltWithIndex(A)((_, a) => f(a));
|
1416
|
-
|
1417
|
-
/**
|
1418
|
-
* @tsplus pipeable fncts.ImmutableArray wilt_
|
1419
|
-
*/
|
1420
|
-
export const wilt: P.wilt<ImmutableArrayF> = (A) => (f) => (self) => self.wiltWithIndex(A)((_, a) => f(a));
|
1421
|
-
|
1422
1294
|
/**
|
1423
1295
|
* @tsplus fluent fncts.ImmutableArray wilt
|
1424
1296
|
*/
|
1425
|
-
export
|
1426
|
-
|
1427
|
-
|
1428
|
-
|
1429
|
-
|
1430
|
-
|
1431
|
-
|
1432
|
-
|
1433
|
-
|
1434
|
-
|
1435
|
-
|
1436
|
-
|
1437
|
-
|
1438
|
-
|
1439
|
-
|
1440
|
-
|
1441
|
-
|
1297
|
+
export function wilt_<G extends HKT, KG, QG, WG, XG, IG, SG, RG, EG, B1, A, B>(
|
1298
|
+
self: ImmutableArray<A>,
|
1299
|
+
f: (a: A) => HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, Either<B, B1>>,
|
1300
|
+
/** @tsplus auto */
|
1301
|
+
G: P.Applicative<G>,
|
1302
|
+
): HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, readonly [ImmutableArray<B>, ImmutableArray<B1>]> {
|
1303
|
+
return self
|
1304
|
+
.foldLeft(
|
1305
|
+
G.pure([[] as Array<B>, [] as Array<B1>] as const) as HKT.Kind<
|
1306
|
+
G,
|
1307
|
+
KG,
|
1308
|
+
QG,
|
1309
|
+
WG,
|
1310
|
+
XG,
|
1311
|
+
IG,
|
1312
|
+
SG,
|
1313
|
+
RG,
|
1314
|
+
EG,
|
1315
|
+
readonly [B[], B1[]]
|
1316
|
+
>,
|
1317
|
+
(fbs, a) =>
|
1318
|
+
f(a).zipWith(
|
1319
|
+
fbs,
|
1320
|
+
(eb, r) =>
|
1321
|
+
eb.match(
|
1322
|
+
(b1) => {
|
1323
|
+
r[0].push(b1);
|
1324
|
+
return r;
|
1325
|
+
},
|
1326
|
+
(b2) => {
|
1327
|
+
r[1].push(b2);
|
1328
|
+
return r;
|
1329
|
+
},
|
1330
|
+
),
|
1331
|
+
G,
|
1442
1332
|
),
|
1443
|
-
|
1444
|
-
|
1445
|
-
|
1446
|
-
);
|
1447
|
-
|
1448
|
-
/**
|
1449
|
-
* @tsplus dataFirst wiltWithIndex_
|
1450
|
-
*/
|
1451
|
-
export const wiltWithIndex: P.wiltWithIndex<ImmutableArrayF> = (A) => (f) => (self) => wiltWithIndex_(A)(self, f);
|
1452
|
-
|
1453
|
-
/**
|
1454
|
-
* @tsplus getter fncts.ImmutableArray wiltWithIndex
|
1455
|
-
*/
|
1456
|
-
export const wiltWithIndexSelf: P.wiltWithIndexSelf<ImmutableArrayF> = (self) => (A) => (f) =>
|
1457
|
-
wiltWithIndex_(A)(self, f);
|
1333
|
+
)
|
1334
|
+
.map(([b1s, b2s]) => [b1s.asImmutableArray, b2s.asImmutableArray], G);
|
1335
|
+
}
|
1458
1336
|
|
1459
|
-
export
|
1337
|
+
export function wiltWithIndex_<G extends HKT, KG, QG, WG, XG, IG, SG, RG, EG, B1, A, B>(
|
1338
|
+
self: ImmutableArray<A>,
|
1339
|
+
f: (i: number, a: A) => HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, Either<B, B1>>,
|
1340
|
+
/** @tsplus auto */
|
1341
|
+
G: P.Applicative<G>,
|
1342
|
+
): HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, readonly [ImmutableArray<B>, ImmutableArray<B1>]> {
|
1343
|
+
return self
|
1344
|
+
.foldLeftWithIndex(
|
1345
|
+
G.pure([[] as Array<B>, [] as Array<B1>] as const) as HKT.Kind<
|
1346
|
+
G,
|
1347
|
+
KG,
|
1348
|
+
QG,
|
1349
|
+
WG,
|
1350
|
+
XG,
|
1351
|
+
IG,
|
1352
|
+
SG,
|
1353
|
+
RG,
|
1354
|
+
EG,
|
1355
|
+
readonly [B[], B1[]]
|
1356
|
+
>,
|
1357
|
+
(i, fbs, a) =>
|
1358
|
+
f(i, a).zipWith(
|
1359
|
+
fbs,
|
1360
|
+
(eb, r) =>
|
1361
|
+
eb.match(
|
1362
|
+
(b1) => {
|
1363
|
+
r[0].push(b1);
|
1364
|
+
return r;
|
1365
|
+
},
|
1366
|
+
(b2) => {
|
1367
|
+
r[1].push(b2);
|
1368
|
+
return r;
|
1369
|
+
},
|
1370
|
+
),
|
1371
|
+
G,
|
1372
|
+
),
|
1373
|
+
)
|
1374
|
+
.map(([b1s, b2s]) => [b1s.asImmutableArray, b2s.asImmutableArray], G);
|
1375
|
+
}
|
1460
1376
|
|
1461
1377
|
/**
|
1462
|
-
* @tsplus
|
1378
|
+
* @tsplus fluent fncts.ImmutableArray wither
|
1463
1379
|
*/
|
1464
|
-
export
|
1380
|
+
export function wither_<G extends HKT, KG, QG, WG, XG, IG, SG, RG, EG, A, B>(
|
1381
|
+
self: ImmutableArray<A>,
|
1382
|
+
f: (a: A) => HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, Maybe<B>>,
|
1383
|
+
/** @tsplus auto */ G: P.Applicative<G>,
|
1384
|
+
): HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, ImmutableArray<B>> {
|
1385
|
+
return self.witherWithIndex((_, a) => f(a));
|
1386
|
+
}
|
1465
1387
|
|
1466
1388
|
/**
|
1467
|
-
* @tsplus fluent fncts.ImmutableArray
|
1389
|
+
* @tsplus fluent fncts.ImmutableArray witherWithIndex
|
1468
1390
|
*/
|
1469
|
-
export
|
1470
|
-
|
1471
|
-
|
1472
|
-
|
1473
|
-
|
1474
|
-
|
1475
|
-
|
1476
|
-
|
1391
|
+
export function witherWithIndex_<G extends HKT, KG, QG, WG, XG, IG, SG, RG, EG, A, B>(
|
1392
|
+
self: ImmutableArray<A>,
|
1393
|
+
f: (k: number, a: A) => HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, Maybe<B>>,
|
1394
|
+
/** @tsplus auto */ G: P.Applicative<G>,
|
1395
|
+
): HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, ImmutableArray<B>> {
|
1396
|
+
return self
|
1397
|
+
.foldLeftWithIndex(G.pure([] as Array<B>) as HKT.Kind<G, KG, QG, WG, XG, IG, SG, RG, EG, B[]>, (i, b, a) =>
|
1398
|
+
f(i, a).zipWith(
|
1399
|
+
b,
|
1400
|
+
(maybeB, bs) => {
|
1477
1401
|
if (maybeB.isJust()) {
|
1478
1402
|
bs.push(maybeB.value);
|
1479
1403
|
}
|
1480
1404
|
return bs;
|
1481
|
-
}
|
1405
|
+
},
|
1406
|
+
G,
|
1482
1407
|
),
|
1483
|
-
|
1484
|
-
),
|
1485
|
-
|
1486
|
-
|
1487
|
-
/**
|
1488
|
-
* @tsplus dataFirst witherWithIndex_
|
1489
|
-
*/
|
1490
|
-
export const witherWithIndex: P.witherWithIndex<ImmutableArrayF> = (A) => (f) => (self) => witherWithIndex_(A)(self, f);
|
1491
|
-
|
1492
|
-
/**
|
1493
|
-
* @tsplus fluent fncts.ImmutableArray witherWithIndex
|
1494
|
-
*/
|
1495
|
-
export const witherWithIndexSelf: P.witherWithIndexSelf<ImmutableArrayF> = (self) => (A) => (f) =>
|
1496
|
-
witherWithIndex_(A)(self, f);
|
1408
|
+
)
|
1409
|
+
.map((bs) => bs.asImmutableArray, G);
|
1410
|
+
}
|
1497
1411
|
|
1498
1412
|
/**
|
1499
1413
|
* @tsplus fluent fncts.ImmutableArray zip
|
@@ -1,12 +1,18 @@
|
|
1
1
|
export const ImmutableArrayTypeId = Symbol.for("fncts.ImmutableArray");
|
2
2
|
export type ImmutableArrayTypeId = typeof ImmutableArrayTypeId;
|
3
3
|
|
4
|
+
export interface ImmutableArrayF extends ImmutableArray<any> {}
|
5
|
+
|
4
6
|
/**
|
5
7
|
* @tsplus type fncts.ImmutableArray
|
6
8
|
* @tsplus companion fncts.ImmutableArrayOps
|
7
9
|
*/
|
8
10
|
export class ImmutableArray<A> implements Equatable, Hashable, Iterable<A> {
|
9
11
|
readonly _typeId: ImmutableArrayTypeId = ImmutableArrayTypeId;
|
12
|
+
[HKT.F]?: ImmutableArrayF;
|
13
|
+
[HKT.A]?: () => A;
|
14
|
+
[HKT.T]?: ImmutableArray<HKT._A<this>>;
|
15
|
+
[HKT.Ix]?: number;
|
10
16
|
constructor(readonly _array: ReadonlyArray<A>) {}
|
11
17
|
|
12
18
|
[Symbol.equals](that: unknown): boolean {
|
@@ -29,11 +35,3 @@ export class ImmutableArray<A> implements Equatable, Hashable, Iterable<A> {
|
|
29
35
|
export function isImmutableArray(u: unknown): u is ImmutableArray<unknown> {
|
30
36
|
return hasTypeId(u, ImmutableArrayTypeId);
|
31
37
|
}
|
32
|
-
|
33
|
-
export interface ImmutableArrayF extends HKT {
|
34
|
-
readonly type: ImmutableArray<this["A"]>;
|
35
|
-
readonly variance: {
|
36
|
-
readonly A: "+";
|
37
|
-
};
|
38
|
-
readonly index: number;
|
39
|
-
}
|