@fncts/base 0.0.21 → 0.0.22
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 +0 -11
- package/_cjs/collection/Iterable/api/traverseConc.cjs.map +1 -1
- package/_cjs/collection/Iterable/api.cjs +35 -198
- package/_cjs/collection/Iterable/api.cjs.map +1 -1
- package/_cjs/collection/Iterable/constructors.cjs +0 -18
- package/_cjs/collection/Iterable/constructors.cjs.map +1 -1
- package/_cjs/collection/Iterable/definition.cjs.map +1 -1
- package/_cjs/collection/Iterable.cjs +0 -6
- package/_cjs/collection/Iterable.cjs.map +1 -1
- package/_cjs/collection/compat/Array/api.cjs +2 -15
- package/_cjs/collection/compat/Array/api.cjs.map +1 -1
- package/_cjs/collection/compat/Array/definition.cjs.map +1 -1
- package/_cjs/collection/compat/Array.cjs +0 -17
- package/_cjs/collection/compat/Array.cjs.map +1 -1
- package/_cjs/collection/compat/ArrayLike/api.cjs +3 -12
- package/_cjs/collection/compat/ArrayLike/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/api/empty.cjs +0 -2
- package/_cjs/collection/immutable/Conc/api/empty.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/api/makeBy.cjs +0 -8
- package/_cjs/collection/immutable/Conc/api/makeBy.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/api/replicate.cjs +0 -4
- package/_cjs/collection/immutable/Conc/api/replicate.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/api.cjs +34 -373
- package/_cjs/collection/immutable/Conc/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/constructors.cjs +0 -14
- package/_cjs/collection/immutable/Conc/constructors.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/definition.cjs +27 -226
- package/_cjs/collection/immutable/Conc/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc.cjs +0 -25
- package/_cjs/collection/immutable/Conc.cjs.map +1 -1
- package/_cjs/collection/immutable/Dictionary/api.cjs +0 -26
- package/_cjs/collection/immutable/Dictionary/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Dictionary/definition.cjs +0 -4
- package/_cjs/collection/immutable/Dictionary/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/Dictionary.cjs +28 -0
- package/_cjs/collection/immutable/Dictionary.cjs.map +1 -0
- package/_cjs/collection/immutable/HashMap/api.cjs +107 -261
- package/_cjs/collection/immutable/HashMap/api.cjs.map +1 -1
- package/_cjs/collection/immutable/HashMap/definition.cjs +20 -43
- package/_cjs/collection/immutable/HashMap/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/HashMap/internal.cjs +3 -88
- package/_cjs/collection/immutable/HashMap/internal.cjs.map +1 -1
- package/_cjs/collection/immutable/HashMap.cjs +0 -4
- package/_cjs/collection/immutable/HashMap.cjs.map +1 -1
- package/_cjs/collection/immutable/HashSet/api.cjs +97 -191
- package/_cjs/collection/immutable/HashSet/api.cjs.map +1 -1
- package/_cjs/collection/immutable/HashSet/definition.cjs +18 -92
- package/_cjs/collection/immutable/HashSet/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/HashSet.cjs +0 -4
- package/_cjs/collection/immutable/HashSet.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs +0 -5
- package/_cjs/collection/immutable/ImmutableArray/api/chunksOf.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs +0 -4
- package/_cjs/collection/immutable/ImmutableArray/api/slice.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs +0 -4
- package/_cjs/collection/immutable/ImmutableArray/api/splitAt.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs +0 -7
- package/_cjs/collection/immutable/ImmutableArray/api/splitWhere.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/api.cjs +24 -417
- package/_cjs/collection/immutable/ImmutableArray/api.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/constructors.cjs +0 -18
- package/_cjs/collection/immutable/ImmutableArray/constructors.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/definition.cjs +4 -21
- package/_cjs/collection/immutable/ImmutableArray/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray/instances.cjs +16 -30
- package/_cjs/collection/immutable/ImmutableArray/instances.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableArray.cjs +0 -29
- package/_cjs/collection/immutable/ImmutableArray.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs +17 -167
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/api.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs +0 -24
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/constructors.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs +0 -9
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs +0 -17
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/destructors.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs +12 -21
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/instances.cjs.map +1 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray.cjs +0 -23
- package/_cjs/collection/immutable/ImmutableNonEmptyArray.cjs.map +1 -1
- package/_cjs/collection/immutable/List/api/foldLeft.cjs +0 -6
- package/_cjs/collection/immutable/List/api/foldLeft.cjs.map +1 -1
- package/_cjs/collection/immutable/List/api/unsafeTail.cjs +0 -6
- package/_cjs/collection/immutable/List/api/unsafeTail.cjs.map +1 -1
- package/_cjs/collection/immutable/List/api.cjs +17 -112
- package/_cjs/collection/immutable/List/api.cjs.map +1 -1
- package/_cjs/collection/immutable/List/constructors.cjs +1 -19
- package/_cjs/collection/immutable/List/constructors.cjs.map +1 -1
- package/_cjs/collection/immutable/List/definition.cjs +2 -25
- package/_cjs/collection/immutable/List/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/List.cjs +0 -10
- package/_cjs/collection/immutable/List.cjs.map +1 -1
- package/_cjs/collection/immutable/Queue/api.cjs +43 -90
- package/_cjs/collection/immutable/Queue/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Queue/constructors.cjs +0 -8
- package/_cjs/collection/immutable/Queue/constructors.cjs.map +1 -1
- package/_cjs/collection/immutable/Queue/definition.cjs +2 -12
- package/_cjs/collection/immutable/Queue/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/Queue/guards.cjs +2 -6
- package/_cjs/collection/immutable/Queue/guards.cjs.map +1 -1
- package/_cjs/collection/immutable/Queue.cjs +0 -8
- package/_cjs/collection/immutable/Queue.cjs.map +1 -1
- package/_cjs/collection/immutable/RoseTree/api.cjs +26 -82
- package/_cjs/collection/immutable/RoseTree/api.cjs.map +1 -1
- package/_cjs/collection/immutable/RoseTree/definition.cjs +4 -19
- package/_cjs/collection/immutable/RoseTree/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/RoseTree.cjs +0 -4
- package/_cjs/collection/immutable/RoseTree.cjs.map +1 -1
- package/_cjs/collection/immutable/SortedMap/api.cjs +132 -269
- package/_cjs/collection/immutable/SortedMap/api.cjs.map +1 -1
- package/_cjs/collection/immutable/SortedMap/definition.cjs +4 -6
- package/_cjs/collection/immutable/SortedMap/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/SortedMap/internal.cjs +55 -226
- package/_cjs/collection/immutable/SortedMap/internal.cjs.map +1 -1
- package/_cjs/collection/immutable/SortedMap/iterator.cjs +16 -107
- package/_cjs/collection/immutable/SortedMap/iterator.cjs.map +1 -1
- package/_cjs/collection/immutable/SortedMap/node.cjs +0 -3
- package/_cjs/collection/immutable/SortedMap/node.cjs.map +1 -1
- package/_cjs/collection/immutable/SortedMap.cjs +0 -10
- package/_cjs/collection/immutable/SortedMap.cjs.map +1 -1
- package/_cjs/collection/immutable/Vector/api.cjs +206 -455
- package/_cjs/collection/immutable/Vector/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Vector/definition.cjs +9 -34
- package/_cjs/collection/immutable/Vector/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/Vector/internal.cjs +42 -362
- package/_cjs/collection/immutable/Vector/internal.cjs.map +1 -1
- package/_cjs/collection/immutable/Vector.cjs +0 -4
- package/_cjs/collection/immutable/Vector.cjs.map +1 -1
- package/_cjs/collection/mutable/HashMap.cjs +7 -84
- package/_cjs/collection/mutable/HashMap.cjs.map +1 -1
- package/_cjs/collection/mutable/HashSet.cjs +6 -67
- package/_cjs/collection/mutable/HashSet.cjs.map +1 -1
- package/_cjs/collection/mutable/ListBuffer.cjs +1 -33
- package/_cjs/collection/mutable/ListBuffer.cjs.map +1 -1
- package/_cjs/collection/mutable/internal.cjs +0 -6
- package/_cjs/collection/mutable/internal.cjs.map +1 -1
- package/_cjs/collection/weak/IterableWeakMap.cjs +0 -26
- package/_cjs/collection/weak/IterableWeakMap.cjs.map +1 -1
- package/_cjs/collection/weak/IterableWeakSet.cjs +0 -22
- package/_cjs/collection/weak/IterableWeakSet.cjs.map +1 -1
- package/_cjs/control/Eval/api/sequenceArray.cjs +0 -5
- package/_cjs/control/Eval/api/sequenceArray.cjs.map +1 -1
- package/_cjs/control/Eval/api.cjs +2 -34
- package/_cjs/control/Eval/api.cjs.map +1 -1
- package/_cjs/control/Eval/constructors.cjs +0 -9
- package/_cjs/control/Eval/constructors.cjs.map +1 -1
- package/_cjs/control/Eval/definition.cjs +5 -23
- package/_cjs/control/Eval/definition.cjs.map +1 -1
- package/_cjs/control/Eval/instance.cjs +2 -9
- package/_cjs/control/Eval/instance.cjs.map +1 -1
- package/_cjs/control/Eval/run.cjs +4 -27
- package/_cjs/control/Eval/run.cjs.map +1 -1
- package/_cjs/control/Eval.cjs +0 -10
- package/_cjs/control/Eval.cjs.map +1 -1
- package/_cjs/control/LazyValue.cjs +0 -6
- package/_cjs/control/LazyValue.cjs.map +1 -1
- package/_cjs/control/Z/api.cjs +6 -140
- package/_cjs/control/Z/api.cjs.map +1 -1
- package/_cjs/control/Z/definition.cjs +13 -84
- package/_cjs/control/Z/definition.cjs.map +1 -1
- package/_cjs/control/Z/instances.cjs +0 -5
- package/_cjs/control/Z/instances.cjs.map +1 -1
- package/_cjs/control/Z/runtime.cjs +14 -107
- package/_cjs/control/Z/runtime.cjs.map +1 -1
- package/_cjs/control/Z.cjs +0 -8
- package/_cjs/control/Z.cjs.map +1 -1
- package/_cjs/data/Branded/definition.cjs +0 -5
- package/_cjs/data/Branded/definition.cjs.map +1 -1
- package/_cjs/data/Branded.cjs +0 -15
- package/_cjs/data/Branded.cjs.map +1 -1
- package/_cjs/data/CaseClass.cjs +13 -45
- package/_cjs/data/CaseClass.cjs.map +1 -1
- package/_cjs/data/Cause/api/fold.cjs +11 -57
- package/_cjs/data/Cause/api/fold.cjs.map +1 -1
- package/_cjs/data/Cause/api/isEmpty.cjs +6 -32
- package/_cjs/data/Cause/api/isEmpty.cjs.map +1 -1
- package/_cjs/data/Cause/api/linearize.cjs +6 -13
- package/_cjs/data/Cause/api/linearize.cjs.map +1 -1
- package/_cjs/data/Cause/api/prettyPrint.cjs +0 -13
- package/_cjs/data/Cause/api/prettyPrint.cjs.map +1 -1
- package/_cjs/data/Cause/api/unified.cjs +14 -54
- package/_cjs/data/Cause/api/unified.cjs.map +1 -1
- package/_cjs/data/Cause/api.cjs +70 -412
- package/_cjs/data/Cause/api.cjs.map +1 -1
- package/_cjs/data/Cause/definition.cjs +46 -283
- package/_cjs/data/Cause/definition.cjs.map +1 -1
- package/_cjs/data/Cause.cjs +0 -14
- package/_cjs/data/Cause.cjs.map +1 -1
- package/_cjs/data/Const/api.cjs +1 -5
- package/_cjs/data/Const/api.cjs.map +1 -1
- package/_cjs/data/Const/definition.cjs +0 -3
- package/_cjs/data/Const/definition.cjs.map +1 -1
- package/_cjs/data/Const/instances.cjs +4 -12
- package/_cjs/data/Const/instances.cjs.map +1 -1
- package/_cjs/data/Const.cjs +0 -6
- package/_cjs/data/Const.cjs.map +1 -1
- package/_cjs/data/Datum/api.cjs +25 -147
- package/_cjs/data/Datum/api.cjs.map +1 -1
- package/_cjs/data/Datum/definition.cjs +10 -50
- package/_cjs/data/Datum/definition.cjs.map +1 -1
- package/_cjs/data/Datum/instances.cjs +0 -9
- package/_cjs/data/Datum/instances.cjs.map +1 -1
- package/_cjs/data/DatumEither/api.cjs +37 -132
- package/_cjs/data/DatumEither/api.cjs.map +1 -1
- package/_cjs/data/DatumEither/definition.cjs.map +1 -1
- package/_cjs/data/DecodeError/definition.cjs +1 -82
- package/_cjs/data/DecodeError/definition.cjs.map +1 -1
- package/_cjs/data/DecodeError.cjs +0 -4
- package/_cjs/data/DecodeError.cjs.map +1 -1
- package/_cjs/data/Decoder/api.cjs +424 -71
- package/_cjs/data/Decoder/api.cjs.map +1 -1
- package/_cjs/data/Decoder/definition.cjs +0 -6
- package/_cjs/data/Decoder/definition.cjs.map +1 -1
- package/_cjs/data/Decoder.cjs +0 -4
- package/_cjs/data/Decoder.cjs.map +1 -1
- package/_cjs/data/Duration/api.cjs +6 -24
- package/_cjs/data/Duration/api.cjs.map +1 -1
- package/_cjs/data/Duration/definition.cjs +3 -17
- package/_cjs/data/Duration/definition.cjs.map +1 -1
- package/_cjs/data/Duration.cjs +0 -4
- package/_cjs/data/Duration.cjs.map +1 -1
- package/_cjs/data/Either/api/align.cjs +0 -5
- package/_cjs/data/Either/api/align.cjs.map +1 -1
- package/_cjs/data/Either/api/alignWith.cjs +1 -13
- package/_cjs/data/Either/api/alignWith.cjs.map +1 -1
- package/_cjs/data/Either/api.cjs +27 -155
- package/_cjs/data/Either/api.cjs.map +1 -1
- package/_cjs/data/Either/constructors.cjs +0 -19
- package/_cjs/data/Either/constructors.cjs.map +1 -1
- package/_cjs/data/Either/definition.cjs +4 -23
- package/_cjs/data/Either/definition.cjs.map +1 -1
- package/_cjs/data/Either/destructors.cjs +2 -9
- package/_cjs/data/Either/destructors.cjs.map +1 -1
- package/_cjs/data/Either/instances.cjs +14 -67
- package/_cjs/data/Either/instances.cjs.map +1 -1
- package/_cjs/data/Either.cjs +0 -10
- package/_cjs/data/Either.cjs.map +1 -1
- package/_cjs/data/EitherT/api.cjs +0 -24
- package/_cjs/data/EitherT/api.cjs.map +1 -1
- package/_cjs/data/EitherT/definition.cjs.map +1 -1
- package/_cjs/data/Encoder/api.cjs +226 -36
- package/_cjs/data/Encoder/api.cjs.map +1 -1
- package/_cjs/data/Encoder/definition.cjs +0 -4
- package/_cjs/data/Encoder/definition.cjs.map +1 -1
- package/_cjs/data/Encoder.cjs +0 -4
- package/_cjs/data/Encoder.cjs.map +1 -1
- package/_cjs/data/Environment/api.cjs +3 -33
- package/_cjs/data/Environment/api.cjs.map +1 -1
- package/_cjs/data/Environment/definition.cjs +5 -21
- package/_cjs/data/Environment/definition.cjs.map +1 -1
- package/_cjs/data/Environment.cjs +0 -4
- package/_cjs/data/Environment.cjs.map +1 -1
- package/_cjs/data/EnvironmentPatch.cjs +14 -80
- package/_cjs/data/EnvironmentPatch.cjs.map +1 -1
- package/_cjs/{typeclass → data}/Eq/definition.cjs +2 -4
- package/_cjs/data/Eq/definition.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Eq/derivations.cjs +9 -18
- package/_cjs/data/Eq/derivations.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Eq.cjs +0 -2
- package/_cjs/data/Eq.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Equatable/api.cjs +2 -10
- package/_cjs/data/Equatable/api.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Equatable/definition.cjs +0 -6
- package/_cjs/data/Equatable/definition.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Equatable/fast-equals.cjs +1 -83
- package/_cjs/data/Equatable/fast-equals.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Equatable.cjs +0 -6
- package/_cjs/data/Equatable.cjs.map +1 -0
- package/_cjs/data/ExecutionStrategy.cjs +0 -9
- package/_cjs/data/ExecutionStrategy.cjs.map +1 -1
- package/_cjs/data/Exit/api.cjs +43 -110
- package/_cjs/data/Exit/api.cjs.map +1 -1
- package/_cjs/data/Exit/constructors.cjs +0 -22
- package/_cjs/data/Exit/constructors.cjs.map +1 -1
- package/_cjs/data/Exit/definition.cjs +8 -48
- package/_cjs/data/Exit/definition.cjs.map +1 -1
- package/_cjs/data/Exit.cjs +0 -6
- package/_cjs/data/Exit.cjs.map +1 -1
- package/_cjs/data/FiberId/api.cjs +5 -21
- package/_cjs/data/FiberId/api.cjs.map +1 -1
- package/_cjs/data/FiberId/constructors.cjs +5 -19
- package/_cjs/data/FiberId/constructors.cjs.map +1 -1
- package/_cjs/data/FiberId/definition.cjs +7 -38
- package/_cjs/data/FiberId/definition.cjs.map +1 -1
- package/_cjs/data/FiberId.cjs +0 -6
- package/_cjs/data/FiberId.cjs.map +1 -1
- package/_cjs/data/Guard/api.cjs +419 -0
- package/_cjs/data/Guard/api.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Guard/definition.cjs +0 -6
- package/_cjs/data/Guard/definition.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Guard.cjs +0 -4
- package/_cjs/data/Guard.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Hash.cjs +0 -2
- package/_cjs/data/Hash.cjs.map +1 -0
- package/_cjs/{typeclass → data}/HashEq.cjs +14 -25
- package/_cjs/data/HashEq.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Hashable/definition.cjs +0 -6
- package/_cjs/data/Hashable/definition.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Hashable/hash.cjs +3 -65
- package/_cjs/data/Hashable/hash.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Hashable.cjs +0 -4
- package/_cjs/data/Hashable.cjs.map +1 -0
- package/_cjs/data/Identity/api.cjs +0 -17
- package/_cjs/data/Identity/api.cjs.map +1 -1
- package/_cjs/data/Identity/definition.cjs +0 -4
- package/_cjs/data/Identity/definition.cjs.map +1 -1
- package/_cjs/data/Identity/instances.cjs +4 -9
- package/_cjs/data/Identity/instances.cjs.map +1 -1
- package/_cjs/data/Identity.cjs +0 -6
- package/_cjs/data/Identity.cjs.map +1 -1
- package/_cjs/data/Interval.cjs +4 -35
- package/_cjs/data/Interval.cjs.map +1 -1
- package/_cjs/data/Intervals.cjs +10 -49
- package/_cjs/data/Intervals.cjs.map +1 -1
- package/_cjs/data/Maybe/api.cjs +19 -99
- package/_cjs/data/Maybe/api.cjs.map +1 -1
- package/_cjs/data/Maybe/constructors.cjs +0 -24
- package/_cjs/data/Maybe/constructors.cjs.map +1 -1
- package/_cjs/data/Maybe/definition.cjs +10 -51
- package/_cjs/data/Maybe/definition.cjs.map +1 -1
- package/_cjs/data/Maybe/destructors.cjs +1 -4
- package/_cjs/data/Maybe/destructors.cjs.map +1 -1
- package/_cjs/data/Maybe/instances.cjs +40 -34
- package/_cjs/data/Maybe/instances.cjs.map +1 -1
- package/_cjs/data/Maybe.cjs +0 -10
- package/_cjs/data/Maybe.cjs.map +1 -1
- package/_cjs/data/Newtype.cjs +0 -7
- package/_cjs/data/Newtype.cjs.map +1 -1
- package/_cjs/{typeclass → data}/Ord/api/contramap.cjs +2 -3
- package/_cjs/data/Ord/api/contramap.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Ord/api/max.cjs +3 -4
- package/_cjs/data/Ord/api/max.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Ord/api/min.cjs +3 -4
- package/_cjs/data/Ord/api/min.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Ord/api.cjs +0 -6
- package/_cjs/data/Ord/api.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Ord/definition.cjs +5 -12
- package/_cjs/data/Ord/definition.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Ord/instances.cjs +13 -23
- package/_cjs/data/Ord/instances.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Ord.cjs +0 -6
- package/_cjs/data/Ord.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Ordering.cjs +0 -9
- package/_cjs/data/Ordering.cjs.map +1 -0
- package/_cjs/data/Predicate/api.cjs +0 -7
- package/_cjs/data/Predicate/api.cjs.map +1 -1
- package/_cjs/data/Predicate.cjs +0 -4
- package/_cjs/data/Predicate.cjs.map +1 -1
- package/_cjs/data/Refinement/api.cjs +0 -7
- package/_cjs/data/Refinement/api.cjs.map +1 -1
- package/_cjs/data/Refinement.cjs +0 -4
- package/_cjs/data/Refinement.cjs.map +1 -1
- package/_cjs/{typeclass → data}/Showable/definition.cjs +4 -11
- package/_cjs/data/Showable/definition.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Showable/show.cjs +46 -199
- package/_cjs/data/Showable/show.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Showable/styles.cjs +0 -6
- package/_cjs/data/Showable/styles.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Showable/util.cjs +50 -112
- package/_cjs/data/Showable/util.cjs.map +1 -0
- package/_cjs/{typeclass → data}/Showable.cjs +0 -4
- package/_cjs/data/Showable.cjs.map +1 -0
- package/_cjs/data/Struct/api.cjs +7 -39
- package/_cjs/data/Struct/api.cjs.map +1 -1
- package/_cjs/data/Struct/definition.cjs +0 -4
- package/_cjs/data/Struct/definition.cjs.map +1 -1
- package/_cjs/data/Tag/constructors.cjs +1 -8
- package/_cjs/data/Tag/constructors.cjs.map +1 -1
- package/_cjs/data/Tag/definition.cjs +3 -18
- package/_cjs/data/Tag/definition.cjs.map +1 -1
- package/_cjs/data/Tag.cjs +0 -4
- package/_cjs/data/Tag.cjs.map +1 -1
- package/_cjs/data/These/api.cjs +42 -167
- package/_cjs/data/These/api.cjs.map +1 -1
- package/_cjs/data/These/constructors.cjs +0 -12
- package/_cjs/data/These/constructors.cjs.map +1 -1
- package/_cjs/data/These/definition.cjs +3 -27
- package/_cjs/data/These/definition.cjs.map +1 -1
- package/_cjs/data/These/destructors.cjs +6 -38
- package/_cjs/data/These/destructors.cjs.map +1 -1
- package/_cjs/data/These/instances.cjs +1 -15
- package/_cjs/data/These/instances.cjs.map +1 -1
- package/_cjs/data/These.cjs +0 -10
- package/_cjs/data/These.cjs.map +1 -1
- package/_cjs/data/Trace/api.cjs +0 -9
- package/_cjs/data/Trace/api.cjs.map +1 -1
- package/_cjs/data/Trace/constructors.cjs +0 -8
- package/_cjs/data/Trace/constructors.cjs.map +1 -1
- package/_cjs/data/Trace/definition.cjs +0 -3
- package/_cjs/data/Trace/definition.cjs.map +1 -1
- package/_cjs/data/Trace.cjs +0 -6
- package/_cjs/data/Trace.cjs.map +1 -1
- package/_cjs/data/TraceElement/definition.cjs +0 -11
- package/_cjs/data/TraceElement/definition.cjs.map +1 -1
- package/_cjs/data/TraceElement.cjs +0 -2
- package/_cjs/data/TraceElement.cjs.map +1 -1
- package/_cjs/data/Zipped.cjs +2 -13
- package/_cjs/data/Zipped.cjs.map +1 -1
- package/_cjs/data/bigint/instances.cjs +2 -7
- package/_cjs/data/bigint/instances.cjs.map +1 -1
- package/_cjs/data/bigint.cjs +0 -4
- package/_cjs/data/bigint.cjs.map +1 -1
- package/_cjs/data/boolean/instances.cjs +2 -7
- package/_cjs/data/boolean/instances.cjs.map +1 -1
- package/_cjs/data/boolean.cjs +0 -4
- package/_cjs/data/boolean.cjs.map +1 -1
- package/_cjs/data/exceptions/ArrayIndexOutOfBoundsError.cjs +0 -3
- package/_cjs/data/exceptions/ArrayIndexOutOfBoundsError.cjs.map +1 -1
- package/_cjs/data/exceptions/IllegalArgumentError.cjs +0 -3
- package/_cjs/data/exceptions/IllegalArgumentError.cjs.map +1 -1
- package/_cjs/data/exceptions/IllegalStateError.cjs +0 -3
- package/_cjs/data/exceptions/IllegalStateError.cjs.map +1 -1
- package/_cjs/data/exceptions/IndexOutOfBoundsError.cjs +0 -3
- package/_cjs/data/exceptions/IndexOutOfBoundsError.cjs.map +1 -1
- package/_cjs/data/exceptions/InterruptedException.cjs +0 -6
- package/_cjs/data/exceptions/InterruptedException.cjs.map +1 -1
- package/_cjs/data/exceptions/InvalidCapacityError.cjs +0 -4
- package/_cjs/data/exceptions/InvalidCapacityError.cjs.map +1 -1
- package/_cjs/data/exceptions/NoSuchElementError.cjs +0 -3
- package/_cjs/data/exceptions/NoSuchElementError.cjs.map +1 -1
- package/_cjs/data/exceptions.cjs +0 -16
- package/_cjs/data/exceptions.cjs.map +1 -1
- package/_cjs/data/function/api.cjs +0 -11
- package/_cjs/data/function/api.cjs.map +1 -1
- package/_cjs/data/function/pipe.cjs +0 -22
- package/_cjs/data/function/pipe.cjs.map +1 -1
- package/_cjs/data/function.cjs +0 -6
- package/_cjs/data/function.cjs.map +1 -1
- package/_cjs/data/number/api.cjs +0 -1
- package/_cjs/data/number/api.cjs.map +1 -1
- package/_cjs/data/number/instances.cjs +10 -19
- package/_cjs/data/number/instances.cjs.map +1 -1
- package/_cjs/data/number.cjs +0 -6
- package/_cjs/data/number.cjs.map +1 -1
- package/_cjs/data/object/instances.cjs +1 -16
- package/_cjs/data/object/instances.cjs.map +1 -1
- package/_cjs/data/object.cjs +0 -4
- package/_cjs/data/object.cjs.map +1 -1
- package/_cjs/data/string/api.cjs +3 -36
- package/_cjs/data/string/api.cjs.map +1 -1
- package/_cjs/data/string/instances.cjs +11 -24
- package/_cjs/data/string/instances.cjs.map +1 -1
- package/_cjs/data/string.cjs +0 -6
- package/_cjs/data/string.cjs.map +1 -1
- package/_cjs/global/api.cjs +0 -1
- package/_cjs/global/api.cjs.map +1 -1
- package/_cjs/internal/AtomicBoolean.cjs +0 -4
- package/_cjs/internal/AtomicBoolean.cjs.map +1 -1
- package/_cjs/internal/AtomicNumber.cjs +0 -7
- package/_cjs/internal/AtomicNumber.cjs.map +1 -1
- package/_cjs/internal/AtomicReference.cjs +0 -8
- package/_cjs/internal/AtomicReference.cjs.map +1 -1
- package/_cjs/internal/Stack.cjs +0 -13
- package/_cjs/internal/Stack.cjs.map +1 -1
- package/_cjs/json/EitherJson.cjs +1 -7
- package/_cjs/json/EitherJson.cjs.map +1 -1
- package/_cjs/json/MaybeJson.cjs +1 -7
- package/_cjs/json/MaybeJson.cjs.map +1 -1
- package/_cjs/json/TheseJson.cjs +1 -7
- package/_cjs/json/TheseJson.cjs.map +1 -1
- package/_cjs/optics/At/api.cjs +0 -5
- package/_cjs/optics/At/api.cjs.map +1 -1
- package/_cjs/optics/At/definition.cjs +0 -7
- package/_cjs/optics/At/definition.cjs.map +1 -1
- package/_cjs/optics/At.cjs +0 -4
- package/_cjs/optics/At.cjs.map +1 -1
- package/_cjs/optics/Fold/definition.cjs +0 -2
- package/_cjs/optics/Fold/definition.cjs.map +1 -1
- package/_cjs/optics/Fold.cjs +0 -2
- package/_cjs/optics/Fold.cjs.map +1 -1
- package/_cjs/optics/Getter/definition.cjs +0 -2
- package/_cjs/optics/Getter/definition.cjs.map +1 -1
- package/_cjs/optics/Getter.cjs +0 -2
- package/_cjs/optics/Getter.cjs.map +1 -1
- package/_cjs/optics/Index/api.cjs +0 -8
- package/_cjs/optics/Index/api.cjs.map +1 -1
- package/_cjs/optics/Index/definition.cjs +0 -2
- package/_cjs/optics/Index/definition.cjs.map +1 -1
- package/_cjs/optics/Index.cjs +0 -4
- package/_cjs/optics/Index.cjs.map +1 -1
- package/_cjs/optics/Iso/api.cjs +0 -5
- package/_cjs/optics/Iso/api.cjs.map +1 -1
- package/_cjs/optics/Iso/definition.cjs +2 -14
- package/_cjs/optics/Iso/definition.cjs.map +1 -1
- package/_cjs/optics/Iso.cjs +0 -4
- package/_cjs/optics/Iso.cjs.map +1 -1
- package/_cjs/optics/Lens/api.cjs +0 -35
- package/_cjs/optics/Lens/api.cjs.map +1 -1
- package/_cjs/optics/Lens/definition.cjs +2 -14
- package/_cjs/optics/Lens/definition.cjs.map +1 -1
- package/_cjs/optics/Lens.cjs +0 -4
- package/_cjs/optics/Lens.cjs.map +1 -1
- package/_cjs/optics/Optional/api/compose.cjs +0 -6
- package/_cjs/optics/Optional/api/compose.cjs.map +1 -1
- package/_cjs/optics/Optional/definition.cjs +0 -15
- package/_cjs/optics/Optional/definition.cjs.map +1 -1
- package/_cjs/optics/Optional.cjs +0 -4
- package/_cjs/optics/Optional.cjs.map +1 -1
- package/_cjs/optics/Prism/api/compose.cjs +0 -7
- package/_cjs/optics/Prism/api/compose.cjs.map +1 -1
- package/_cjs/optics/Prism/api/fromNullable.cjs +0 -6
- package/_cjs/optics/Prism/api/fromNullable.cjs.map +1 -1
- package/_cjs/optics/Prism/api/just.cjs +0 -7
- package/_cjs/optics/Prism/api/just.cjs.map +1 -1
- package/_cjs/optics/Prism/definition.cjs +0 -12
- package/_cjs/optics/Prism/definition.cjs.map +1 -1
- package/_cjs/optics/Prism.cjs +0 -8
- package/_cjs/optics/Prism.cjs.map +1 -1
- package/_cjs/optics/Setter/definition.cjs +0 -4
- package/_cjs/optics/Setter/definition.cjs.map +1 -1
- package/_cjs/optics/Setter.cjs +0 -2
- package/_cjs/optics/Setter.cjs.map +1 -1
- package/_cjs/optics/Traversal/api/compose.cjs +0 -4
- package/_cjs/optics/Traversal/api/compose.cjs.map +1 -1
- package/_cjs/optics/Traversal/api/fromTraversable.cjs +0 -4
- package/_cjs/optics/Traversal/api/fromTraversable.cjs.map +1 -1
- package/_cjs/optics/Traversal/definition.cjs +0 -16
- package/_cjs/optics/Traversal/definition.cjs.map +1 -1
- package/_cjs/optics/Traversal.cjs +0 -6
- 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/Alternative.cjs.map +1 -1
- package/_cjs/typeclass/Applicative.cjs.map +1 -1
- package/_cjs/typeclass/ApplicativeExcept.cjs +0 -8
- package/_cjs/typeclass/ApplicativeExcept.cjs.map +1 -1
- package/_cjs/typeclass/Apply.cjs +8 -40
- package/_cjs/typeclass/Apply.cjs.map +1 -1
- package/_cjs/typeclass/Chain.cjs +0 -9
- package/_cjs/typeclass/Chain.cjs.map +1 -1
- package/_cjs/typeclass/Closure.cjs +2 -4
- package/_cjs/typeclass/Closure.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 -3
- package/_cjs/typeclass/Foldable.cjs.map +1 -1
- package/_cjs/typeclass/FoldableWithIndex.cjs +1 -3
- package/_cjs/typeclass/FoldableWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/Functor.cjs +0 -2
- package/_cjs/typeclass/Functor.cjs.map +1 -1
- package/_cjs/typeclass/FunctorWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/Has.cjs +2 -2
- package/_cjs/typeclass/Has.cjs.map +1 -1
- package/_cjs/typeclass/Monad.cjs.map +1 -1
- package/_cjs/typeclass/MonadExcept.cjs +0 -5
- package/_cjs/typeclass/MonadExcept.cjs.map +1 -1
- package/_cjs/typeclass/Monoid.cjs +6 -23
- package/_cjs/typeclass/Monoid.cjs.map +1 -1
- package/_cjs/typeclass/Pointed.cjs.map +1 -1
- package/_cjs/typeclass/Semialign.cjs +1 -19
- package/_cjs/typeclass/Semialign.cjs.map +1 -1
- package/_cjs/typeclass/Semigroup/api.cjs +6 -14
- package/_cjs/typeclass/Semigroup/api.cjs.map +1 -1
- package/_cjs/typeclass/Semigroup/definition.cjs +3 -6
- package/_cjs/typeclass/Semigroup/definition.cjs.map +1 -1
- package/_cjs/typeclass/Semigroup/derivations.cjs +7 -18
- package/_cjs/typeclass/Semigroup/derivations.cjs.map +1 -1
- package/_cjs/typeclass/Semigroup.cjs +0 -4
- package/_cjs/typeclass/Semigroup.cjs.map +1 -1
- package/_cjs/typeclass/Semimonoidal.cjs.map +1 -1
- package/_cjs/typeclass/Traversable.cjs +0 -5
- package/_cjs/typeclass/Traversable.cjs.map +1 -1
- package/_cjs/typeclass/TraversableWithIndex.cjs +0 -1
- package/_cjs/typeclass/TraversableWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/Witherable.cjs +0 -7
- package/_cjs/typeclass/Witherable.cjs.map +1 -1
- package/_cjs/typeclass/WitherableWithIndex.cjs +0 -8
- package/_cjs/typeclass/WitherableWithIndex.cjs.map +1 -1
- package/_cjs/typeclass/builtin.cjs +0 -2
- package/_cjs/typeclass/builtin.cjs.map +1 -1
- package/_cjs/typeclass.cjs +95 -162
- package/_cjs/typeclass.cjs.map +1 -1
- package/_cjs/types.cjs +0 -6
- package/_cjs/types.cjs.map +1 -1
- package/_cjs/util/AnsiFormat.cjs +8 -50
- package/_cjs/util/AnsiFormat.cjs.map +1 -1
- package/_cjs/util/PCGRandom.cjs +16 -46
- package/_cjs/util/PCGRandom.cjs.map +1 -1
- package/_cjs/util/assert.cjs +0 -4
- package/_cjs/util/assert.cjs.map +1 -1
- package/_cjs/util/pattern.cjs +0 -4
- package/_cjs/util/pattern.cjs.map +1 -1
- package/_cjs/util/predicates.cjs +0 -32
- package/_cjs/util/predicates.cjs.map +1 -1
- package/_cjs/util/rand/Random.cjs +0 -21
- package/_cjs/util/rand/Random.cjs.map +1 -1
- package/_cjs/util/rand/distribution/UniformArrayIntDistribution.cjs +0 -5
- package/_cjs/util/rand/distribution/UniformArrayIntDistribution.cjs.map +1 -1
- package/_cjs/util/rand/distribution/UniformBigIntDistribution.cjs +4 -12
- package/_cjs/util/rand/distribution/UniformBigIntDistribution.cjs.map +1 -1
- package/_cjs/util/rand/distribution/UniformIntDistribution.cjs +0 -12
- package/_cjs/util/rand/distribution/UniformIntDistribution.cjs.map +1 -1
- package/_cjs/util/rand/distribution/internals/ArrayInt.cjs +6 -42
- package/_cjs/util/rand/distribution/internals/ArrayInt.cjs.map +1 -1
- package/_cjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.cjs +6 -10
- package/_cjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.cjs.map +1 -1
- package/_cjs/util/rand/distribution/internals/UniformIntDistributionInternal.cjs +8 -14
- package/_cjs/util/rand/distribution/internals/UniformIntDistributionInternal.cjs.map +1 -1
- package/_cjs/util/rand/generator/MersenneTwister.cjs +5 -25
- package/_cjs/util/rand/generator/MersenneTwister.cjs.map +1 -1
- package/_cjs/util/rand/generator/RandomGenerator.cjs +0 -4
- package/_cjs/util/rand/generator/RandomGenerator.cjs.map +1 -1
- package/_cjs/util/rand.cjs +0 -9
- package/_cjs/util/rand.cjs.map +1 -1
- package/_mjs/collection/Iterable/api/traverseConc.mjs +0 -5
- package/_mjs/collection/Iterable/api/traverseConc.mjs.map +1 -1
- package/_mjs/collection/Iterable/api.mjs +33 -172
- package/_mjs/collection/Iterable/api.mjs.map +1 -1
- package/_mjs/collection/Iterable/constructors.mjs +0 -15
- package/_mjs/collection/Iterable/constructors.mjs.map +1 -1
- package/_mjs/collection/Iterable/definition.mjs.map +1 -1
- package/_mjs/collection/Iterable.mjs.map +1 -1
- package/_mjs/collection/compat/Array/api.mjs +2 -10
- package/_mjs/collection/compat/Array/api.mjs.map +1 -1
- package/_mjs/collection/compat/Array/definition.mjs.map +1 -1
- package/_mjs/collection/compat/Array.mjs +0 -1
- package/_mjs/collection/compat/Array.mjs.map +1 -1
- package/_mjs/collection/compat/ArrayLike/api.mjs +2 -8
- package/_mjs/collection/compat/ArrayLike/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/api/empty.mjs +0 -1
- package/_mjs/collection/immutable/Conc/api/empty.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/api/makeBy.mjs +0 -4
- package/_mjs/collection/immutable/Conc/api/makeBy.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/api/replicate.mjs +0 -1
- package/_mjs/collection/immutable/Conc/api/replicate.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/api.mjs +32 -316
- package/_mjs/collection/immutable/Conc/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/constructors.mjs +0 -5
- package/_mjs/collection/immutable/Conc/constructors.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/definition.mjs +27 -197
- package/_mjs/collection/immutable/Conc/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc.mjs +1 -2
- package/_mjs/collection/immutable/Conc.mjs.map +1 -1
- package/_mjs/collection/immutable/Dictionary/api.mjs +0 -15
- package/_mjs/collection/immutable/Dictionary/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Dictionary/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/Dictionary.mjs +4 -0
- package/_mjs/collection/immutable/Dictionary.mjs.map +1 -0
- package/_mjs/collection/immutable/HashMap/api.mjs +103 -205
- package/_mjs/collection/immutable/HashMap/api.mjs.map +1 -1
- package/_mjs/collection/immutable/HashMap/definition.mjs +17 -28
- package/_mjs/collection/immutable/HashMap/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/HashMap/internal.mjs +4 -66
- package/_mjs/collection/immutable/HashMap/internal.mjs.map +1 -1
- package/_mjs/collection/immutable/HashMap.mjs.map +1 -1
- package/_mjs/collection/immutable/HashSet/api.mjs +88 -152
- package/_mjs/collection/immutable/HashSet/api.mjs.map +1 -1
- package/_mjs/collection/immutable/HashSet/definition.mjs +14 -67
- package/_mjs/collection/immutable/HashSet/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/HashSet.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs +0 -1
- package/_mjs/collection/immutable/ImmutableArray/api/chunksOf.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs +0 -1
- package/_mjs/collection/immutable/ImmutableArray/api/slice.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs +0 -1
- package/_mjs/collection/immutable/ImmutableArray/api/splitAt.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs +0 -3
- package/_mjs/collection/immutable/ImmutableArray/api/splitWhere.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/api.mjs +22 -325
- package/_mjs/collection/immutable/ImmutableArray/api.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/constructors.mjs +0 -10
- package/_mjs/collection/immutable/ImmutableArray/constructors.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/definition.mjs +4 -10
- package/_mjs/collection/immutable/ImmutableArray/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray/instances.mjs +16 -25
- package/_mjs/collection/immutable/ImmutableArray/instances.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableArray.mjs +2 -3
- package/_mjs/collection/immutable/ImmutableArray.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs +17 -131
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/api.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs +0 -12
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/constructors.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs +0 -5
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs +0 -10
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/destructors.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs +12 -16
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/instances.mjs.map +1 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs +0 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray.mjs.map +1 -1
- package/_mjs/collection/immutable/List/api/foldLeft.mjs +0 -3
- package/_mjs/collection/immutable/List/api/foldLeft.mjs.map +1 -1
- package/_mjs/collection/immutable/List/api/unsafeTail.mjs +0 -2
- package/_mjs/collection/immutable/List/api/unsafeTail.mjs.map +1 -1
- package/_mjs/collection/immutable/List/api.mjs +13 -85
- package/_mjs/collection/immutable/List/api.mjs.map +1 -1
- package/_mjs/collection/immutable/List/constructors.mjs +1 -11
- package/_mjs/collection/immutable/List/constructors.mjs.map +1 -1
- package/_mjs/collection/immutable/List/definition.mjs +2 -18
- package/_mjs/collection/immutable/List/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/List.mjs +2 -2
- package/_mjs/collection/immutable/List.mjs.map +1 -1
- package/_mjs/collection/immutable/Queue/api.mjs +42 -68
- package/_mjs/collection/immutable/Queue/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Queue/constructors.mjs +0 -2
- package/_mjs/collection/immutable/Queue/constructors.mjs.map +1 -1
- package/_mjs/collection/immutable/Queue/definition.mjs +2 -8
- package/_mjs/collection/immutable/Queue/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/Queue/guards.mjs +2 -3
- package/_mjs/collection/immutable/Queue/guards.mjs.map +1 -1
- package/_mjs/collection/immutable/Queue.mjs.map +1 -1
- package/_mjs/collection/immutable/RoseTree/api.mjs +26 -67
- package/_mjs/collection/immutable/RoseTree/api.mjs.map +1 -1
- package/_mjs/collection/immutable/RoseTree/definition.mjs +4 -8
- package/_mjs/collection/immutable/RoseTree/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/RoseTree.mjs.map +1 -1
- package/_mjs/collection/immutable/SortedMap/api.mjs +130 -240
- package/_mjs/collection/immutable/SortedMap/api.mjs.map +1 -1
- package/_mjs/collection/immutable/SortedMap/definition.mjs +2 -3
- package/_mjs/collection/immutable/SortedMap/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/SortedMap/internal.mjs +56 -222
- package/_mjs/collection/immutable/SortedMap/internal.mjs.map +1 -1
- package/_mjs/collection/immutable/SortedMap/iterator.mjs +16 -97
- package/_mjs/collection/immutable/SortedMap/iterator.mjs.map +1 -1
- package/_mjs/collection/immutable/SortedMap/node.mjs +0 -1
- package/_mjs/collection/immutable/SortedMap/node.mjs.map +1 -1
- package/_mjs/collection/immutable/SortedMap.mjs.map +1 -1
- package/_mjs/collection/immutable/Vector/api.mjs +204 -390
- package/_mjs/collection/immutable/Vector/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Vector/definition.mjs +9 -21
- package/_mjs/collection/immutable/Vector/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/Vector/internal.mjs +42 -314
- package/_mjs/collection/immutable/Vector/internal.mjs.map +1 -1
- package/_mjs/collection/immutable/Vector.mjs.map +1 -1
- package/_mjs/collection/mutable/HashMap.mjs +6 -74
- package/_mjs/collection/mutable/HashMap.mjs.map +1 -1
- package/_mjs/collection/mutable/HashSet.mjs +5 -59
- package/_mjs/collection/mutable/HashSet.mjs.map +1 -1
- package/_mjs/collection/mutable/ListBuffer.mjs +0 -26
- 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 +0 -22
- package/_mjs/collection/weak/IterableWeakMap.mjs.map +1 -1
- package/_mjs/collection/weak/IterableWeakSet.mjs +0 -20
- package/_mjs/collection/weak/IterableWeakSet.mjs.map +1 -1
- package/_mjs/control/Eval/api/sequenceArray.mjs +0 -1
- package/_mjs/control/Eval/api/sequenceArray.mjs.map +1 -1
- package/_mjs/control/Eval/api.mjs +2 -21
- package/_mjs/control/Eval/api.mjs.map +1 -1
- package/_mjs/control/Eval/constructors.mjs +0 -6
- package/_mjs/control/Eval/constructors.mjs.map +1 -1
- package/_mjs/control/Eval/definition.mjs +6 -15
- package/_mjs/control/Eval/definition.mjs.map +1 -1
- package/_mjs/control/Eval/instance.mjs +2 -4
- package/_mjs/control/Eval/instance.mjs.map +1 -1
- package/_mjs/control/Eval/run.mjs +4 -23
- package/_mjs/control/Eval/run.mjs.map +1 -1
- package/_mjs/control/Eval.mjs.map +1 -1
- package/_mjs/control/LazyValue.mjs +0 -3
- package/_mjs/control/LazyValue.mjs.map +1 -1
- package/_mjs/control/Z/api.mjs +4 -92
- package/_mjs/control/Z/api.mjs.map +1 -1
- package/_mjs/control/Z/definition.mjs +23 -51
- package/_mjs/control/Z/definition.mjs.map +1 -1
- package/_mjs/control/Z/instances.mjs +0 -1
- package/_mjs/control/Z/instances.mjs.map +1 -1
- package/_mjs/control/Z/runtime.mjs +14 -90
- package/_mjs/control/Z/runtime.mjs.map +1 -1
- package/_mjs/control/Z.mjs.map +1 -1
- package/_mjs/data/Branded/definition.mjs +0 -2
- package/_mjs/data/Branded/definition.mjs.map +1 -1
- package/_mjs/data/Branded.mjs +0 -1
- package/_mjs/data/Branded.mjs.map +1 -1
- package/_mjs/data/CaseClass.mjs +13 -32
- package/_mjs/data/CaseClass.mjs.map +1 -1
- package/_mjs/data/Cause/api/fold.mjs +11 -48
- package/_mjs/data/Cause/api/fold.mjs.map +1 -1
- package/_mjs/data/Cause/api/isEmpty.mjs +6 -28
- package/_mjs/data/Cause/api/isEmpty.mjs.map +1 -1
- package/_mjs/data/Cause/api/linearize.mjs +6 -7
- package/_mjs/data/Cause/api/linearize.mjs.map +1 -1
- package/_mjs/data/Cause/api/prettyPrint.mjs +0 -7
- package/_mjs/data/Cause/api/prettyPrint.mjs.map +1 -1
- package/_mjs/data/Cause/api/unified.mjs +14 -44
- package/_mjs/data/Cause/api/unified.mjs.map +1 -1
- package/_mjs/data/Cause/api.mjs +70 -368
- package/_mjs/data/Cause/api.mjs.map +1 -1
- package/_mjs/data/Cause/definition.mjs +46 -245
- package/_mjs/data/Cause/definition.mjs.map +1 -1
- package/_mjs/data/Cause.mjs +2 -2
- package/_mjs/data/Cause.mjs.map +1 -1
- package/_mjs/data/Const/api.mjs +1 -3
- package/_mjs/data/Const/api.mjs.map +1 -1
- package/_mjs/data/Const/definition.mjs +0 -1
- package/_mjs/data/Const/definition.mjs.map +1 -1
- package/_mjs/data/Const/instances.mjs +4 -6
- package/_mjs/data/Const/instances.mjs.map +1 -1
- package/_mjs/data/Const.mjs.map +1 -1
- package/_mjs/data/Datum/api.mjs +24 -117
- package/_mjs/data/Datum/api.mjs.map +1 -1
- package/_mjs/data/Datum/definition.mjs +10 -35
- package/_mjs/data/Datum/definition.mjs.map +1 -1
- package/_mjs/data/Datum/instances.mjs +0 -5
- package/_mjs/data/Datum/instances.mjs.map +1 -1
- package/_mjs/data/DatumEither/api.mjs +36 -100
- package/_mjs/data/DatumEither/api.mjs.map +1 -1
- package/_mjs/data/DatumEither/definition.mjs.map +1 -1
- package/_mjs/data/DecodeError/definition.mjs +1 -29
- package/_mjs/data/DecodeError/definition.mjs.map +1 -1
- package/_mjs/data/DecodeError.mjs.map +1 -1
- package/_mjs/data/Decoder/api.mjs +393 -48
- package/_mjs/data/Decoder/api.mjs.map +1 -1
- package/_mjs/data/Decoder/definition.mjs +0 -3
- package/_mjs/data/Decoder/definition.mjs.map +1 -1
- package/_mjs/data/Decoder.mjs.map +1 -1
- package/_mjs/data/Duration/api.mjs +4 -11
- package/_mjs/data/Duration/api.mjs.map +1 -1
- package/_mjs/data/Duration/definition.mjs +3 -7
- package/_mjs/data/Duration/definition.mjs.map +1 -1
- package/_mjs/data/Duration.mjs.map +1 -1
- package/_mjs/data/Either/api/align.mjs +0 -1
- package/_mjs/data/Either/api/align.mjs.map +1 -1
- package/_mjs/data/Either/api/alignWith.mjs +1 -8
- package/_mjs/data/Either/api/alignWith.mjs.map +1 -1
- package/_mjs/data/Either/api.mjs +27 -115
- package/_mjs/data/Either/api.mjs.map +1 -1
- package/_mjs/data/Either/constructors.mjs +0 -11
- package/_mjs/data/Either/constructors.mjs.map +1 -1
- package/_mjs/data/Either/definition.mjs +4 -15
- package/_mjs/data/Either/definition.mjs.map +1 -1
- package/_mjs/data/Either/destructors.mjs +2 -8
- package/_mjs/data/Either/destructors.mjs.map +1 -1
- package/_mjs/data/Either/instances.mjs +14 -48
- package/_mjs/data/Either/instances.mjs.map +1 -1
- package/_mjs/data/Either.mjs.map +1 -1
- package/_mjs/data/EitherT/api.mjs +0 -9
- package/_mjs/data/EitherT/api.mjs.map +1 -1
- package/_mjs/data/EitherT/definition.mjs.map +1 -1
- package/_mjs/data/Encoder/api.mjs +192 -21
- package/_mjs/data/Encoder/api.mjs.map +1 -1
- package/_mjs/data/Encoder/definition.mjs +0 -2
- package/_mjs/data/Encoder/definition.mjs.map +1 -1
- package/_mjs/data/Encoder.mjs.map +1 -1
- package/_mjs/data/Environment/api.mjs +3 -18
- package/_mjs/data/Environment/api.mjs.map +1 -1
- package/_mjs/data/Environment/definition.mjs +5 -10
- package/_mjs/data/Environment/definition.mjs.map +1 -1
- package/_mjs/data/Environment.mjs.map +1 -1
- package/_mjs/data/EnvironmentPatch.mjs +18 -55
- package/_mjs/data/EnvironmentPatch.mjs.map +1 -1
- package/_mjs/{typeclass → data}/Eq/definition.mjs +1 -2
- package/_mjs/data/Eq/definition.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Eq/derivations.mjs +9 -15
- package/_mjs/data/Eq/derivations.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Eq.mjs +0 -0
- package/_mjs/data/Eq.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Equatable/api.mjs +3 -6
- package/_mjs/data/Equatable/api.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Equatable/definition.mjs +0 -1
- package/_mjs/data/Equatable/definition.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Equatable/fast-equals.mjs +1 -63
- package/_mjs/data/Equatable/fast-equals.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Equatable.mjs +0 -0
- package/_mjs/data/Equatable.mjs.map +1 -0
- package/_mjs/data/ExecutionStrategy.mjs +0 -5
- package/_mjs/data/ExecutionStrategy.mjs.map +1 -1
- package/_mjs/data/Exit/api.mjs +35 -78
- package/_mjs/data/Exit/api.mjs.map +1 -1
- package/_mjs/data/Exit/constructors.mjs +0 -11
- package/_mjs/data/Exit/constructors.mjs.map +1 -1
- package/_mjs/data/Exit/definition.mjs +8 -33
- package/_mjs/data/Exit/definition.mjs.map +1 -1
- package/_mjs/data/Exit.mjs.map +1 -1
- package/_mjs/data/FiberId/api.mjs +5 -15
- package/_mjs/data/FiberId/api.mjs.map +1 -1
- package/_mjs/data/FiberId/constructors.mjs +3 -9
- package/_mjs/data/FiberId/constructors.mjs.map +1 -1
- package/_mjs/data/FiberId/definition.mjs +7 -26
- package/_mjs/data/FiberId/definition.mjs.map +1 -1
- package/_mjs/data/FiberId.mjs.map +1 -1
- package/_mjs/data/Guard/api.mjs +369 -0
- package/_mjs/data/Guard/api.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Guard/definition.mjs +0 -3
- package/_mjs/data/Guard/definition.mjs.map +1 -0
- package/_mjs/data/Guard.mjs +4 -0
- package/_mjs/data/Guard.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Hash.mjs +0 -1
- package/_mjs/data/Hash.mjs.map +1 -0
- package/_mjs/data/HashEq.mjs +30 -0
- package/_mjs/data/HashEq.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Hashable/definition.mjs +0 -1
- package/_mjs/data/Hashable/definition.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Hashable/hash.mjs +4 -59
- package/_mjs/data/Hashable/hash.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Hashable.mjs +0 -0
- package/_mjs/data/Hashable.mjs.map +1 -0
- package/_mjs/data/Identity/api.mjs +0 -7
- package/_mjs/data/Identity/api.mjs.map +1 -1
- package/_mjs/data/Identity/definition.mjs.map +1 -1
- package/_mjs/data/Identity/instances.mjs +4 -5
- package/_mjs/data/Identity/instances.mjs.map +1 -1
- package/_mjs/data/Identity.mjs.map +1 -1
- package/_mjs/data/Interval.mjs +4 -20
- package/_mjs/data/Interval.mjs.map +1 -1
- package/_mjs/data/Intervals.mjs +10 -33
- package/_mjs/data/Intervals.mjs.map +1 -1
- package/_mjs/data/Maybe/api.mjs +18 -74
- package/_mjs/data/Maybe/api.mjs.map +1 -1
- package/_mjs/data/Maybe/constructors.mjs +0 -17
- package/_mjs/data/Maybe/constructors.mjs.map +1 -1
- package/_mjs/data/Maybe/definition.mjs +10 -36
- package/_mjs/data/Maybe/definition.mjs.map +1 -1
- package/_mjs/data/Maybe/destructors.mjs +1 -3
- package/_mjs/data/Maybe/destructors.mjs.map +1 -1
- package/_mjs/data/Maybe/instances.mjs +28 -9
- package/_mjs/data/Maybe/instances.mjs.map +1 -1
- package/_mjs/data/Maybe.mjs.map +1 -1
- package/_mjs/data/Newtype.mjs +0 -1
- package/_mjs/data/Newtype.mjs.map +1 -1
- package/_mjs/data/Ord/api/contramap.mjs +12 -0
- package/_mjs/data/Ord/api/contramap.mjs.map +1 -0
- package/_mjs/data/Ord/api/max.mjs +8 -0
- package/_mjs/data/Ord/api/max.mjs.map +1 -0
- package/_mjs/data/Ord/api/min.mjs +8 -0
- package/_mjs/data/Ord/api/min.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Ord/api.mjs +0 -0
- package/_mjs/data/Ord/api.mjs.map +1 -0
- package/_mjs/data/Ord/definition.mjs +12 -0
- package/_mjs/data/Ord/definition.mjs.map +1 -0
- package/_mjs/data/Ord/instances.mjs +34 -0
- package/_mjs/data/Ord/instances.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Ord.mjs +0 -0
- package/_mjs/data/Ord.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Ordering.mjs +0 -6
- package/_mjs/data/Ordering.mjs.map +1 -0
- package/_mjs/data/Predicate/api.mjs +0 -3
- package/_mjs/data/Predicate/api.mjs.map +1 -1
- package/_mjs/data/Predicate.mjs.map +1 -1
- package/_mjs/data/Refinement/api.mjs +0 -3
- package/_mjs/data/Refinement/api.mjs.map +1 -1
- package/_mjs/data/Refinement.mjs.map +1 -1
- package/_mjs/{typeclass → data}/Showable/definition.mjs +2 -3
- package/_mjs/data/Showable/definition.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Showable/show.mjs +47 -173
- package/_mjs/data/Showable/show.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Showable/styles.mjs +0 -0
- package/_mjs/data/Showable/styles.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Showable/util.mjs +52 -92
- package/_mjs/data/Showable/util.mjs.map +1 -0
- package/_mjs/{typeclass → data}/Showable.mjs +0 -0
- package/_mjs/data/Showable.mjs.map +1 -0
- package/_mjs/data/Struct/api.mjs +7 -23
- package/_mjs/data/Struct/api.mjs.map +1 -1
- package/_mjs/data/Struct/definition.mjs.map +1 -1
- package/_mjs/data/Tag/constructors.mjs +1 -4
- package/_mjs/data/Tag/constructors.mjs.map +1 -1
- package/_mjs/data/Tag/definition.mjs +3 -9
- package/_mjs/data/Tag/definition.mjs.map +1 -1
- package/_mjs/data/Tag.mjs.map +1 -1
- package/_mjs/data/These/api.mjs +42 -151
- package/_mjs/data/These/api.mjs.map +1 -1
- package/_mjs/data/These/constructors.mjs +0 -6
- package/_mjs/data/These/constructors.mjs.map +1 -1
- package/_mjs/data/These/definition.mjs +4 -16
- package/_mjs/data/These/definition.mjs.map +1 -1
- package/_mjs/data/These/destructors.mjs +6 -28
- package/_mjs/data/These/destructors.mjs.map +1 -1
- package/_mjs/data/These/instances.mjs +1 -6
- package/_mjs/data/These/instances.mjs.map +1 -1
- package/_mjs/data/These.mjs.map +1 -1
- package/_mjs/data/Trace/api.mjs +0 -2
- package/_mjs/data/Trace/api.mjs.map +1 -1
- package/_mjs/data/Trace/constructors.mjs +0 -2
- package/_mjs/data/Trace/constructors.mjs.map +1 -1
- package/_mjs/data/Trace/definition.mjs +0 -1
- package/_mjs/data/Trace/definition.mjs.map +1 -1
- package/_mjs/data/Trace.mjs.map +1 -1
- package/_mjs/data/TraceElement/definition.mjs +0 -9
- package/_mjs/data/TraceElement/definition.mjs.map +1 -1
- package/_mjs/data/TraceElement.mjs.map +1 -1
- package/_mjs/data/Zipped.mjs +2 -7
- package/_mjs/data/Zipped.mjs.map +1 -1
- package/_mjs/data/bigint/instances.mjs +2 -2
- package/_mjs/data/bigint/instances.mjs.map +1 -1
- package/_mjs/data/bigint.mjs.map +1 -1
- package/_mjs/data/boolean/instances.mjs +2 -2
- package/_mjs/data/boolean/instances.mjs.map +1 -1
- package/_mjs/data/boolean.mjs.map +1 -1
- package/_mjs/data/exceptions/ArrayIndexOutOfBoundsError.mjs +0 -1
- package/_mjs/data/exceptions/ArrayIndexOutOfBoundsError.mjs.map +1 -1
- package/_mjs/data/exceptions/IllegalArgumentError.mjs +0 -1
- package/_mjs/data/exceptions/IllegalArgumentError.mjs.map +1 -1
- package/_mjs/data/exceptions/IllegalStateError.mjs +0 -1
- package/_mjs/data/exceptions/IllegalStateError.mjs.map +1 -1
- package/_mjs/data/exceptions/IndexOutOfBoundsError.mjs +0 -1
- package/_mjs/data/exceptions/IndexOutOfBoundsError.mjs.map +1 -1
- package/_mjs/data/exceptions/InterruptedException.mjs +0 -1
- package/_mjs/data/exceptions/InterruptedException.mjs.map +1 -1
- package/_mjs/data/exceptions/InvalidCapacityError.mjs +0 -1
- package/_mjs/data/exceptions/InvalidCapacityError.mjs.map +1 -1
- package/_mjs/data/exceptions/NoSuchElementError.mjs +0 -1
- package/_mjs/data/exceptions/NoSuchElementError.mjs.map +1 -1
- package/_mjs/data/exceptions.mjs.map +1 -1
- package/_mjs/data/function/api.mjs +0 -5
- package/_mjs/data/function/api.mjs.map +1 -1
- package/_mjs/data/function/pipe.mjs +0 -20
- package/_mjs/data/function/pipe.mjs.map +1 -1
- package/_mjs/data/function.mjs.map +1 -1
- package/_mjs/data/number/api.mjs.map +1 -1
- package/_mjs/data/number/instances.mjs +10 -13
- package/_mjs/data/number/instances.mjs.map +1 -1
- package/_mjs/data/number.mjs.map +1 -1
- package/_mjs/data/object/instances.mjs +1 -9
- package/_mjs/data/object/instances.mjs.map +1 -1
- package/_mjs/data/object.mjs.map +1 -1
- package/_mjs/data/string/api.mjs +3 -21
- package/_mjs/data/string/api.mjs.map +1 -1
- package/_mjs/data/string/instances.mjs +11 -15
- package/_mjs/data/string/instances.mjs.map +1 -1
- package/_mjs/data/string.mjs.map +1 -1
- package/_mjs/global/api.mjs.map +1 -1
- package/_mjs/internal/AtomicBoolean.mjs +0 -1
- package/_mjs/internal/AtomicBoolean.mjs.map +1 -1
- package/_mjs/internal/AtomicNumber.mjs +0 -4
- package/_mjs/internal/AtomicNumber.mjs.map +1 -1
- package/_mjs/internal/AtomicReference.mjs +0 -6
- package/_mjs/internal/AtomicReference.mjs.map +1 -1
- package/_mjs/internal/Stack.mjs +0 -9
- package/_mjs/internal/Stack.mjs.map +1 -1
- package/_mjs/json/EitherJson.mjs +1 -2
- package/_mjs/json/EitherJson.mjs.map +1 -1
- package/_mjs/json/MaybeJson.mjs +1 -2
- package/_mjs/json/MaybeJson.mjs.map +1 -1
- package/_mjs/json/TheseJson.mjs +1 -2
- package/_mjs/json/TheseJson.mjs.map +1 -1
- package/_mjs/optics/At/api.mjs +0 -1
- package/_mjs/optics/At/api.mjs.map +1 -1
- package/_mjs/optics/At/definition.mjs +0 -1
- package/_mjs/optics/At/definition.mjs.map +1 -1
- package/_mjs/optics/At.mjs.map +1 -1
- package/_mjs/optics/Fold/definition.mjs +0 -1
- package/_mjs/optics/Fold/definition.mjs.map +1 -1
- package/_mjs/optics/Fold.mjs.map +1 -1
- package/_mjs/optics/Getter/definition.mjs +0 -1
- package/_mjs/optics/Getter/definition.mjs.map +1 -1
- package/_mjs/optics/Getter.mjs.map +1 -1
- package/_mjs/optics/Index/api.mjs +0 -2
- package/_mjs/optics/Index/api.mjs.map +1 -1
- package/_mjs/optics/Index/definition.mjs +0 -1
- package/_mjs/optics/Index/definition.mjs.map +1 -1
- package/_mjs/optics/Index.mjs.map +1 -1
- package/_mjs/optics/Iso/api.mjs +0 -1
- package/_mjs/optics/Iso/api.mjs.map +1 -1
- package/_mjs/optics/Iso/definition.mjs +2 -4
- package/_mjs/optics/Iso/definition.mjs.map +1 -1
- package/_mjs/optics/Iso.mjs.map +1 -1
- package/_mjs/optics/Lens/api.mjs +0 -22
- package/_mjs/optics/Lens/api.mjs.map +1 -1
- package/_mjs/optics/Lens/definition.mjs +2 -4
- package/_mjs/optics/Lens/definition.mjs.map +1 -1
- package/_mjs/optics/Lens.mjs.map +1 -1
- package/_mjs/optics/Optional/api/compose.mjs +0 -1
- package/_mjs/optics/Optional/api/compose.mjs.map +1 -1
- package/_mjs/optics/Optional/definition.mjs +0 -4
- package/_mjs/optics/Optional/definition.mjs.map +1 -1
- package/_mjs/optics/Optional.mjs +2 -2
- package/_mjs/optics/Optional.mjs.map +1 -1
- package/_mjs/optics/Prism/api/compose.mjs +0 -1
- package/_mjs/optics/Prism/api/compose.mjs.map +1 -1
- package/_mjs/optics/Prism/api/fromNullable.mjs +0 -1
- package/_mjs/optics/Prism/api/fromNullable.mjs.map +1 -1
- package/_mjs/optics/Prism/api/just.mjs +0 -1
- package/_mjs/optics/Prism/api/just.mjs.map +1 -1
- package/_mjs/optics/Prism/definition.mjs +0 -3
- package/_mjs/optics/Prism/definition.mjs.map +1 -1
- package/_mjs/optics/Prism.mjs +2 -2
- package/_mjs/optics/Prism.mjs.map +1 -1
- package/_mjs/optics/Setter/definition.mjs +0 -3
- package/_mjs/optics/Setter/definition.mjs.map +1 -1
- package/_mjs/optics/Setter.mjs.map +1 -1
- package/_mjs/optics/Traversal/api/compose.mjs +0 -1
- package/_mjs/optics/Traversal/api/compose.mjs.map +1 -1
- package/_mjs/optics/Traversal/api/fromTraversable.mjs +0 -1
- package/_mjs/optics/Traversal/api/fromTraversable.mjs.map +1 -1
- package/_mjs/optics/Traversal/definition.mjs +0 -3
- package/_mjs/optics/Traversal/definition.mjs.map +1 -1
- package/_mjs/optics/Traversal.mjs +2 -2
- 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/Alternative.mjs.map +1 -1
- package/_mjs/typeclass/Applicative.mjs.map +1 -1
- package/_mjs/typeclass/ApplicativeExcept.mjs.map +1 -1
- package/_mjs/typeclass/Apply.mjs +6 -27
- package/_mjs/typeclass/Apply.mjs.map +1 -1
- package/_mjs/typeclass/Chain.mjs +0 -2
- package/_mjs/typeclass/Chain.mjs.map +1 -1
- package/_mjs/typeclass/Closure.mjs +1 -2
- package/_mjs/typeclass/Closure.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 -2
- package/_mjs/typeclass/Foldable.mjs.map +1 -1
- package/_mjs/typeclass/FoldableWithIndex.mjs +1 -2
- package/_mjs/typeclass/FoldableWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/Functor.mjs +0 -1
- package/_mjs/typeclass/Functor.mjs.map +1 -1
- package/_mjs/typeclass/FunctorWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/Has.mjs +2 -1
- package/_mjs/typeclass/Has.mjs.map +1 -1
- package/_mjs/typeclass/Monad.mjs.map +1 -1
- package/_mjs/typeclass/MonadExcept.mjs.map +1 -1
- package/_mjs/typeclass/Monoid.mjs +6 -15
- package/_mjs/typeclass/Monoid.mjs.map +1 -1
- package/_mjs/typeclass/Pointed.mjs.map +1 -1
- package/_mjs/typeclass/Semialign.mjs +1 -8
- package/_mjs/typeclass/Semialign.mjs.map +1 -1
- package/_mjs/typeclass/Semigroup/api.mjs +6 -8
- package/_mjs/typeclass/Semigroup/api.mjs.map +1 -1
- package/_mjs/typeclass/Semigroup/definition.mjs +2 -3
- package/_mjs/typeclass/Semigroup/definition.mjs.map +1 -1
- package/_mjs/typeclass/Semigroup/derivations.mjs +7 -14
- package/_mjs/typeclass/Semigroup/derivations.mjs.map +1 -1
- package/_mjs/typeclass/Semigroup.mjs.map +1 -1
- package/_mjs/typeclass/Semimonoidal.mjs.map +1 -1
- package/_mjs/typeclass/Traversable.mjs +0 -1
- package/_mjs/typeclass/Traversable.mjs.map +1 -1
- package/_mjs/typeclass/TraversableWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/Witherable.mjs +0 -1
- package/_mjs/typeclass/Witherable.mjs.map +1 -1
- package/_mjs/typeclass/WitherableWithIndex.mjs.map +1 -1
- package/_mjs/typeclass/builtin.mjs.map +1 -1
- package/_mjs/typeclass.mjs +9 -8
- package/_mjs/typeclass.mjs.map +1 -1
- package/_mjs/types.mjs.map +1 -1
- package/_mjs/util/AnsiFormat.mjs +8 -35
- package/_mjs/util/AnsiFormat.mjs.map +1 -1
- package/_mjs/util/PCGRandom.mjs +16 -43
- package/_mjs/util/PCGRandom.mjs.map +1 -1
- package/_mjs/util/assert.mjs +0 -1
- package/_mjs/util/assert.mjs.map +1 -1
- package/_mjs/util/pattern.mjs.map +1 -1
- package/_mjs/util/predicates.mjs +0 -1
- package/_mjs/util/predicates.mjs.map +1 -1
- package/_mjs/util/rand/Random.mjs +0 -17
- package/_mjs/util/rand/Random.mjs.map +1 -1
- package/_mjs/util/rand/distribution/UniformArrayIntDistribution.mjs +0 -4
- package/_mjs/util/rand/distribution/UniformArrayIntDistribution.mjs.map +1 -1
- package/_mjs/util/rand/distribution/UniformBigIntDistribution.mjs +4 -12
- package/_mjs/util/rand/distribution/UniformBigIntDistribution.mjs.map +1 -1
- package/_mjs/util/rand/distribution/UniformIntDistribution.mjs +0 -9
- package/_mjs/util/rand/distribution/UniformIntDistribution.mjs.map +1 -1
- package/_mjs/util/rand/distribution/internals/ArrayInt.mjs +6 -36
- package/_mjs/util/rand/distribution/internals/ArrayInt.mjs.map +1 -1
- package/_mjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.mjs +6 -9
- package/_mjs/util/rand/distribution/internals/UniformArrayIntDistributionInternal.mjs.map +1 -1
- package/_mjs/util/rand/distribution/internals/UniformIntDistributionInternal.mjs +8 -13
- package/_mjs/util/rand/distribution/internals/UniformIntDistributionInternal.mjs.map +1 -1
- package/_mjs/util/rand/generator/MersenneTwister.mjs +5 -23
- package/_mjs/util/rand/generator/MersenneTwister.mjs.map +1 -1
- package/_mjs/util/rand/generator/RandomGenerator.mjs +0 -4
- package/_mjs/util/rand/generator/RandomGenerator.mjs.map +1 -1
- package/_mjs/util/rand.mjs.map +1 -1
- package/_src/collection/Iterable/api.ts +25 -18
- package/_src/collection/Iterable/constructors.ts +2 -0
- package/_src/collection/compat/Array/api.ts +2 -2
- package/_src/collection/compat/Array.ts +0 -1
- package/_src/collection/compat/ArrayLike/api.ts +2 -2
- package/_src/collection/compat.ts +0 -1
- package/_src/collection/immutable/Conc/api.ts +7 -7
- package/_src/collection/immutable/Conc/definition.ts +3 -3
- package/_src/collection/immutable/Conc.ts +1 -1
- package/_src/collection/immutable/Dictionary.ts +4 -0
- package/_src/collection/immutable/HashMap/api.ts +109 -115
- package/_src/collection/immutable/HashMap/definition.ts +17 -3
- package/_src/collection/immutable/HashMap/internal.ts +2 -2
- package/_src/collection/immutable/HashSet/api.ts +84 -72
- package/_src/collection/immutable/HashSet/definition.ts +23 -9
- package/_src/collection/immutable/ImmutableArray/api.ts +9 -7
- package/_src/collection/immutable/ImmutableArray.ts +1 -1
- package/_src/collection/immutable/ImmutableNonEmptyArray/api.ts +7 -7
- package/_src/collection/immutable/ImmutableNonEmptyArray.ts +0 -1
- package/_src/collection/immutable/List/api.ts +22 -12
- package/_src/collection/immutable/List/constructors.ts +1 -1
- package/_src/collection/immutable/Queue/api.ts +42 -42
- package/_src/collection/immutable/Queue/guards.ts +2 -2
- package/_src/collection/immutable/SortedMap/api.ts +125 -126
- package/_src/collection/immutable/SortedMap/definition.ts +5 -0
- package/_src/collection/immutable/Vector/api.ts +206 -206
- package/_src/collection/immutable.ts +1 -0
- package/_src/collection/mutable/HashMap.ts +7 -7
- package/_src/collection/mutable/HashSet.ts +6 -6
- package/_src/control/Z/api.ts +4 -4
- package/_src/data/Branded.ts +0 -1
- package/_src/data/Cause/api/linearize.ts +4 -4
- package/_src/data/Cause/api/unified.ts +1 -1
- package/_src/data/Cause/api.ts +1 -3
- package/_src/data/Cause/definition.ts +2 -2
- package/_src/data/Const/api.ts +1 -1
- package/_src/data/Const/instances.ts +2 -2
- package/_src/data/Datum/api.ts +5 -7
- package/_src/data/DecodeError/definition.ts +4 -2
- package/_src/data/Decoder/api.ts +493 -8
- package/_src/data/Duration/api.ts +5 -0
- package/_src/data/Either/instances.ts +3 -3
- package/_src/data/Encoder/api.ts +261 -9
- package/_src/data/Encoder/definition.ts +4 -0
- package/_src/data/Environment/api.ts +2 -2
- package/_src/data/Environment/definition.ts +1 -4
- package/_src/{typeclass → data}/Eq/definition.ts +5 -2
- package/_src/{typeclass → data}/Eq/derivations.ts +8 -6
- package/_src/{typeclass → data}/Eq.ts +0 -0
- package/_src/{typeclass → data}/Equatable/api.ts +4 -2
- package/_src/{typeclass → data}/Equatable/definition.ts +4 -0
- package/_src/{typeclass → data}/Equatable/fast-equals.ts +33 -4
- package/_src/{typeclass → data}/Equatable.ts +0 -0
- package/_src/data/Exit/api.ts +26 -26
- package/_src/data/FiberId/api.ts +3 -3
- package/_src/data/FiberId/constructors.ts +3 -3
- package/_src/data/FiberId/definition.ts +4 -1
- package/_src/data/Guard/api.ts +457 -0
- package/_src/{typeclass → data}/Guard/definition.ts +6 -1
- package/_src/data/Guard.ts +4 -0
- package/_src/{typeclass → data}/Hash.ts +0 -0
- package/_src/{typeclass → data}/HashEq.ts +10 -5
- package/_src/{typeclass → data}/Hashable/definition.ts +4 -0
- package/_src/{typeclass → data}/Hashable/hash.ts +26 -1
- package/_src/{typeclass → data}/Hashable.ts +0 -0
- package/_src/data/Interval.ts +2 -2
- package/_src/data/Maybe/api.ts +3 -3
- package/_src/data/Maybe/instances.ts +21 -0
- package/_src/data/Ord/api/contramap.ts +11 -0
- package/_src/data/Ord/api/max.ts +7 -0
- package/_src/data/Ord/api/min.ts +7 -0
- package/_src/{typeclass → data}/Ord/api.ts +0 -0
- package/_src/{typeclass → data}/Ord/definition.ts +5 -5
- package/_src/{typeclass → data}/Ord/instances.ts +8 -8
- package/_src/{typeclass → data}/Ord.ts +0 -0
- package/_src/{typeclass → data}/Ordering.ts +0 -0
- package/_src/{typeclass → data}/Showable/definition.ts +10 -4
- package/_src/{typeclass → data}/Showable/show.ts +58 -17
- package/_src/{typeclass → data}/Showable/styles.ts +0 -0
- package/_src/{typeclass → data}/Showable/util.ts +0 -0
- package/_src/{typeclass → data}/Showable.ts +0 -0
- package/_src/data/Struct/api.ts +1 -1
- package/_src/data/These/api.ts +6 -6
- package/_src/data/bigint/instances.ts +1 -0
- package/_src/data/boolean/instances.ts +1 -0
- package/_src/data/number/instances.ts +5 -5
- package/_src/data/object/instances.ts +0 -11
- package/_src/data/string/api.ts +2 -4
- package/_src/data/string/instances.ts +4 -4
- package/_src/data.ts +9 -0
- package/_src/global.ts +24 -12
- package/_src/typeclass/Apply.ts +5 -4
- package/_src/typeclass/Closure.ts +2 -2
- package/_src/typeclass/Foldable.ts +1 -1
- package/_src/typeclass/FoldableWithIndex.ts +1 -1
- package/_src/typeclass/Monoid.ts +2 -2
- package/_src/typeclass/Semialign.ts +1 -1
- package/_src/typeclass/Semigroup/api.ts +2 -2
- package/_src/typeclass/Semigroup/definition.ts +6 -2
- package/_src/typeclass/Semigroup/derivations.ts +7 -5
- package/_src/typeclass.ts +9 -8
- package/collection/Iterable/api.d.ts +12 -7
- package/collection/compat/Array.d.ts +0 -1
- package/collection/compat/ArrayLike/api.d.ts +2 -2
- package/collection/compat.d.ts +0 -1
- package/collection/immutable/Conc/api.d.ts +2 -2
- package/collection/immutable/Conc/definition.d.ts +2 -2
- package/collection/immutable/Conc.d.ts +0 -1
- package/collection/immutable/Dictionary.d.ts +2 -0
- package/collection/immutable/HashMap/api.d.ts +48 -48
- package/collection/immutable/HashMap/definition.d.ts +13 -4
- package/collection/immutable/HashSet/api.d.ts +39 -28
- package/collection/immutable/HashSet/definition.d.ts +15 -6
- package/collection/immutable/ImmutableArray/api.d.ts +2 -2
- package/collection/immutable/ImmutableArray/definition.d.ts +2 -2
- package/collection/immutable/ImmutableArray.d.ts +0 -1
- package/collection/immutable/ImmutableNonEmptyArray.d.ts +0 -1
- package/collection/immutable/List/api.d.ts +8 -6
- package/collection/immutable/List/constructors.d.ts +1 -1
- package/collection/immutable/Queue/api.d.ts +16 -16
- package/collection/immutable/Queue/guards.d.ts +1 -1
- package/collection/immutable/RoseTree/definition.d.ts +2 -2
- package/collection/immutable/SortedMap/api.d.ts +27 -26
- package/collection/immutable/SortedMap/definition.d.ts +3 -0
- package/collection/immutable/Vector/api.d.ts +66 -66
- package/collection/immutable/Vector/definition.d.ts +2 -2
- package/collection/immutable.d.ts +1 -0
- package/collection/mutable/HashMap.d.ts +2 -2
- package/collection/mutable/HashSet.d.ts +2 -2
- package/control/Z/api.d.ts +4 -4
- package/data/Branded.d.ts +0 -1
- package/data/CaseClass.d.ts +2 -2
- package/data/Datum/api.d.ts +4 -5
- package/data/Datum/definition.d.ts +2 -2
- package/data/DecodeError/definition.d.ts +2 -1
- package/data/Decoder/api.d.ts +152 -4
- package/data/Duration/api.d.ts +5 -0
- package/data/Duration/definition.d.ts +2 -2
- package/data/Either/instances.d.ts +1 -1
- package/data/Encoder/api.d.ts +147 -6
- package/data/Encoder/definition.d.ts +4 -0
- package/data/Environment/definition.d.ts +2 -2
- package/{typeclass → data}/Eq/definition.d.ts +3 -3
- package/{typeclass → data}/Eq/derivations.d.ts +3 -3
- package/{typeclass → data}/Eq.d.ts +0 -0
- package/{typeclass → data}/Equatable/api.d.ts +2 -2
- package/{typeclass → data}/Equatable/definition.d.ts +1 -1
- package/{typeclass → data}/Equatable/fast-equals.d.ts +0 -0
- package/{typeclass → data}/Equatable.d.ts +0 -0
- package/data/Exit/api.d.ts +15 -15
- package/data/Exit/definition.d.ts +1 -1
- package/data/FiberId/constructors.d.ts +1 -2
- package/data/FiberId/definition.d.ts +7 -5
- package/data/Guard/api.d.ts +242 -0
- package/{typeclass → data}/Guard/definition.d.ts +4 -2
- package/{typeclass → data}/Guard.d.ts +0 -0
- package/{typeclass → data}/Hash.d.ts +1 -1
- package/{typeclass → data}/HashEq.d.ts +6 -7
- package/{typeclass → data}/Hashable/definition.d.ts +1 -1
- package/{typeclass → data}/Hashable/hash.d.ts +11 -11
- package/{typeclass → data}/Hashable.d.ts +0 -0
- package/data/Interval.d.ts +2 -1
- package/data/Maybe/api.d.ts +2 -2
- package/data/Maybe/definition.d.ts +2 -2
- package/data/Maybe/instances.d.ts +7 -1
- package/{typeclass → data}/Ord/api/contramap.d.ts +2 -2
- package/data/Ord/api/max.d.ts +7 -0
- package/data/Ord/api/min.d.ts +7 -0
- package/{typeclass → data}/Ord/api.d.ts +0 -0
- package/data/Ord/definition.d.ts +19 -0
- package/{typeclass → data}/Ord/instances.d.ts +3 -3
- package/{typeclass → data}/Ord.d.ts +0 -0
- package/{typeclass → data}/Ordering.d.ts +5 -5
- package/data/Showable/definition.d.ts +17 -0
- package/{typeclass → data}/Showable/show.d.ts +1 -1
- package/{typeclass → data}/Showable/styles.d.ts +0 -0
- package/{typeclass → data}/Showable/util.d.ts +0 -0
- package/{typeclass → data}/Showable.d.ts +0 -0
- package/data/Tag/definition.d.ts +2 -2
- package/data/These/instances.d.ts +1 -1
- package/data/bigint/instances.d.ts +1 -0
- package/data/boolean/instances.d.ts +1 -0
- package/data/number/instances.d.ts +1 -1
- package/data/object/instances.d.ts +0 -6
- package/data.d.ts +9 -0
- package/global.d.ts +24 -12
- package/package.json +2 -2
- package/typeclass/Apply.d.ts +4 -4
- package/typeclass/Closure.d.ts +2 -2
- package/typeclass/Semigroup/api.d.ts +1 -1
- package/typeclass/Semigroup/definition.d.ts +2 -2
- package/typeclass.d.ts +8 -8
- package/_cjs/collection/compat/Array/derivations.cjs +0 -118
- package/_cjs/collection/compat/Array/derivations.cjs.map +0 -1
- package/_cjs/collection/compat/Record/instances.cjs +0 -164
- package/_cjs/collection/compat/Record/instances.cjs.map +0 -1
- package/_cjs/collection/compat/Record.cjs +0 -19
- package/_cjs/collection/compat/Record.cjs.map +0 -1
- package/_cjs/collection/immutable/Conc/derivations.cjs +0 -56
- package/_cjs/collection/immutable/Conc/derivations.cjs.map +0 -1
- package/_cjs/collection/immutable/ImmutableArray/derivations.cjs +0 -52
- package/_cjs/collection/immutable/ImmutableArray/derivations.cjs.map +0 -1
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs +0 -73
- package/_cjs/collection/immutable/ImmutableNonEmptyArray/derivations.cjs.map +0 -1
- package/_cjs/data/Branded/derivations.cjs +0 -58
- package/_cjs/data/Branded/derivations.cjs.map +0 -1
- package/_cjs/typeclass/Eq/definition.cjs.map +0 -1
- package/_cjs/typeclass/Eq/derivations.cjs.map +0 -1
- package/_cjs/typeclass/Eq.cjs.map +0 -1
- package/_cjs/typeclass/Equatable/api.cjs.map +0 -1
- package/_cjs/typeclass/Equatable/definition.cjs.map +0 -1
- package/_cjs/typeclass/Equatable/fast-equals.cjs.map +0 -1
- package/_cjs/typeclass/Equatable.cjs.map +0 -1
- package/_cjs/typeclass/Guard/api.cjs +0 -48
- package/_cjs/typeclass/Guard/api.cjs.map +0 -1
- package/_cjs/typeclass/Guard/definition.cjs.map +0 -1
- package/_cjs/typeclass/Guard/derivations.cjs +0 -85
- package/_cjs/typeclass/Guard/derivations.cjs.map +0 -1
- package/_cjs/typeclass/Guard.cjs.map +0 -1
- package/_cjs/typeclass/Hash.cjs.map +0 -1
- package/_cjs/typeclass/HashEq.cjs.map +0 -1
- package/_cjs/typeclass/Hashable/definition.cjs.map +0 -1
- package/_cjs/typeclass/Hashable/hash.cjs.map +0 -1
- package/_cjs/typeclass/Hashable.cjs.map +0 -1
- package/_cjs/typeclass/Ord/api/contramap.cjs.map +0 -1
- package/_cjs/typeclass/Ord/api/max.cjs.map +0 -1
- package/_cjs/typeclass/Ord/api/min.cjs.map +0 -1
- package/_cjs/typeclass/Ord/api.cjs.map +0 -1
- package/_cjs/typeclass/Ord/definition.cjs.map +0 -1
- package/_cjs/typeclass/Ord/instances.cjs.map +0 -1
- package/_cjs/typeclass/Ord.cjs.map +0 -1
- package/_cjs/typeclass/Ordering.cjs.map +0 -1
- package/_cjs/typeclass/Showable/definition.cjs.map +0 -1
- package/_cjs/typeclass/Showable/show.cjs.map +0 -1
- package/_cjs/typeclass/Showable/styles.cjs.map +0 -1
- package/_cjs/typeclass/Showable/util.cjs.map +0 -1
- package/_cjs/typeclass/Showable.cjs.map +0 -1
- package/_mjs/collection/compat/Array/derivations.mjs +0 -86
- package/_mjs/collection/compat/Array/derivations.mjs.map +0 -1
- package/_mjs/collection/compat/Record/instances.mjs +0 -136
- package/_mjs/collection/compat/Record/instances.mjs.map +0 -1
- package/_mjs/collection/compat/Record.mjs +0 -3
- package/_mjs/collection/compat/Record.mjs.map +0 -1
- package/_mjs/collection/immutable/Conc/derivations.mjs +0 -35
- package/_mjs/collection/immutable/Conc/derivations.mjs.map +0 -1
- package/_mjs/collection/immutable/ImmutableArray/derivations.mjs +0 -33
- package/_mjs/collection/immutable/ImmutableArray/derivations.mjs.map +0 -1
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs +0 -47
- package/_mjs/collection/immutable/ImmutableNonEmptyArray/derivations.mjs.map +0 -1
- package/_mjs/data/Branded/derivations.mjs +0 -40
- package/_mjs/data/Branded/derivations.mjs.map +0 -1
- package/_mjs/typeclass/Eq/definition.mjs.map +0 -1
- package/_mjs/typeclass/Eq/derivations.mjs.map +0 -1
- package/_mjs/typeclass/Eq.mjs.map +0 -1
- package/_mjs/typeclass/Equatable/api.mjs.map +0 -1
- package/_mjs/typeclass/Equatable/definition.mjs.map +0 -1
- package/_mjs/typeclass/Equatable/fast-equals.mjs.map +0 -1
- package/_mjs/typeclass/Equatable.mjs.map +0 -1
- package/_mjs/typeclass/Guard/api.mjs +0 -32
- package/_mjs/typeclass/Guard/api.mjs.map +0 -1
- package/_mjs/typeclass/Guard/definition.mjs.map +0 -1
- package/_mjs/typeclass/Guard/derivations.mjs +0 -67
- package/_mjs/typeclass/Guard/derivations.mjs.map +0 -1
- package/_mjs/typeclass/Guard.mjs +0 -4
- package/_mjs/typeclass/Guard.mjs.map +0 -1
- package/_mjs/typeclass/Hash.mjs.map +0 -1
- package/_mjs/typeclass/HashEq.mjs +0 -33
- package/_mjs/typeclass/HashEq.mjs.map +0 -1
- package/_mjs/typeclass/Hashable/definition.mjs.map +0 -1
- package/_mjs/typeclass/Hashable/hash.mjs.map +0 -1
- package/_mjs/typeclass/Hashable.mjs.map +0 -1
- package/_mjs/typeclass/Ord/api/contramap.mjs +0 -12
- package/_mjs/typeclass/Ord/api/contramap.mjs.map +0 -1
- package/_mjs/typeclass/Ord/api/max.mjs +0 -8
- package/_mjs/typeclass/Ord/api/max.mjs.map +0 -1
- package/_mjs/typeclass/Ord/api/min.mjs +0 -8
- package/_mjs/typeclass/Ord/api/min.mjs.map +0 -1
- package/_mjs/typeclass/Ord/api.mjs.map +0 -1
- package/_mjs/typeclass/Ord/definition.mjs +0 -13
- package/_mjs/typeclass/Ord/definition.mjs.map +0 -1
- package/_mjs/typeclass/Ord/instances.mjs +0 -37
- package/_mjs/typeclass/Ord/instances.mjs.map +0 -1
- package/_mjs/typeclass/Ord.mjs.map +0 -1
- package/_mjs/typeclass/Ordering.mjs.map +0 -1
- package/_mjs/typeclass/Showable/definition.mjs.map +0 -1
- package/_mjs/typeclass/Showable/show.mjs.map +0 -1
- package/_mjs/typeclass/Showable/styles.mjs.map +0 -1
- package/_mjs/typeclass/Showable/util.mjs.map +0 -1
- package/_mjs/typeclass/Showable.mjs.map +0 -1
- package/_src/collection/compat/Array/derivations.ts +0 -111
- package/_src/collection/compat/Record/instances.ts +0 -151
- package/_src/collection/compat/Record.ts +0 -3
- package/_src/collection/immutable/Conc/derivations.ts +0 -41
- package/_src/collection/immutable/ImmutableArray/derivations.ts +0 -41
- package/_src/collection/immutable/ImmutableNonEmptyArray/derivations.ts +0 -57
- package/_src/data/Branded/derivations.ts +0 -58
- package/_src/typeclass/Guard/api.ts +0 -37
- package/_src/typeclass/Guard/derivations.ts +0 -80
- package/_src/typeclass/Guard.ts +0 -4
- package/_src/typeclass/Ord/api/contramap.ts +0 -12
- package/_src/typeclass/Ord/api/max.ts +0 -8
- package/_src/typeclass/Ord/api/min.ts +0 -8
- package/collection/compat/Array/derivations.d.ts +0 -35
- package/collection/compat/Record/instances.d.ts +0 -46
- package/collection/compat/Record.d.ts +0 -1
- package/collection/immutable/Conc/derivations.d.ts +0 -20
- package/collection/immutable/ImmutableArray/derivations.d.ts +0 -20
- package/collection/immutable/ImmutableNonEmptyArray/derivations.d.ts +0 -20
- package/data/Branded/derivations.d.ts +0 -24
- package/typeclass/Guard/api.d.ts +0 -20
- package/typeclass/Guard/derivations.d.ts +0 -36
- package/typeclass/Ord/api/max.d.ts +0 -7
- package/typeclass/Ord/api/min.d.ts +0 -7
- package/typeclass/Ord/definition.d.ts +0 -19
- package/typeclass/Showable/definition.d.ts +0 -17
|
@@ -48,13 +48,11 @@ exports.sliceRight = sliceRight;
|
|
|
48
48
|
exports.sliceTreeVector = sliceTreeVector;
|
|
49
49
|
exports.updateNode = updateNode;
|
|
50
50
|
exports.zeroOffset = zeroOffset;
|
|
51
|
-
|
|
52
51
|
/*
|
|
53
52
|
* -------------------------------------------------------------------------------------------------
|
|
54
53
|
* Internal
|
|
55
54
|
* -------------------------------------------------------------------------------------------------
|
|
56
55
|
*/
|
|
57
|
-
|
|
58
56
|
/**
|
|
59
57
|
* @internal
|
|
60
58
|
*/
|
|
@@ -68,51 +66,40 @@ class VectorIterator {
|
|
|
68
66
|
this.idx = direction === 1 ? -1 : l.length;
|
|
69
67
|
this.prefixSize = getPrefixSize(l);
|
|
70
68
|
this.middleSize = l.length - getSuffixSize(l);
|
|
71
|
-
|
|
72
69
|
if (l.root !== undefined) {
|
|
73
70
|
const depth = getDepth(l);
|
|
74
71
|
this.stack = new Array(depth + 1);
|
|
75
72
|
this.indices = new Array(depth + 1);
|
|
76
73
|
let currentNode = l.root.array;
|
|
77
|
-
|
|
78
74
|
for (let i = depth; 0 <= i; --i) {
|
|
79
75
|
this.stack[i] = currentNode;
|
|
80
76
|
const idx = direction === 1 ? 0 : currentNode.length - 1;
|
|
81
77
|
this.indices[i] = idx;
|
|
82
78
|
currentNode = currentNode[idx].array;
|
|
83
79
|
}
|
|
84
|
-
|
|
85
80
|
this.indices[0] -= direction;
|
|
86
81
|
}
|
|
87
82
|
}
|
|
88
|
-
|
|
89
83
|
}
|
|
90
84
|
/**
|
|
91
85
|
* @internal
|
|
92
86
|
*/
|
|
93
|
-
|
|
94
|
-
|
|
95
87
|
exports.VectorIterator = VectorIterator;
|
|
96
|
-
|
|
97
88
|
class ForwardVectorIterator extends VectorIterator {
|
|
98
89
|
constructor(l) {
|
|
99
90
|
super(l, 1);
|
|
100
91
|
}
|
|
101
|
-
|
|
102
92
|
nextInTree() {
|
|
103
93
|
for (var i = 0; ++this.indices[i] === this.stack[i].length; ++i) {
|
|
104
94
|
this.indices[i] = 0;
|
|
105
95
|
}
|
|
106
|
-
|
|
107
96
|
for (; 0 < i; --i) {
|
|
108
97
|
this.stack[i - 1] = this.stack[i][this.indices[i]].array;
|
|
109
98
|
}
|
|
110
99
|
}
|
|
111
|
-
|
|
112
100
|
next() {
|
|
113
101
|
let newVal;
|
|
114
102
|
const idx = ++this.idx;
|
|
115
|
-
|
|
116
103
|
if (idx < this.prefixSize) {
|
|
117
104
|
newVal = this.l.prefix[this.prefixSize - idx - 1];
|
|
118
105
|
} else if (idx < this.middleSize) {
|
|
@@ -123,41 +110,32 @@ class ForwardVectorIterator extends VectorIterator {
|
|
|
123
110
|
} else {
|
|
124
111
|
this.result.done = true;
|
|
125
112
|
}
|
|
126
|
-
|
|
127
113
|
this.result.value = newVal;
|
|
128
114
|
return this.result;
|
|
129
115
|
}
|
|
130
|
-
|
|
131
116
|
}
|
|
132
117
|
/**
|
|
133
118
|
* @internal
|
|
134
119
|
*/
|
|
135
|
-
|
|
136
|
-
|
|
137
120
|
exports.ForwardVectorIterator = ForwardVectorIterator;
|
|
138
|
-
|
|
139
121
|
class BackwardVectorIterator extends VectorIterator {
|
|
140
122
|
constructor(l) {
|
|
141
123
|
super(l, -1);
|
|
142
124
|
}
|
|
143
|
-
|
|
144
125
|
prevInTree() {
|
|
145
|
-
for (var i = 0; this.indices[i] === 0; ++i) {
|
|
126
|
+
for (var i = 0; this.indices[i] === 0; ++i) {
|
|
127
|
+
//
|
|
146
128
|
}
|
|
147
|
-
|
|
148
129
|
--this.indices[i];
|
|
149
|
-
|
|
150
130
|
for (; 0 < i; --i) {
|
|
151
131
|
const n = this.stack[i][this.indices[i]].array;
|
|
152
132
|
this.stack[i - 1] = n;
|
|
153
133
|
this.indices[i - 1] = n.length - 1;
|
|
154
134
|
}
|
|
155
135
|
}
|
|
156
|
-
|
|
157
136
|
next() {
|
|
158
137
|
let newVal;
|
|
159
138
|
const idx = --this.idx;
|
|
160
|
-
|
|
161
139
|
if (this.middleSize <= idx) {
|
|
162
140
|
newVal = this.l.suffix[idx - this.middleSize];
|
|
163
141
|
} else if (this.prefixSize <= idx) {
|
|
@@ -168,85 +146,63 @@ class BackwardVectorIterator extends VectorIterator {
|
|
|
168
146
|
} else {
|
|
169
147
|
this.result.done = true;
|
|
170
148
|
}
|
|
171
|
-
|
|
172
149
|
this.result.value = newVal;
|
|
173
150
|
return this.result;
|
|
174
151
|
}
|
|
175
|
-
|
|
176
152
|
}
|
|
177
153
|
/**
|
|
178
154
|
* @internal
|
|
179
155
|
*/
|
|
180
|
-
|
|
181
|
-
|
|
182
156
|
exports.BackwardVectorIterator = BackwardVectorIterator;
|
|
183
157
|
const branchingFactor = 32;
|
|
184
158
|
/**
|
|
185
159
|
* @internal
|
|
186
160
|
*/
|
|
187
|
-
|
|
188
161
|
const branchBits = 5;
|
|
189
162
|
/**
|
|
190
163
|
* @internal
|
|
191
164
|
*/
|
|
192
|
-
|
|
193
165
|
exports.branchBits = branchBits;
|
|
194
166
|
const mask = 31;
|
|
195
167
|
/** @internal */
|
|
196
|
-
|
|
197
168
|
exports.mask = mask;
|
|
198
|
-
|
|
199
169
|
class Node {
|
|
200
170
|
constructor(sizes, array) {
|
|
201
171
|
this.sizes = sizes;
|
|
202
172
|
this.array = array;
|
|
203
173
|
}
|
|
204
|
-
|
|
205
174
|
}
|
|
206
175
|
/**
|
|
207
176
|
* @internal
|
|
208
177
|
*/
|
|
209
|
-
|
|
210
|
-
|
|
211
178
|
exports.Node = Node;
|
|
212
|
-
|
|
213
179
|
function elementEquals(a, b) {
|
|
214
180
|
return a === b;
|
|
215
181
|
}
|
|
216
182
|
/**
|
|
217
183
|
* @internal
|
|
218
184
|
*/
|
|
219
|
-
|
|
220
|
-
|
|
221
185
|
function createPath(depth, value) {
|
|
222
186
|
let current = value;
|
|
223
|
-
|
|
224
187
|
for (let i = 0; i < depth; ++i) {
|
|
225
188
|
current = new Node(undefined, [current]);
|
|
226
189
|
}
|
|
227
|
-
|
|
228
190
|
return current;
|
|
229
|
-
}
|
|
230
|
-
|
|
191
|
+
}
|
|
192
|
+
// Array Helpers
|
|
231
193
|
/**
|
|
232
194
|
* @internal
|
|
233
195
|
*/
|
|
234
|
-
|
|
235
|
-
|
|
236
196
|
function copyArray(source) {
|
|
237
197
|
const array = [];
|
|
238
|
-
|
|
239
198
|
for (let i = 0; i < source.length; ++i) {
|
|
240
199
|
array[i] = source[i];
|
|
241
200
|
}
|
|
242
|
-
|
|
243
201
|
return array;
|
|
244
202
|
}
|
|
245
203
|
/**
|
|
246
204
|
* @internal
|
|
247
205
|
*/
|
|
248
|
-
|
|
249
|
-
|
|
250
206
|
function pushElements(source, target, offset, amount) {
|
|
251
207
|
for (let i = offset; i < offset + amount; ++i) {
|
|
252
208
|
target.push(source[i]);
|
|
@@ -255,8 +211,6 @@ function pushElements(source, target, offset, amount) {
|
|
|
255
211
|
/**
|
|
256
212
|
* @internal
|
|
257
213
|
*/
|
|
258
|
-
|
|
259
|
-
|
|
260
214
|
function copyIndices(source, sourceStart, target, targetStart, length) {
|
|
261
215
|
for (let i = 0; i < length; ++i) {
|
|
262
216
|
target[targetStart + i] = source[sourceStart + i];
|
|
@@ -265,45 +219,34 @@ function copyIndices(source, sourceStart, target, targetStart, length) {
|
|
|
265
219
|
/**
|
|
266
220
|
* @internal
|
|
267
221
|
*/
|
|
268
|
-
|
|
269
|
-
|
|
270
222
|
function arrayPrepend(value, array) {
|
|
271
223
|
const newLength = array.length + 1;
|
|
272
224
|
const result = new Array(newLength);
|
|
273
225
|
result[0] = value;
|
|
274
|
-
|
|
275
226
|
for (let i = 1; i < newLength; ++i) {
|
|
276
227
|
result[i] = array[i - 1];
|
|
277
228
|
}
|
|
278
|
-
|
|
279
229
|
return result;
|
|
280
230
|
}
|
|
281
231
|
/**
|
|
282
232
|
* Create a reverse _copy_ of an array.
|
|
283
233
|
* @internal
|
|
284
234
|
*/
|
|
285
|
-
|
|
286
|
-
|
|
287
235
|
function reverseArray(array) {
|
|
288
236
|
return array.slice().reverse();
|
|
289
237
|
}
|
|
290
238
|
/**
|
|
291
239
|
* @internal
|
|
292
240
|
*/
|
|
293
|
-
|
|
294
|
-
|
|
295
241
|
function arrayFirst(array) {
|
|
296
242
|
return array[0];
|
|
297
243
|
}
|
|
298
244
|
/**
|
|
299
245
|
* @internal
|
|
300
246
|
*/
|
|
301
|
-
|
|
302
|
-
|
|
303
247
|
function arrayLast(array) {
|
|
304
248
|
return array[array.length - 1];
|
|
305
249
|
}
|
|
306
|
-
|
|
307
250
|
const pathResult = {
|
|
308
251
|
path: 0,
|
|
309
252
|
index: 0,
|
|
@@ -312,27 +255,21 @@ const pathResult = {
|
|
|
312
255
|
/**
|
|
313
256
|
* @internal
|
|
314
257
|
*/
|
|
315
|
-
|
|
316
258
|
function getPath(index, offset, depth, sizes) {
|
|
317
259
|
let i = index;
|
|
318
|
-
|
|
319
260
|
if (sizes === undefined && offset !== 0) {
|
|
320
261
|
pathResult.updatedOffset = 0;
|
|
321
262
|
i = handleOffset(depth, offset, i);
|
|
322
263
|
}
|
|
323
|
-
|
|
324
264
|
let path = i >> depth * branchBits & mask;
|
|
325
|
-
|
|
326
265
|
if (sizes !== undefined) {
|
|
327
266
|
while (sizes[path] <= i) {
|
|
328
267
|
path++;
|
|
329
268
|
}
|
|
330
|
-
|
|
331
269
|
const traversed = path === 0 ? 0 : sizes[path - 1];
|
|
332
270
|
i -= traversed;
|
|
333
271
|
pathResult.updatedOffset = offset;
|
|
334
272
|
}
|
|
335
|
-
|
|
336
273
|
pathResult.path = path;
|
|
337
274
|
pathResult.index = i;
|
|
338
275
|
return pathResult;
|
|
@@ -340,8 +277,6 @@ function getPath(index, offset, depth, sizes) {
|
|
|
340
277
|
/**
|
|
341
278
|
* @internal
|
|
342
279
|
*/
|
|
343
|
-
|
|
344
|
-
|
|
345
280
|
function updateNode(node, depth, index, offset, value) {
|
|
346
281
|
const {
|
|
347
282
|
path,
|
|
@@ -355,113 +290,88 @@ function updateNode(node, depth, index, offset, value) {
|
|
|
355
290
|
/**
|
|
356
291
|
* @internal
|
|
357
292
|
*/
|
|
358
|
-
|
|
359
|
-
|
|
360
293
|
function cloneNode({
|
|
361
294
|
sizes,
|
|
362
295
|
array
|
|
363
296
|
}) {
|
|
364
297
|
return new Node(sizes === undefined ? undefined : copyArray(sizes), copyArray(array));
|
|
365
|
-
}
|
|
298
|
+
}
|
|
299
|
+
// This array should not be mutated. Thus a dummy element is placed in
|
|
366
300
|
// it. Thus the affix will not be owned and thus not mutated.
|
|
367
|
-
|
|
368
301
|
/**
|
|
369
302
|
* @internal
|
|
370
303
|
*/
|
|
371
|
-
|
|
372
|
-
|
|
373
|
-
const emptyAffix = [0]; // We store a bit field in Vector. From right to left, the first five
|
|
304
|
+
const emptyAffix = [0];
|
|
305
|
+
// We store a bit field in Vector. From right to left, the first five
|
|
374
306
|
// bits are suffix length, the next five are prefix length and the
|
|
375
307
|
// rest is depth. The functions below are for working with the bits in
|
|
376
308
|
// a sane way.
|
|
377
|
-
|
|
378
309
|
/**
|
|
379
310
|
* @internal
|
|
380
311
|
*/
|
|
381
|
-
|
|
382
312
|
exports.emptyAffix = emptyAffix;
|
|
383
313
|
const affixBits = 6;
|
|
384
314
|
/**
|
|
385
315
|
* @internal
|
|
386
316
|
*/
|
|
387
|
-
|
|
388
317
|
const affixMask = 0b111111;
|
|
389
318
|
/**
|
|
390
319
|
* @internal
|
|
391
320
|
*/
|
|
392
|
-
|
|
393
321
|
function getSuffixSize(l) {
|
|
394
322
|
return l.bits & affixMask;
|
|
395
323
|
}
|
|
396
324
|
/**
|
|
397
325
|
* @internal
|
|
398
326
|
*/
|
|
399
|
-
|
|
400
|
-
|
|
401
327
|
function getPrefixSize(l) {
|
|
402
328
|
return l.bits >> affixBits & affixMask;
|
|
403
329
|
}
|
|
404
330
|
/**
|
|
405
331
|
* @internal
|
|
406
332
|
*/
|
|
407
|
-
|
|
408
|
-
|
|
409
333
|
function getDepth(l) {
|
|
410
334
|
return l.bits >> affixBits * 2;
|
|
411
335
|
}
|
|
412
336
|
/**
|
|
413
337
|
* @internal
|
|
414
338
|
*/
|
|
415
|
-
|
|
416
|
-
|
|
417
339
|
function setPrefix(size, bits) {
|
|
418
340
|
return size << affixBits | bits & ~(affixMask << affixBits);
|
|
419
341
|
}
|
|
420
342
|
/**
|
|
421
343
|
* @internal
|
|
422
344
|
*/
|
|
423
|
-
|
|
424
|
-
|
|
425
345
|
function setSuffix(size, bits) {
|
|
426
346
|
return size | bits & ~affixMask;
|
|
427
347
|
}
|
|
428
348
|
/**
|
|
429
349
|
* @internal
|
|
430
350
|
*/
|
|
431
|
-
|
|
432
|
-
|
|
433
351
|
function setDepth(depth, bits) {
|
|
434
352
|
return depth << affixBits * 2 | bits & (affixMask | affixMask << affixBits);
|
|
435
353
|
}
|
|
436
354
|
/**
|
|
437
355
|
* @internal
|
|
438
356
|
*/
|
|
439
|
-
|
|
440
|
-
|
|
441
357
|
function incrementPrefix(bits) {
|
|
442
358
|
return bits + (1 << affixBits);
|
|
443
359
|
}
|
|
444
360
|
/**
|
|
445
361
|
* @internal
|
|
446
362
|
*/
|
|
447
|
-
|
|
448
|
-
|
|
449
363
|
function incrementSuffix(bits) {
|
|
450
364
|
return bits + 1;
|
|
451
365
|
}
|
|
452
366
|
/**
|
|
453
367
|
* @internal
|
|
454
368
|
*/
|
|
455
|
-
|
|
456
|
-
|
|
457
369
|
function incrementDepth(bits) {
|
|
458
370
|
return bits + (1 << affixBits * 2);
|
|
459
371
|
}
|
|
460
372
|
/**
|
|
461
373
|
* @internal
|
|
462
374
|
*/
|
|
463
|
-
|
|
464
|
-
|
|
465
375
|
function decrementDepth(bits) {
|
|
466
376
|
return bits - (1 << affixBits * 2);
|
|
467
377
|
}
|
|
@@ -470,12 +380,9 @@ function decrementDepth(bits) {
|
|
|
470
380
|
*
|
|
471
381
|
* @tsplus pipeable fncts.MutableVector push
|
|
472
382
|
*/
|
|
473
|
-
|
|
474
|
-
|
|
475
383
|
function push(value) {
|
|
476
384
|
return l => {
|
|
477
385
|
const suffixSize = getSuffixSize(l);
|
|
478
|
-
|
|
479
386
|
if (l.length === 0) {
|
|
480
387
|
l.bits = setPrefix(1, l.bits);
|
|
481
388
|
l.prefix = [value];
|
|
@@ -493,11 +400,9 @@ function push(value) {
|
|
|
493
400
|
let depth = getDepth(l);
|
|
494
401
|
l.suffix = [value];
|
|
495
402
|
l.bits = setSuffix(1, l.bits);
|
|
496
|
-
|
|
497
403
|
if (index - 1 < branchingFactor ** (depth + 1)) {
|
|
498
404
|
for (; depth >= 0; --depth) {
|
|
499
405
|
const path = index >> depth * branchBits & mask;
|
|
500
|
-
|
|
501
406
|
if (path < current.array.length) {
|
|
502
407
|
current = current.array[path];
|
|
503
408
|
} else {
|
|
@@ -510,7 +415,6 @@ function push(value) {
|
|
|
510
415
|
l.root = new Node(undefined, [l.root, createPath(depth, newNode)]);
|
|
511
416
|
}
|
|
512
417
|
}
|
|
513
|
-
|
|
514
418
|
l.length++;
|
|
515
419
|
return l;
|
|
516
420
|
};
|
|
@@ -518,55 +422,43 @@ function push(value) {
|
|
|
518
422
|
/**
|
|
519
423
|
* @internal
|
|
520
424
|
*/
|
|
521
|
-
|
|
522
|
-
|
|
523
425
|
function nodeNthDense(node, depth, index) {
|
|
524
|
-
let current = node;
|
|
525
|
-
|
|
426
|
+
let current = node;
|
|
427
|
+
// eslint-disable-next-line no-param-reassign
|
|
526
428
|
for (; depth >= 0; --depth) {
|
|
527
429
|
current = current.array[index >> depth * branchBits & mask];
|
|
528
430
|
}
|
|
529
|
-
|
|
530
431
|
return current;
|
|
531
432
|
}
|
|
532
433
|
/**
|
|
533
434
|
* @internal
|
|
534
435
|
*/
|
|
535
|
-
|
|
536
|
-
|
|
537
436
|
function handleOffset(depth, offset, index) {
|
|
538
437
|
let i = index;
|
|
539
|
-
i += offset;
|
|
540
|
-
|
|
438
|
+
i += offset;
|
|
439
|
+
// eslint-disable-next-line no-param-reassign
|
|
541
440
|
for (; depth >= 0; --depth) {
|
|
542
441
|
i = index - (offset & mask << depth * branchBits);
|
|
543
|
-
|
|
544
442
|
if ((index >> depth * branchBits & mask) !== 0) {
|
|
545
443
|
break;
|
|
546
444
|
}
|
|
547
445
|
}
|
|
548
|
-
|
|
549
446
|
return i;
|
|
550
447
|
}
|
|
551
448
|
/**
|
|
552
449
|
* @internal
|
|
553
450
|
*/
|
|
554
|
-
|
|
555
|
-
|
|
556
451
|
function nodeNth(node, depth, offset, index) {
|
|
557
452
|
let path;
|
|
558
453
|
let current = node;
|
|
559
454
|
let i = index;
|
|
560
455
|
let ofs = offset;
|
|
561
456
|
let dep = depth;
|
|
562
|
-
|
|
563
457
|
while (current.sizes !== undefined) {
|
|
564
458
|
path = i >> dep * branchBits & mask;
|
|
565
|
-
|
|
566
459
|
while (current.sizes[path] <= i) {
|
|
567
460
|
path++;
|
|
568
461
|
}
|
|
569
|
-
|
|
570
462
|
if (path !== 0) {
|
|
571
463
|
i -= current.sizes[path - 1];
|
|
572
464
|
ofs = 0; // Offset is discarded if the left spine isn't traversed
|
|
@@ -575,23 +467,18 @@ function nodeNth(node, depth, offset, index) {
|
|
|
575
467
|
dep--;
|
|
576
468
|
current = current.array[path];
|
|
577
469
|
}
|
|
578
|
-
|
|
579
470
|
return nodeNthDense(current, dep, ofs === 0 ? i : handleOffset(dep, ofs, i));
|
|
580
471
|
}
|
|
581
472
|
/**
|
|
582
473
|
* @internal
|
|
583
474
|
*/
|
|
584
|
-
|
|
585
|
-
|
|
586
475
|
function setSizes(node, height) {
|
|
587
476
|
let sum = 0;
|
|
588
477
|
const sizeTable = [];
|
|
589
|
-
|
|
590
478
|
for (let i = 0; i < node.array.length; ++i) {
|
|
591
479
|
sum += sizeOfSubtree(node.array[i], height - 1);
|
|
592
480
|
sizeTable[i] = sum;
|
|
593
481
|
}
|
|
594
|
-
|
|
595
482
|
node.sizes = sizeTable;
|
|
596
483
|
return node;
|
|
597
484
|
}
|
|
@@ -600,8 +487,6 @@ function setSizes(node, height) {
|
|
|
600
487
|
*
|
|
601
488
|
* @internal
|
|
602
489
|
*/
|
|
603
|
-
|
|
604
|
-
|
|
605
490
|
function sizeOfSubtree(node, height) {
|
|
606
491
|
if (height !== 0) {
|
|
607
492
|
if (node.sizes !== undefined) {
|
|
@@ -614,13 +499,11 @@ function sizeOfSubtree(node, height) {
|
|
|
614
499
|
} else {
|
|
615
500
|
return node.array.length;
|
|
616
501
|
}
|
|
617
|
-
}
|
|
618
|
-
|
|
502
|
+
}
|
|
503
|
+
// prepend & append
|
|
619
504
|
/**
|
|
620
505
|
* @internal
|
|
621
506
|
*/
|
|
622
|
-
|
|
623
|
-
|
|
624
507
|
function affixPush(a, array, length) {
|
|
625
508
|
if (array.length === length) {
|
|
626
509
|
array.push(a);
|
|
@@ -638,28 +521,21 @@ function affixPush(a, array, length) {
|
|
|
638
521
|
*
|
|
639
522
|
* @internal
|
|
640
523
|
*/
|
|
641
|
-
|
|
642
|
-
|
|
643
524
|
function copyLeft(l, k) {
|
|
644
525
|
let currentNode = cloneNode(l.root); // copy root
|
|
645
|
-
|
|
646
526
|
l.root = currentNode; // install copy of root
|
|
647
|
-
|
|
648
527
|
for (let i = 1; i < k; ++i) {
|
|
649
528
|
const index = 0; // go left
|
|
650
|
-
|
|
651
529
|
if (currentNode.sizes !== undefined) {
|
|
652
530
|
for (let i = 0; i < currentNode.sizes.length; ++i) {
|
|
653
531
|
currentNode.sizes[i] += 32;
|
|
654
532
|
}
|
|
655
533
|
}
|
|
656
|
-
|
|
657
|
-
|
|
658
|
-
|
|
534
|
+
const newNode = cloneNode(currentNode.array[index]);
|
|
535
|
+
// Install the copied node
|
|
659
536
|
currentNode.array[index] = newNode;
|
|
660
537
|
currentNode = newNode;
|
|
661
538
|
}
|
|
662
|
-
|
|
663
539
|
return currentNode;
|
|
664
540
|
}
|
|
665
541
|
/**
|
|
@@ -667,21 +543,16 @@ function copyLeft(l, k) {
|
|
|
667
543
|
*
|
|
668
544
|
* @internal
|
|
669
545
|
*/
|
|
670
|
-
|
|
671
|
-
|
|
672
546
|
function nodePrepend(value, size, node) {
|
|
673
547
|
const array = arrayPrepend(value, node.array);
|
|
674
548
|
let sizes = undefined;
|
|
675
|
-
|
|
676
549
|
if (node.sizes !== undefined) {
|
|
677
550
|
sizes = new Array(node.sizes.length + 1);
|
|
678
551
|
sizes[0] = size;
|
|
679
|
-
|
|
680
552
|
for (let i = 0; i < node.sizes.length; ++i) {
|
|
681
553
|
sizes[i + 1] = node.sizes[i] + size;
|
|
682
554
|
}
|
|
683
555
|
}
|
|
684
|
-
|
|
685
556
|
return new Node(sizes, array);
|
|
686
557
|
}
|
|
687
558
|
/**
|
|
@@ -690,11 +561,8 @@ function nodePrepend(value, size, node) {
|
|
|
690
561
|
*
|
|
691
562
|
* @internal
|
|
692
563
|
*/
|
|
693
|
-
|
|
694
|
-
|
|
695
564
|
function prependTopTree(l, depth, node) {
|
|
696
565
|
let newOffset;
|
|
697
|
-
|
|
698
566
|
if (l.root.array.length < branchingFactor) {
|
|
699
567
|
// There is space in the root, there is never a size table in this
|
|
700
568
|
// case
|
|
@@ -707,7 +575,6 @@ function prependTopTree(l, depth, node) {
|
|
|
707
575
|
newOffset = depth === 0 ? 0 : 32 ** (depth + 1) - 32;
|
|
708
576
|
l.root = new Node(sizes, [createPath(depth, node), l.root]);
|
|
709
577
|
}
|
|
710
|
-
|
|
711
578
|
return newOffset;
|
|
712
579
|
}
|
|
713
580
|
/**
|
|
@@ -716,8 +583,6 @@ function prependTopTree(l, depth, node) {
|
|
|
716
583
|
*
|
|
717
584
|
* @internal
|
|
718
585
|
*/
|
|
719
|
-
|
|
720
|
-
|
|
721
586
|
function prependNodeToTree(l, array) {
|
|
722
587
|
if (l.root === undefined) {
|
|
723
588
|
if (getSuffixSize(l) === 0) {
|
|
@@ -727,13 +592,11 @@ function prependNodeToTree(l, array) {
|
|
|
727
592
|
} else {
|
|
728
593
|
l.root = new Node(undefined, array);
|
|
729
594
|
}
|
|
730
|
-
|
|
731
595
|
return l;
|
|
732
596
|
} else {
|
|
733
597
|
const node = new Node(undefined, array);
|
|
734
598
|
const depth = getDepth(l);
|
|
735
599
|
let newOffset = 0;
|
|
736
|
-
|
|
737
600
|
if (l.root.sizes === undefined) {
|
|
738
601
|
if (l.offset !== 0) {
|
|
739
602
|
newOffset = l.offset - branchingFactor;
|
|
@@ -745,30 +608,24 @@ function prependNodeToTree(l, array) {
|
|
|
745
608
|
}
|
|
746
609
|
} else {
|
|
747
610
|
// represents how many nodes _with size-tables_ that we should copy.
|
|
748
|
-
let copyableCount = 0;
|
|
749
|
-
|
|
611
|
+
let copyableCount = 0;
|
|
612
|
+
// go down while there is size tables
|
|
750
613
|
let nodesTraversed = 0;
|
|
751
614
|
let currentNode = l.root;
|
|
752
|
-
|
|
753
615
|
while (currentNode.sizes !== undefined && nodesTraversed < depth) {
|
|
754
616
|
++nodesTraversed;
|
|
755
|
-
|
|
756
617
|
if (currentNode.array.length < 32) {
|
|
757
618
|
// there is room if offset is > 0 or if the first node does not
|
|
758
619
|
// contain as many nodes as it possibly can
|
|
759
620
|
copyableCount = nodesTraversed;
|
|
760
621
|
}
|
|
761
|
-
|
|
762
622
|
currentNode = currentNode.array[0];
|
|
763
623
|
}
|
|
764
|
-
|
|
765
624
|
if (l.offset !== 0) {
|
|
766
625
|
const copiedNode = copyLeft(l, nodesTraversed);
|
|
767
|
-
|
|
768
626
|
for (let i = 0; i < copiedNode.sizes.length; ++i) {
|
|
769
627
|
copiedNode.sizes[i] += branchingFactor;
|
|
770
628
|
}
|
|
771
|
-
|
|
772
629
|
copiedNode.array[0] = prependDense(copiedNode.array[0], depth - nodesTraversed, l.offset, node);
|
|
773
630
|
l.offset = l.offset - branchingFactor;
|
|
774
631
|
return l;
|
|
@@ -777,8 +634,8 @@ function prependNodeToTree(l, array) {
|
|
|
777
634
|
l.offset = prependTopTree(l, depth, node);
|
|
778
635
|
} else {
|
|
779
636
|
let parent;
|
|
780
|
-
let prependableNode;
|
|
781
|
-
|
|
637
|
+
let prependableNode;
|
|
638
|
+
// Copy the part of the path with size tables
|
|
782
639
|
if (copyableCount > 1) {
|
|
783
640
|
parent = copyLeft(l, copyableCount - 1);
|
|
784
641
|
prependableNode = parent.array[0];
|
|
@@ -786,23 +643,19 @@ function prependNodeToTree(l, array) {
|
|
|
786
643
|
parent = undefined;
|
|
787
644
|
prependableNode = l.root;
|
|
788
645
|
}
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
646
|
+
const path = createPath(depth - copyableCount, node);
|
|
647
|
+
// add offset
|
|
792
648
|
l.offset = 32 ** (depth - copyableCount + 1) - 32;
|
|
793
649
|
const prepended = nodePrepend(path, 32, prependableNode);
|
|
794
|
-
|
|
795
650
|
if (parent === undefined) {
|
|
796
651
|
l.root = prepended;
|
|
797
652
|
} else {
|
|
798
653
|
parent.array[0] = prepended;
|
|
799
654
|
}
|
|
800
655
|
}
|
|
801
|
-
|
|
802
656
|
return l;
|
|
803
657
|
}
|
|
804
658
|
}
|
|
805
|
-
|
|
806
659
|
l.offset = newOffset;
|
|
807
660
|
return l;
|
|
808
661
|
}
|
|
@@ -812,13 +665,10 @@ function prependNodeToTree(l, array) {
|
|
|
812
665
|
*
|
|
813
666
|
* @internal
|
|
814
667
|
*/
|
|
815
|
-
|
|
816
|
-
|
|
817
668
|
function prependDense(node, depth, offset, value) {
|
|
818
669
|
// We're indexing down `offset - 1`. At each step `path` is either 0 or -1.
|
|
819
670
|
const curOffset = offset >> depth * branchBits & mask;
|
|
820
671
|
const path = (offset - 1 >> depth * branchBits & mask) - curOffset;
|
|
821
|
-
|
|
822
672
|
if (path < 0) {
|
|
823
673
|
return new Node(undefined, arrayPrepend(createPath(depth - 1, value), node.array));
|
|
824
674
|
} else {
|
|
@@ -833,8 +683,6 @@ function prependDense(node, depth, offset, value) {
|
|
|
833
683
|
*
|
|
834
684
|
* @internal
|
|
835
685
|
*/
|
|
836
|
-
|
|
837
|
-
|
|
838
686
|
function appendNodeToTree(l, array) {
|
|
839
687
|
if (l.root === undefined) {
|
|
840
688
|
// The old Vector has no content in tree, all content is in affixes
|
|
@@ -844,26 +692,20 @@ function appendNodeToTree(l, array) {
|
|
|
844
692
|
} else {
|
|
845
693
|
l.root = new Node(undefined, array);
|
|
846
694
|
}
|
|
847
|
-
|
|
848
695
|
return l;
|
|
849
696
|
}
|
|
850
|
-
|
|
851
697
|
const depth = getDepth(l);
|
|
852
698
|
let index = handleOffset(depth, l.offset, l.length - 1 - getPrefixSize(l));
|
|
853
699
|
let nodesToCopy = 0;
|
|
854
700
|
let nodesVisited = 0;
|
|
855
701
|
let shift = depth * 5;
|
|
856
702
|
let currentNode = l.root;
|
|
857
|
-
|
|
858
703
|
if (32 ** (depth + 1) < index) {
|
|
859
704
|
shift = 0; // there is no room
|
|
860
|
-
|
|
861
705
|
nodesVisited = depth;
|
|
862
706
|
}
|
|
863
|
-
|
|
864
707
|
while (shift > 5) {
|
|
865
708
|
let childIndex;
|
|
866
|
-
|
|
867
709
|
if (currentNode.sizes === undefined) {
|
|
868
710
|
// does not have size table
|
|
869
711
|
childIndex = index >> shift & mask;
|
|
@@ -872,17 +714,13 @@ function appendNodeToTree(l, array) {
|
|
|
872
714
|
childIndex = currentNode.array.length - 1;
|
|
873
715
|
index -= currentNode.sizes[childIndex - 1];
|
|
874
716
|
}
|
|
875
|
-
|
|
876
717
|
nodesVisited++;
|
|
877
|
-
|
|
878
718
|
if (childIndex < mask) {
|
|
879
719
|
// we are not going down the far right path, this implies that
|
|
880
720
|
// there is still room in the current node
|
|
881
721
|
nodesToCopy = nodesVisited;
|
|
882
722
|
}
|
|
883
|
-
|
|
884
723
|
currentNode = currentNode.array[childIndex];
|
|
885
|
-
|
|
886
724
|
if (currentNode === undefined) {
|
|
887
725
|
// This will only happened in a pvec subtree. The index does not
|
|
888
726
|
// exist so we'll have to create a new path from here on.
|
|
@@ -892,18 +730,14 @@ function appendNodeToTree(l, array) {
|
|
|
892
730
|
|
|
893
731
|
shift -= 5;
|
|
894
732
|
}
|
|
895
|
-
|
|
896
733
|
if (shift !== 0) {
|
|
897
734
|
nodesVisited++;
|
|
898
|
-
|
|
899
735
|
if (currentNode.array.length < branchingFactor) {
|
|
900
736
|
// there is room in the found node
|
|
901
737
|
nodesToCopy = nodesVisited;
|
|
902
738
|
}
|
|
903
739
|
}
|
|
904
|
-
|
|
905
740
|
const node = new Node(undefined, array);
|
|
906
|
-
|
|
907
741
|
if (nodesToCopy === 0) {
|
|
908
742
|
// there was no room in the found node
|
|
909
743
|
const newPath = nodesVisited === 0 ? node : createPath(nodesVisited, node);
|
|
@@ -914,7 +748,6 @@ function appendNodeToTree(l, array) {
|
|
|
914
748
|
const copiedNode = copyFirstK(l, nodesToCopy, array.length);
|
|
915
749
|
copiedNode.array.push(createPath(depth - nodesToCopy, node));
|
|
916
750
|
}
|
|
917
|
-
|
|
918
751
|
return l;
|
|
919
752
|
}
|
|
920
753
|
/**
|
|
@@ -922,52 +755,38 @@ function appendNodeToTree(l, array) {
|
|
|
922
755
|
*
|
|
923
756
|
* @internal
|
|
924
757
|
*/
|
|
925
|
-
|
|
926
|
-
|
|
927
758
|
function copyFirstK(newVector, k, leafSize) {
|
|
928
759
|
let currentNode = cloneNode(newVector.root); // copy root
|
|
929
|
-
|
|
930
760
|
newVector.root = currentNode; // install root
|
|
931
|
-
|
|
932
761
|
for (let i = 1; i < k; ++i) {
|
|
933
762
|
const index = currentNode.array.length - 1;
|
|
934
|
-
|
|
935
763
|
if (currentNode.sizes !== undefined) {
|
|
936
764
|
currentNode.sizes[index] += leafSize;
|
|
937
765
|
}
|
|
938
|
-
|
|
939
|
-
|
|
940
|
-
|
|
766
|
+
const newNode = cloneNode(currentNode.array[index]);
|
|
767
|
+
// Install the copied node
|
|
941
768
|
currentNode.array[index] = newNode;
|
|
942
769
|
currentNode = newNode;
|
|
943
770
|
}
|
|
944
|
-
|
|
945
771
|
if (currentNode.sizes !== undefined) {
|
|
946
772
|
currentNode.sizes.push(arrayLast(currentNode.sizes) + leafSize);
|
|
947
773
|
}
|
|
948
|
-
|
|
949
774
|
return currentNode;
|
|
950
775
|
}
|
|
951
|
-
|
|
952
776
|
const eMax = 2;
|
|
953
777
|
/**
|
|
954
778
|
* @internal
|
|
955
779
|
*/
|
|
956
|
-
|
|
957
780
|
function createConcatPlan(array) {
|
|
958
781
|
const sizes = [];
|
|
959
782
|
let sum = 0;
|
|
960
|
-
|
|
961
783
|
for (let i = 0; i < array.length; ++i) {
|
|
962
784
|
sum += array[i].array.length; // FIXME: maybe only access array once
|
|
963
|
-
|
|
964
785
|
sizes[i] = array[i].array.length;
|
|
965
786
|
}
|
|
966
|
-
|
|
967
787
|
const optimalLength = Math.ceil(sum / branchingFactor);
|
|
968
788
|
let n = array.length;
|
|
969
789
|
let i = 0;
|
|
970
|
-
|
|
971
790
|
if (optimalLength + eMax >= n) {
|
|
972
791
|
return undefined; // no rebalancing needed
|
|
973
792
|
}
|
|
@@ -976,27 +795,22 @@ function createConcatPlan(array) {
|
|
|
976
795
|
while (sizes[i] > branchingFactor - eMax / 2) {
|
|
977
796
|
// Skip nodes that are already sufficiently balanced
|
|
978
797
|
++i;
|
|
979
|
-
}
|
|
980
|
-
|
|
981
|
-
|
|
798
|
+
}
|
|
799
|
+
// the node at this index is too short
|
|
982
800
|
let remaining = sizes[i]; // number of elements to re-distribute
|
|
983
|
-
|
|
984
801
|
do {
|
|
985
802
|
const size = Math.min(remaining + sizes[i + 1], branchingFactor);
|
|
986
803
|
sizes[i] = size;
|
|
987
804
|
remaining = remaining - (size - sizes[i + 1]);
|
|
988
805
|
++i;
|
|
989
|
-
} while (remaining > 0);
|
|
990
|
-
|
|
991
|
-
|
|
806
|
+
} while (remaining > 0);
|
|
807
|
+
// Shift nodes after
|
|
992
808
|
for (let j = i; j <= n - 1; ++j) {
|
|
993
809
|
sizes[j] = sizes[j + 1];
|
|
994
810
|
}
|
|
995
|
-
|
|
996
811
|
--i;
|
|
997
812
|
--n;
|
|
998
813
|
}
|
|
999
|
-
|
|
1000
814
|
sizes.length = n;
|
|
1001
815
|
return sizes;
|
|
1002
816
|
}
|
|
@@ -1007,55 +821,42 @@ function createConcatPlan(array) {
|
|
|
1007
821
|
*
|
|
1008
822
|
* @internal
|
|
1009
823
|
*/
|
|
1010
|
-
|
|
1011
|
-
|
|
1012
824
|
function concatNodeMerge(left, center, right) {
|
|
1013
825
|
const array = [];
|
|
1014
|
-
|
|
1015
826
|
if (left !== undefined) {
|
|
1016
827
|
for (let i = 0; i < left.array.length - 1; ++i) {
|
|
1017
828
|
array.push(left.array[i]);
|
|
1018
829
|
}
|
|
1019
830
|
}
|
|
1020
|
-
|
|
1021
831
|
for (let i = 0; i < center.array.length; ++i) {
|
|
1022
832
|
array.push(center.array[i]);
|
|
1023
833
|
}
|
|
1024
|
-
|
|
1025
834
|
if (right !== undefined) {
|
|
1026
835
|
for (let i = 1; i < right.array.length; ++i) {
|
|
1027
836
|
array.push(right.array[i]);
|
|
1028
837
|
}
|
|
1029
838
|
}
|
|
1030
|
-
|
|
1031
839
|
return array;
|
|
1032
840
|
}
|
|
1033
841
|
/**
|
|
1034
842
|
* @internal
|
|
1035
843
|
*/
|
|
1036
|
-
|
|
1037
|
-
|
|
1038
844
|
function executeConcatPlan(merged, plan, height) {
|
|
1039
845
|
const result = [];
|
|
1040
846
|
let sourceIdx = 0; // the current node we're copying from
|
|
1041
|
-
|
|
1042
847
|
let offset = 0; // elements in source already used
|
|
1043
|
-
|
|
1044
848
|
for (let toMove of plan) {
|
|
1045
849
|
let source = merged[sourceIdx].array;
|
|
1046
|
-
|
|
1047
850
|
if (toMove === source.length && offset === 0) {
|
|
1048
851
|
// source matches target exactly, reuse source
|
|
1049
852
|
result.push(merged[sourceIdx]);
|
|
1050
853
|
++sourceIdx;
|
|
1051
854
|
} else {
|
|
1052
855
|
const node = new Node(undefined, []);
|
|
1053
|
-
|
|
1054
856
|
while (toMove > 0) {
|
|
1055
857
|
const available = source.length - offset;
|
|
1056
858
|
const itemsToCopy = Math.min(toMove, available);
|
|
1057
859
|
pushElements(source, node.array, offset, itemsToCopy);
|
|
1058
|
-
|
|
1059
860
|
if (toMove >= available) {
|
|
1060
861
|
++sourceIdx;
|
|
1061
862
|
source = merged[sourceIdx].array;
|
|
@@ -1063,19 +864,15 @@ function executeConcatPlan(merged, plan, height) {
|
|
|
1063
864
|
} else {
|
|
1064
865
|
offset += itemsToCopy;
|
|
1065
866
|
}
|
|
1066
|
-
|
|
1067
867
|
toMove -= itemsToCopy;
|
|
1068
868
|
}
|
|
1069
|
-
|
|
1070
869
|
if (height > 1) {
|
|
1071
870
|
// Set sizes on children unless they are leaf nodes
|
|
1072
871
|
setSizes(node, height - 1);
|
|
1073
872
|
}
|
|
1074
|
-
|
|
1075
873
|
result.push(node);
|
|
1076
874
|
}
|
|
1077
875
|
}
|
|
1078
|
-
|
|
1079
876
|
return result;
|
|
1080
877
|
}
|
|
1081
878
|
/**
|
|
@@ -1085,13 +882,10 @@ function executeConcatPlan(merged, plan, height) {
|
|
|
1085
882
|
*
|
|
1086
883
|
* @internal
|
|
1087
884
|
*/
|
|
1088
|
-
|
|
1089
|
-
|
|
1090
885
|
function rebalance(left, center, right, height, top) {
|
|
1091
886
|
const merged = concatNodeMerge(left, center, right);
|
|
1092
887
|
const plan = createConcatPlan(merged);
|
|
1093
888
|
const balanced = plan !== undefined ? executeConcatPlan(merged, plan, height) : merged;
|
|
1094
|
-
|
|
1095
889
|
if (balanced.length <= branchingFactor) {
|
|
1096
890
|
if (top === true) {
|
|
1097
891
|
return new Node(undefined, balanced);
|
|
@@ -1107,8 +901,6 @@ function rebalance(left, center, right, height, top) {
|
|
|
1107
901
|
/**
|
|
1108
902
|
* @internal
|
|
1109
903
|
*/
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
904
|
function concatSubTree(left, lDepth, right, rDepth, isTop) {
|
|
1113
905
|
if (lDepth > rDepth) {
|
|
1114
906
|
const c = concatSubTree(arrayLast(left.array), lDepth - 1, right, rDepth, false);
|
|
@@ -1126,15 +918,11 @@ function concatSubTree(left, lDepth, right, rDepth, isTop) {
|
|
|
1126
918
|
/**
|
|
1127
919
|
* @internal
|
|
1128
920
|
*/
|
|
1129
|
-
|
|
1130
|
-
|
|
1131
921
|
const concatBuffer = /*#__PURE__*/new Array(3);
|
|
1132
922
|
/**
|
|
1133
923
|
* @internal
|
|
1134
924
|
*/
|
|
1135
|
-
|
|
1136
925
|
exports.concatBuffer = concatBuffer;
|
|
1137
|
-
|
|
1138
926
|
function concatAffixes(left, right) {
|
|
1139
927
|
// TODO: Try and find a neat way to reduce the LOC here
|
|
1140
928
|
let nr = 0;
|
|
@@ -1142,42 +930,32 @@ function concatAffixes(left, right) {
|
|
|
1142
930
|
let i = 0;
|
|
1143
931
|
let length = getSuffixSize(left);
|
|
1144
932
|
concatBuffer[nr] = [];
|
|
1145
|
-
|
|
1146
933
|
for (i = 0; i < length; ++i) {
|
|
1147
934
|
concatBuffer[nr][arrIdx++] = left.suffix[i];
|
|
1148
935
|
}
|
|
1149
|
-
|
|
1150
936
|
length = getPrefixSize(right);
|
|
1151
|
-
|
|
1152
937
|
for (i = 0; i < length; ++i) {
|
|
1153
938
|
if (arrIdx === 32) {
|
|
1154
939
|
arrIdx = 0;
|
|
1155
940
|
++nr;
|
|
1156
941
|
concatBuffer[nr] = [];
|
|
1157
942
|
}
|
|
1158
|
-
|
|
1159
943
|
concatBuffer[nr][arrIdx++] = right.prefix[length - 1 - i];
|
|
1160
944
|
}
|
|
1161
|
-
|
|
1162
945
|
length = getSuffixSize(right);
|
|
1163
|
-
|
|
1164
946
|
for (i = 0; i < length; ++i) {
|
|
1165
947
|
if (arrIdx === 32) {
|
|
1166
948
|
arrIdx = 0;
|
|
1167
949
|
++nr;
|
|
1168
950
|
concatBuffer[nr] = [];
|
|
1169
951
|
}
|
|
1170
|
-
|
|
1171
952
|
concatBuffer[nr][arrIdx++] = right.suffix[i];
|
|
1172
953
|
}
|
|
1173
|
-
|
|
1174
954
|
return nr;
|
|
1175
955
|
}
|
|
1176
956
|
/**
|
|
1177
957
|
* @internal
|
|
1178
958
|
*/
|
|
1179
|
-
|
|
1180
|
-
|
|
1181
959
|
function getHeight(node) {
|
|
1182
960
|
if (node.array[0] instanceof Node) {
|
|
1183
961
|
return 1 + getHeight(node.array[0]);
|
|
@@ -1188,31 +966,23 @@ function getHeight(node) {
|
|
|
1188
966
|
/**
|
|
1189
967
|
* @internal
|
|
1190
968
|
*/
|
|
1191
|
-
|
|
1192
|
-
|
|
1193
|
-
let newAffix; // function getBitsForDepth(n: number, depth: number): number {
|
|
969
|
+
let newAffix;
|
|
970
|
+
// function getBitsForDepth(n: number, depth: number): number {
|
|
1194
971
|
// return n & ~(~0 << ((depth + 1) * branchBits));
|
|
1195
972
|
// }
|
|
1196
|
-
|
|
1197
973
|
exports.newAffix = newAffix;
|
|
1198
|
-
|
|
1199
974
|
function sliceNode(node, index, depth, pathLeft, pathRight, childLeft, childRight) {
|
|
1200
975
|
const array = node.array.slice(pathLeft, pathRight + 1);
|
|
1201
|
-
|
|
1202
976
|
if (childLeft !== undefined) {
|
|
1203
977
|
array[0] = childLeft;
|
|
1204
978
|
}
|
|
1205
|
-
|
|
1206
979
|
if (childRight !== undefined) {
|
|
1207
980
|
array[array.length - 1] = childRight;
|
|
1208
981
|
}
|
|
1209
|
-
|
|
1210
982
|
let sizes = node.sizes;
|
|
1211
|
-
|
|
1212
983
|
if (sizes !== undefined) {
|
|
1213
984
|
sizes = sizes.slice(pathLeft, pathRight + 1);
|
|
1214
985
|
let slicedOffLeft = pathLeft !== 0 ? node.sizes[pathLeft - 1] : 0;
|
|
1215
|
-
|
|
1216
986
|
if (childLeft !== undefined) {
|
|
1217
987
|
// If the left child has been sliced into a new child we need to know
|
|
1218
988
|
// how many elements have been removed from the child.
|
|
@@ -1231,112 +1001,89 @@ function sliceNode(node, index, depth, pathLeft, pathRight, childLeft, childRigh
|
|
|
1231
1001
|
slicedOffLeft += (index - slicedOffLeft & ~0b011111) + 32;
|
|
1232
1002
|
}
|
|
1233
1003
|
}
|
|
1234
|
-
|
|
1235
1004
|
for (let i = 0; i < sizes.length; ++i) {
|
|
1236
1005
|
sizes[i] -= slicedOffLeft;
|
|
1237
1006
|
}
|
|
1238
|
-
|
|
1239
1007
|
if (childRight !== undefined) {
|
|
1240
1008
|
const slicedOffRight = sizeOfSubtree(node.array[pathRight], depth - 1) - sizeOfSubtree(childRight, depth - 1);
|
|
1241
1009
|
sizes[sizes.length - 1] -= slicedOffRight;
|
|
1242
1010
|
}
|
|
1243
1011
|
}
|
|
1244
|
-
|
|
1245
1012
|
return new Node(sizes, array);
|
|
1246
1013
|
}
|
|
1247
1014
|
/**
|
|
1248
1015
|
* @internal
|
|
1249
1016
|
*/
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
1017
|
let newOffset = 0;
|
|
1253
1018
|
exports.newOffset = newOffset;
|
|
1254
|
-
|
|
1255
1019
|
function sliceLeft(tree, depth, index, offset, top) {
|
|
1256
1020
|
let {
|
|
1257
1021
|
index: newIndex,
|
|
1258
1022
|
path,
|
|
1259
1023
|
updatedOffset
|
|
1260
1024
|
} = getPath(index, offset, depth, tree.sizes);
|
|
1261
|
-
|
|
1262
1025
|
if (depth === 0) {
|
|
1263
|
-
exports.newAffix = newAffix = tree.array.slice(path).reverse();
|
|
1026
|
+
exports.newAffix = newAffix = tree.array.slice(path).reverse();
|
|
1027
|
+
// This leaf node is moved up as a suffix so there is nothing here
|
|
1264
1028
|
// after slicing
|
|
1265
|
-
|
|
1266
1029
|
return undefined;
|
|
1267
1030
|
} else {
|
|
1268
1031
|
const child = sliceLeft(tree.array[path], depth - 1, newIndex, updatedOffset, false);
|
|
1269
|
-
|
|
1270
1032
|
if (child === undefined) {
|
|
1271
1033
|
// There is nothing in the child after slicing so we don't include it
|
|
1272
1034
|
++path;
|
|
1273
|
-
|
|
1274
1035
|
if (path === tree.array.length) {
|
|
1275
1036
|
return undefined;
|
|
1276
1037
|
}
|
|
1277
|
-
}
|
|
1278
|
-
|
|
1279
|
-
|
|
1038
|
+
}
|
|
1039
|
+
// If we've sliced something away and it's not a the root, update offset
|
|
1280
1040
|
if (tree.sizes === undefined && top === false) {
|
|
1281
1041
|
exports.newOffset = newOffset = newOffset | 32 - (tree.array.length - path) << depth * branchBits;
|
|
1282
1042
|
}
|
|
1283
|
-
|
|
1284
1043
|
return sliceNode(tree, index, depth, path, tree.array.length - 1, child, undefined);
|
|
1285
1044
|
}
|
|
1286
1045
|
}
|
|
1287
1046
|
/** Slice elements off of a tree from the right */
|
|
1288
|
-
|
|
1289
|
-
|
|
1290
1047
|
function sliceRight(node, depth, index, offset) {
|
|
1291
1048
|
let {
|
|
1292
1049
|
index: newIndex,
|
|
1293
1050
|
path
|
|
1294
1051
|
} = getPath(index, offset, depth, node.sizes);
|
|
1295
|
-
|
|
1296
1052
|
if (depth === 0) {
|
|
1297
|
-
exports.newAffix = newAffix = node.array.slice(0, path + 1);
|
|
1053
|
+
exports.newAffix = newAffix = node.array.slice(0, path + 1);
|
|
1054
|
+
// this leaf node is moved up as a suffix so there is nothing here
|
|
1298
1055
|
// after slicing
|
|
1299
|
-
|
|
1300
1056
|
return undefined;
|
|
1301
1057
|
} else {
|
|
1302
1058
|
// slice the child, note that we subtract 1 then the radix lookup
|
|
1303
1059
|
// algorithm can find the last element that we want to include
|
|
1304
1060
|
// and sliceRight will do a slice that is inclusive on the index.
|
|
1305
1061
|
const child = sliceRight(node.array[path], depth - 1, newIndex, path === 0 ? offset : 0);
|
|
1306
|
-
|
|
1307
1062
|
if (child === undefined) {
|
|
1308
1063
|
// there is nothing in the child after slicing so we don't include it
|
|
1309
1064
|
--path;
|
|
1310
|
-
|
|
1311
1065
|
if (path === -1) {
|
|
1312
1066
|
return undefined;
|
|
1313
1067
|
}
|
|
1314
|
-
}
|
|
1068
|
+
}
|
|
1069
|
+
// note that we add 1 to the path since we want the slice to be
|
|
1315
1070
|
// inclusive on the end index. Only at the leaf level do we want
|
|
1316
1071
|
// to do an exclusive slice.
|
|
1317
|
-
|
|
1318
|
-
|
|
1319
1072
|
const array = node.array.slice(0, path + 1);
|
|
1320
|
-
|
|
1321
1073
|
if (child !== undefined) {
|
|
1322
1074
|
array[array.length - 1] = child;
|
|
1323
1075
|
}
|
|
1324
|
-
|
|
1325
1076
|
let sizes = node.sizes;
|
|
1326
|
-
|
|
1327
1077
|
if (sizes !== undefined) {
|
|
1328
1078
|
sizes = sizes.slice(0, path + 1);
|
|
1329
|
-
|
|
1330
1079
|
if (child !== undefined) {
|
|
1331
1080
|
const slicedOff = sizeOfSubtree(node.array[path], depth - 1) - sizeOfSubtree(child, depth - 1);
|
|
1332
1081
|
sizes[sizes.length - 1] -= slicedOff;
|
|
1333
1082
|
}
|
|
1334
1083
|
}
|
|
1335
|
-
|
|
1336
1084
|
return new Node(sizes, array);
|
|
1337
1085
|
}
|
|
1338
1086
|
}
|
|
1339
|
-
|
|
1340
1087
|
function sliceTreeVector(from, to, tree, depth, offset, l) {
|
|
1341
1088
|
const sizes = tree.sizes;
|
|
1342
1089
|
let {
|
|
@@ -1347,7 +1094,6 @@ function sliceTreeVector(from, to, tree, depth, offset, l) {
|
|
|
1347
1094
|
index: newTo,
|
|
1348
1095
|
path: pathRight
|
|
1349
1096
|
} = getPath(to, offset, depth, sizes);
|
|
1350
|
-
|
|
1351
1097
|
if (depth === 0) {
|
|
1352
1098
|
// we are slicing a piece off a leaf node
|
|
1353
1099
|
l.prefix = emptyAffix;
|
|
@@ -1364,21 +1110,17 @@ function sliceTreeVector(from, to, tree, depth, offset, l) {
|
|
|
1364
1110
|
const childRight = sliceRight(tree.array[pathRight], depth - 1, newTo, 0);
|
|
1365
1111
|
l.bits = setSuffix(newAffix.length, l.bits);
|
|
1366
1112
|
l.suffix = newAffix;
|
|
1367
|
-
|
|
1368
1113
|
if (childRight === undefined) {
|
|
1369
1114
|
--pathRight;
|
|
1370
1115
|
}
|
|
1371
|
-
|
|
1372
1116
|
exports.newOffset = newOffset = 0;
|
|
1373
1117
|
const childLeft = sliceLeft(tree.array[pathLeft], depth - 1, newFrom, pathLeft === 0 ? offset : 0, pathLeft === pathRight);
|
|
1374
1118
|
l.offset = newOffset;
|
|
1375
1119
|
l.bits = setPrefix(newAffix.length, l.bits);
|
|
1376
1120
|
l.prefix = newAffix;
|
|
1377
|
-
|
|
1378
1121
|
if (childLeft === undefined) {
|
|
1379
1122
|
++pathLeft;
|
|
1380
1123
|
}
|
|
1381
|
-
|
|
1382
1124
|
if (pathLeft >= pathRight) {
|
|
1383
1125
|
if (pathLeft > pathRight) {
|
|
1384
1126
|
// This only happens when `pathLeft` originally was equal to
|
|
@@ -1395,55 +1137,44 @@ function sliceTreeVector(from, to, tree, depth, offset, l) {
|
|
|
1395
1137
|
} else {
|
|
1396
1138
|
l.root = sliceNode(tree, from, depth, pathLeft, pathRight, childLeft, childRight);
|
|
1397
1139
|
}
|
|
1398
|
-
|
|
1399
1140
|
return l;
|
|
1400
1141
|
}
|
|
1401
1142
|
}
|
|
1402
1143
|
/**
|
|
1403
1144
|
* @internal
|
|
1404
1145
|
*/
|
|
1405
|
-
|
|
1406
|
-
|
|
1407
1146
|
function zeroOffset() {
|
|
1408
1147
|
exports.newOffset = newOffset = 0;
|
|
1409
1148
|
}
|
|
1410
|
-
|
|
1411
1149
|
function foldLeftArrayCb(cb, state, array, from, to, offset) {
|
|
1412
|
-
for (var i = from; i < to && cb(array[i], state, i + offset); ++i) {
|
|
1150
|
+
for (var i = from; i < to && cb(array[i], state, i + offset); ++i) {
|
|
1151
|
+
//
|
|
1413
1152
|
}
|
|
1414
|
-
|
|
1415
1153
|
return [i === to, i + offset + 1];
|
|
1416
1154
|
}
|
|
1417
|
-
|
|
1418
1155
|
function foldRightArrayCb(cb, state, array, from, to, offset) {
|
|
1419
1156
|
// eslint-disable-next-line no-param-reassign
|
|
1420
|
-
for (var i = from - 1; to <= i && cb(array[i], state, offset); --i, offset--) {
|
|
1157
|
+
for (var i = from - 1; to <= i && cb(array[i], state, offset); --i, offset--) {
|
|
1158
|
+
//
|
|
1421
1159
|
}
|
|
1422
|
-
|
|
1423
1160
|
return [i === to - 1, offset];
|
|
1424
1161
|
}
|
|
1425
|
-
|
|
1426
1162
|
function foldLeftNodeCb(cb, state, node, depth, offset) {
|
|
1427
1163
|
const {
|
|
1428
1164
|
array
|
|
1429
1165
|
} = node;
|
|
1430
|
-
|
|
1431
1166
|
if (depth === 0) {
|
|
1432
1167
|
return foldLeftArrayCb(cb, state, array, 0, array.length, offset);
|
|
1433
1168
|
}
|
|
1434
|
-
|
|
1435
1169
|
const to = array.length;
|
|
1436
1170
|
let j = offset;
|
|
1437
1171
|
let cont;
|
|
1438
|
-
|
|
1439
1172
|
for (let i = 0; i < to; ++i) {
|
|
1440
1173
|
[cont, j] = foldLeftNodeCb(cb, state, array[i], depth - 1, j);
|
|
1441
|
-
|
|
1442
1174
|
if (!cont) {
|
|
1443
1175
|
return [false, j];
|
|
1444
1176
|
}
|
|
1445
1177
|
}
|
|
1446
|
-
|
|
1447
1178
|
return [true, j];
|
|
1448
1179
|
}
|
|
1449
1180
|
/**
|
|
@@ -1453,170 +1184,128 @@ function foldLeftNodeCb(cb, state, node, depth, offset) {
|
|
|
1453
1184
|
* to continue the fold. `true` indicates that the folding should
|
|
1454
1185
|
* continue.
|
|
1455
1186
|
*/
|
|
1456
|
-
|
|
1457
|
-
|
|
1458
1187
|
function foldLeftCb(cb, state, l) {
|
|
1459
1188
|
const prefixSize = getPrefixSize(l);
|
|
1460
1189
|
let i = prefixSize - 1;
|
|
1461
1190
|
let cont = true;
|
|
1462
1191
|
[cont, i] = foldRightArrayCb(cb, state, l.prefix, prefixSize, 0, i);
|
|
1463
|
-
|
|
1464
1192
|
if (!cont) {
|
|
1465
1193
|
return state;
|
|
1466
1194
|
}
|
|
1467
|
-
|
|
1468
1195
|
i = prefixSize;
|
|
1469
|
-
|
|
1470
1196
|
if (l.root !== undefined) {
|
|
1471
1197
|
[cont, i] = foldLeftNodeCb(cb, state, l.root, getDepth(l), i);
|
|
1472
|
-
|
|
1473
1198
|
if (!cont) {
|
|
1474
1199
|
return state;
|
|
1475
1200
|
}
|
|
1476
1201
|
}
|
|
1477
|
-
|
|
1478
1202
|
const suffixSize = getSuffixSize(l);
|
|
1479
1203
|
foldLeftArrayCb(cb, state, l.suffix, 0, suffixSize, i);
|
|
1480
1204
|
return state;
|
|
1481
1205
|
}
|
|
1482
|
-
|
|
1483
1206
|
function foldRightNodeCb(cb, state, node, depth, offset) {
|
|
1484
1207
|
const {
|
|
1485
1208
|
array
|
|
1486
1209
|
} = node;
|
|
1487
|
-
|
|
1488
1210
|
if (depth === 0) {
|
|
1489
1211
|
return foldRightArrayCb(cb, state, array, array.length, 0, offset);
|
|
1490
1212
|
}
|
|
1491
|
-
|
|
1492
1213
|
let j = offset;
|
|
1493
1214
|
let cont;
|
|
1494
|
-
|
|
1495
1215
|
for (let i = array.length - 1; 0 <= i; --i) {
|
|
1496
1216
|
[cont, j] = foldRightNodeCb(cb, state, array[i], depth - 1, j);
|
|
1497
|
-
|
|
1498
1217
|
if (!cont) {
|
|
1499
1218
|
return [false, j];
|
|
1500
1219
|
}
|
|
1501
1220
|
}
|
|
1502
|
-
|
|
1503
1221
|
return [true, j];
|
|
1504
1222
|
}
|
|
1505
|
-
|
|
1506
1223
|
function foldRightCb(cb, state, l) {
|
|
1507
1224
|
const suffixSize = getSuffixSize(l);
|
|
1508
1225
|
const prefixSize = getPrefixSize(l);
|
|
1509
1226
|
let i = l.length - 1;
|
|
1510
1227
|
let cont = true;
|
|
1511
1228
|
[cont, i] = foldRightArrayCb(cb, state, l.suffix, suffixSize, 0, i);
|
|
1512
|
-
|
|
1513
1229
|
if (!cont) {
|
|
1514
1230
|
return state;
|
|
1515
1231
|
}
|
|
1516
|
-
|
|
1517
1232
|
if (l.root !== undefined) {
|
|
1518
1233
|
[cont, i] = foldRightNodeCb(cb, state, l.root, getDepth(l), i);
|
|
1519
|
-
|
|
1520
1234
|
if (!cont) {
|
|
1521
1235
|
return state;
|
|
1522
1236
|
}
|
|
1523
1237
|
}
|
|
1524
|
-
|
|
1525
1238
|
const prefix = l.prefix;
|
|
1526
1239
|
foldLeftArrayCb(cb, state, l.prefix, prefix.length - prefixSize, prefix.length, prefix.length - 1);
|
|
1527
1240
|
return state;
|
|
1528
1241
|
}
|
|
1529
|
-
|
|
1530
1242
|
function foldLeftPrefix(f, b, array, length) {
|
|
1531
1243
|
let acc = b;
|
|
1532
1244
|
let j = 0;
|
|
1533
|
-
|
|
1534
1245
|
for (let i = length - 1; 0 <= i; --i, j++) {
|
|
1535
1246
|
acc = f(j, acc, array[i]);
|
|
1536
1247
|
}
|
|
1537
|
-
|
|
1538
1248
|
return [acc, j];
|
|
1539
1249
|
}
|
|
1540
|
-
|
|
1541
1250
|
function foldLeftNode(f, b, node, depth, offset) {
|
|
1542
1251
|
const {
|
|
1543
1252
|
array
|
|
1544
1253
|
} = node;
|
|
1545
1254
|
let acc = b;
|
|
1546
1255
|
let j = offset;
|
|
1547
|
-
|
|
1548
1256
|
if (depth === 0) {
|
|
1549
1257
|
return foldLeftSuffix(f, b, array, array.length, offset);
|
|
1550
1258
|
}
|
|
1551
|
-
|
|
1552
1259
|
for (let i = 0; i < array.length; ++i) {
|
|
1553
1260
|
[acc, j] = foldLeftNode(f, acc, array[i], depth - 1, j);
|
|
1554
1261
|
}
|
|
1555
|
-
|
|
1556
1262
|
return [acc, j];
|
|
1557
1263
|
}
|
|
1558
|
-
|
|
1559
1264
|
function foldLeftSuffix(f, b, array, length, offset) {
|
|
1560
1265
|
let acc = b;
|
|
1561
1266
|
let j = offset;
|
|
1562
|
-
|
|
1563
1267
|
for (let i = 0; i < length; ++i, j++) {
|
|
1564
1268
|
acc = f(j, acc, array[i]);
|
|
1565
1269
|
}
|
|
1566
|
-
|
|
1567
1270
|
return [acc, j];
|
|
1568
1271
|
}
|
|
1569
|
-
|
|
1570
1272
|
function foldRightPrefix(f, b, array, length, offset) {
|
|
1571
1273
|
let acc = b;
|
|
1572
1274
|
let j = offset;
|
|
1573
|
-
|
|
1574
1275
|
for (let i = 0; i < length; ++i, j--) {
|
|
1575
1276
|
acc = f(j, array[i], acc);
|
|
1576
1277
|
}
|
|
1577
|
-
|
|
1578
1278
|
return [acc, j];
|
|
1579
1279
|
}
|
|
1580
|
-
|
|
1581
1280
|
function foldRightNode(f, b, node, depth, offset) {
|
|
1582
1281
|
const {
|
|
1583
1282
|
array
|
|
1584
1283
|
} = node;
|
|
1585
1284
|
let acc = b;
|
|
1586
1285
|
let j = offset;
|
|
1587
|
-
|
|
1588
1286
|
if (depth === 0) {
|
|
1589
1287
|
return foldRightSuffix(f, b, array, array.length, offset);
|
|
1590
1288
|
}
|
|
1591
|
-
|
|
1592
1289
|
for (let i = array.length - 1; 0 <= i; --i) {
|
|
1593
1290
|
[acc, j] = foldRightNode(f, acc, array[i], depth - 1, j);
|
|
1594
1291
|
}
|
|
1595
|
-
|
|
1596
1292
|
return [acc, j];
|
|
1597
1293
|
}
|
|
1598
|
-
|
|
1599
1294
|
function foldRightSuffix(f, b, array, length, offset) {
|
|
1600
1295
|
let acc = b;
|
|
1601
1296
|
let j = offset;
|
|
1602
|
-
|
|
1603
1297
|
for (let i = length - 1; 0 <= i; --i, j--) {
|
|
1604
1298
|
acc = f(j, array[i], acc);
|
|
1605
1299
|
}
|
|
1606
|
-
|
|
1607
1300
|
return [acc, j];
|
|
1608
1301
|
}
|
|
1609
|
-
|
|
1610
1302
|
function mapArray(f, array, offset) {
|
|
1611
1303
|
const result = new Array(array.length);
|
|
1612
|
-
|
|
1613
1304
|
for (let i = 0; i < array.length; ++i) {
|
|
1614
1305
|
result[i] = f(offset + i, array[i]);
|
|
1615
1306
|
}
|
|
1616
|
-
|
|
1617
1307
|
return [result, offset + array.length];
|
|
1618
1308
|
}
|
|
1619
|
-
|
|
1620
1309
|
function mapNode(f, node, depth, offset, adjust) {
|
|
1621
1310
|
if (depth !== 0) {
|
|
1622
1311
|
const {
|
|
@@ -1624,41 +1313,32 @@ function mapNode(f, node, depth, offset, adjust) {
|
|
|
1624
1313
|
} = node;
|
|
1625
1314
|
let innerOffset = offset;
|
|
1626
1315
|
const result = new Array(array.length);
|
|
1627
|
-
|
|
1628
1316
|
for (let i = 0; i < array.length; ++i) {
|
|
1629
1317
|
const [res, newOffset] = mapNode(f, array[i], depth - 1, innerOffset, adjust * 32);
|
|
1630
1318
|
innerOffset = newOffset;
|
|
1631
1319
|
result[i] = res;
|
|
1632
1320
|
}
|
|
1633
|
-
|
|
1634
1321
|
return [new Node(node.sizes, result), innerOffset];
|
|
1635
1322
|
} else {
|
|
1636
1323
|
const [res, newOffset] = mapArray(f, node.array, offset);
|
|
1637
1324
|
return [new Node(undefined, res), newOffset];
|
|
1638
1325
|
}
|
|
1639
1326
|
}
|
|
1640
|
-
|
|
1641
1327
|
function mapPrefix(f, prefix, length) {
|
|
1642
1328
|
const newPrefix = new Array(length);
|
|
1643
|
-
|
|
1644
1329
|
for (let i = length - 1; 0 <= i; --i) {
|
|
1645
1330
|
newPrefix[i] = f(length - 1 - i, prefix[i]);
|
|
1646
1331
|
}
|
|
1647
|
-
|
|
1648
1332
|
return newPrefix;
|
|
1649
1333
|
}
|
|
1650
|
-
|
|
1651
1334
|
function mapAffix(f, suffix, length, totalLength) {
|
|
1652
1335
|
const priorLength = totalLength - length;
|
|
1653
1336
|
const newSuffix = new Array(length);
|
|
1654
|
-
|
|
1655
1337
|
for (let i = 0; i < length; ++i) {
|
|
1656
1338
|
newSuffix[i] = f(priorLength + i, suffix[i]);
|
|
1657
1339
|
}
|
|
1658
|
-
|
|
1659
1340
|
return newSuffix;
|
|
1660
1341
|
}
|
|
1661
|
-
|
|
1662
1342
|
function arrayPush(array, a) {
|
|
1663
1343
|
array.push(a);
|
|
1664
1344
|
return array;
|