effect 3.8.4 → 3.9.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/Array.js +24 -3
- package/dist/cjs/Array.js.map +1 -1
- package/dist/cjs/BigDecimal.js +5 -3
- package/dist/cjs/BigDecimal.js.map +1 -1
- package/dist/cjs/BigInt.js.map +1 -1
- package/dist/cjs/Boolean.js.map +1 -1
- package/dist/cjs/Cause.js.map +1 -1
- package/dist/cjs/Channel.js.map +1 -1
- package/dist/cjs/ChildExecutorDecision.js.map +1 -1
- package/dist/cjs/Chunk.js +3 -0
- package/dist/cjs/Chunk.js.map +1 -1
- package/dist/cjs/Config.js.map +1 -1
- package/dist/cjs/ConfigError.js.map +1 -1
- package/dist/cjs/ConfigProvider.js.map +1 -1
- package/dist/cjs/ConfigProviderPathPatch.js.map +1 -1
- package/dist/cjs/Console.js.map +1 -1
- package/dist/cjs/Context.js.map +1 -1
- package/dist/cjs/Cron.js +3 -0
- package/dist/cjs/Cron.js.map +1 -1
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/DateTime.js +6 -0
- package/dist/cjs/DateTime.js.map +1 -1
- package/dist/cjs/Deferred.js.map +1 -1
- package/dist/cjs/Differ.js.map +1 -1
- package/dist/cjs/Duration.js +3 -0
- package/dist/cjs/Duration.js.map +1 -1
- package/dist/cjs/Effect.js +122 -35
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/Equivalence.js.map +1 -1
- package/dist/cjs/ExecutionStrategy.js.map +1 -1
- package/dist/cjs/Exit.js.map +1 -1
- package/dist/cjs/Fiber.js.map +1 -1
- package/dist/cjs/FiberHandle.js +3 -0
- package/dist/cjs/FiberHandle.js.map +1 -1
- package/dist/cjs/FiberId.js.map +1 -1
- package/dist/cjs/FiberMap.js +3 -0
- package/dist/cjs/FiberMap.js.map +1 -1
- package/dist/cjs/FiberRef.js.map +1 -1
- package/dist/cjs/FiberRefs.js.map +1 -1
- package/dist/cjs/FiberRefsPatch.js.map +1 -1
- package/dist/cjs/FiberSet.js +3 -0
- package/dist/cjs/FiberSet.js.map +1 -1
- package/dist/cjs/Function.js.map +1 -1
- package/dist/cjs/GroupBy.js.map +1 -1
- package/dist/cjs/Hash.js.map +1 -1
- package/dist/cjs/HashMap.js.map +1 -1
- package/dist/cjs/HashSet.js.map +1 -1
- package/dist/cjs/Inspectable.js +15 -1
- package/dist/cjs/Inspectable.js.map +1 -1
- package/dist/cjs/Iterable.js.map +1 -1
- package/dist/cjs/KeyedPool.js.map +1 -1
- package/dist/cjs/Layer.js.map +1 -1
- package/dist/cjs/List.js +6 -0
- package/dist/cjs/List.js.map +1 -1
- package/dist/cjs/LogLevel.js.map +1 -1
- package/dist/cjs/Logger.js.map +1 -1
- package/dist/cjs/Mailbox.js.map +1 -1
- package/dist/cjs/ManagedRuntime.js +16 -1
- package/dist/cjs/ManagedRuntime.js.map +1 -1
- package/dist/cjs/MergeDecision.js.map +1 -1
- package/dist/cjs/MergeState.js.map +1 -1
- package/dist/cjs/MergeStrategy.js.map +1 -1
- package/dist/cjs/Metric.js.map +1 -1
- package/dist/cjs/MetricHook.js.map +1 -1
- package/dist/cjs/MetricKey.js.map +1 -1
- package/dist/cjs/MetricPolling.js.map +1 -1
- package/dist/cjs/MetricState.js.map +1 -1
- package/dist/cjs/Micro.js +6 -0
- package/dist/cjs/Micro.js.map +1 -1
- package/dist/cjs/MutableHashMap.js +3 -0
- package/dist/cjs/MutableHashMap.js.map +1 -1
- package/dist/cjs/MutableHashSet.js +3 -0
- package/dist/cjs/MutableHashSet.js.map +1 -1
- package/dist/cjs/MutableList.js +3 -0
- package/dist/cjs/MutableList.js.map +1 -1
- package/dist/cjs/MutableQueue.js +3 -0
- package/dist/cjs/MutableQueue.js.map +1 -1
- package/dist/cjs/MutableRef.js +3 -0
- package/dist/cjs/MutableRef.js.map +1 -1
- package/dist/cjs/Number.js.map +1 -1
- package/dist/cjs/Option.js.map +1 -1
- package/dist/cjs/Order.js.map +1 -1
- package/dist/cjs/Ordering.js.map +1 -1
- package/dist/cjs/Pipeable.js.map +1 -1
- package/dist/cjs/Pool.js.map +1 -1
- package/dist/cjs/Predicate.js +18 -2
- package/dist/cjs/Predicate.js.map +1 -1
- package/dist/cjs/PubSub.js.map +1 -1
- package/dist/cjs/Queue.js.map +1 -1
- package/dist/cjs/RcMap.js.map +1 -1
- package/dist/cjs/Readable.js.map +1 -1
- package/dist/cjs/Record.js.map +1 -1
- package/dist/cjs/RedBlackTree.js.map +1 -1
- package/dist/cjs/Ref.js.map +1 -1
- package/dist/cjs/RegExp.js +20 -1
- package/dist/cjs/RegExp.js.map +1 -1
- package/dist/cjs/Request.js.map +1 -1
- package/dist/cjs/RequestResolver.js.map +1 -1
- package/dist/cjs/Resource.js.map +1 -1
- package/dist/cjs/Runtime.js.map +1 -1
- package/dist/cjs/RuntimeFlags.js.map +1 -1
- package/dist/cjs/RuntimeFlagsPatch.js.map +1 -1
- package/dist/cjs/STM.js.map +1 -1
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/ScheduleInterval.js.map +1 -1
- package/dist/cjs/ScheduleIntervals.js.map +1 -1
- package/dist/cjs/Scheduler.js.map +1 -1
- package/dist/cjs/Scope.js.map +1 -1
- package/dist/cjs/ScopedRef.js.map +1 -1
- package/dist/cjs/Sink.js.map +1 -1
- package/dist/cjs/SortedMap.js +3 -0
- package/dist/cjs/SortedMap.js.map +1 -1
- package/dist/cjs/SortedSet.js +3 -0
- package/dist/cjs/SortedSet.js.map +1 -1
- package/dist/cjs/Stream.js +17 -3
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/StreamHaltStrategy.js.map +1 -1
- package/dist/cjs/String.js.map +1 -1
- package/dist/cjs/Struct.js.map +1 -1
- package/dist/cjs/Subscribable.js.map +1 -1
- package/dist/cjs/SubscriptionRef.js.map +1 -1
- package/dist/cjs/SynchronizedRef.js.map +1 -1
- package/dist/cjs/TArray.js.map +1 -1
- package/dist/cjs/TDeferred.js.map +1 -1
- package/dist/cjs/TMap.js.map +1 -1
- package/dist/cjs/TPriorityQueue.js.map +1 -1
- package/dist/cjs/TPubSub.js.map +1 -1
- package/dist/cjs/TQueue.js.map +1 -1
- package/dist/cjs/TReentrantLock.js.map +1 -1
- package/dist/cjs/TRef.js.map +1 -1
- package/dist/cjs/TSemaphore.js.map +1 -1
- package/dist/cjs/TSet.js.map +1 -1
- package/dist/cjs/Take.js.map +1 -1
- package/dist/cjs/TestAnnotationMap.js.map +1 -1
- package/dist/cjs/TestClock.js.map +1 -1
- package/dist/cjs/TestServices.js.map +1 -1
- package/dist/cjs/Trie.js.map +1 -1
- package/dist/cjs/Tuple.js +21 -2
- package/dist/cjs/Tuple.js.map +1 -1
- package/dist/cjs/Unify.js.map +1 -1
- package/dist/cjs/UpstreamPullRequest.js.map +1 -1
- package/dist/cjs/UpstreamPullStrategy.js.map +1 -1
- package/dist/cjs/Utils.js +1 -14
- package/dist/cjs/Utils.js.map +1 -1
- package/dist/cjs/internal/cause.js +3 -0
- package/dist/cjs/internal/cause.js.map +1 -1
- package/dist/cjs/internal/context.js +6 -1
- package/dist/cjs/internal/context.js.map +1 -1
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core.js +16 -3
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/effect/circular.js +5 -1
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- package/dist/cjs/internal/fiberId.js +9 -0
- package/dist/cjs/internal/fiberId.js.map +1 -1
- package/dist/cjs/internal/hashMap.js +3 -0
- package/dist/cjs/internal/hashMap.js.map +1 -1
- package/dist/cjs/internal/hashSet.js +3 -0
- package/dist/cjs/internal/hashSet.js.map +1 -1
- package/dist/cjs/internal/layer.js +33 -19
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/mailbox.js +3 -0
- package/dist/cjs/internal/mailbox.js.map +1 -1
- package/dist/cjs/internal/managedRuntime/circular.js +10 -0
- package/dist/cjs/internal/managedRuntime/circular.js.map +1 -0
- package/dist/cjs/internal/managedRuntime.js +23 -9
- package/dist/cjs/internal/managedRuntime.js.map +1 -1
- package/dist/cjs/internal/option.js +3 -0
- package/dist/cjs/internal/option.js.map +1 -1
- package/dist/cjs/internal/pool.js +6 -1
- package/dist/cjs/internal/pool.js.map +1 -1
- package/dist/cjs/internal/redBlackTree.js +3 -0
- package/dist/cjs/internal/redBlackTree.js.map +1 -1
- package/dist/cjs/internal/resource.js +15 -5
- package/dist/cjs/internal/resource.js.map +1 -1
- package/dist/cjs/internal/runtime.js +4 -1
- package/dist/cjs/internal/runtime.js.map +1 -1
- package/dist/cjs/internal/scopedRef.js +11 -8
- package/dist/cjs/internal/scopedRef.js.map +1 -1
- package/dist/cjs/internal/stm/core.js +1 -2
- package/dist/cjs/internal/stm/core.js.map +1 -1
- package/dist/cjs/internal/stream.js +12 -3
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/trie.js +3 -0
- package/dist/cjs/internal/trie.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Array.d.ts +2735 -2
- package/dist/dts/Array.d.ts.map +1 -1
- package/dist/dts/BigDecimal.d.ts +558 -1
- package/dist/dts/BigDecimal.d.ts.map +1 -1
- package/dist/dts/BigInt.d.ts +490 -0
- package/dist/dts/BigInt.d.ts.map +1 -1
- package/dist/dts/Boolean.d.ts +228 -0
- package/dist/dts/Boolean.d.ts.map +1 -1
- package/dist/dts/Cause.d.ts +172 -0
- package/dist/dts/Cause.d.ts.map +1 -1
- package/dist/dts/Channel.d.ts +750 -0
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/ChildExecutorDecision.d.ts +12 -0
- package/dist/dts/ChildExecutorDecision.d.ts.map +1 -1
- package/dist/dts/Chunk.d.ts +791 -0
- package/dist/dts/Chunk.d.ts.map +1 -1
- package/dist/dts/Config.d.ts +174 -0
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/ConfigError.d.ts +16 -0
- package/dist/dts/ConfigError.d.ts.map +1 -1
- package/dist/dts/ConfigProvider.d.ts +84 -0
- package/dist/dts/ConfigProvider.d.ts.map +1 -1
- package/dist/dts/ConfigProviderPathPatch.d.ts +32 -0
- package/dist/dts/ConfigProviderPathPatch.d.ts.map +1 -1
- package/dist/dts/Console.d.ts +24 -0
- package/dist/dts/Console.d.ts.map +1 -1
- package/dist/dts/Context.d.ts +234 -3
- package/dist/dts/Context.d.ts.map +1 -1
- package/dist/dts/Cron.d.ts +12 -0
- package/dist/dts/Cron.d.ts.map +1 -1
- package/dist/dts/Data.d.ts +165 -0
- package/dist/dts/Data.d.ts.map +1 -1
- package/dist/dts/DateTime.d.ts +878 -0
- package/dist/dts/DateTime.d.ts.map +1 -1
- package/dist/dts/Deferred.d.ts +171 -1
- package/dist/dts/Deferred.d.ts.map +1 -1
- package/dist/dts/Differ.d.ts +78 -0
- package/dist/dts/Differ.d.ts.map +1 -1
- package/dist/dts/Duration.d.ts +130 -0
- package/dist/dts/Duration.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +4350 -13
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +620 -0
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/Equivalence.d.ts +24 -0
- package/dist/dts/Equivalence.d.ts.map +1 -1
- package/dist/dts/ExecutionStrategy.d.ts +14 -0
- package/dist/dts/ExecutionStrategy.d.ts.map +1 -1
- package/dist/dts/Exit.d.ts +252 -0
- package/dist/dts/Exit.d.ts.map +1 -1
- package/dist/dts/Fiber.d.ts +182 -0
- package/dist/dts/Fiber.d.ts.map +1 -1
- package/dist/dts/FiberHandle.d.ts +42 -0
- package/dist/dts/FiberHandle.d.ts.map +1 -1
- package/dist/dts/FiberId.d.ts +24 -0
- package/dist/dts/FiberId.d.ts.map +1 -1
- package/dist/dts/FiberMap.d.ts +102 -0
- package/dist/dts/FiberMap.d.ts.map +1 -1
- package/dist/dts/FiberRef.d.ts +80 -0
- package/dist/dts/FiberRef.d.ts.map +1 -1
- package/dist/dts/FiberRefs.d.ts +84 -0
- package/dist/dts/FiberRefs.d.ts.map +1 -1
- package/dist/dts/FiberRefsPatch.d.ts +30 -0
- package/dist/dts/FiberRefsPatch.d.ts.map +1 -1
- package/dist/dts/FiberSet.d.ts +38 -0
- package/dist/dts/FiberSet.d.ts.map +1 -1
- package/dist/dts/Function.d.ts +144 -28
- package/dist/dts/Function.d.ts.map +1 -1
- package/dist/dts/GroupBy.d.ts +38 -0
- package/dist/dts/GroupBy.d.ts.map +1 -1
- package/dist/dts/Hash.d.ts +8 -0
- package/dist/dts/Hash.d.ts.map +1 -1
- package/dist/dts/HashMap.d.ts +315 -0
- package/dist/dts/HashMap.d.ts.map +1 -1
- package/dist/dts/HashSet.d.ts +284 -0
- package/dist/dts/HashSet.d.ts.map +1 -1
- package/dist/dts/Inspectable.d.ts +15 -0
- package/dist/dts/Inspectable.d.ts.map +1 -1
- package/dist/dts/Iterable.d.ts +454 -0
- package/dist/dts/Iterable.d.ts.map +1 -1
- package/dist/dts/KeyedPool.d.ts +34 -0
- package/dist/dts/KeyedPool.d.ts.map +1 -1
- package/dist/dts/Layer.d.ts +460 -5
- package/dist/dts/Layer.d.ts.map +1 -1
- package/dist/dts/List.d.ts +430 -0
- package/dist/dts/List.d.ts.map +1 -1
- package/dist/dts/LogLevel.d.ts +46 -0
- package/dist/dts/LogLevel.d.ts.map +1 -1
- package/dist/dts/Logger.d.ts +194 -0
- package/dist/dts/Logger.d.ts.map +1 -1
- package/dist/dts/Mailbox.d.ts +16 -0
- package/dist/dts/Mailbox.d.ts.map +1 -1
- package/dist/dts/ManagedRuntime.d.ts +41 -2
- package/dist/dts/ManagedRuntime.d.ts.map +1 -1
- package/dist/dts/MergeDecision.d.ts +8 -0
- package/dist/dts/MergeDecision.d.ts.map +1 -1
- package/dist/dts/MergeState.d.ts +8 -0
- package/dist/dts/MergeState.d.ts.map +1 -1
- package/dist/dts/MergeStrategy.d.ts +12 -0
- package/dist/dts/MergeStrategy.d.ts.map +1 -1
- package/dist/dts/Metric.d.ts +410 -0
- package/dist/dts/Metric.d.ts.map +1 -1
- package/dist/dts/MetricHook.d.ts +24 -0
- package/dist/dts/MetricHook.d.ts.map +1 -1
- package/dist/dts/MetricKey.d.ts +48 -0
- package/dist/dts/MetricKey.d.ts.map +1 -1
- package/dist/dts/MetricPolling.d.ts +40 -0
- package/dist/dts/MetricPolling.d.ts.map +1 -1
- package/dist/dts/MetricState.d.ts +16 -0
- package/dist/dts/MetricState.d.ts.map +1 -1
- package/dist/dts/Micro.d.ts +1110 -0
- package/dist/dts/Micro.d.ts.map +1 -1
- package/dist/dts/MutableHashMap.d.ts +50 -0
- package/dist/dts/MutableHashMap.d.ts.map +1 -1
- package/dist/dts/MutableHashSet.d.ts +24 -0
- package/dist/dts/MutableHashSet.d.ts.map +1 -1
- package/dist/dts/MutableList.d.ts +36 -0
- package/dist/dts/MutableList.d.ts.map +1 -1
- package/dist/dts/MutableQueue.d.ts +62 -0
- package/dist/dts/MutableQueue.d.ts.map +1 -1
- package/dist/dts/MutableRef.d.ts +56 -0
- package/dist/dts/MutableRef.d.ts.map +1 -1
- package/dist/dts/Number.d.ts +474 -0
- package/dist/dts/Number.d.ts.map +1 -1
- package/dist/dts/Option.d.ts +1019 -0
- package/dist/dts/Option.d.ts.map +1 -1
- package/dist/dts/Order.d.ts +24 -0
- package/dist/dts/Order.d.ts.map +1 -1
- package/dist/dts/Ordering.d.ts +66 -0
- package/dist/dts/Ordering.d.ts.map +1 -1
- package/dist/dts/Pipeable.d.ts +21 -21
- package/dist/dts/Pipeable.d.ts.map +1 -1
- package/dist/dts/Pool.d.ts +37 -1
- package/dist/dts/Pool.d.ts.map +1 -1
- package/dist/dts/Predicate.d.ts +513 -0
- package/dist/dts/Predicate.d.ts.map +1 -1
- package/dist/dts/PubSub.d.ts +28 -0
- package/dist/dts/PubSub.d.ts.map +1 -1
- package/dist/dts/Queue.d.ts +106 -2
- package/dist/dts/Queue.d.ts.map +1 -1
- package/dist/dts/RcMap.d.ts +70 -0
- package/dist/dts/RcMap.d.ts.map +1 -1
- package/dist/dts/Readable.d.ts +16 -0
- package/dist/dts/Readable.d.ts.map +1 -1
- package/dist/dts/Record.d.ts +800 -0
- package/dist/dts/Record.d.ts.map +1 -1
- package/dist/dts/RedBlackTree.d.ts +300 -0
- package/dist/dts/RedBlackTree.d.ts.map +1 -1
- package/dist/dts/Ref.d.ts +88 -0
- package/dist/dts/Ref.d.ts.map +1 -1
- package/dist/dts/RegExp.d.ts +12 -2
- package/dist/dts/RegExp.d.ts.map +1 -1
- package/dist/dts/Request.d.ts +76 -0
- package/dist/dts/Request.d.ts.map +1 -1
- package/dist/dts/RequestResolver.d.ts +144 -0
- package/dist/dts/RequestResolver.d.ts.map +1 -1
- package/dist/dts/Resource.d.ts +21 -1
- package/dist/dts/Resource.d.ts.map +1 -1
- package/dist/dts/Runtime.d.ts +126 -0
- package/dist/dts/Runtime.d.ts.map +1 -1
- package/dist/dts/RuntimeFlags.d.ts +100 -0
- package/dist/dts/RuntimeFlags.d.ts.map +1 -1
- package/dist/dts/RuntimeFlagsPatch.d.ts +112 -0
- package/dist/dts/RuntimeFlagsPatch.d.ts.map +1 -1
- package/dist/dts/STM.d.ts +1090 -0
- package/dist/dts/STM.d.ts.map +1 -1
- package/dist/dts/Schedule.d.ts +704 -0
- package/dist/dts/Schedule.d.ts.map +1 -1
- package/dist/dts/ScheduleInterval.d.ts +68 -0
- package/dist/dts/ScheduleInterval.d.ts.map +1 -1
- package/dist/dts/ScheduleIntervals.d.ts +50 -0
- package/dist/dts/ScheduleIntervals.d.ts.map +1 -1
- package/dist/dts/Scope.d.ts +36 -0
- package/dist/dts/Scope.d.ts.map +1 -1
- package/dist/dts/ScopedRef.d.ts +43 -1
- package/dist/dts/ScopedRef.d.ts.map +1 -1
- package/dist/dts/Sink.d.ts +464 -0
- package/dist/dts/Sink.d.ts.map +1 -1
- package/dist/dts/SortedMap.d.ts +76 -0
- package/dist/dts/SortedMap.d.ts.map +1 -1
- package/dist/dts/SortedSet.d.ts +142 -0
- package/dist/dts/SortedSet.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +4998 -1
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/StreamHaltStrategy.d.ts +12 -0
- package/dist/dts/StreamHaltStrategy.d.ts.map +1 -1
- package/dist/dts/String.d.ts +200 -0
- package/dist/dts/String.d.ts.map +1 -1
- package/dist/dts/Struct.d.ts +84 -0
- package/dist/dts/Struct.d.ts.map +1 -1
- package/dist/dts/Subscribable.d.ts +16 -0
- package/dist/dts/Subscribable.d.ts.map +1 -1
- package/dist/dts/SubscriptionRef.d.ts +152 -0
- package/dist/dts/SubscriptionRef.d.ts.map +1 -1
- package/dist/dts/SynchronizedRef.d.ts +152 -0
- package/dist/dts/SynchronizedRef.d.ts.map +1 -1
- package/dist/dts/TArray.d.ts +426 -0
- package/dist/dts/TArray.d.ts.map +1 -1
- package/dist/dts/TDeferred.d.ts +24 -0
- package/dist/dts/TDeferred.d.ts.map +1 -1
- package/dist/dts/TMap.d.ts +366 -0
- package/dist/dts/TMap.d.ts.map +1 -1
- package/dist/dts/TPriorityQueue.d.ts +60 -0
- package/dist/dts/TPriorityQueue.d.ts.map +1 -1
- package/dist/dts/TPubSub.d.ts +28 -0
- package/dist/dts/TPubSub.d.ts.map +1 -1
- package/dist/dts/TQueue.d.ts +108 -0
- package/dist/dts/TQueue.d.ts.map +1 -1
- package/dist/dts/TReentrantLock.d.ts +36 -0
- package/dist/dts/TReentrantLock.d.ts.map +1 -1
- package/dist/dts/TRef.d.ts +88 -0
- package/dist/dts/TRef.d.ts.map +1 -1
- package/dist/dts/TSemaphore.d.ts +40 -0
- package/dist/dts/TSemaphore.d.ts.map +1 -1
- package/dist/dts/TSet.d.ts +254 -0
- package/dist/dts/TSet.d.ts.map +1 -1
- package/dist/dts/Take.d.ts +56 -0
- package/dist/dts/Take.d.ts.map +1 -1
- package/dist/dts/TestAnnotationMap.d.ts.map +1 -1
- package/dist/dts/TestClock.d.ts.map +1 -1
- package/dist/dts/TestServices.d.ts.map +1 -1
- package/dist/dts/Trie.d.ts +906 -0
- package/dist/dts/Trie.d.ts.map +1 -1
- package/dist/dts/Tuple.d.ts +203 -0
- package/dist/dts/Tuple.d.ts.map +1 -1
- package/dist/dts/Types.d.ts +39 -0
- package/dist/dts/Types.d.ts.map +1 -1
- package/dist/dts/Unify.d.ts +26 -13
- package/dist/dts/Unify.d.ts.map +1 -1
- package/dist/dts/UpstreamPullRequest.d.ts +12 -0
- package/dist/dts/UpstreamPullRequest.d.ts.map +1 -1
- package/dist/dts/UpstreamPullStrategy.d.ts +12 -0
- package/dist/dts/UpstreamPullStrategy.d.ts.map +1 -1
- package/dist/dts/Utils.d.ts.map +1 -1
- package/dist/dts/internal/core.d.ts.map +1 -1
- package/dist/dts/internal/hashMap.d.ts.map +1 -1
- package/dist/dts/internal/layer.d.ts.map +1 -1
- package/dist/dts/internal/managedRuntime/circular.d.ts +2 -0
- package/dist/dts/internal/managedRuntime/circular.d.ts.map +1 -0
- package/dist/dts/internal/stream.d.ts.map +1 -1
- package/dist/esm/Array.js +21 -0
- package/dist/esm/Array.js.map +1 -1
- package/dist/esm/BigDecimal.js +6 -3
- package/dist/esm/BigDecimal.js.map +1 -1
- package/dist/esm/BigInt.js.map +1 -1
- package/dist/esm/Boolean.js.map +1 -1
- package/dist/esm/Cause.js.map +1 -1
- package/dist/esm/Channel.js.map +1 -1
- package/dist/esm/ChildExecutorDecision.js.map +1 -1
- package/dist/esm/Chunk.js +4 -1
- package/dist/esm/Chunk.js.map +1 -1
- package/dist/esm/Config.js.map +1 -1
- package/dist/esm/ConfigError.js.map +1 -1
- package/dist/esm/ConfigProvider.js.map +1 -1
- package/dist/esm/ConfigProviderPathPatch.js.map +1 -1
- package/dist/esm/Console.js.map +1 -1
- package/dist/esm/Context.js.map +1 -1
- package/dist/esm/Cron.js +4 -1
- package/dist/esm/Cron.js.map +1 -1
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/DateTime.js +6 -0
- package/dist/esm/DateTime.js.map +1 -1
- package/dist/esm/Deferred.js.map +1 -1
- package/dist/esm/Differ.js.map +1 -1
- package/dist/esm/Duration.js +4 -1
- package/dist/esm/Duration.js.map +1 -1
- package/dist/esm/Effect.js +116 -30
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/Equivalence.js.map +1 -1
- package/dist/esm/ExecutionStrategy.js.map +1 -1
- package/dist/esm/Exit.js.map +1 -1
- package/dist/esm/Fiber.js.map +1 -1
- package/dist/esm/FiberHandle.js +3 -0
- package/dist/esm/FiberHandle.js.map +1 -1
- package/dist/esm/FiberId.js.map +1 -1
- package/dist/esm/FiberMap.js +3 -0
- package/dist/esm/FiberMap.js.map +1 -1
- package/dist/esm/FiberRef.js.map +1 -1
- package/dist/esm/FiberRefs.js.map +1 -1
- package/dist/esm/FiberRefsPatch.js.map +1 -1
- package/dist/esm/FiberSet.js +3 -0
- package/dist/esm/FiberSet.js.map +1 -1
- package/dist/esm/Function.js.map +1 -1
- package/dist/esm/GroupBy.js.map +1 -1
- package/dist/esm/Hash.js.map +1 -1
- package/dist/esm/HashMap.js.map +1 -1
- package/dist/esm/HashSet.js.map +1 -1
- package/dist/esm/Inspectable.js +14 -0
- package/dist/esm/Inspectable.js.map +1 -1
- package/dist/esm/Iterable.js.map +1 -1
- package/dist/esm/KeyedPool.js.map +1 -1
- package/dist/esm/Layer.js.map +1 -1
- package/dist/esm/List.js +7 -1
- package/dist/esm/List.js.map +1 -1
- package/dist/esm/LogLevel.js.map +1 -1
- package/dist/esm/Logger.js.map +1 -1
- package/dist/esm/Mailbox.js.map +1 -1
- package/dist/esm/ManagedRuntime.js +15 -0
- package/dist/esm/ManagedRuntime.js.map +1 -1
- package/dist/esm/MergeDecision.js.map +1 -1
- package/dist/esm/MergeState.js.map +1 -1
- package/dist/esm/MergeStrategy.js.map +1 -1
- package/dist/esm/Metric.js.map +1 -1
- package/dist/esm/MetricHook.js.map +1 -1
- package/dist/esm/MetricKey.js.map +1 -1
- package/dist/esm/MetricPolling.js.map +1 -1
- package/dist/esm/MetricState.js.map +1 -1
- package/dist/esm/Micro.js +7 -1
- package/dist/esm/Micro.js.map +1 -1
- package/dist/esm/MutableHashMap.js +4 -1
- package/dist/esm/MutableHashMap.js.map +1 -1
- package/dist/esm/MutableHashSet.js +4 -1
- package/dist/esm/MutableHashSet.js.map +1 -1
- package/dist/esm/MutableList.js +4 -1
- package/dist/esm/MutableList.js.map +1 -1
- package/dist/esm/MutableQueue.js +4 -1
- package/dist/esm/MutableQueue.js.map +1 -1
- package/dist/esm/MutableRef.js +4 -1
- package/dist/esm/MutableRef.js.map +1 -1
- package/dist/esm/Number.js.map +1 -1
- package/dist/esm/Option.js.map +1 -1
- package/dist/esm/Order.js.map +1 -1
- package/dist/esm/Ordering.js.map +1 -1
- package/dist/esm/Pipeable.js.map +1 -1
- package/dist/esm/Pool.js.map +1 -1
- package/dist/esm/Predicate.js +15 -0
- package/dist/esm/Predicate.js.map +1 -1
- package/dist/esm/PubSub.js.map +1 -1
- package/dist/esm/Queue.js.map +1 -1
- package/dist/esm/RcMap.js.map +1 -1
- package/dist/esm/Readable.js.map +1 -1
- package/dist/esm/Record.js.map +1 -1
- package/dist/esm/RedBlackTree.js.map +1 -1
- package/dist/esm/Ref.js.map +1 -1
- package/dist/esm/RegExp.js +16 -0
- package/dist/esm/RegExp.js.map +1 -1
- package/dist/esm/Request.js.map +1 -1
- package/dist/esm/RequestResolver.js.map +1 -1
- package/dist/esm/Resource.js.map +1 -1
- package/dist/esm/Runtime.js.map +1 -1
- package/dist/esm/RuntimeFlags.js.map +1 -1
- package/dist/esm/RuntimeFlagsPatch.js.map +1 -1
- package/dist/esm/STM.js.map +1 -1
- package/dist/esm/Schedule.js.map +1 -1
- package/dist/esm/ScheduleInterval.js.map +1 -1
- package/dist/esm/ScheduleIntervals.js.map +1 -1
- package/dist/esm/Scheduler.js.map +1 -1
- package/dist/esm/Scope.js.map +1 -1
- package/dist/esm/ScopedRef.js.map +1 -1
- package/dist/esm/Sink.js.map +1 -1
- package/dist/esm/SortedMap.js +4 -1
- package/dist/esm/SortedMap.js.map +1 -1
- package/dist/esm/SortedSet.js +4 -1
- package/dist/esm/SortedSet.js.map +1 -1
- package/dist/esm/Stream.js +14 -0
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/StreamHaltStrategy.js.map +1 -1
- package/dist/esm/String.js.map +1 -1
- package/dist/esm/Struct.js.map +1 -1
- package/dist/esm/Subscribable.js.map +1 -1
- package/dist/esm/SubscriptionRef.js.map +1 -1
- package/dist/esm/SynchronizedRef.js.map +1 -1
- package/dist/esm/TArray.js.map +1 -1
- package/dist/esm/TDeferred.js.map +1 -1
- package/dist/esm/TMap.js.map +1 -1
- package/dist/esm/TPriorityQueue.js.map +1 -1
- package/dist/esm/TPubSub.js.map +1 -1
- package/dist/esm/TQueue.js.map +1 -1
- package/dist/esm/TReentrantLock.js.map +1 -1
- package/dist/esm/TRef.js.map +1 -1
- package/dist/esm/TSemaphore.js.map +1 -1
- package/dist/esm/TSet.js.map +1 -1
- package/dist/esm/Take.js.map +1 -1
- package/dist/esm/TestAnnotationMap.js.map +1 -1
- package/dist/esm/TestClock.js.map +1 -1
- package/dist/esm/TestServices.js.map +1 -1
- package/dist/esm/Trie.js.map +1 -1
- package/dist/esm/Tuple.js +19 -0
- package/dist/esm/Tuple.js.map +1 -1
- package/dist/esm/Unify.js.map +1 -1
- package/dist/esm/UpstreamPullRequest.js.map +1 -1
- package/dist/esm/UpstreamPullStrategy.js.map +1 -1
- package/dist/esm/Utils.js +1 -14
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/internal/cause.js +4 -1
- package/dist/esm/internal/cause.js.map +1 -1
- package/dist/esm/internal/context.js +7 -2
- package/dist/esm/internal/context.js.map +1 -1
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core.js +14 -2
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/effect/circular.js +5 -1
- package/dist/esm/internal/effect/circular.js.map +1 -1
- package/dist/esm/internal/fiberId.js +10 -1
- package/dist/esm/internal/fiberId.js.map +1 -1
- package/dist/esm/internal/hashMap.js +4 -1
- package/dist/esm/internal/hashMap.js.map +1 -1
- package/dist/esm/internal/hashSet.js +4 -1
- package/dist/esm/internal/hashSet.js.map +1 -1
- package/dist/esm/internal/layer.js +32 -18
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/mailbox.js +3 -0
- package/dist/esm/internal/mailbox.js.map +1 -1
- package/dist/esm/internal/managedRuntime/circular.js +4 -0
- package/dist/esm/internal/managedRuntime/circular.js.map +1 -0
- package/dist/esm/internal/managedRuntime.js +21 -8
- package/dist/esm/internal/managedRuntime.js.map +1 -1
- package/dist/esm/internal/option.js +4 -1
- package/dist/esm/internal/option.js.map +1 -1
- package/dist/esm/internal/pool.js +6 -1
- package/dist/esm/internal/pool.js.map +1 -1
- package/dist/esm/internal/redBlackTree.js +4 -1
- package/dist/esm/internal/redBlackTree.js.map +1 -1
- package/dist/esm/internal/resource.js +15 -5
- package/dist/esm/internal/resource.js.map +1 -1
- package/dist/esm/internal/runtime.js +4 -1
- package/dist/esm/internal/runtime.js.map +1 -1
- package/dist/esm/internal/scopedRef.js +11 -8
- package/dist/esm/internal/scopedRef.js.map +1 -1
- package/dist/esm/internal/stm/core.js +1 -2
- package/dist/esm/internal/stm/core.js.map +1 -1
- package/dist/esm/internal/stream.js +9 -0
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/trie.js +4 -1
- package/dist/esm/internal/trie.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/Array.ts +2791 -40
- package/src/BigDecimal.ts +589 -19
- package/src/BigInt.ts +516 -16
- package/src/Boolean.ts +241 -8
- package/src/Cause.ts +177 -1
- package/src/Channel.ts +766 -49
- package/src/ChildExecutorDecision.ts +12 -0
- package/src/Chunk.ts +822 -5
- package/src/Config.ts +187 -8
- package/src/ConfigError.ts +16 -0
- package/src/ConfigProvider.ts +89 -1
- package/src/ConfigProviderPathPatch.ts +32 -0
- package/src/Console.ts +37 -8
- package/src/Context.ts +234 -3
- package/src/Cron.ts +16 -1
- package/src/Data.ts +165 -0
- package/src/DateTime.ts +1012 -50
- package/src/Deferred.ts +171 -1
- package/src/Differ.ts +89 -27
- package/src/Duration.ts +160 -17
- package/src/Effect.ts +4717 -164
- package/src/Either.ts +650 -34
- package/src/Equivalence.ts +24 -0
- package/src/ExecutionStrategy.ts +29 -10
- package/src/Exit.ts +252 -0
- package/src/Fiber.ts +182 -0
- package/src/FiberHandle.ts +45 -0
- package/src/FiberId.ts +24 -0
- package/src/FiberMap.ts +147 -21
- package/src/FiberRef.ts +80 -0
- package/src/FiberRefs.ts +84 -0
- package/src/FiberRefsPatch.ts +35 -1
- package/src/FiberSet.ts +41 -0
- package/src/Function.ts +416 -31
- package/src/GroupBy.ts +38 -0
- package/src/Hash.ts +8 -0
- package/src/HashMap.ts +316 -0
- package/src/HashSet.ts +284 -0
- package/src/Inspectable.ts +22 -0
- package/src/Iterable.ts +456 -6
- package/src/KeyedPool.ts +34 -0
- package/src/Layer.ts +475 -38
- package/src/List.ts +483 -4
- package/src/LogLevel.ts +46 -0
- package/src/Logger.ts +195 -4
- package/src/Mailbox.ts +16 -0
- package/src/ManagedRuntime.ts +46 -2
- package/src/MergeDecision.ts +8 -0
- package/src/MergeState.ts +8 -0
- package/src/MergeStrategy.ts +25 -8
- package/src/Metric.ts +426 -15
- package/src/MetricHook.ts +24 -0
- package/src/MetricKey.ts +62 -8
- package/src/MetricPolling.ts +42 -6
- package/src/MetricState.ts +16 -0
- package/src/Micro.ts +1223 -61
- package/src/MutableHashMap.ts +109 -2
- package/src/MutableHashSet.ts +28 -1
- package/src/MutableList.ts +40 -1
- package/src/MutableQueue.ts +66 -1
- package/src/MutableRef.ts +60 -1
- package/src/Number.ts +500 -16
- package/src/Option.ts +1042 -16
- package/src/Order.ts +24 -0
- package/src/Ordering.ts +66 -0
- package/src/Pipeable.ts +224 -21
- package/src/Pool.ts +42 -1
- package/src/Predicate.ts +514 -0
- package/src/PubSub.ts +28 -0
- package/src/Queue.ts +106 -2
- package/src/RcMap.ts +70 -0
- package/src/Readable.ts +18 -7
- package/src/Record.ts +814 -40
- package/src/RedBlackTree.ts +305 -1
- package/src/Ref.ts +88 -0
- package/src/RegExp.ts +17 -0
- package/src/Request.ts +76 -0
- package/src/RequestResolver.ts +145 -4
- package/src/Resource.ts +22 -1
- package/src/Runtime.ts +134 -2
- package/src/RuntimeFlags.ts +100 -0
- package/src/RuntimeFlagsPatch.ts +112 -0
- package/src/STM.ts +1107 -11
- package/src/Schedule.ts +704 -0
- package/src/ScheduleInterval.ts +68 -0
- package/src/ScheduleIntervals.ts +50 -0
- package/src/Scheduler.ts +2 -0
- package/src/Scope.ts +36 -0
- package/src/ScopedRef.ts +44 -1
- package/src/Sink.ts +464 -0
- package/src/SortedMap.ts +80 -1
- package/src/SortedSet.ts +147 -4
- package/src/Stream.ts +5041 -54
- package/src/StreamHaltStrategy.ts +29 -12
- package/src/String.ts +200 -0
- package/src/Struct.ts +86 -7
- package/src/Subscribable.ts +16 -0
- package/src/SubscriptionRef.ts +159 -11
- package/src/SynchronizedRef.ts +169 -8
- package/src/TArray.ts +431 -1
- package/src/TDeferred.ts +24 -0
- package/src/TMap.ts +381 -12
- package/src/TPriorityQueue.ts +60 -0
- package/src/TPubSub.ts +28 -0
- package/src/TQueue.ts +108 -0
- package/src/TReentrantLock.ts +36 -0
- package/src/TRef.ts +88 -0
- package/src/TSemaphore.ts +40 -0
- package/src/TSet.ts +280 -12
- package/src/Take.ts +56 -0
- package/src/TestAnnotationMap.ts +45 -1
- package/src/TestClock.ts +6 -0
- package/src/TestServices.ts +66 -0
- package/src/Trie.ts +906 -0
- package/src/Tuple.ts +223 -8
- package/src/Types.ts +41 -0
- package/src/Unify.ts +28 -17
- package/src/UpstreamPullRequest.ts +12 -0
- package/src/UpstreamPullStrategy.ts +12 -0
- package/src/Utils.ts +1 -15
- package/src/internal/cause.ts +4 -1
- package/src/internal/context.ts +7 -2
- package/src/internal/core-effect.ts +7 -7
- package/src/internal/core.ts +14 -2
- package/src/internal/effect/circular.ts +8 -2
- package/src/internal/fiberId.ts +10 -1
- package/src/internal/hashMap.ts +4 -1
- package/src/internal/hashSet.ts +4 -1
- package/src/internal/layer.ts +105 -38
- package/src/internal/mailbox.ts +3 -0
- package/src/internal/managedRuntime/circular.ts +6 -0
- package/src/internal/managedRuntime.ts +36 -22
- package/src/internal/option.ts +4 -1
- package/src/internal/pool.ts +7 -1
- package/src/internal/redBlackTree.ts +4 -1
- package/src/internal/resource.ts +16 -5
- package/src/internal/runtime.ts +4 -1
- package/src/internal/scopedRef.ts +12 -8
- package/src/internal/stm/core.ts +2 -3
- package/src/internal/stream.ts +27 -0
- package/src/internal/trie.ts +4 -1
- package/src/internal/version.ts +1 -1
package/src/List.ts
CHANGED
|
@@ -28,7 +28,7 @@ import * as Equal from "./Equal.js"
|
|
|
28
28
|
import * as Equivalence from "./Equivalence.js"
|
|
29
29
|
import { dual, identity, unsafeCoerce } from "./Function.js"
|
|
30
30
|
import * as Hash from "./Hash.js"
|
|
31
|
-
import { format, type Inspectable, NodeInspectSymbol, toJSON } from "./Inspectable.js"
|
|
31
|
+
import { DenoInspectSymbol, format, type Inspectable, NodeInspectSymbol, toJSON } from "./Inspectable.js"
|
|
32
32
|
import type { nonEmpty, NonEmptyIterable } from "./NonEmptyIterable.js"
|
|
33
33
|
import * as Option from "./Option.js"
|
|
34
34
|
import type { Pipeable } from "./Pipeable.js"
|
|
@@ -110,6 +110,9 @@ const ConsProto: Omit<Cons<unknown>, "head" | "tail" | typeof nonEmpty> = {
|
|
|
110
110
|
values: toArray(this).map(toJSON)
|
|
111
111
|
}
|
|
112
112
|
},
|
|
113
|
+
[DenoInspectSymbol]() {
|
|
114
|
+
return this.toJSON()
|
|
115
|
+
},
|
|
113
116
|
[NodeInspectSymbol]() {
|
|
114
117
|
return this.toJSON()
|
|
115
118
|
},
|
|
@@ -176,6 +179,9 @@ const NilProto: Nil<unknown> = {
|
|
|
176
179
|
_tag: "Nil"
|
|
177
180
|
}
|
|
178
181
|
},
|
|
182
|
+
[DenoInspectSymbol]() {
|
|
183
|
+
return this.toJSON()
|
|
184
|
+
},
|
|
179
185
|
[NodeInspectSymbol]() {
|
|
180
186
|
return this.toJSON()
|
|
181
187
|
},
|
|
@@ -206,7 +212,19 @@ const _Nil = Object.create(NilProto) as Nil<never>
|
|
|
206
212
|
* @category refinements
|
|
207
213
|
*/
|
|
208
214
|
export const isList: {
|
|
215
|
+
/**
|
|
216
|
+
* Returns `true` if the specified value is a `List`, `false` otherwise.
|
|
217
|
+
*
|
|
218
|
+
* @since 2.0.0
|
|
219
|
+
* @category refinements
|
|
220
|
+
*/
|
|
209
221
|
<A>(u: Iterable<A>): u is List<A>
|
|
222
|
+
/**
|
|
223
|
+
* Returns `true` if the specified value is a `List`, `false` otherwise.
|
|
224
|
+
*
|
|
225
|
+
* @since 2.0.0
|
|
226
|
+
* @category refinements
|
|
227
|
+
*/
|
|
210
228
|
(u: unknown): u is List<unknown>
|
|
211
229
|
} = (u: unknown): u is List<unknown> => hasProperty(u, TypeId)
|
|
212
230
|
|
|
@@ -316,7 +334,19 @@ export const make = <Elements extends readonly [any, ...Array<any>]>(
|
|
|
316
334
|
* @since 2.0.0
|
|
317
335
|
*/
|
|
318
336
|
export const append: {
|
|
337
|
+
/**
|
|
338
|
+
* Appends the specified element to the end of the `List`, creating a new `Cons`.
|
|
339
|
+
*
|
|
340
|
+
* @category concatenating
|
|
341
|
+
* @since 2.0.0
|
|
342
|
+
*/
|
|
319
343
|
<B>(element: B): <A>(self: List<A>) => Cons<A | B>
|
|
344
|
+
/**
|
|
345
|
+
* Appends the specified element to the end of the `List`, creating a new `Cons`.
|
|
346
|
+
*
|
|
347
|
+
* @category concatenating
|
|
348
|
+
* @since 2.0.0
|
|
349
|
+
*/
|
|
320
350
|
<A, B>(self: List<A>, element: B): Cons<A | B>
|
|
321
351
|
} = dual(2, <A, B>(self: List<A>, element: B): Cons<A | B> => appendAll(self, of(element)))
|
|
322
352
|
|
|
@@ -336,9 +366,69 @@ export const append: {
|
|
|
336
366
|
* @since 2.0.0
|
|
337
367
|
*/
|
|
338
368
|
export const appendAll: {
|
|
369
|
+
/**
|
|
370
|
+
* Concatenates two lists, combining their elements.
|
|
371
|
+
* If either list is non-empty, the result is also a non-empty list.
|
|
372
|
+
*
|
|
373
|
+
* @example
|
|
374
|
+
* import { List } from "effect"
|
|
375
|
+
*
|
|
376
|
+
* assert.deepStrictEqual(
|
|
377
|
+
* List.make(1, 2).pipe(List.appendAll(List.make("a", "b")), List.toArray),
|
|
378
|
+
* [1, 2, "a", "b"]
|
|
379
|
+
* )
|
|
380
|
+
*
|
|
381
|
+
* @category concatenating
|
|
382
|
+
* @since 2.0.0
|
|
383
|
+
*/
|
|
339
384
|
<S extends List<any>, T extends List<any>>(that: T): (self: S) => List.OrNonEmpty<S, T, List.Infer<S> | List.Infer<T>>
|
|
385
|
+
/**
|
|
386
|
+
* Concatenates two lists, combining their elements.
|
|
387
|
+
* If either list is non-empty, the result is also a non-empty list.
|
|
388
|
+
*
|
|
389
|
+
* @example
|
|
390
|
+
* import { List } from "effect"
|
|
391
|
+
*
|
|
392
|
+
* assert.deepStrictEqual(
|
|
393
|
+
* List.make(1, 2).pipe(List.appendAll(List.make("a", "b")), List.toArray),
|
|
394
|
+
* [1, 2, "a", "b"]
|
|
395
|
+
* )
|
|
396
|
+
*
|
|
397
|
+
* @category concatenating
|
|
398
|
+
* @since 2.0.0
|
|
399
|
+
*/
|
|
340
400
|
<A, B>(self: List<A>, that: Cons<B>): Cons<A | B>
|
|
401
|
+
/**
|
|
402
|
+
* Concatenates two lists, combining their elements.
|
|
403
|
+
* If either list is non-empty, the result is also a non-empty list.
|
|
404
|
+
*
|
|
405
|
+
* @example
|
|
406
|
+
* import { List } from "effect"
|
|
407
|
+
*
|
|
408
|
+
* assert.deepStrictEqual(
|
|
409
|
+
* List.make(1, 2).pipe(List.appendAll(List.make("a", "b")), List.toArray),
|
|
410
|
+
* [1, 2, "a", "b"]
|
|
411
|
+
* )
|
|
412
|
+
*
|
|
413
|
+
* @category concatenating
|
|
414
|
+
* @since 2.0.0
|
|
415
|
+
*/
|
|
341
416
|
<A, B>(self: Cons<A>, that: List<B>): Cons<A | B>
|
|
417
|
+
/**
|
|
418
|
+
* Concatenates two lists, combining their elements.
|
|
419
|
+
* If either list is non-empty, the result is also a non-empty list.
|
|
420
|
+
*
|
|
421
|
+
* @example
|
|
422
|
+
* import { List } from "effect"
|
|
423
|
+
*
|
|
424
|
+
* assert.deepStrictEqual(
|
|
425
|
+
* List.make(1, 2).pipe(List.appendAll(List.make("a", "b")), List.toArray),
|
|
426
|
+
* [1, 2, "a", "b"]
|
|
427
|
+
* )
|
|
428
|
+
*
|
|
429
|
+
* @category concatenating
|
|
430
|
+
* @since 2.0.0
|
|
431
|
+
*/
|
|
342
432
|
<A, B>(self: List<A>, that: List<B>): List<A | B>
|
|
343
433
|
} = dual(2, <A, B>(self: List<A>, that: List<B>): List<A | B> => prependAll(that, self))
|
|
344
434
|
|
|
@@ -349,9 +439,30 @@ export const appendAll: {
|
|
|
349
439
|
* @since 2.0.0
|
|
350
440
|
*/
|
|
351
441
|
export const prepend: {
|
|
442
|
+
/**
|
|
443
|
+
* Prepends the specified element to the beginning of the list.
|
|
444
|
+
*
|
|
445
|
+
* @category concatenating
|
|
446
|
+
* @since 2.0.0
|
|
447
|
+
*/
|
|
352
448
|
<B>(element: B): <A>(self: List<A>) => Cons<A | B>
|
|
449
|
+
/**
|
|
450
|
+
* Prepends the specified element to the beginning of the list.
|
|
451
|
+
*
|
|
452
|
+
* @category concatenating
|
|
453
|
+
* @since 2.0.0
|
|
454
|
+
*/
|
|
353
455
|
<A, B>(self: List<A>, element: B): Cons<A | B>
|
|
354
|
-
} = dual(2, <A, B>(self: List<A>, element: B): Cons<A | B> =>
|
|
456
|
+
} = dual(2, <A, B>(self: List<A>, element: B): Cons<A | B> =>
|
|
457
|
+
cons<
|
|
458
|
+
/**
|
|
459
|
+
* Prepends the specified element to the beginning of the list.
|
|
460
|
+
*
|
|
461
|
+
* @category concatenating
|
|
462
|
+
* @since 2.0.0
|
|
463
|
+
*/
|
|
464
|
+
A | B
|
|
465
|
+
>(element, self))
|
|
355
466
|
|
|
356
467
|
/**
|
|
357
468
|
* Prepends the specified prefix list to the beginning of the specified list.
|
|
@@ -369,9 +480,69 @@ export const prepend: {
|
|
|
369
480
|
* @since 2.0.0
|
|
370
481
|
*/
|
|
371
482
|
export const prependAll: {
|
|
483
|
+
/**
|
|
484
|
+
* Prepends the specified prefix list to the beginning of the specified list.
|
|
485
|
+
* If either list is non-empty, the result is also a non-empty list.
|
|
486
|
+
*
|
|
487
|
+
* @example
|
|
488
|
+
* import { List } from "effect"
|
|
489
|
+
*
|
|
490
|
+
* assert.deepStrictEqual(
|
|
491
|
+
* List.make(1, 2).pipe(List.prependAll(List.make("a", "b")), List.toArray),
|
|
492
|
+
* ["a", "b", 1, 2]
|
|
493
|
+
* )
|
|
494
|
+
*
|
|
495
|
+
* @category concatenating
|
|
496
|
+
* @since 2.0.0
|
|
497
|
+
*/
|
|
372
498
|
<S extends List<any>, T extends List<any>>(that: T): (self: S) => List.OrNonEmpty<S, T, List.Infer<S> | List.Infer<T>>
|
|
499
|
+
/**
|
|
500
|
+
* Prepends the specified prefix list to the beginning of the specified list.
|
|
501
|
+
* If either list is non-empty, the result is also a non-empty list.
|
|
502
|
+
*
|
|
503
|
+
* @example
|
|
504
|
+
* import { List } from "effect"
|
|
505
|
+
*
|
|
506
|
+
* assert.deepStrictEqual(
|
|
507
|
+
* List.make(1, 2).pipe(List.prependAll(List.make("a", "b")), List.toArray),
|
|
508
|
+
* ["a", "b", 1, 2]
|
|
509
|
+
* )
|
|
510
|
+
*
|
|
511
|
+
* @category concatenating
|
|
512
|
+
* @since 2.0.0
|
|
513
|
+
*/
|
|
373
514
|
<A, B>(self: List<A>, that: Cons<B>): Cons<A | B>
|
|
515
|
+
/**
|
|
516
|
+
* Prepends the specified prefix list to the beginning of the specified list.
|
|
517
|
+
* If either list is non-empty, the result is also a non-empty list.
|
|
518
|
+
*
|
|
519
|
+
* @example
|
|
520
|
+
* import { List } from "effect"
|
|
521
|
+
*
|
|
522
|
+
* assert.deepStrictEqual(
|
|
523
|
+
* List.make(1, 2).pipe(List.prependAll(List.make("a", "b")), List.toArray),
|
|
524
|
+
* ["a", "b", 1, 2]
|
|
525
|
+
* )
|
|
526
|
+
*
|
|
527
|
+
* @category concatenating
|
|
528
|
+
* @since 2.0.0
|
|
529
|
+
*/
|
|
374
530
|
<A, B>(self: Cons<A>, that: List<B>): Cons<A | B>
|
|
531
|
+
/**
|
|
532
|
+
* Prepends the specified prefix list to the beginning of the specified list.
|
|
533
|
+
* If either list is non-empty, the result is also a non-empty list.
|
|
534
|
+
*
|
|
535
|
+
* @example
|
|
536
|
+
* import { List } from "effect"
|
|
537
|
+
*
|
|
538
|
+
* assert.deepStrictEqual(
|
|
539
|
+
* List.make(1, 2).pipe(List.prependAll(List.make("a", "b")), List.toArray),
|
|
540
|
+
* ["a", "b", 1, 2]
|
|
541
|
+
* )
|
|
542
|
+
*
|
|
543
|
+
* @category concatenating
|
|
544
|
+
* @since 2.0.0
|
|
545
|
+
*/
|
|
375
546
|
<A, B>(self: List<A>, that: List<B>): List<A | B>
|
|
376
547
|
} = dual(2, <A, B>(self: List<A>, prefix: List<B>): List<A | B> => {
|
|
377
548
|
if (isNil(self)) {
|
|
@@ -379,11 +550,45 @@ export const prependAll: {
|
|
|
379
550
|
} else if (isNil(prefix)) {
|
|
380
551
|
return self
|
|
381
552
|
} else {
|
|
382
|
-
const result = makeCons<
|
|
553
|
+
const result = makeCons<
|
|
554
|
+
/**
|
|
555
|
+
* Prepends the specified prefix list to the beginning of the specified list.
|
|
556
|
+
* If either list is non-empty, the result is also a non-empty list.
|
|
557
|
+
*
|
|
558
|
+
* @example
|
|
559
|
+
* import { List } from "effect"
|
|
560
|
+
*
|
|
561
|
+
* assert.deepStrictEqual(
|
|
562
|
+
* List.make(1, 2).pipe(List.prependAll(List.make("a", "b")), List.toArray),
|
|
563
|
+
* ["a", "b", 1, 2]
|
|
564
|
+
* )
|
|
565
|
+
*
|
|
566
|
+
* @category concatenating
|
|
567
|
+
* @since 2.0.0
|
|
568
|
+
*/
|
|
569
|
+
A | B
|
|
570
|
+
>(prefix.head, self)
|
|
383
571
|
let curr = result
|
|
384
572
|
let that = prefix.tail
|
|
385
573
|
while (!isNil(that)) {
|
|
386
|
-
const temp = makeCons<
|
|
574
|
+
const temp = makeCons<
|
|
575
|
+
/**
|
|
576
|
+
* Prepends the specified prefix list to the beginning of the specified list.
|
|
577
|
+
* If either list is non-empty, the result is also a non-empty list.
|
|
578
|
+
*
|
|
579
|
+
* @example
|
|
580
|
+
* import { List } from "effect"
|
|
581
|
+
*
|
|
582
|
+
* assert.deepStrictEqual(
|
|
583
|
+
* List.make(1, 2).pipe(List.prependAll(List.make("a", "b")), List.toArray),
|
|
584
|
+
* ["a", "b", 1, 2]
|
|
585
|
+
* )
|
|
586
|
+
*
|
|
587
|
+
* @category concatenating
|
|
588
|
+
* @since 2.0.0
|
|
589
|
+
*/
|
|
590
|
+
A | B
|
|
591
|
+
>(that.head, self)
|
|
387
592
|
curr.tail = temp
|
|
388
593
|
curr = temp
|
|
389
594
|
that = that.tail
|
|
@@ -400,7 +605,21 @@ export const prependAll: {
|
|
|
400
605
|
* @since 2.0.0
|
|
401
606
|
*/
|
|
402
607
|
export const prependAllReversed: {
|
|
608
|
+
/**
|
|
609
|
+
* Prepends the specified prefix list (in reverse order) to the beginning of the
|
|
610
|
+
* specified list.
|
|
611
|
+
*
|
|
612
|
+
* @category concatenating
|
|
613
|
+
* @since 2.0.0
|
|
614
|
+
*/
|
|
403
615
|
<B>(prefix: List<B>): <A>(self: List<A>) => List<A | B>
|
|
616
|
+
/**
|
|
617
|
+
* Prepends the specified prefix list (in reverse order) to the beginning of the
|
|
618
|
+
* specified list.
|
|
619
|
+
*
|
|
620
|
+
* @category concatenating
|
|
621
|
+
* @since 2.0.0
|
|
622
|
+
*/
|
|
404
623
|
<A, B>(self: List<A>, prefix: List<B>): List<A | B>
|
|
405
624
|
} = dual(2, <A, B>(self: List<A>, prefix: List<B>): List<A | B> => {
|
|
406
625
|
let out: List<A | B> = self
|
|
@@ -419,7 +638,19 @@ export const prependAllReversed: {
|
|
|
419
638
|
* @category combinators
|
|
420
639
|
*/
|
|
421
640
|
export const drop: {
|
|
641
|
+
/**
|
|
642
|
+
* Drops the first `n` elements from the specified list.
|
|
643
|
+
*
|
|
644
|
+
* @since 2.0.0
|
|
645
|
+
* @category combinators
|
|
646
|
+
*/
|
|
422
647
|
(n: number): <A>(self: List<A>) => List<A>
|
|
648
|
+
/**
|
|
649
|
+
* Drops the first `n` elements from the specified list.
|
|
650
|
+
*
|
|
651
|
+
* @since 2.0.0
|
|
652
|
+
* @category combinators
|
|
653
|
+
*/
|
|
423
654
|
<A>(self: List<A>, n: number): List<A>
|
|
424
655
|
} = dual(2, <A>(self: List<A>, n: number): List<A> => {
|
|
425
656
|
if (n <= 0) {
|
|
@@ -444,9 +675,33 @@ export const drop: {
|
|
|
444
675
|
* @category elements
|
|
445
676
|
*/
|
|
446
677
|
export const every: {
|
|
678
|
+
/**
|
|
679
|
+
* Check if a predicate holds true for every `List` element.
|
|
680
|
+
*
|
|
681
|
+
* @since 2.0.0
|
|
682
|
+
* @category elements
|
|
683
|
+
*/
|
|
447
684
|
<A, B extends A>(refinement: Refinement<NoInfer<A>, B>): (self: List<A>) => self is List<B>
|
|
685
|
+
/**
|
|
686
|
+
* Check if a predicate holds true for every `List` element.
|
|
687
|
+
*
|
|
688
|
+
* @since 2.0.0
|
|
689
|
+
* @category elements
|
|
690
|
+
*/
|
|
448
691
|
<A>(predicate: Predicate<A>): (self: List<A>) => boolean
|
|
692
|
+
/**
|
|
693
|
+
* Check if a predicate holds true for every `List` element.
|
|
694
|
+
*
|
|
695
|
+
* @since 2.0.0
|
|
696
|
+
* @category elements
|
|
697
|
+
*/
|
|
449
698
|
<A, B extends A>(self: List<A>, refinement: Refinement<A, B>): self is List<B>
|
|
699
|
+
/**
|
|
700
|
+
* Check if a predicate holds true for every `List` element.
|
|
701
|
+
*
|
|
702
|
+
* @since 2.0.0
|
|
703
|
+
* @category elements
|
|
704
|
+
*/
|
|
450
705
|
<A>(self: List<A>, predicate: Predicate<A>): boolean
|
|
451
706
|
} = dual(2, <A, B extends A>(self: List<A>, refinement: Refinement<A, B>): self is List<B> => {
|
|
452
707
|
for (const a of self) {
|
|
@@ -464,7 +719,19 @@ export const every: {
|
|
|
464
719
|
* @category elements
|
|
465
720
|
*/
|
|
466
721
|
export const some: {
|
|
722
|
+
/**
|
|
723
|
+
* Check if a predicate holds true for some `List` element.
|
|
724
|
+
*
|
|
725
|
+
* @since 2.0.0
|
|
726
|
+
* @category elements
|
|
727
|
+
*/
|
|
467
728
|
<A>(predicate: Predicate<NoInfer<A>>): (self: List<A>) => self is Cons<A>
|
|
729
|
+
/**
|
|
730
|
+
* Check if a predicate holds true for some `List` element.
|
|
731
|
+
*
|
|
732
|
+
* @since 2.0.0
|
|
733
|
+
* @category elements
|
|
734
|
+
*/
|
|
468
735
|
<A>(self: List<A>, predicate: Predicate<A>): self is Cons<A>
|
|
469
736
|
} = dual(2, <A>(self: List<A>, predicate: Predicate<A>): self is Cons<A> => {
|
|
470
737
|
let these = self
|
|
@@ -484,9 +751,33 @@ export const some: {
|
|
|
484
751
|
* @category combinators
|
|
485
752
|
*/
|
|
486
753
|
export const filter: {
|
|
754
|
+
/**
|
|
755
|
+
* Filters a list using the specified predicate.
|
|
756
|
+
*
|
|
757
|
+
* @since 2.0.0
|
|
758
|
+
* @category combinators
|
|
759
|
+
*/
|
|
487
760
|
<A, B extends A>(refinement: Refinement<NoInfer<A>, B>): (self: List<A>) => List<B>
|
|
761
|
+
/**
|
|
762
|
+
* Filters a list using the specified predicate.
|
|
763
|
+
*
|
|
764
|
+
* @since 2.0.0
|
|
765
|
+
* @category combinators
|
|
766
|
+
*/
|
|
488
767
|
<A>(predicate: Predicate<NoInfer<A>>): (self: List<A>) => List<A>
|
|
768
|
+
/**
|
|
769
|
+
* Filters a list using the specified predicate.
|
|
770
|
+
*
|
|
771
|
+
* @since 2.0.0
|
|
772
|
+
* @category combinators
|
|
773
|
+
*/
|
|
489
774
|
<A, B extends A>(self: List<A>, refinement: Refinement<A, B>): List<B>
|
|
775
|
+
/**
|
|
776
|
+
* Filters a list using the specified predicate.
|
|
777
|
+
*
|
|
778
|
+
* @since 2.0.0
|
|
779
|
+
* @category combinators
|
|
780
|
+
*/
|
|
490
781
|
<A>(self: List<A>, predicate: Predicate<A>): List<A>
|
|
491
782
|
} = dual(2, <A>(self: List<A>, predicate: Predicate<A>): List<A> => noneIn(self, predicate, false))
|
|
492
783
|
|
|
@@ -589,7 +880,23 @@ const partialFill = <A>(
|
|
|
589
880
|
* @category combinators
|
|
590
881
|
*/
|
|
591
882
|
export const filterMap: {
|
|
883
|
+
/**
|
|
884
|
+
* Filters and maps a list using the specified partial function. The resulting
|
|
885
|
+
* list may be smaller than the input list due to the possibility of the partial
|
|
886
|
+
* function not being defined for some elements.
|
|
887
|
+
*
|
|
888
|
+
* @since 2.0.0
|
|
889
|
+
* @category combinators
|
|
890
|
+
*/
|
|
592
891
|
<A, B>(f: (a: A) => Option.Option<B>): (self: List<A>) => List<B>
|
|
892
|
+
/**
|
|
893
|
+
* Filters and maps a list using the specified partial function. The resulting
|
|
894
|
+
* list may be smaller than the input list due to the possibility of the partial
|
|
895
|
+
* function not being defined for some elements.
|
|
896
|
+
*
|
|
897
|
+
* @since 2.0.0
|
|
898
|
+
* @category combinators
|
|
899
|
+
*/
|
|
593
900
|
<A, B>(self: List<A>, f: (a: A) => Option.Option<B>): List<B>
|
|
594
901
|
} = dual(2, <A, B>(self: List<A>, f: (a: A) => Option.Option<B>): List<B> => {
|
|
595
902
|
const bs: Array<B> = []
|
|
@@ -618,9 +925,37 @@ export const compact = <A>(self: List<Option.Option<A>>): List<A> => filterMap(s
|
|
|
618
925
|
* @since 2.0.0
|
|
619
926
|
*/
|
|
620
927
|
export const findFirst: {
|
|
928
|
+
/**
|
|
929
|
+
* Returns the first element that satisfies the specified
|
|
930
|
+
* predicate, or `None` if no such element exists.
|
|
931
|
+
*
|
|
932
|
+
* @category elements
|
|
933
|
+
* @since 2.0.0
|
|
934
|
+
*/
|
|
621
935
|
<A, B extends A>(refinement: Refinement<NoInfer<A>, B>): (self: List<A>) => Option.Option<B>
|
|
936
|
+
/**
|
|
937
|
+
* Returns the first element that satisfies the specified
|
|
938
|
+
* predicate, or `None` if no such element exists.
|
|
939
|
+
*
|
|
940
|
+
* @category elements
|
|
941
|
+
* @since 2.0.0
|
|
942
|
+
*/
|
|
622
943
|
<A>(predicate: Predicate<NoInfer<A>>): (self: List<A>) => Option.Option<A>
|
|
944
|
+
/**
|
|
945
|
+
* Returns the first element that satisfies the specified
|
|
946
|
+
* predicate, or `None` if no such element exists.
|
|
947
|
+
*
|
|
948
|
+
* @category elements
|
|
949
|
+
* @since 2.0.0
|
|
950
|
+
*/
|
|
623
951
|
<A, B extends A>(self: List<A>, refinement: Refinement<A, B>): Option.Option<B>
|
|
952
|
+
/**
|
|
953
|
+
* Returns the first element that satisfies the specified
|
|
954
|
+
* predicate, or `None` if no such element exists.
|
|
955
|
+
*
|
|
956
|
+
* @category elements
|
|
957
|
+
* @since 2.0.0
|
|
958
|
+
*/
|
|
624
959
|
<A>(self: List<A>, predicate: Predicate<A>): Option.Option<A>
|
|
625
960
|
} = dual(2, <A>(self: List<A>, predicate: Predicate<A>): Option.Option<A> => {
|
|
626
961
|
let these = self
|
|
@@ -640,10 +975,28 @@ export const findFirst: {
|
|
|
640
975
|
* @category sequencing
|
|
641
976
|
*/
|
|
642
977
|
export const flatMap: {
|
|
978
|
+
/**
|
|
979
|
+
* Applies a function to each element in a list and returns a new list containing the concatenated mapped elements.
|
|
980
|
+
*
|
|
981
|
+
* @since 2.0.0
|
|
982
|
+
* @category sequencing
|
|
983
|
+
*/
|
|
643
984
|
<S extends List<any>, T extends List<any>>(
|
|
644
985
|
f: (a: List.Infer<S>, i: number) => T
|
|
645
986
|
): (self: S) => List.AndNonEmpty<S, T, List.Infer<T>>
|
|
987
|
+
/**
|
|
988
|
+
* Applies a function to each element in a list and returns a new list containing the concatenated mapped elements.
|
|
989
|
+
*
|
|
990
|
+
* @since 2.0.0
|
|
991
|
+
* @category sequencing
|
|
992
|
+
*/
|
|
646
993
|
<A, B>(self: Cons<A>, f: (a: A, i: number) => Cons<B>): Cons<B>
|
|
994
|
+
/**
|
|
995
|
+
* Applies a function to each element in a list and returns a new list containing the concatenated mapped elements.
|
|
996
|
+
*
|
|
997
|
+
* @since 2.0.0
|
|
998
|
+
* @category sequencing
|
|
999
|
+
*/
|
|
647
1000
|
<A, B>(self: List<A>, f: (a: A, i: number) => List<B>): List<B>
|
|
648
1001
|
} = dual(2, <A, B>(self: List<A>, f: (a: A) => List<B>): List<B> => {
|
|
649
1002
|
let rest = self
|
|
@@ -676,7 +1029,19 @@ export const flatMap: {
|
|
|
676
1029
|
* @category combinators
|
|
677
1030
|
*/
|
|
678
1031
|
export const forEach: {
|
|
1032
|
+
/**
|
|
1033
|
+
* Applies the specified function to each element of the `List`.
|
|
1034
|
+
*
|
|
1035
|
+
* @since 2.0.0
|
|
1036
|
+
* @category combinators
|
|
1037
|
+
*/
|
|
679
1038
|
<A, B>(f: (a: A) => B): (self: List<A>) => void
|
|
1039
|
+
/**
|
|
1040
|
+
* Applies the specified function to each element of the `List`.
|
|
1041
|
+
*
|
|
1042
|
+
* @since 2.0.0
|
|
1043
|
+
* @category combinators
|
|
1044
|
+
*/
|
|
680
1045
|
<A, B>(self: List<A>, f: (a: A) => B): void
|
|
681
1046
|
} = dual(2, <A, B>(self: List<A>, f: (a: A) => B): void => {
|
|
682
1047
|
let these = self
|
|
@@ -741,7 +1106,19 @@ export declare namespace List {
|
|
|
741
1106
|
* @category mapping
|
|
742
1107
|
*/
|
|
743
1108
|
export const map: {
|
|
1109
|
+
/**
|
|
1110
|
+
* Applies the specified mapping function to each element of the list.
|
|
1111
|
+
*
|
|
1112
|
+
* @since 2.0.0
|
|
1113
|
+
* @category mapping
|
|
1114
|
+
*/
|
|
744
1115
|
<S extends List<any>, B>(f: (a: List.Infer<S>, i: number) => B): (self: S) => List.With<S, B>
|
|
1116
|
+
/**
|
|
1117
|
+
* Applies the specified mapping function to each element of the list.
|
|
1118
|
+
*
|
|
1119
|
+
* @since 2.0.0
|
|
1120
|
+
* @category mapping
|
|
1121
|
+
*/
|
|
745
1122
|
<S extends List<any>, B>(self: S, f: (a: List.Infer<S>, i: number) => B): List.With<S, B>
|
|
746
1123
|
} = dual(2, <A, B>(self: List<A>, f: (a: A, i: number) => B): List<B> => {
|
|
747
1124
|
if (isNil(self)) {
|
|
@@ -770,11 +1147,43 @@ export const map: {
|
|
|
770
1147
|
* @category combinators
|
|
771
1148
|
*/
|
|
772
1149
|
export const partition: {
|
|
1150
|
+
/**
|
|
1151
|
+
* Partition a list into two lists, where the first list contains all elements
|
|
1152
|
+
* that did not satisfy the specified predicate, and the second list contains
|
|
1153
|
+
* all elements that did satisfy the specified predicate.
|
|
1154
|
+
*
|
|
1155
|
+
* @since 2.0.0
|
|
1156
|
+
* @category combinators
|
|
1157
|
+
*/
|
|
773
1158
|
<A, B extends A>(
|
|
774
1159
|
refinement: Refinement<NoInfer<A>, B>
|
|
775
1160
|
): (self: List<A>) => [excluded: List<Exclude<A, B>>, satisfying: List<B>]
|
|
1161
|
+
/**
|
|
1162
|
+
* Partition a list into two lists, where the first list contains all elements
|
|
1163
|
+
* that did not satisfy the specified predicate, and the second list contains
|
|
1164
|
+
* all elements that did satisfy the specified predicate.
|
|
1165
|
+
*
|
|
1166
|
+
* @since 2.0.0
|
|
1167
|
+
* @category combinators
|
|
1168
|
+
*/
|
|
776
1169
|
<A>(predicate: Predicate<NoInfer<A>>): (self: List<A>) => [excluded: List<A>, satisfying: List<A>]
|
|
1170
|
+
/**
|
|
1171
|
+
* Partition a list into two lists, where the first list contains all elements
|
|
1172
|
+
* that did not satisfy the specified predicate, and the second list contains
|
|
1173
|
+
* all elements that did satisfy the specified predicate.
|
|
1174
|
+
*
|
|
1175
|
+
* @since 2.0.0
|
|
1176
|
+
* @category combinators
|
|
1177
|
+
*/
|
|
777
1178
|
<A, B extends A>(self: List<A>, refinement: Refinement<A, B>): [excluded: List<Exclude<A, B>>, satisfying: List<B>]
|
|
1179
|
+
/**
|
|
1180
|
+
* Partition a list into two lists, where the first list contains all elements
|
|
1181
|
+
* that did not satisfy the specified predicate, and the second list contains
|
|
1182
|
+
* all elements that did satisfy the specified predicate.
|
|
1183
|
+
*
|
|
1184
|
+
* @since 2.0.0
|
|
1185
|
+
* @category combinators
|
|
1186
|
+
*/
|
|
778
1187
|
<A>(self: List<A>, predicate: Predicate<A>): [excluded: List<A>, satisfying: List<A>]
|
|
779
1188
|
} = dual(2, <A>(self: List<A>, predicate: Predicate<A>): [excluded: List<A>, satisfying: List<A>] => {
|
|
780
1189
|
const left: Array<A> = []
|
|
@@ -798,7 +1207,23 @@ export const partition: {
|
|
|
798
1207
|
* @category combinators
|
|
799
1208
|
*/
|
|
800
1209
|
export const partitionMap: {
|
|
1210
|
+
/**
|
|
1211
|
+
* Partition a list into two lists, where the first list contains all elements
|
|
1212
|
+
* for which the specified function returned a `Left`, and the second list
|
|
1213
|
+
* contains all elements for which the specified function returned a `Right`.
|
|
1214
|
+
*
|
|
1215
|
+
* @since 2.0.0
|
|
1216
|
+
* @category combinators
|
|
1217
|
+
*/
|
|
801
1218
|
<A, B, C>(f: (a: A) => Either.Either<C, B>): (self: List<A>) => [left: List<B>, right: List<C>]
|
|
1219
|
+
/**
|
|
1220
|
+
* Partition a list into two lists, where the first list contains all elements
|
|
1221
|
+
* for which the specified function returned a `Left`, and the second list
|
|
1222
|
+
* contains all elements for which the specified function returned a `Right`.
|
|
1223
|
+
*
|
|
1224
|
+
* @since 2.0.0
|
|
1225
|
+
* @category combinators
|
|
1226
|
+
*/
|
|
802
1227
|
<A, B, C>(self: List<A>, f: (a: A) => Either.Either<C, B>): [left: List<B>, right: List<C>]
|
|
803
1228
|
} = dual(2, <A, B, C>(self: List<A>, f: (a: A) => Either.Either<C, B>): [left: List<B>, right: List<C>] => {
|
|
804
1229
|
const left: Array<B> = []
|
|
@@ -822,7 +1247,21 @@ export const partitionMap: {
|
|
|
822
1247
|
* @category folding
|
|
823
1248
|
*/
|
|
824
1249
|
export const reduce: {
|
|
1250
|
+
/**
|
|
1251
|
+
* Folds over the elements of the list using the specified function, using the
|
|
1252
|
+
* specified initial value.
|
|
1253
|
+
*
|
|
1254
|
+
* @since 2.0.0
|
|
1255
|
+
* @category folding
|
|
1256
|
+
*/
|
|
825
1257
|
<Z, A>(zero: Z, f: (b: Z, a: A) => Z): (self: List<A>) => Z
|
|
1258
|
+
/**
|
|
1259
|
+
* Folds over the elements of the list using the specified function, using the
|
|
1260
|
+
* specified initial value.
|
|
1261
|
+
*
|
|
1262
|
+
* @since 2.0.0
|
|
1263
|
+
* @category folding
|
|
1264
|
+
*/
|
|
826
1265
|
<A, Z>(self: List<A>, zero: Z, f: (b: Z, a: A) => Z): Z
|
|
827
1266
|
} = dual(3, <A, Z>(self: List<A>, zero: Z, f: (b: Z, a: A) => Z): Z => {
|
|
828
1267
|
let acc = zero
|
|
@@ -842,7 +1281,21 @@ export const reduce: {
|
|
|
842
1281
|
* @category folding
|
|
843
1282
|
*/
|
|
844
1283
|
export const reduceRight: {
|
|
1284
|
+
/**
|
|
1285
|
+
* Folds over the elements of the list using the specified function, beginning
|
|
1286
|
+
* with the last element of the list, using the specified initial value.
|
|
1287
|
+
*
|
|
1288
|
+
* @since 2.0.0
|
|
1289
|
+
* @category folding
|
|
1290
|
+
*/
|
|
845
1291
|
<Z, A>(zero: Z, f: (accumulator: Z, value: A) => Z): (self: List<A>) => Z
|
|
1292
|
+
/**
|
|
1293
|
+
* Folds over the elements of the list using the specified function, beginning
|
|
1294
|
+
* with the last element of the list, using the specified initial value.
|
|
1295
|
+
*
|
|
1296
|
+
* @since 2.0.0
|
|
1297
|
+
* @category folding
|
|
1298
|
+
*/
|
|
846
1299
|
<Z, A>(self: List<A>, zero: Z, f: (accumulator: Z, value: A) => Z): Z
|
|
847
1300
|
} = dual(3, <Z, A>(self: List<A>, zero: Z, f: (accumulator: Z, value: A) => Z): Z => {
|
|
848
1301
|
let acc = zero
|
|
@@ -877,7 +1330,19 @@ export const reverse = <A>(self: List<A>): List<A> => {
|
|
|
877
1330
|
* @category combinators
|
|
878
1331
|
*/
|
|
879
1332
|
export const splitAt: {
|
|
1333
|
+
/**
|
|
1334
|
+
* Splits the specified list into two lists at the specified index.
|
|
1335
|
+
*
|
|
1336
|
+
* @since 2.0.0
|
|
1337
|
+
* @category combinators
|
|
1338
|
+
*/
|
|
880
1339
|
(n: number): <A>(self: List<A>) => [beforeIndex: List<A>, fromIndex: List<A>]
|
|
1340
|
+
/**
|
|
1341
|
+
* Splits the specified list into two lists at the specified index.
|
|
1342
|
+
*
|
|
1343
|
+
* @since 2.0.0
|
|
1344
|
+
* @category combinators
|
|
1345
|
+
*/
|
|
881
1346
|
<A>(self: List<A>, n: number): [beforeIndex: List<A>, fromIndex: List<A>]
|
|
882
1347
|
} = dual(2, <A>(self: List<A>, n: number): [List<A>, List<A>] => [take(self, n), drop(self, n)])
|
|
883
1348
|
|
|
@@ -897,7 +1362,21 @@ export const tail = <A>(self: List<A>): Option.Option<List<A>> => isNil(self) ?
|
|
|
897
1362
|
* @category combinators
|
|
898
1363
|
*/
|
|
899
1364
|
export const take: {
|
|
1365
|
+
/**
|
|
1366
|
+
* Takes the specified number of elements from the beginning of the specified
|
|
1367
|
+
* list.
|
|
1368
|
+
*
|
|
1369
|
+
* @since 2.0.0
|
|
1370
|
+
* @category combinators
|
|
1371
|
+
*/
|
|
900
1372
|
(n: number): <A>(self: List<A>) => List<A>
|
|
1373
|
+
/**
|
|
1374
|
+
* Takes the specified number of elements from the beginning of the specified
|
|
1375
|
+
* list.
|
|
1376
|
+
*
|
|
1377
|
+
* @since 2.0.0
|
|
1378
|
+
* @category combinators
|
|
1379
|
+
*/
|
|
901
1380
|
<A>(self: List<A>, n: number): List<A>
|
|
902
1381
|
} = dual(2, <A>(self: List<A>, n: number): List<A> => {
|
|
903
1382
|
if (n <= 0) {
|