@fncts/base 0.0.20 → 0.0.21
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 +8 -8
- package/_cjs/collection/Iterable/api/traverseConc.cjs.map +1 -1
- package/_cjs/collection/Iterable/api.cjs +497 -444
- package/_cjs/collection/Iterable/api.cjs.map +1 -1
- package/_cjs/collection/Iterable/constructors.cjs +7 -7
- package/_cjs/collection/Iterable/constructors.cjs.map +1 -1
- package/_cjs/collection/compat/Array/api.cjs +16 -12
- package/_cjs/collection/compat/Array/api.cjs.map +1 -1
- package/_cjs/collection/compat/Array/derivations.cjs +41 -19
- package/_cjs/collection/compat/Array/derivations.cjs.map +1 -1
- package/_cjs/collection/compat/ArrayLike/api.cjs +1 -1
- package/_cjs/collection/compat/ArrayLike/api.cjs.map +1 -1
- package/_cjs/collection/compat/Record/instances.cjs +39 -3
- package/_cjs/collection/compat/Record/instances.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/api/makeBy.cjs +1 -1
- package/_cjs/collection/immutable/Conc/api/makeBy.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/api.cjs +866 -765
- package/_cjs/collection/immutable/Conc/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/definition.cjs +55 -53
- package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/derivations.cjs +13 -2
- package/_cjs/collection/immutable/Conc/derivations.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc.cjs.map +1 -1
- package/_cjs/collection/immutable/Dictionary/api.cjs +57 -44
- package/_cjs/collection/immutable/Dictionary/api.cjs.map +1 -1
- package/_cjs/collection/immutable/HashMap/api.cjs +351 -258
- package/_cjs/collection/immutable/HashMap/api.cjs.map +1 -1
- package/_cjs/collection/immutable/HashMap/definition.cjs +1 -1
- package/_cjs/collection/immutable/HashMap/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/HashMap/internal.cjs.map +1 -1
- package/_cjs/collection/immutable/HashSet/api.cjs +230 -192
- package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
- package/_cjs/collection/immutable/HashSet/definition.cjs +1 -1
- package/_cjs/collection/immutable/HashSet/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs +6 -4
- package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs +6 -4
- package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs +6 -4
- package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs +15 -13
- package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/api.cjs +943 -749
- package/_cjs/collection/immutable/ImmutableArray/api.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/derivations.cjs +12 -1
- package/_cjs/collection/immutable/ImmutableArray/derivations.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/instances.cjs +33 -33
- package/_cjs/collection/immutable/ImmutableArray/instances.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs +338 -273
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs +15 -4
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs +2 -2
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs +12 -12
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs.map +1 -1
- package/_cjs/collection/immutable/List/api/foldLeft.cjs +12 -10
- package/_cjs/collection/immutable/List/api/foldLeft.cjs.map +1 -1
- package/_cjs/collection/immutable/List/api.cjs +164 -141
- package/_cjs/collection/immutable/List/api.cjs.map +1 -1
- package/_cjs/collection/immutable/List.cjs.map +1 -1
- package/_cjs/collection/immutable/Queue/api.cjs +64 -48
- package/_cjs/collection/immutable/Queue/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Queue/definition.cjs +1 -1
- package/_cjs/collection/immutable/Queue/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/RoseTree/api.cjs +50 -36
- package/_cjs/collection/immutable/RoseTree/api.cjs.map +1 -1
- package/_cjs/collection/immutable/RoseTree/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/SortedMap/api.cjs +408 -368
- package/_cjs/collection/immutable/SortedMap/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Vector/api.cjs +723 -608
- package/_cjs/collection/immutable/Vector/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Vector/definition.cjs +18 -16
- package/_cjs/collection/immutable/Vector/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/Vector/internal.cjs +40 -39
- package/_cjs/collection/immutable/Vector/internal.cjs.map +1 -1
- package/_cjs/collection/mutable/HashMap.cjs +3 -5
- package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
- package/_cjs/collection/mutable/HashSet.cjs.map +1 -1
- package/_cjs/collection/mutable/ListBuffer.cjs +2 -2
- package/_cjs/collection/mutable/ListBuffer.cjs.map +1 -1
- package/_cjs/collection/mutable/internal.cjs +0 -2
- package/_cjs/collection/mutable/internal.cjs.map +1 -1
- package/_cjs/collection/weak/IterableWeakMap.cjs +7 -7
- package/_cjs/collection/weak/IterableWeakMap.cjs.map +1 -1
- package/_cjs/collection/weak/IterableWeakSet.cjs +7 -7
- package/_cjs/collection/weak/IterableWeakSet.cjs.map +1 -1
- package/_cjs/control/Eval/api.cjs +55 -43
- package/_cjs/control/Eval/api.cjs.map +1 -1
- package/_cjs/control/Eval/instance.cjs +4 -4
- package/_cjs/control/Eval/instance.cjs.map +1 -1
- package/_cjs/control/Eval/run.cjs +1 -1
- package/_cjs/control/Eval/run.cjs.map +1 -1
- package/_cjs/control/Z/api.cjs +241 -172
- package/_cjs/control/Z/api.cjs.map +1 -1
- package/_cjs/control/Z/instances.cjs +3 -3
- package/_cjs/control/Z/instances.cjs.map +1 -1
- package/_cjs/control/Z/runtime.cjs +250 -241
- package/_cjs/control/Z/runtime.cjs.map +1 -1
- package/_cjs/data/Branded/definition.cjs.map +1 -1
- package/_cjs/data/Branded/derivations.cjs +3 -3
- package/_cjs/data/Branded/derivations.cjs.map +1 -1
- package/_cjs/data/CaseClass.cjs.map +1 -1
- package/_cjs/data/Cause/api/fold.cjs +20 -18
- package/_cjs/data/Cause/api/fold.cjs.map +1 -1
- package/_cjs/data/Cause/api/isEmpty.cjs +1 -1
- package/_cjs/data/Cause/api/isEmpty.cjs.map +1 -1
- package/_cjs/data/Cause/api/linearize.cjs +8 -8
- package/_cjs/data/Cause/api/linearize.cjs.map +1 -1
- package/_cjs/data/Cause/api/prettyPrint.cjs +1 -1
- package/_cjs/data/Cause/api/prettyPrint.cjs.map +1 -1
- package/_cjs/data/Cause/api.cjs +160 -140
- package/_cjs/data/Cause/api.cjs.map +1 -1
- package/_cjs/data/Cause/definition.cjs +18 -18
- package/_cjs/data/Cause/definition.cjs.map +1 -1
- package/_cjs/data/Cause.cjs.map +1 -1
- package/_cjs/data/Const/api.cjs +8 -6
- package/_cjs/data/Const/api.cjs.map +1 -1
- package/_cjs/data/Const/instances.cjs +4 -4
- package/_cjs/data/Const/instances.cjs.map +1 -1
- package/_cjs/data/Datum/api.cjs +219 -176
- package/_cjs/data/Datum/api.cjs.map +1 -1
- package/_cjs/data/Datum/definition.cjs.map +1 -1
- package/_cjs/data/DatumEither/api.cjs +165 -133
- package/_cjs/data/DatumEither/api.cjs.map +1 -1
- package/_cjs/data/DecodeError/definition.cjs +14 -14
- package/_cjs/data/DecodeError/definition.cjs.map +1 -1
- package/_cjs/data/Decoder/api.cjs +9 -7
- package/_cjs/data/Decoder/api.cjs.map +1 -1
- package/_cjs/data/Duration/api.cjs +18 -12
- package/_cjs/data/Duration/api.cjs.map +1 -1
- package/_cjs/data/Either/api/align.cjs +8 -3
- package/_cjs/data/Either/api/align.cjs.map +1 -1
- package/_cjs/data/Either/api/alignWith.cjs +14 -12
- package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
- package/_cjs/data/Either/api.cjs +206 -169
- package/_cjs/data/Either/api.cjs.map +1 -1
- package/_cjs/data/Either/constructors.cjs +11 -9
- package/_cjs/data/Either/constructors.cjs.map +1 -1
- package/_cjs/data/Either/destructors.cjs +16 -14
- package/_cjs/data/Either/destructors.cjs.map +1 -1
- package/_cjs/data/Either/instances.cjs +8 -8
- package/_cjs/data/Either/instances.cjs.map +1 -1
- package/_cjs/data/EitherT/api.cjs +8 -8
- package/_cjs/data/EitherT/api.cjs.map +1 -1
- package/_cjs/data/Encoder/api.cjs +134 -0
- package/_cjs/data/Encoder/api.cjs.map +1 -0
- package/_cjs/data/Encoder/definition.cjs +25 -0
- package/_cjs/data/Encoder/definition.cjs.map +1 -0
- package/_cjs/data/Encoder.cjs +32 -0
- package/_cjs/data/Encoder.cjs.map +1 -0
- package/_cjs/data/Environment/api.cjs +45 -33
- package/_cjs/data/Environment/api.cjs.map +1 -1
- package/_cjs/data/EnvironmentPatch.cjs +17 -13
- package/_cjs/data/EnvironmentPatch.cjs.map +1 -1
- package/_cjs/data/ExecutionStrategy.cjs +21 -29
- package/_cjs/data/ExecutionStrategy.cjs.map +1 -1
- package/_cjs/data/Exit/api.cjs +159 -127
- package/_cjs/data/Exit/api.cjs.map +1 -1
- package/_cjs/data/Exit/constructors.cjs +4 -4
- package/_cjs/data/Exit/constructors.cjs.map +1 -1
- package/_cjs/data/FiberId/api.cjs +23 -21
- package/_cjs/data/FiberId/api.cjs.map +1 -1
- package/_cjs/data/FiberId/constructors.cjs.map +1 -1
- package/_cjs/data/Identity/api.cjs +26 -18
- package/_cjs/data/Identity/api.cjs.map +1 -1
- package/_cjs/data/Identity/instances.cjs +3 -3
- package/_cjs/data/Identity/instances.cjs.map +1 -1
- package/_cjs/data/Interval.cjs +43 -33
- package/_cjs/data/Interval.cjs.map +1 -1
- package/_cjs/data/Intervals.cjs +35 -27
- package/_cjs/data/Intervals.cjs.map +1 -1
- package/_cjs/data/Maybe/api.cjs +160 -125
- package/_cjs/data/Maybe/api.cjs.map +1 -1
- package/_cjs/data/Maybe/constructors.cjs +2 -2
- package/_cjs/data/Maybe/constructors.cjs.map +1 -1
- package/_cjs/data/Maybe/definition.cjs.map +1 -1
- package/_cjs/data/Maybe/destructors.cjs +9 -7
- package/_cjs/data/Maybe/destructors.cjs.map +1 -1
- package/_cjs/data/Maybe/instances.cjs +11 -11
- package/_cjs/data/Maybe/instances.cjs.map +1 -1
- package/_cjs/data/Predicate/api.cjs +10 -8
- package/_cjs/data/Predicate/api.cjs.map +1 -1
- package/_cjs/data/Refinement/api.cjs +15 -9
- package/_cjs/data/Refinement/api.cjs.map +1 -1
- package/_cjs/data/Struct/api.cjs +62 -50
- package/_cjs/data/Struct/api.cjs.map +1 -1
- package/_cjs/data/Tag/constructors.cjs +3 -2
- package/_cjs/data/Tag/constructors.cjs.map +1 -1
- package/_cjs/data/Tag/definition.cjs +0 -3
- package/_cjs/data/Tag/definition.cjs.map +1 -1
- package/_cjs/data/These/api.cjs +188 -170
- package/_cjs/data/These/api.cjs.map +1 -1
- package/_cjs/data/These/constructors.cjs +1 -1
- package/_cjs/data/These/constructors.cjs.map +1 -1
- package/_cjs/data/These/destructors.cjs +39 -35
- package/_cjs/data/These/destructors.cjs.map +1 -1
- package/_cjs/data/These/instances.cjs +1 -1
- package/_cjs/data/These/instances.cjs.map +1 -1
- package/_cjs/data/Trace/api.cjs +7 -5
- package/_cjs/data/Trace/api.cjs.map +1 -1
- package/_cjs/data/Zipped.cjs.map +1 -1
- package/_cjs/data/function/api.cjs +6 -4
- package/_cjs/data/function/api.cjs.map +1 -1
- package/_cjs/data/function/pipe.cjs +9 -0
- package/_cjs/data/function/pipe.cjs.map +1 -1
- package/_cjs/data/string/api.cjs +53 -96
- package/_cjs/data/string/api.cjs.map +1 -1
- package/_cjs/global/api.cjs +4 -2
- package/_cjs/global/api.cjs.map +1 -1
- package/_cjs/internal/AtomicBoolean.cjs.map +1 -1
- package/_cjs/internal/AtomicNumber.cjs.map +1 -1
- package/_cjs/internal/AtomicReference.cjs.map +1 -1
- package/_cjs/internal/Stack.cjs +2 -2
- package/_cjs/internal/Stack.cjs.map +1 -1
- package/_cjs/optics/At/api.cjs +1 -1
- package/_cjs/optics/At/api.cjs.map +1 -1
- package/_cjs/optics/At/definition.cjs +2 -2
- package/_cjs/optics/At/definition.cjs.map +1 -1
- package/_cjs/optics/Fold/definition.cjs +3 -4
- package/_cjs/optics/Fold/definition.cjs.map +1 -1
- package/_cjs/optics/Getter/definition.cjs +2 -3
- package/_cjs/optics/Getter/definition.cjs.map +1 -1
- package/_cjs/optics/Index/api.cjs +4 -4
- package/_cjs/optics/Index/api.cjs.map +1 -1
- package/_cjs/optics/Index/definition.cjs +2 -2
- package/_cjs/optics/Index/definition.cjs.map +1 -1
- package/_cjs/optics/Iso/api.cjs +9 -7
- package/_cjs/optics/Iso/api.cjs.map +1 -1
- package/_cjs/optics/Iso/definition.cjs +12 -12
- package/_cjs/optics/Iso/definition.cjs.map +1 -1
- package/_cjs/optics/Lens/api.cjs +54 -44
- package/_cjs/optics/Lens/api.cjs.map +1 -1
- package/_cjs/optics/Lens/definition.cjs +10 -10
- package/_cjs/optics/Lens/definition.cjs.map +1 -1
- package/_cjs/optics/Optional/api/compose.cjs +9 -7
- package/_cjs/optics/Optional/api/compose.cjs.map +1 -1
- package/_cjs/optics/Optional/definition.cjs +12 -13
- package/_cjs/optics/Optional/definition.cjs.map +1 -1
- package/_cjs/optics/Optional.cjs.map +1 -1
- package/_cjs/optics/Prism/api/compose.cjs +9 -7
- package/_cjs/optics/Prism/api/compose.cjs.map +1 -1
- package/_cjs/optics/Prism/api/fromNullable.cjs +2 -2
- package/_cjs/optics/Prism/api/fromNullable.cjs.map +1 -1
- package/_cjs/optics/Prism/api/just.cjs +2 -2
- package/_cjs/optics/Prism/api/just.cjs.map +1 -1
- package/_cjs/optics/Prism/definition.cjs +9 -9
- package/_cjs/optics/Prism/definition.cjs.map +1 -1
- package/_cjs/optics/Prism.cjs.map +1 -1
- package/_cjs/optics/Setter/definition.cjs +8 -13
- package/_cjs/optics/Setter/definition.cjs.map +1 -1
- package/_cjs/optics/Traversal/api/compose.cjs +8 -6
- package/_cjs/optics/Traversal/api/compose.cjs.map +1 -1
- package/_cjs/optics/Traversal/api/fromTraversable.cjs +2 -2
- package/_cjs/optics/Traversal/api/fromTraversable.cjs.map +1 -1
- package/_cjs/optics/Traversal/definition.cjs +12 -12
- package/_cjs/optics/Traversal/definition.cjs.map +1 -1
- package/_cjs/optics/Traversal.cjs.map +1 -1
- package/_cjs/typeclass/Align.cjs.map +1 -1
- package/_cjs/typeclass/Alt.cjs.map +1 -1
- package/_cjs/typeclass/Applicative.cjs.map +1 -1
- package/_cjs/typeclass/ApplicativeExcept.cjs +5 -10
- package/_cjs/typeclass/ApplicativeExcept.cjs.map +1 -1
- package/_cjs/typeclass/Apply.cjs +8 -8
- package/_cjs/typeclass/Apply.cjs.map +1 -1
- package/_cjs/typeclass/Chain.cjs +4 -4
- package/_cjs/typeclass/Chain.cjs.map +1 -1
- package/_cjs/typeclass/Eq/definition.cjs.map +1 -1
- package/_cjs/typeclass/Eq/derivations.cjs.map +1 -1
- package/_cjs/typeclass/Equatable/api.cjs.map +1 -1
- package/_cjs/typeclass/Equatable/definition.cjs.map +1 -1
- package/_cjs/typeclass/Equatable/fast-equals.cjs.map +1 -1
- package/_cjs/typeclass/Filterable.cjs.map +1 -1
- package/_cjs/typeclass/FilterableWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/Foldable.cjs +1 -1
- package/_cjs/typeclass/Foldable.cjs.map +1 -1
- package/_cjs/typeclass/FoldableWithIndex.cjs +1 -1
- package/_cjs/typeclass/FoldableWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/Functor.cjs.map +1 -1
- package/_cjs/typeclass/FunctorWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/Guard/api.cjs +18 -10
- package/_cjs/typeclass/Guard/api.cjs.map +1 -1
- package/_cjs/typeclass/Guard/definition.cjs.map +1 -1
- package/_cjs/typeclass/Guard/derivations.cjs.map +1 -1
- package/_cjs/typeclass/Has.cjs +7 -5
- package/_cjs/typeclass/Has.cjs.map +1 -1
- package/_cjs/typeclass/HashEq.cjs.map +1 -1
- package/_cjs/typeclass/Hashable/definition.cjs.map +1 -1
- package/_cjs/typeclass/Hashable/hash.cjs.map +1 -1
- package/_cjs/typeclass/MonadExcept.cjs +1 -1
- package/_cjs/typeclass/MonadExcept.cjs.map +1 -1
- package/_cjs/typeclass/Ord/api/contramap.cjs +7 -5
- package/_cjs/typeclass/Ord/api/contramap.cjs.map +1 -1
- package/_cjs/typeclass/Ord/api/max.cjs.map +1 -1
- package/_cjs/typeclass/Ord/api/min.cjs.map +1 -1
- package/_cjs/typeclass/Ord/definition.cjs.map +1 -1
- package/_cjs/typeclass/Ord/instances.cjs.map +1 -1
- package/_cjs/typeclass/Ordering.cjs.map +1 -1
- package/_cjs/typeclass/Semialign.cjs +7 -7
- package/_cjs/typeclass/Semialign.cjs.map +1 -1
- package/_cjs/typeclass/Semigroup/api.cjs.map +1 -1
- package/_cjs/typeclass/Semigroup/definition.cjs.map +1 -1
- package/_cjs/typeclass/Semigroup/derivations.cjs.map +1 -1
- package/_cjs/typeclass/Semimonoidal.cjs.map +1 -1
- package/_cjs/typeclass/Showable/definition.cjs.map +1 -1
- package/_cjs/typeclass/Showable/show.cjs +107 -107
- package/_cjs/typeclass/Showable/show.cjs.map +1 -1
- package/_cjs/typeclass/Showable/styles.cjs.map +1 -1
- package/_cjs/typeclass/Showable/util.cjs +1 -1
- package/_cjs/typeclass/Showable/util.cjs.map +1 -1
- package/_cjs/typeclass/Traversable.cjs +1 -2
- package/_cjs/typeclass/Traversable.cjs.map +1 -1
- package/_cjs/typeclass/TraversableWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/Witherable.cjs +3 -1
- package/_cjs/typeclass/Witherable.cjs.map +1 -1
- package/_cjs/typeclass/WitherableWithIndex.cjs +3 -1
- package/_cjs/typeclass/WitherableWithIndex.cjs.map +1 -1
- package/_cjs/util/AnsiFormat.cjs +11 -11
- package/_cjs/util/AnsiFormat.cjs.map +1 -1
- package/_cjs/util/PCGRandom.cjs.map +1 -1
- package/_cjs/util/assert.cjs.map +1 -1
- package/_cjs/util/pattern.cjs.map +1 -1
- package/_cjs/util/predicates.cjs.map +1 -1
- package/_cjs/util/rand/Random.cjs.map +1 -1
- package/_cjs/util/rand/distribution/UniformArrayIntDistribution.cjs.map +1 -1
- package/_cjs/util/rand/distribution/UniformBigIntDistribution.cjs.map +1 -1
- package/_cjs/util/rand/distribution/UniformIntDistribution.cjs.map +1 -1
- package/_cjs/util/rand/distribution/internals/ArrayInt.cjs.map +1 -1
- package/_cjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.cjs.map +1 -1
- package/_cjs/util/rand/distribution/internals/UniformIntDistributionInternal.cjs.map +1 -1
- package/_cjs/util/rand/generator/MersenneTwister.cjs.map +1 -1
- package/_cjs/util/rand/generator/RandomGenerator.cjs.map +1 -1
- package/_cjs/util/rand.cjs.map +1 -1
- package/_mjs/collection/Iterable/api/traverseConc.mjs +5 -5
- package/_mjs/collection/Iterable/api/traverseConc.mjs.map +1 -1
- package/_mjs/collection/Iterable/api.mjs +465 -411
- package/_mjs/collection/Iterable/api.mjs.map +1 -1
- package/_mjs/collection/Iterable/constructors.mjs +5 -5
- package/_mjs/collection/Iterable/constructors.mjs.map +1 -1
- package/_mjs/collection/compat/Array/api.mjs +16 -12
- package/_mjs/collection/compat/Array/api.mjs.map +1 -1
- package/_mjs/collection/compat/Array/derivations.mjs +35 -19
- package/_mjs/collection/compat/Array/derivations.mjs.map +1 -1
- package/_mjs/collection/compat/ArrayLike/api.mjs +1 -1
- package/_mjs/collection/compat/ArrayLike/api.mjs.map +1 -1
- package/_mjs/collection/compat/Record/instances.mjs +34 -3
- package/_mjs/collection/compat/Record/instances.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/api/makeBy.mjs +1 -1
- package/_mjs/collection/immutable/Conc/api/makeBy.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/api.mjs +795 -697
- package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/definition.mjs +53 -51
- package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/derivations.mjs +10 -2
- package/_mjs/collection/immutable/Conc/derivations.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc.mjs.map +1 -1
- package/_mjs/collection/immutable/Dictionary/api.mjs +47 -35
- package/_mjs/collection/immutable/Dictionary/api.mjs.map +1 -1
- package/_mjs/collection/immutable/HashMap/api.mjs +295 -217
- package/_mjs/collection/immutable/HashMap/api.mjs.map +1 -1
- package/_mjs/collection/immutable/HashMap/definition.mjs +1 -1
- package/_mjs/collection/immutable/HashMap/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/HashMap/internal.mjs.map +1 -1
- package/_mjs/collection/immutable/HashSet/api.mjs +206 -168
- package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
- package/_mjs/collection/immutable/HashSet/definition.mjs +1 -1
- package/_mjs/collection/immutable/HashSet/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs +5 -3
- package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs +5 -3
- package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs +5 -3
- package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs +13 -11
- package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/api.mjs +816 -629
- package/_mjs/collection/immutable/ImmutableArray/api.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/derivations.mjs +9 -1
- package/_mjs/collection/immutable/ImmutableArray/derivations.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/instances.mjs +34 -34
- package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs +301 -239
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs +12 -4
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs +2 -2
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs +13 -13
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs.map +1 -1
- package/_mjs/collection/immutable/List/api/foldLeft.mjs +11 -9
- package/_mjs/collection/immutable/List/api/foldLeft.mjs.map +1 -1
- package/_mjs/collection/immutable/List/api.mjs +157 -133
- package/_mjs/collection/immutable/List/api.mjs.map +1 -1
- package/_mjs/collection/immutable/List.mjs.map +1 -1
- package/_mjs/collection/immutable/Queue/api.mjs +55 -39
- package/_mjs/collection/immutable/Queue/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Queue/definition.mjs +1 -1
- package/_mjs/collection/immutable/Queue/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/RoseTree/api.mjs +50 -36
- package/_mjs/collection/immutable/RoseTree/api.mjs.map +1 -1
- package/_mjs/collection/immutable/RoseTree/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/SortedMap/api.mjs +398 -358
- package/_mjs/collection/immutable/SortedMap/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Vector/api.mjs +650 -538
- package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Vector/definition.mjs +16 -14
- package/_mjs/collection/immutable/Vector/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/Vector/internal.mjs +40 -39
- package/_mjs/collection/immutable/Vector/internal.mjs.map +1 -1
- package/_mjs/collection/mutable/HashMap.mjs +3 -5
- package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
- package/_mjs/collection/mutable/HashSet.mjs.map +1 -1
- package/_mjs/collection/mutable/ListBuffer.mjs +2 -2
- package/_mjs/collection/mutable/ListBuffer.mjs.map +1 -1
- package/_mjs/collection/mutable/internal.mjs +0 -2
- package/_mjs/collection/mutable/internal.mjs.map +1 -1
- package/_mjs/collection/weak/IterableWeakMap.mjs +7 -7
- package/_mjs/collection/weak/IterableWeakMap.mjs.map +1 -1
- package/_mjs/collection/weak/IterableWeakSet.mjs +7 -7
- package/_mjs/collection/weak/IterableWeakSet.mjs.map +1 -1
- package/_mjs/control/Eval/api.mjs +40 -28
- package/_mjs/control/Eval/api.mjs.map +1 -1
- package/_mjs/control/Eval/instance.mjs +5 -5
- package/_mjs/control/Eval/instance.mjs.map +1 -1
- package/_mjs/control/Eval/run.mjs +1 -1
- package/_mjs/control/Eval/run.mjs.map +1 -1
- package/_mjs/control/Z/api.mjs +196 -128
- package/_mjs/control/Z/api.mjs.map +1 -1
- package/_mjs/control/Z/instances.mjs +4 -4
- package/_mjs/control/Z/instances.mjs.map +1 -1
- package/_mjs/control/Z/runtime.mjs +244 -234
- package/_mjs/control/Z/runtime.mjs.map +1 -1
- package/_mjs/data/Branded/definition.mjs.map +1 -1
- package/_mjs/data/Branded/derivations.mjs +3 -3
- package/_mjs/data/Branded/derivations.mjs.map +1 -1
- package/_mjs/data/CaseClass.mjs.map +1 -1
- package/_mjs/data/Cause/api/fold.mjs +19 -17
- package/_mjs/data/Cause/api/fold.mjs.map +1 -1
- package/_mjs/data/Cause/api/isEmpty.mjs +1 -1
- package/_mjs/data/Cause/api/isEmpty.mjs.map +1 -1
- package/_mjs/data/Cause/api/linearize.mjs +8 -8
- package/_mjs/data/Cause/api/linearize.mjs.map +1 -1
- package/_mjs/data/Cause/api/prettyPrint.mjs +1 -1
- package/_mjs/data/Cause/api/prettyPrint.mjs.map +1 -1
- package/_mjs/data/Cause/api.mjs +149 -129
- package/_mjs/data/Cause/api.mjs.map +1 -1
- package/_mjs/data/Cause/definition.mjs +18 -18
- package/_mjs/data/Cause/definition.mjs.map +1 -1
- package/_mjs/data/Cause.mjs.map +1 -1
- package/_mjs/data/Const/api.mjs +6 -4
- package/_mjs/data/Const/api.mjs.map +1 -1
- package/_mjs/data/Const/instances.mjs +4 -4
- package/_mjs/data/Const/instances.mjs.map +1 -1
- package/_mjs/data/Datum/api.mjs +220 -179
- package/_mjs/data/Datum/api.mjs.map +1 -1
- package/_mjs/data/Datum/definition.mjs.map +1 -1
- package/_mjs/data/DatumEither/api.mjs +163 -132
- package/_mjs/data/DatumEither/api.mjs.map +1 -1
- package/_mjs/data/DecodeError/definition.mjs +14 -14
- package/_mjs/data/DecodeError/definition.mjs.map +1 -1
- package/_mjs/data/Decoder/api.mjs +9 -7
- package/_mjs/data/Decoder/api.mjs.map +1 -1
- package/_mjs/data/Duration/api.mjs +16 -10
- package/_mjs/data/Duration/api.mjs.map +1 -1
- package/_mjs/data/Either/api/align.mjs +8 -2
- package/_mjs/data/Either/api/align.mjs.map +1 -1
- package/_mjs/data/Either/api/alignWith.mjs +13 -11
- package/_mjs/data/Either/api/alignWith.mjs.map +1 -1
- package/_mjs/data/Either/api.mjs +175 -136
- package/_mjs/data/Either/api.mjs.map +1 -1
- package/_mjs/data/Either/constructors.mjs +7 -5
- package/_mjs/data/Either/constructors.mjs.map +1 -1
- package/_mjs/data/Either/destructors.mjs +15 -13
- package/_mjs/data/Either/destructors.mjs.map +1 -1
- package/_mjs/data/Either/instances.mjs +9 -9
- package/_mjs/data/Either/instances.mjs.map +1 -1
- package/_mjs/data/EitherT/api.mjs +8 -8
- package/_mjs/data/EitherT/api.mjs.map +1 -1
- package/_mjs/data/Encoder/api.mjs +102 -0
- package/_mjs/data/Encoder/api.mjs.map +1 -0
- package/_mjs/data/Encoder/definition.mjs +15 -0
- package/_mjs/data/Encoder/definition.mjs.map +1 -0
- package/_mjs/data/Encoder.mjs +4 -0
- package/_mjs/data/Encoder.mjs.map +1 -0
- package/_mjs/data/Environment/api.mjs +45 -33
- package/_mjs/data/Environment/api.mjs.map +1 -1
- package/_mjs/data/EnvironmentPatch.mjs +17 -13
- package/_mjs/data/EnvironmentPatch.mjs.map +1 -1
- package/_mjs/data/ExecutionStrategy.mjs +19 -27
- package/_mjs/data/ExecutionStrategy.mjs.map +1 -1
- package/_mjs/data/Exit/api.mjs +140 -108
- package/_mjs/data/Exit/api.mjs.map +1 -1
- package/_mjs/data/Exit/constructors.mjs +3 -3
- package/_mjs/data/Exit/constructors.mjs.map +1 -1
- package/_mjs/data/FiberId/api.mjs +22 -20
- package/_mjs/data/FiberId/api.mjs.map +1 -1
- package/_mjs/data/FiberId/constructors.mjs.map +1 -1
- package/_mjs/data/Identity/api.mjs +21 -13
- package/_mjs/data/Identity/api.mjs.map +1 -1
- package/_mjs/data/Identity/instances.mjs +4 -4
- package/_mjs/data/Identity/instances.mjs.map +1 -1
- package/_mjs/data/Interval.mjs +38 -28
- package/_mjs/data/Interval.mjs.map +1 -1
- package/_mjs/data/Intervals.mjs +35 -27
- package/_mjs/data/Intervals.mjs.map +1 -1
- package/_mjs/data/Maybe/api.mjs +141 -106
- package/_mjs/data/Maybe/api.mjs.map +1 -1
- package/_mjs/data/Maybe/constructors.mjs +1 -1
- package/_mjs/data/Maybe/constructors.mjs.map +1 -1
- package/_mjs/data/Maybe/definition.mjs.map +1 -1
- package/_mjs/data/Maybe/destructors.mjs +8 -6
- package/_mjs/data/Maybe/destructors.mjs.map +1 -1
- package/_mjs/data/Maybe/instances.mjs +12 -12
- package/_mjs/data/Maybe/instances.mjs.map +1 -1
- package/_mjs/data/Predicate/api.mjs +10 -8
- package/_mjs/data/Predicate/api.mjs.map +1 -1
- package/_mjs/data/Refinement/api.mjs +15 -9
- package/_mjs/data/Refinement/api.mjs.map +1 -1
- package/_mjs/data/Struct/api.mjs +56 -44
- package/_mjs/data/Struct/api.mjs.map +1 -1
- package/_mjs/data/Tag/constructors.mjs +3 -2
- package/_mjs/data/Tag/constructors.mjs.map +1 -1
- package/_mjs/data/Tag/definition.mjs +0 -2
- package/_mjs/data/Tag/definition.mjs.map +1 -1
- package/_mjs/data/These/api.mjs +187 -169
- package/_mjs/data/These/api.mjs.map +1 -1
- package/_mjs/data/These/constructors.mjs +1 -1
- package/_mjs/data/These/constructors.mjs.map +1 -1
- package/_mjs/data/These/destructors.mjs +35 -31
- package/_mjs/data/These/destructors.mjs.map +1 -1
- package/_mjs/data/These/instances.mjs +1 -1
- package/_mjs/data/These/instances.mjs.map +1 -1
- package/_mjs/data/Trace/api.mjs +6 -4
- package/_mjs/data/Trace/api.mjs.map +1 -1
- package/_mjs/data/Zipped.mjs.map +1 -1
- package/_mjs/data/function/api.mjs +5 -3
- package/_mjs/data/function/api.mjs.map +1 -1
- package/_mjs/data/function/pipe.mjs +7 -0
- package/_mjs/data/function/pipe.mjs.map +1 -1
- package/_mjs/data/string/api.mjs +46 -66
- package/_mjs/data/string/api.mjs.map +1 -1
- package/_mjs/global/api.mjs +4 -2
- package/_mjs/global/api.mjs.map +1 -1
- package/_mjs/internal/AtomicBoolean.mjs.map +1 -1
- package/_mjs/internal/AtomicNumber.mjs.map +1 -1
- package/_mjs/internal/AtomicReference.mjs.map +1 -1
- package/_mjs/internal/Stack.mjs +1 -1
- package/_mjs/internal/Stack.mjs.map +1 -1
- package/_mjs/optics/At/api.mjs +1 -1
- package/_mjs/optics/At/api.mjs.map +1 -1
- package/_mjs/optics/At/definition.mjs +2 -2
- package/_mjs/optics/At/definition.mjs.map +1 -1
- package/_mjs/optics/Fold/definition.mjs +2 -3
- package/_mjs/optics/Fold/definition.mjs.map +1 -1
- package/_mjs/optics/Getter/definition.mjs +1 -2
- package/_mjs/optics/Getter/definition.mjs.map +1 -1
- package/_mjs/optics/Index/api.mjs +4 -4
- package/_mjs/optics/Index/api.mjs.map +1 -1
- package/_mjs/optics/Index/definition.mjs +1 -1
- package/_mjs/optics/Index/definition.mjs.map +1 -1
- package/_mjs/optics/Iso/api.mjs +8 -6
- package/_mjs/optics/Iso/api.mjs.map +1 -1
- package/_mjs/optics/Iso/definition.mjs +9 -9
- package/_mjs/optics/Iso/definition.mjs.map +1 -1
- package/_mjs/optics/Lens/api.mjs +49 -39
- package/_mjs/optics/Lens/api.mjs.map +1 -1
- package/_mjs/optics/Lens/definition.mjs +7 -7
- package/_mjs/optics/Lens/definition.mjs.map +1 -1
- package/_mjs/optics/Optional/api/compose.mjs +8 -6
- package/_mjs/optics/Optional/api/compose.mjs.map +1 -1
- package/_mjs/optics/Optional/definition.mjs +8 -10
- package/_mjs/optics/Optional/definition.mjs.map +1 -1
- package/_mjs/optics/Optional.mjs.map +1 -1
- package/_mjs/optics/Prism/api/compose.mjs +8 -6
- package/_mjs/optics/Prism/api/compose.mjs.map +1 -1
- package/_mjs/optics/Prism/api/fromNullable.mjs +2 -2
- package/_mjs/optics/Prism/api/fromNullable.mjs.map +1 -1
- package/_mjs/optics/Prism/api/just.mjs +2 -2
- package/_mjs/optics/Prism/api/just.mjs.map +1 -1
- package/_mjs/optics/Prism/definition.mjs +6 -6
- package/_mjs/optics/Prism/definition.mjs.map +1 -1
- package/_mjs/optics/Prism.mjs.map +1 -1
- package/_mjs/optics/Setter/definition.mjs +5 -10
- package/_mjs/optics/Setter/definition.mjs.map +1 -1
- package/_mjs/optics/Traversal/api/compose.mjs +7 -5
- package/_mjs/optics/Traversal/api/compose.mjs.map +1 -1
- package/_mjs/optics/Traversal/api/fromTraversable.mjs +2 -2
- package/_mjs/optics/Traversal/api/fromTraversable.mjs.map +1 -1
- package/_mjs/optics/Traversal/definition.mjs +9 -9
- package/_mjs/optics/Traversal/definition.mjs.map +1 -1
- package/_mjs/optics/Traversal.mjs.map +1 -1
- package/_mjs/typeclass/Align.mjs.map +1 -1
- package/_mjs/typeclass/Alt.mjs.map +1 -1
- package/_mjs/typeclass/Applicative.mjs.map +1 -1
- package/_mjs/typeclass/ApplicativeExcept.mjs +6 -10
- package/_mjs/typeclass/ApplicativeExcept.mjs.map +1 -1
- package/_mjs/typeclass/Apply.mjs +9 -9
- package/_mjs/typeclass/Apply.mjs.map +1 -1
- package/_mjs/typeclass/Chain.mjs +5 -5
- package/_mjs/typeclass/Chain.mjs.map +1 -1
- package/_mjs/typeclass/Eq/definition.mjs.map +1 -1
- package/_mjs/typeclass/Eq/derivations.mjs.map +1 -1
- package/_mjs/typeclass/Equatable/api.mjs.map +1 -1
- package/_mjs/typeclass/Equatable/definition.mjs.map +1 -1
- package/_mjs/typeclass/Equatable/fast-equals.mjs.map +1 -1
- package/_mjs/typeclass/Filterable.mjs.map +1 -1
- package/_mjs/typeclass/FilterableWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/Foldable.mjs +1 -1
- package/_mjs/typeclass/Foldable.mjs.map +1 -1
- package/_mjs/typeclass/FoldableWithIndex.mjs +1 -1
- package/_mjs/typeclass/FoldableWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/Functor.mjs.map +1 -1
- package/_mjs/typeclass/FunctorWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/Guard/api.mjs +18 -10
- package/_mjs/typeclass/Guard/api.mjs.map +1 -1
- package/_mjs/typeclass/Guard/definition.mjs.map +1 -1
- package/_mjs/typeclass/Guard/derivations.mjs.map +1 -1
- package/_mjs/typeclass/Has.mjs +7 -5
- package/_mjs/typeclass/Has.mjs.map +1 -1
- package/_mjs/typeclass/HashEq.mjs.map +1 -1
- package/_mjs/typeclass/Hashable/definition.mjs.map +1 -1
- package/_mjs/typeclass/Hashable/hash.mjs.map +1 -1
- package/_mjs/typeclass/MonadExcept.mjs +1 -1
- package/_mjs/typeclass/MonadExcept.mjs.map +1 -1
- package/_mjs/typeclass/Ord/api/contramap.mjs +7 -5
- package/_mjs/typeclass/Ord/api/contramap.mjs.map +1 -1
- package/_mjs/typeclass/Ord/api/max.mjs.map +1 -1
- package/_mjs/typeclass/Ord/api/min.mjs.map +1 -1
- package/_mjs/typeclass/Ord/definition.mjs.map +1 -1
- package/_mjs/typeclass/Ord/instances.mjs.map +1 -1
- package/_mjs/typeclass/Ordering.mjs.map +1 -1
- package/_mjs/typeclass/Semialign.mjs +7 -7
- package/_mjs/typeclass/Semialign.mjs.map +1 -1
- package/_mjs/typeclass/Semigroup/api.mjs.map +1 -1
- package/_mjs/typeclass/Semigroup/definition.mjs.map +1 -1
- package/_mjs/typeclass/Semigroup/derivations.mjs.map +1 -1
- package/_mjs/typeclass/Semimonoidal.mjs.map +1 -1
- package/_mjs/typeclass/Showable/definition.mjs.map +1 -1
- package/_mjs/typeclass/Showable/show.mjs +107 -107
- package/_mjs/typeclass/Showable/show.mjs.map +1 -1
- package/_mjs/typeclass/Showable/styles.mjs.map +1 -1
- package/_mjs/typeclass/Showable/util.mjs +1 -1
- package/_mjs/typeclass/Showable/util.mjs.map +1 -1
- package/_mjs/typeclass/Traversable.mjs +1 -2
- package/_mjs/typeclass/Traversable.mjs.map +1 -1
- package/_mjs/typeclass/TraversableWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/Witherable.mjs +2 -1
- package/_mjs/typeclass/Witherable.mjs.map +1 -1
- package/_mjs/typeclass/WitherableWithIndex.mjs +2 -1
- package/_mjs/typeclass/WitherableWithIndex.mjs.map +1 -1
- package/_mjs/util/AnsiFormat.mjs +11 -11
- package/_mjs/util/AnsiFormat.mjs.map +1 -1
- package/_mjs/util/PCGRandom.mjs.map +1 -1
- package/_mjs/util/assert.mjs.map +1 -1
- package/_mjs/util/pattern.mjs.map +1 -1
- package/_mjs/util/predicates.mjs.map +1 -1
- package/_mjs/util/rand/Random.mjs.map +1 -1
- package/_mjs/util/rand/distribution/UniformArrayIntDistribution.mjs.map +1 -1
- package/_mjs/util/rand/distribution/UniformBigIntDistribution.mjs.map +1 -1
- package/_mjs/util/rand/distribution/UniformIntDistribution.mjs.map +1 -1
- package/_mjs/util/rand/distribution/internals/ArrayInt.mjs.map +1 -1
- package/_mjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.mjs.map +1 -1
- package/_mjs/util/rand/distribution/internals/UniformIntDistributionInternal.mjs.map +1 -1
- package/_mjs/util/rand/generator/MersenneTwister.mjs.map +1 -1
- package/_mjs/util/rand/generator/RandomGenerator.mjs.map +1 -1
- package/_mjs/util/rand.mjs.map +1 -1
- package/_src/collection/Iterable/api/traverseConc.ts +3 -3
- package/_src/collection/Iterable/api.ts +445 -408
- package/_src/collection/Iterable/constructors.ts +1 -1
- package/_src/collection/compat/Array/api.ts +16 -13
- package/_src/collection/compat/Array/derivations.ts +27 -1
- package/_src/collection/compat/Record/instances.ts +51 -2
- package/_src/collection/immutable/Conc/api.ts +716 -607
- package/_src/collection/immutable/Conc/definition.ts +60 -68
- package/_src/collection/immutable/Conc/derivations.ts +13 -0
- package/_src/collection/immutable/Conc.ts +0 -1
- package/_src/collection/immutable/Dictionary/api.ts +44 -32
- package/_src/collection/immutable/HashMap/api.ts +338 -224
- package/_src/collection/immutable/HashMap/internal.ts +3 -7
- package/_src/collection/immutable/HashSet/api.ts +193 -158
- package/_src/collection/immutable/ImmutableArray/api/chunksOf.ts +5 -3
- package/_src/collection/immutable/ImmutableArray/api/slice.ts +5 -3
- package/_src/collection/immutable/ImmutableArray/api/splitAt.ts +5 -3
- package/_src/collection/immutable/ImmutableArray/api/splitWhere.ts +13 -14
- package/_src/collection/immutable/ImmutableArray/api.ts +870 -722
- package/_src/collection/immutable/ImmutableArray/derivations.ts +13 -0
- package/_src/collection/immutable/ImmutableArray/instances.ts +54 -73
- package/_src/collection/immutable/ImmutableArray.ts +0 -1
- package/_src/collection/immutable/ImmutableNonEmptyArray/api.ts +311 -273
- package/_src/collection/immutable/ImmutableNonEmptyArray/constructors.ts +19 -4
- package/_src/collection/immutable/ImmutableNonEmptyArray/definition.ts +0 -1
- package/_src/collection/immutable/ImmutableNonEmptyArray/derivations.ts +13 -0
- package/_src/collection/immutable/ImmutableNonEmptyArray/instances.ts +22 -23
- package/_src/collection/immutable/List/api/foldLeft.ts +11 -9
- package/_src/collection/immutable/List/api.ts +147 -133
- package/_src/collection/immutable/List.ts +0 -1
- package/_src/collection/immutable/Queue/api.ts +53 -37
- package/_src/collection/immutable/Queue/definition.ts +0 -1
- package/_src/collection/immutable/RoseTree/api.ts +38 -32
- package/_src/collection/immutable/RoseTree/definition.ts +2 -0
- package/_src/collection/immutable/SortedMap/api.ts +364 -332
- package/_src/collection/immutable/Vector/api.ts +608 -482
- package/_src/collection/immutable/Vector/definition.ts +11 -12
- package/_src/collection/immutable/Vector/internal.ts +37 -38
- package/_src/collection/mutable/HashMap.ts +1 -4
- package/_src/collection/mutable/HashSet.ts +1 -2
- package/_src/collection/mutable/ListBuffer.ts +1 -1
- package/_src/collection/mutable/internal.ts +0 -2
- package/_src/collection/weak/IterableWeakMap.ts +11 -7
- package/_src/collection/weak/IterableWeakSet.ts +10 -5
- package/_src/control/Eval/api.ts +35 -19
- package/_src/control/Eval/instance.ts +5 -5
- package/_src/control/Z/api.ts +191 -208
- package/_src/control/Z/instances.ts +4 -5
- package/_src/control/Z/runtime.ts +190 -189
- package/_src/data/Branded/definition.ts +11 -12
- package/_src/data/Branded/derivations.ts +2 -2
- package/_src/data/CaseClass.ts +4 -1
- package/_src/data/Cause/api/fold.ts +13 -14
- package/_src/data/Cause/api.ts +125 -105
- package/_src/data/Cause.ts +0 -1
- package/_src/data/Const/api.ts +6 -4
- package/_src/data/Const/instances.ts +3 -3
- package/_src/data/Datum/api.ts +229 -197
- package/_src/data/Datum/definition.ts +2 -5
- package/_src/data/DatumEither/api.ts +208 -193
- package/_src/data/Decoder/api.ts +5 -3
- package/_src/data/Duration/api.ts +19 -15
- package/_src/data/Either/api/align.ts +7 -2
- package/_src/data/Either/api/alignWith.ts +13 -15
- package/_src/data/Either/api.ts +141 -119
- package/_src/data/Either/constructors.ts +12 -10
- package/_src/data/Either/destructors.ts +11 -9
- package/_src/data/Either/instances.ts +24 -20
- package/_src/data/EitherT/api.ts +43 -49
- package/_src/data/Encoder/api.ts +123 -0
- package/_src/data/Encoder/definition.ts +12 -0
- package/_src/data/Encoder.ts +4 -0
- package/_src/data/Environment/api.ts +52 -44
- package/_src/data/EnvironmentPatch.ts +10 -9
- package/_src/data/ExecutionStrategy.ts +14 -24
- package/_src/data/Exit/api.ts +104 -73
- package/_src/data/Exit/constructors.ts +2 -2
- package/_src/data/FiberId/api.ts +19 -17
- package/_src/data/FiberId/constructors.ts +1 -2
- package/_src/data/Identity/api.ts +20 -12
- package/_src/data/Identity/instances.ts +4 -7
- package/_src/data/Interval.ts +39 -29
- package/_src/data/Intervals.ts +31 -23
- package/_src/data/Maybe/api.ts +112 -79
- package/_src/data/Maybe/constructors.ts +3 -3
- package/_src/data/Maybe/definition.ts +11 -1
- package/_src/data/Maybe/destructors.ts +6 -4
- package/_src/data/Maybe/instances.ts +10 -21
- package/_src/data/Predicate/api.ts +14 -8
- package/_src/data/Refinement/api.ts +19 -13
- package/_src/data/Struct/api.ts +75 -55
- package/_src/data/Tag/constructors.ts +1 -2
- package/_src/data/Tag/definition.ts +0 -1
- package/_src/data/These/api.ts +114 -114
- package/_src/data/These/destructors.ts +23 -24
- package/_src/data/Trace/api.ts +5 -3
- package/_src/data/Zipped.ts +3 -4
- package/_src/data/function/api.ts +6 -7
- package/_src/data/function/pipe.ts +9 -1
- package/_src/data/string/api.ts +40 -60
- package/_src/data.ts +1 -0
- package/_src/global/api.ts +7 -12
- package/_src/global.ts +4 -0
- package/_src/internal/AtomicBoolean.ts +0 -1
- package/_src/internal/AtomicNumber.ts +0 -7
- package/_src/internal/AtomicReference.ts +0 -4
- package/_src/internal/Stack.ts +1 -7
- package/_src/optics/At/definition.ts +5 -3
- package/_src/optics/Fold/definition.ts +3 -10
- package/_src/optics/Getter/definition.ts +1 -2
- package/_src/optics/Index/definition.ts +1 -1
- package/_src/optics/Iso/api.ts +8 -6
- package/_src/optics/Iso/definition.ts +3 -3
- package/_src/optics/Lens/api.ts +44 -42
- package/_src/optics/Lens/definition.ts +5 -5
- package/_src/optics/Optional/api/compose.ts +9 -9
- package/_src/optics/Optional/definition.ts +9 -16
- package/_src/optics/Optional.ts +0 -1
- package/_src/optics/Prism/api/compose.ts +9 -6
- package/_src/optics/Prism/definition.ts +3 -3
- package/_src/optics/Prism.ts +0 -1
- package/_src/optics/Setter/definition.ts +3 -23
- package/_src/optics/Traversal/api/compose.ts +7 -8
- package/_src/optics/Traversal/api/fromTraversable.ts +1 -1
- package/_src/optics/Traversal/definition.ts +10 -15
- package/_src/optics/Traversal.ts +0 -1
- package/_src/typeclass/Align.ts +0 -3
- package/_src/typeclass/Alt.ts +2 -1
- package/_src/typeclass/Applicative.ts +0 -1
- package/_src/typeclass/ApplicativeExcept.ts +15 -10
- package/_src/typeclass/Apply.ts +30 -33
- package/_src/typeclass/Chain.ts +9 -12
- package/_src/typeclass/Eq/definition.ts +0 -3
- package/_src/typeclass/Eq/derivations.ts +0 -2
- package/_src/typeclass/Equatable/api.ts +0 -2
- package/_src/typeclass/Equatable/definition.ts +0 -4
- package/_src/typeclass/Equatable/fast-equals.ts +11 -93
- package/_src/typeclass/Filterable.ts +19 -13
- package/_src/typeclass/FilterableWithIndex.ts +19 -13
- package/_src/typeclass/Foldable.ts +7 -10
- package/_src/typeclass/FoldableWithIndex.ts +7 -10
- package/_src/typeclass/Functor.ts +6 -4
- package/_src/typeclass/FunctorWithIndex.ts +3 -2
- package/_src/typeclass/Guard/api.ts +21 -16
- package/_src/typeclass/Guard/definition.ts +0 -3
- package/_src/typeclass/Guard/derivations.ts +5 -6
- package/_src/typeclass/Has.ts +6 -4
- package/_src/typeclass/HashEq.ts +0 -7
- package/_src/typeclass/Hashable/definition.ts +0 -4
- package/_src/typeclass/Hashable/hash.ts +0 -26
- package/_src/typeclass/MonadExcept.ts +1 -1
- package/_src/typeclass/Ord/api/contramap.ts +7 -6
- package/_src/typeclass/Ord/api/max.ts +0 -1
- package/_src/typeclass/Ord/api/min.ts +0 -1
- package/_src/typeclass/Ord/definition.ts +0 -4
- package/_src/typeclass/Ord/instances.ts +0 -2
- package/_src/typeclass/Ordering.ts +2 -0
- package/_src/typeclass/Semialign.ts +43 -32
- package/_src/typeclass/Semigroup/api.ts +0 -2
- package/_src/typeclass/Semigroup/definition.ts +0 -4
- package/_src/typeclass/Semigroup/derivations.ts +0 -2
- package/_src/typeclass/Semimonoidal.ts +3 -2
- package/_src/typeclass/Showable/definition.ts +0 -6
- package/_src/typeclass/Showable/show.ts +1 -57
- package/_src/typeclass/Showable/styles.ts +0 -8
- package/_src/typeclass/Showable/util.ts +22 -57
- package/_src/typeclass/Traversable.ts +13 -18
- package/_src/typeclass/TraversableWithIndex.ts +5 -7
- package/_src/typeclass/Witherable.ts +21 -13
- package/_src/typeclass/WitherableWithIndex.ts +26 -17
- package/_src/typeclass/builtin/Symbol.ts +0 -1
- package/_src/types/extractions.ts +12 -3
- package/_src/types/utility.ts +3 -5
- package/_src/util/AnsiFormat.ts +0 -25
- package/_src/util/PCGRandom.ts +4 -9
- package/_src/util/assert.ts +1 -2
- package/_src/util/pattern.ts +91 -12
- package/_src/util/predicates.ts +3 -1
- package/_src/util/rand/Random.ts +12 -16
- package/_src/util/rand/distribution/Distribution.ts +0 -1
- package/_src/util/rand/distribution/UniformArrayIntDistribution.ts +0 -3
- package/_src/util/rand/distribution/UniformBigIntDistribution.ts +0 -5
- package/_src/util/rand/distribution/UniformIntDistribution.ts +0 -7
- package/_src/util/rand/distribution/internals/ArrayInt.ts +3 -13
- package/_src/util/rand/distribution/internals/UniformArrayIntDistributionInternal.ts +0 -3
- package/_src/util/rand/distribution/internals/UniformIntDistributionInternal.ts +0 -4
- package/_src/util/rand/generator/MersenneTwister.ts +6 -29
- package/_src/util/rand/generator/RandomGenerator.ts +0 -3
- package/_src/util/rand.ts +0 -2
- package/collection/Iterable/api/traverseConc.d.ts +2 -2
- package/collection/Iterable/api.d.ts +64 -64
- package/collection/Iterable/constructors.d.ts +1 -1
- package/collection/compat/Array/api.d.ts +6 -6
- package/collection/compat/Array/derivations.d.ts +11 -0
- package/collection/compat/Record/instances.d.ts +30 -6
- package/collection/immutable/Conc/api.d.ts +108 -105
- package/collection/immutable/Conc/definition.d.ts +2 -2
- package/collection/immutable/Conc/derivations.d.ts +6 -0
- package/collection/immutable/Dictionary/api.d.ts +12 -12
- package/collection/immutable/HashMap/api.d.ts +76 -70
- package/collection/immutable/HashSet/api.d.ts +45 -41
- package/collection/immutable/ImmutableArray/api/chunksOf.d.ts +2 -2
- package/collection/immutable/ImmutableArray/api/slice.d.ts +2 -2
- package/collection/immutable/ImmutableArray/api/splitAt.d.ts +2 -2
- package/collection/immutable/ImmutableArray/api/splitWhere.d.ts +3 -3
- package/collection/immutable/ImmutableArray/api.d.ts +206 -206
- package/collection/immutable/ImmutableArray/derivations.d.ts +6 -0
- package/collection/immutable/ImmutableNonEmptyArray/api.d.ts +64 -63
- package/collection/immutable/ImmutableNonEmptyArray/derivations.d.ts +6 -0
- package/collection/immutable/List/api/foldLeft.d.ts +2 -2
- package/collection/immutable/List/api.d.ts +24 -24
- package/collection/immutable/Queue/api.d.ts +16 -16
- package/collection/immutable/RoseTree/api.d.ts +14 -14
- package/collection/immutable/SortedMap/api.d.ts +41 -41
- package/collection/immutable/Vector/api.d.ts +121 -117
- package/collection/immutable/Vector/definition.d.ts +2 -2
- package/collection/immutable/Vector/internal.d.ts +2 -2
- package/collection/mutable/ListBuffer.d.ts +1 -1
- package/control/Eval/api.d.ts +12 -12
- package/control/Z/api.d.ts +68 -68
- package/control/Z/runtime.d.ts +10 -10
- package/data/Branded/derivations.d.ts +2 -2
- package/data/Cause/api/fold.d.ts +3 -3
- package/data/Cause/api.d.ts +20 -20
- package/data/Const/api.d.ts +3 -3
- package/data/Datum/api.d.ts +43 -41
- package/data/DatumEither/api.d.ts +48 -46
- package/data/Decoder/api.d.ts +2 -2
- package/data/Duration/api.d.ts +7 -7
- package/data/Either/api/align.d.ts +5 -1
- package/data/Either/api/alignWith.d.ts +2 -2
- package/data/Either/api.d.ts +40 -46
- package/data/Either/constructors.d.ts +6 -6
- package/data/Either/destructors.d.ts +2 -2
- package/data/EitherT/api.d.ts +6 -6
- package/data/Encoder/api.d.ts +73 -0
- package/data/Encoder/definition.d.ts +12 -0
- package/data/Encoder.d.ts +2 -0
- package/data/Environment/api.d.ts +14 -14
- package/data/EnvironmentPatch.d.ts +4 -4
- package/data/ExecutionStrategy.d.ts +1 -6
- package/data/Exit/api.d.ts +32 -32
- package/data/Exit/constructors.d.ts +2 -2
- package/data/FiberId/api.d.ts +2 -2
- package/data/Identity/api.d.ts +8 -8
- package/data/Interval.d.ts +11 -11
- package/data/Intervals.d.ts +11 -11
- package/data/Maybe/api.d.ts +36 -37
- package/data/Maybe/constructors.d.ts +2 -2
- package/data/Maybe/definition.d.ts +7 -3
- package/data/Maybe/destructors.d.ts +2 -2
- package/data/Predicate/api.d.ts +5 -5
- package/data/Refinement/api.d.ts +9 -9
- package/data/Struct/api.d.ts +13 -23
- package/data/Tag/constructors.d.ts +1 -2
- package/data/Tag/definition.d.ts +0 -1
- package/data/These/api.d.ts +18 -22
- package/data/These/destructors.d.ts +4 -4
- package/data/Trace/api.d.ts +2 -2
- package/data/function/api.d.ts +3 -3
- package/data/function/pipe.d.ts +7 -1
- package/data/string/api.d.ts +9 -49
- package/data.d.ts +1 -0
- package/global/api.d.ts +3 -3
- package/global.d.ts +4 -0
- package/internal/Stack.d.ts +1 -1
- package/optics/At/definition.d.ts +1 -1
- package/optics/Fold/definition.d.ts +2 -6
- package/optics/Getter/definition.d.ts +1 -1
- package/optics/Index/definition.d.ts +1 -1
- package/optics/Iso/api.d.ts +2 -2
- package/optics/Iso/definition.d.ts +2 -2
- package/optics/Lens/api.d.ts +10 -10
- package/optics/Lens/definition.d.ts +4 -4
- package/optics/Optional/api/compose.d.ts +2 -2
- package/optics/Optional/definition.d.ts +4 -8
- package/optics/Prism/api/compose.d.ts +2 -2
- package/optics/Prism/definition.d.ts +2 -2
- package/optics/Setter/definition.d.ts +2 -14
- package/optics/Traversal/api/compose.d.ts +2 -2
- package/optics/Traversal/definition.d.ts +4 -4
- package/package.json +1 -1
- package/typeclass/Alt.d.ts +1 -1
- package/typeclass/ApplicativeExcept.d.ts +2 -6
- package/typeclass/Apply.d.ts +5 -5
- package/typeclass/Chain.d.ts +4 -4
- package/typeclass/Filterable.d.ts +6 -6
- package/typeclass/FilterableWithIndex.d.ts +6 -6
- package/typeclass/Foldable.d.ts +4 -4
- package/typeclass/FoldableWithIndex.d.ts +4 -4
- package/typeclass/Functor.d.ts +2 -2
- package/typeclass/FunctorWithIndex.d.ts +1 -1
- package/typeclass/Guard/api.d.ts +7 -7
- package/typeclass/Has.d.ts +3 -3
- package/typeclass/Ord/api/contramap.d.ts +2 -2
- package/typeclass/Semialign.d.ts +14 -14
- package/typeclass/Semimonoidal.d.ts +1 -1
- package/typeclass/Traversable.d.ts +4 -6
- package/typeclass/TraversableWithIndex.d.ts +2 -2
- package/typeclass/Witherable.d.ts +3 -3
- package/typeclass/WitherableWithIndex.d.ts +5 -5
- package/types/extractions.d.ts +10 -6
- package/util/assert.d.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.cjs","mappings":"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","names":["append_","concat_","dropRepeatsWith_","empty","emptyPushable","exists_","findIndex_","flatten","foldLeft_","foldLeftWithIndex_","foldMapWithIndex_","foldRightWithIndex_","forEach_","map_","mapWithIndex_","mutableClone","pop","prepend_","slice_","sortWith_","splitAt_","unsafeFind_","unsafeFindLast_","unsafeGet_","unsafeHead","unsafeLast","updateAt_","vector","as","a","suffixSize","Vector","bits","offset","length","prefix","root","suffix","newSuffix","newVector","mutableClone_1","flatMap_","ma","f","map_1","chunksOf_","size","buffer","l2","foldLeft_1","emptyPushable_1","elem","tsplus_module_2","self","that","newSize","rightSuffixSize","undefined","nrOfAffixes","i","concatBuffer","leftSuffixSize","slice","reverse","newNode","newDepth","mask","branchBits","containsState","element","result","containsCb","value","state","contains_","drop_","n","slice_1","dropLast_","dropRepeats","dropRepeatsWith_1","tsplus_module_3","predicate","acc","unsafeLast_1","findNotIndexCb","index","dropWhile_","elemCb","equals","elem_","E","elemState","equals_","tsplus_module_4","everyCb","every_","emptyAffix","existsCb","find_","tsplus_module_5","unsafeFind_1","findIndexCb","found","findLast_","unsafeFindLast_1","findLastIndex_","mma","empty_1","concat_1","from","sequence","l","Symbol","iterator","cur","next","done","fa","initial","foldLeftWithIndex_1","_","b","prefixSize","foldWhileCb","foldLeftWhile_","cont","foldRightWhile_","foldMap_","M","foldMapWithIndex_1","nat","combine","foldRight_","foldRightWithIndex_1","j","forEachWithIndex_","get_","unsafeGet_1","groupWith_","forEach_1","head","indexOfCb","indexOf_","insertAt_","insertAllAt_","elements","intersperse_","separator","isEmpty","isNonEmpty","join_","last","lastIndexOf_","makeBy","mapAccum_","s","r","mapWithIndex_1","modifyAt_","updateAt_1","none_","exists_1","pair","first","second","newPrefix","prependOperator","prepend_1","range","start","end","vec","remove_","amount","replicate","t","scanLeft_","single","vector_1","to","_to","_from","Math","min","newLength","suffixStart","newOffset","newAffix","sort_","O","sortWith_1","compare","arr","elm","push","idx","sort","c","newL","splitWhen_","findIndex_1","splitAt_1","tail","take_","takeWhile_","takeLast_","takeLastWhile_","toArray","arrayPush","toList","ListBuffer","append","traverseWithIndex_1","tsplus_module_7","G","pure","zipWith","v","traverseWithIndex","traverse","uniq","unfold","out","mt","tsplus_module_8","findCb","depth","sizes"],"sourceRoot":"","sources":["../../../../_src/collection/immutable/Vector/api.ts"],"sourcesContent":[null]}
|
|
1
|
+
{"version":3,"file":"api.cjs","mappings":"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","names":["append","concat","dropRepeatsWith","empty","emptyPushable","exists","findIndex","flatten","foldLeft","foldLeftWithIndex","foldMapWithIndex","foldRightWithIndex","forEach","map","mapWithIndex","mutableClone","pop","prepend","slice","sortWith","splitAt","_traverseWithIndex","unsafeFind","unsafeFindLast","unsafeGet","unsafeHead","unsafeLast","updateAt","vector","a","as","suffixSize","Vector","bits","offset","length","prefix","root","suffix","newSuffix","newVector","mutableClone_1","flatMap","f","ma","map_1","chunksOf","size","buffer","l2","foldLeft_1","emptyPushable_1","elem","tsplus_module_2","that","self","newSize","rightSuffixSize","undefined","nrOfAffixes","i","concatBuffer","leftSuffixSize","reverse","newNode","newDepth","mask","branchBits","containsState","element","result","containsCb","value","state","contains","drop","n","slice_1","dropLast","dropRepeats","dropRepeatsWith_1","predicate","acc","unsafeLast_1","findNotIndexCb","index","dropWhile","elemCb","equals","E","elemState","tsplus_module_4","tsplus_module_3","everyCb","every","emptyAffix","existsCb","find","tsplus_module_5","unsafeFind_1","findIndexCb","found","findLast","unsafeFindLast_1","findLastIndex","mma","empty_1","concat_1","from","sequence","l","Symbol","iterator","cur","next","done","initial","fa","foldLeftWithIndex_1","_","b","prefixSize","foldWhileCb","foldLeftWhile","cont","foldRightWhile","foldMap","M","foldMapWithIndex_1","nat","combine","foldRight","foldRightWithIndex_1","j","forEachWithIndex","get","unsafeGet_1","groupWith","forEach_1","head","indexOfCb","indexOf","insertAt","insertAllAt","elements","intersperse","separator","isEmpty","isNonEmpty","join","last","lastIndexOf","makeBy","mapAccum","s","r","mapWithIndex_1","modifyAt","updateAt_1","none","exists_1","pair","first","second","newPrefix","prependOperator","prepend_1","range","start","end","vec","remove","amount","replicate","t","scanLeft","single","vector_1","to","_to","_from","Math","min","newLength","suffixStart","newOffset","newAffix","sort","O","sortWith_1","compare","arr","elm","push","idx","c","newL","splitWhen","findIndex_1","splitAt_1","tail","take","takeWhile","takeLast","takeLastWhile","toArray","arrayPush","toList","ListBuffer","G","pure","zipWith","v","_traverse","_traverseWithIndex_1","traverseWithIndex","traverse","uniq","unfold","out","mt","tsplus_module_7","findCb","depth","sizes"],"sourceRoot":"","sources":["../../../../_src/collection/immutable/Vector/api.ts"],"sourcesContent":[null]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.
|
|
6
|
+
exports.corresponds = exports.VectorTypeId = exports.Vector = void 0;
|
|
7
7
|
exports.isVector = isVector;
|
|
8
8
|
|
|
9
9
|
var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/typeclass/Hashable/definition"));
|
|
@@ -22,8 +22,8 @@ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "functio
|
|
|
22
22
|
|
|
23
23
|
function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
|
|
24
24
|
|
|
25
|
-
const
|
|
26
|
-
exports.
|
|
25
|
+
const corresponds = corresponds_1;
|
|
26
|
+
exports.corresponds = corresponds;
|
|
27
27
|
const VectorTypeId = /*#__PURE__*/Symbol.for("fncts.Vector");
|
|
28
28
|
/**
|
|
29
29
|
* Represents a Vector of elements.
|
|
@@ -64,7 +64,7 @@ class Vector {
|
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
[tsplus_module_3.equalsSymbol](that) {
|
|
67
|
-
return isVector(that) && corresponds_1(
|
|
67
|
+
return isVector(that) && corresponds_1(that, tsplus_module_4.strictEquals)(this);
|
|
68
68
|
}
|
|
69
69
|
|
|
70
70
|
}
|
|
@@ -79,21 +79,23 @@ function isVector(u) {
|
|
|
79
79
|
* pair of elements with the given comparison function.
|
|
80
80
|
*
|
|
81
81
|
* @complexity O(n)
|
|
82
|
-
* @tsplus
|
|
82
|
+
* @tsplus pipeable fncts.Vector corresponds
|
|
83
83
|
*/
|
|
84
84
|
|
|
85
85
|
|
|
86
|
-
function corresponds_1(
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
86
|
+
function corresponds_1(bs, f) {
|
|
87
|
+
return as => {
|
|
88
|
+
if (as.length !== bs.length) {
|
|
89
|
+
return false;
|
|
90
|
+
} else {
|
|
91
|
+
const s = {
|
|
92
|
+
iterator: bs[Symbol.iterator](),
|
|
93
|
+
equals: true,
|
|
94
|
+
f
|
|
95
|
+
};
|
|
96
|
+
return (0, _internal.foldLeftCb)(equalsCb, s, as).equals;
|
|
97
|
+
}
|
|
98
|
+
};
|
|
97
99
|
}
|
|
98
100
|
|
|
99
101
|
function equalsCb(a, state) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"definition.cjs","mappings":";;;;;;;;;;;;;;;;;;AAIA;;;;;;
|
|
1
|
+
{"version":3,"file":"definition.cjs","mappings":";;;;;;;;;;;;;;;;;;AAIA;;;;;;MAgFgBA,WAAW;;AA7EpB,MAAMC,YAAY,gBAAGC,MAAM,CAACC,GAAP,CAAW,cAAX,CAArB;AAWP;;;;;;;;;AAMM,MAAOC,MAAP,CAAa;EAGjBC;EACE;EACSC,IAFX;EAGE;EACSC,MAJX,EAKWC,MALX;EAME;EACSC,MAPX;EAQE;EACSC,IATX;EAUE;EACSC,MAXX,EAWsB;IATX;IAEA;IACA;IAEA;IAEA;IAEA;IAbF,eAAwBV,YAAxB;EAcL;;EACY,CAAfC,MAAM,CAACU,QAAQ,IAAC;IACf,OAAO,IAAIC,+BAAJ,CAA0B,IAA1B,CAAP;EACD;;EACG,mCAAa;IACf,OAAOC,6BAAkB,KAAKZ,MAAM,CAACU,QAAZ,GAAlB,CAAP;EACD;;EACD,+BAAgBG,IAAhB,EAA6B;IAC3B,OAAOC,QAAQ,CAACD,IAAD,CAAR,IAAkBE,cAAgCF,IAAhC,EAAoCG,4BAApC,EAAC,IAAD,CAAzB;EACD;;AAxBgB;;;;AAiDb,SAAUF,QAAV,CAAmBG,CAAnB,EAA6B;EACjC,OAAOC,0BAAUD,CAAV,EAAalB,YAAb,CAAP;AACD;AAED;;;;;;;;;AAOA,uBAAkCoB,EAAlC,EAAiDC,CAAjD,EAA2E;EACzE,OAAQC,EAAD,IAA2B;IAChC,IAAIA,EAAE,CAACf,MAAH,KAAca,EAAE,CAACb,MAArB,EAA6B;MAC3B,OAAO,KAAP;IACD,CAFD,MAEO;MACL,MAAMgB,CAAC,GAAG;QAAEZ,QAAQ,EAAES,EAAE,CAACnB,MAAM,CAACU,QAAR,CAAF,EAAZ;QAAmCa,MAAM,EAAE,IAA3C;QAAiDH;MAAjD,CAAV;MACA,OAAO,0BAAiCI,QAAjC,EAA2CF,CAA3C,EAA8CD,EAA9C,EAAkDE,MAAzD;IACD;EACF,CAPD;AAQD;;AAQD,SAASC,QAAT,CAAwBC,CAAxB,EAA8BC,KAA9B,EAAsD;EACpD,MAAM;IAAEC;EAAF,IAAYD,KAAK,CAAChB,QAAN,CAAekB,IAAf,EAAlB;EACA,OAAQF,KAAK,CAACH,MAAN,GAAeG,KAAK,CAACN,CAAN,CAAQK,CAAR,EAAWE,KAAX,CAAvB;AACD","names":["corresponds","VectorTypeId","Symbol","for","Vector","constructor","bits","offset","length","prefix","root","suffix","iterator","ForwardVectorIterator","tsplus_module_2","that","isVector","corresponds_1","tsplus_module_4","u","tsplus_module_5","bs","f","as","s","equals","equalsCb","a","state","value","next"],"sourceRoot":"","sources":["../../../../_src/collection/immutable/Vector/definition.ts"],"sourcesContent":[null]}
|
|
@@ -468,50 +468,52 @@ function decrementDepth(bits) {
|
|
|
468
468
|
/**
|
|
469
469
|
* Appends the value to the Vector by _mutating_ the Vector and its content.
|
|
470
470
|
*
|
|
471
|
-
* @tsplus
|
|
471
|
+
* @tsplus pipeable fncts.MutableVector push
|
|
472
472
|
*/
|
|
473
473
|
|
|
474
474
|
|
|
475
|
-
function push(
|
|
476
|
-
|
|
477
|
-
|
|
478
|
-
|
|
479
|
-
l.
|
|
480
|
-
|
|
481
|
-
|
|
482
|
-
|
|
483
|
-
|
|
484
|
-
|
|
485
|
-
l.root
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
|
|
499
|
-
|
|
500
|
-
|
|
501
|
-
|
|
502
|
-
|
|
503
|
-
|
|
504
|
-
|
|
475
|
+
function push(value) {
|
|
476
|
+
return l => {
|
|
477
|
+
const suffixSize = getSuffixSize(l);
|
|
478
|
+
|
|
479
|
+
if (l.length === 0) {
|
|
480
|
+
l.bits = setPrefix(1, l.bits);
|
|
481
|
+
l.prefix = [value];
|
|
482
|
+
} else if (suffixSize < 32) {
|
|
483
|
+
l.bits = incrementSuffix(l.bits);
|
|
484
|
+
l.suffix.push(value);
|
|
485
|
+
} else if (l.root === undefined) {
|
|
486
|
+
l.root = new Node(undefined, l.suffix);
|
|
487
|
+
l.suffix = [value];
|
|
488
|
+
l.bits = setSuffix(1, l.bits);
|
|
489
|
+
} else {
|
|
490
|
+
const newNode = new Node(undefined, l.suffix);
|
|
491
|
+
const index = l.length - 1 - 32 + 1;
|
|
492
|
+
let current = l.root;
|
|
493
|
+
let depth = getDepth(l);
|
|
494
|
+
l.suffix = [value];
|
|
495
|
+
l.bits = setSuffix(1, l.bits);
|
|
496
|
+
|
|
497
|
+
if (index - 1 < branchingFactor ** (depth + 1)) {
|
|
498
|
+
for (; depth >= 0; --depth) {
|
|
499
|
+
const path = index >> depth * branchBits & mask;
|
|
500
|
+
|
|
501
|
+
if (path < current.array.length) {
|
|
502
|
+
current = current.array[path];
|
|
503
|
+
} else {
|
|
504
|
+
current.array.push(createPath(depth - 1, newNode));
|
|
505
|
+
break;
|
|
506
|
+
}
|
|
505
507
|
}
|
|
508
|
+
} else {
|
|
509
|
+
l.bits = incrementDepth(l.bits);
|
|
510
|
+
l.root = new Node(undefined, [l.root, createPath(depth, newNode)]);
|
|
506
511
|
}
|
|
507
|
-
} else {
|
|
508
|
-
l.bits = incrementDepth(l.bits);
|
|
509
|
-
l.root = new Node(undefined, [l.root, createPath(depth, newNode)]);
|
|
510
512
|
}
|
|
511
|
-
}
|
|
512
513
|
|
|
513
|
-
|
|
514
|
-
|
|
514
|
+
l.length++;
|
|
515
|
+
return l;
|
|
516
|
+
};
|
|
515
517
|
}
|
|
516
518
|
/**
|
|
517
519
|
* @internal
|
|
@@ -1655,8 +1657,7 @@ function mapAffix(f, suffix, length, totalLength) {
|
|
|
1655
1657
|
}
|
|
1656
1658
|
|
|
1657
1659
|
return newSuffix;
|
|
1658
|
-
}
|
|
1659
|
-
|
|
1660
|
+
}
|
|
1660
1661
|
|
|
1661
1662
|
function arrayPush(array, a) {
|
|
1662
1663
|
array.push(a);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"internal.cjs","mappings":"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","names":["VectorIterator","constructor","l","direction","done","value","undefined","idx","length","prefixSize","getPrefixSize","middleSize","getSuffixSize","root","depth","getDepth","stack","Array","indices","currentNode","array","i","ForwardVectorIterator","nextInTree","next","newVal","prefix","suffix","result","BackwardVectorIterator","prevInTree","n","branchingFactor","branchBits","mask","Node","sizes","elementEquals","a","b","createPath","current","copyArray","source","pushElements","target","offset","amount","push","copyIndices","sourceStart","targetStart","arrayPrepend","newLength","reverseArray","slice","reverse","arrayFirst","arrayLast","pathResult","path","index","updatedOffset","getPath","handleOffset","traversed","updateNode","node","newIndex","cloneNode","emptyAffix","affixBits","affixMask","bits","setPrefix","size","setSuffix","setDepth","incrementPrefix","incrementSuffix","incrementDepth","decrementDepth","suffixSize","newNode","nodeNthDense","nodeNth","ofs","dep","setSizes","height","sum","sizeTable","sizeOfSubtree","lastSize","affixPush","newArray","copyLeft","k","nodePrepend","prependTopTree","newOffset","prependNodeToTree","prependDense","copyableCount","nodesTraversed","copiedNode","parent","prependableNode","prepended","curOffset","appendNodeToTree","nodesToCopy","nodesVisited","shift","childIndex","newPath","newRoot","copyFirstK","newVector","leafSize","eMax","createConcatPlan","optimalLength","Math","ceil","remaining","min","j","concatNodeMerge","left","center","right","executeConcatPlan","merged","plan","sourceIdx","toMove","available","itemsToCopy","rebalance","top","balanced","concatSubTree","lDepth","rDepth","isTop","c","concatBuffer","concatAffixes","nr","arrIdx","getHeight","newAffix","sliceNode","pathLeft","pathRight","childLeft","childRight","slicedOffLeft","oldChild","slicedOffRight","sliceLeft","tree","child","sliceRight","slicedOff","sliceTreeVector","from","to","newFrom","newTo","zeroOffset","foldLeftArrayCb","cb","state","foldRightArrayCb","foldLeftNodeCb","cont","foldLeftCb","foldRightNodeCb","foldRightCb","foldLeftPrefix","f","acc","foldLeftNode","foldLeftSuffix","foldRightPrefix","foldRightNode","foldRightSuffix","mapArray","mapNode","adjust","innerOffset","res","mapPrefix","newPrefix","mapAffix","totalLength","priorLength","newSuffix","arrayPush"],"sourceRoot":"","sources":["../../../../_src/collection/immutable/Vector/internal.ts"],"sourcesContent":[null]}
|
|
1
|
+
{"version":3,"file":"internal.cjs","mappings":"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","names":["VectorIterator","constructor","l","direction","done","value","undefined","idx","length","prefixSize","getPrefixSize","middleSize","getSuffixSize","root","depth","getDepth","stack","Array","indices","currentNode","array","i","ForwardVectorIterator","nextInTree","next","newVal","prefix","suffix","result","BackwardVectorIterator","prevInTree","n","branchingFactor","branchBits","mask","Node","sizes","elementEquals","a","b","createPath","current","copyArray","source","pushElements","target","offset","amount","push","copyIndices","sourceStart","targetStart","arrayPrepend","newLength","reverseArray","slice","reverse","arrayFirst","arrayLast","pathResult","path","index","updatedOffset","getPath","handleOffset","traversed","updateNode","node","newIndex","cloneNode","emptyAffix","affixBits","affixMask","bits","setPrefix","size","setSuffix","setDepth","incrementPrefix","incrementSuffix","incrementDepth","decrementDepth","suffixSize","newNode","nodeNthDense","nodeNth","ofs","dep","setSizes","height","sum","sizeTable","sizeOfSubtree","lastSize","affixPush","newArray","copyLeft","k","nodePrepend","prependTopTree","newOffset","prependNodeToTree","prependDense","copyableCount","nodesTraversed","copiedNode","parent","prependableNode","prepended","curOffset","appendNodeToTree","nodesToCopy","nodesVisited","shift","childIndex","newPath","newRoot","copyFirstK","newVector","leafSize","eMax","createConcatPlan","optimalLength","Math","ceil","remaining","min","j","concatNodeMerge","left","center","right","executeConcatPlan","merged","plan","sourceIdx","toMove","available","itemsToCopy","rebalance","top","balanced","concatSubTree","lDepth","rDepth","isTop","c","concatBuffer","concatAffixes","nr","arrIdx","getHeight","newAffix","sliceNode","pathLeft","pathRight","childLeft","childRight","slicedOffLeft","oldChild","slicedOffRight","sliceLeft","tree","child","sliceRight","slicedOff","sliceTreeVector","from","to","newFrom","newTo","zeroOffset","foldLeftArrayCb","cb","state","foldRightArrayCb","foldLeftNodeCb","cont","foldLeftCb","foldRightNodeCb","foldRightCb","foldLeftPrefix","f","acc","foldLeftNode","foldLeftSuffix","foldRightPrefix","foldRightNode","foldRightSuffix","mapArray","mapNode","adjust","innerOffset","res","mapPrefix","newPrefix","mapAffix","totalLength","priorLength","newSuffix","arrayPush"],"sourceRoot":"","sources":["../../../../_src/collection/immutable/Vector/internal.ts"],"sourcesContent":[null]}
|
|
@@ -113,13 +113,13 @@ class HashMap {
|
|
|
113
113
|
|
|
114
114
|
const previousValue = foundNode === undefined ? tsplus_module_2.nothing() : tsplus_module_2.just(foundNode.value);
|
|
115
115
|
const nextValue = f(previousValue);
|
|
116
|
-
tsplus_module_3.
|
|
116
|
+
tsplus_module_3.match(() => tsplus_module_3.match(() => {
|
|
117
117
|
/* do nothing */
|
|
118
118
|
}, value => {
|
|
119
119
|
const newIndexedHash = this.contentSize + 1 > this.threshold ? (this.growTable(this.table.length * 2), this.index(hash)) : indexedHash;
|
|
120
120
|
|
|
121
121
|
this._set0(key, value, false, hash, newIndexedHash);
|
|
122
|
-
}), () => tsplus_module_3.
|
|
122
|
+
})(nextValue), () => tsplus_module_3.match(() => {
|
|
123
123
|
if (previousNode !== undefined) {
|
|
124
124
|
previousNode.next = foundNode.next;
|
|
125
125
|
} else {
|
|
@@ -129,7 +129,7 @@ class HashMap {
|
|
|
129
129
|
this.contentSize -= 1;
|
|
130
130
|
}, newValue => {
|
|
131
131
|
foundNode.value = newValue;
|
|
132
|
-
}));
|
|
132
|
+
})(nextValue))(previousValue);
|
|
133
133
|
return nextValue;
|
|
134
134
|
}
|
|
135
135
|
|
|
@@ -313,7 +313,6 @@ class Node {
|
|
|
313
313
|
}
|
|
314
314
|
|
|
315
315
|
findNode(k, h, equals) {
|
|
316
|
-
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
317
316
|
let n = this;
|
|
318
317
|
|
|
319
318
|
while (n) {
|
|
@@ -328,7 +327,6 @@ class Node {
|
|
|
328
327
|
}
|
|
329
328
|
|
|
330
329
|
forEach(f) {
|
|
331
|
-
// eslint-disable-next-line @typescript-eslint/no-this-alias
|
|
332
330
|
let n = this;
|
|
333
331
|
|
|
334
332
|
while (n) {
|