effect 2.0.0-next.55 → 2.0.0-next.56
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/README.md +14 -9
- package/dist/cjs/Cache.js.map +1 -1
- package/dist/cjs/Cause.js +53 -18
- package/dist/cjs/Cause.js.map +1 -1
- package/dist/cjs/ChildExecutorDecision.js.map +1 -1
- package/dist/cjs/Chunk.js +5 -5
- package/dist/cjs/Chunk.js.map +1 -1
- package/dist/cjs/Data.js +11 -20
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/Duration.js +4 -0
- package/dist/cjs/Duration.js.map +1 -1
- package/dist/cjs/Effect.js +11 -4
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Either.js +9 -2
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/Exit.js.map +1 -1
- package/dist/cjs/Fiber.js.map +1 -1
- package/dist/cjs/HashMap.js.map +1 -1
- package/dist/cjs/KeyedPool.js.map +1 -1
- package/dist/cjs/List.js.map +1 -1
- package/dist/cjs/MergeState.js.map +1 -1
- package/dist/cjs/MetricPolling.js +2 -2
- package/dist/cjs/MetricPolling.js.map +1 -1
- package/dist/cjs/MetricState.js.map +1 -1
- package/dist/cjs/NonEmptyIterable.js.map +1 -1
- package/dist/cjs/Option.js +2 -2
- package/dist/cjs/Option.js.map +1 -1
- package/dist/cjs/Pipeable.js.map +1 -1
- package/dist/cjs/Predicate.js +17 -1
- package/dist/cjs/Predicate.js.map +1 -1
- package/dist/cjs/PrimaryKey.js +15 -0
- package/dist/cjs/PrimaryKey.js.map +1 -0
- package/dist/cjs/Queue.js +6 -1
- package/dist/cjs/Queue.js.map +1 -1
- package/dist/cjs/ReadonlyArray.js +2 -0
- package/dist/cjs/ReadonlyArray.js.map +1 -1
- package/dist/cjs/ReadonlyRecord.js +2 -2
- package/dist/cjs/ReadonlyRecord.js.map +1 -1
- package/dist/cjs/RedBlackTree.js.map +1 -1
- package/dist/cjs/Request.js +35 -1
- package/dist/cjs/Request.js.map +1 -1
- package/dist/cjs/STM.js +1 -1
- package/dist/cjs/STM.js.map +1 -1
- package/dist/cjs/Sink.js.map +1 -1
- package/dist/cjs/SortedMap.js +4 -1
- package/dist/cjs/SortedMap.js.map +1 -1
- package/dist/cjs/SortedSet.js +2 -2
- package/dist/cjs/SortedSet.js.map +1 -1
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/SubscriptionRef.js.map +1 -1
- package/dist/cjs/TPubSub.js.map +1 -1
- package/dist/cjs/TestAnnotation.js +3 -1
- package/dist/cjs/TestAnnotation.js.map +1 -1
- package/dist/cjs/TestClock.js.map +1 -1
- package/dist/cjs/UpstreamPullRequest.js.map +1 -1
- package/dist/cjs/index.js +4 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/cache.js.map +1 -1
- package/dist/cjs/internal/cause.js +4 -103
- package/dist/cjs/internal/cause.js.map +1 -1
- package/dist/cjs/internal/channel/continuation.js.map +1 -1
- package/dist/cjs/internal/configProvider.js +13 -1
- package/dist/cjs/internal/configProvider.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +7 -7
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core-stream.js.map +1 -1
- package/dist/cjs/internal/core.js +159 -11
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/data.js +4 -22
- package/dist/cjs/internal/data.js.map +1 -1
- package/dist/cjs/internal/dataSource.js +1 -1
- package/dist/cjs/internal/dataSource.js.map +1 -1
- package/dist/cjs/internal/deferred.js.map +1 -1
- package/dist/cjs/internal/differ/orPatch.js.map +1 -1
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- package/dist/cjs/internal/effectable.js +21 -3
- package/dist/cjs/internal/effectable.js.map +1 -1
- package/dist/cjs/internal/fiberMessage.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +9 -10
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/hashMap.js +1 -1
- package/dist/cjs/internal/hashMap.js.map +1 -1
- package/dist/cjs/internal/hashSet.js +2 -2
- package/dist/cjs/internal/hashSet.js.map +1 -1
- package/dist/cjs/internal/keyedPool.js.map +1 -1
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/metric/polling.js +7 -7
- package/dist/cjs/internal/metric/polling.js.map +1 -1
- package/dist/cjs/internal/metric.js +4 -0
- package/dist/cjs/internal/metric.js.map +1 -1
- package/dist/cjs/internal/pool.js.map +1 -1
- package/dist/cjs/internal/pubsub.js +24 -23
- package/dist/cjs/internal/pubsub.js.map +1 -1
- package/dist/cjs/internal/queue.js +10 -1
- package/dist/cjs/internal/queue.js.map +1 -1
- package/dist/cjs/internal/redBlackTree.js +5 -1
- package/dist/cjs/internal/redBlackTree.js.map +1 -1
- package/dist/cjs/internal/reloadable.js.map +1 -1
- package/dist/cjs/internal/request.js +29 -15
- package/dist/cjs/internal/request.js.map +1 -1
- package/dist/cjs/internal/resource.js +2 -2
- package/dist/cjs/internal/resource.js.map +1 -1
- package/dist/cjs/internal/runtime.js +2 -3
- package/dist/cjs/internal/runtime.js.map +1 -1
- package/dist/cjs/internal/schedule.js +6 -7
- package/dist/cjs/internal/schedule.js.map +1 -1
- package/dist/cjs/internal/scopedCache.js.map +1 -1
- package/dist/cjs/internal/scopedRef.js.map +1 -1
- package/dist/cjs/internal/sink.js +1 -1
- package/dist/cjs/internal/sink.js.map +1 -1
- package/dist/cjs/internal/stm/core.js +2 -2
- package/dist/cjs/internal/stm/core.js.map +1 -1
- package/dist/cjs/internal/stm/tArray.js.map +1 -1
- package/dist/cjs/internal/stm/tDeferred.js.map +1 -1
- package/dist/cjs/internal/stm/tMap.js.map +1 -1
- package/dist/cjs/internal/stm/tPriorityQueue.js.map +1 -1
- package/dist/cjs/internal/stm/tPubSub.js +17 -14
- package/dist/cjs/internal/stm/tPubSub.js.map +1 -1
- package/dist/cjs/internal/stm/tQueue.js +6 -7
- package/dist/cjs/internal/stm/tQueue.js.map +1 -1
- package/dist/cjs/internal/stm/tSemaphore.js +2 -2
- package/dist/cjs/internal/stm/tSemaphore.js.map +1 -1
- package/dist/cjs/internal/stm/tSet.js.map +1 -1
- package/dist/cjs/internal/stream.js +4 -4
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/subscriptionRef.js.map +1 -1
- package/dist/cjs/internal/take.js +1 -1
- package/dist/cjs/internal/take.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Brand.d.ts +4 -4
- package/dist/dts/Brand.d.ts.map +1 -1
- package/dist/dts/Cache.d.ts +15 -14
- package/dist/dts/Cache.d.ts.map +1 -1
- package/dist/dts/Cause.d.ts +92 -25
- package/dist/dts/Cause.d.ts.map +1 -1
- package/dist/dts/Channel.d.ts +4 -4
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/ChildExecutorDecision.d.ts.map +1 -1
- package/dist/dts/Chunk.d.ts +26 -24
- package/dist/dts/Chunk.d.ts.map +1 -1
- package/dist/dts/Clock.d.ts +4 -4
- package/dist/dts/Clock.d.ts.map +1 -1
- package/dist/dts/Config.d.ts +4 -4
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/ConfigError.d.ts +7 -7
- package/dist/dts/ConfigError.d.ts.map +1 -1
- package/dist/dts/ConfigProvider.d.ts +3 -3
- package/dist/dts/ConfigProvider.d.ts.map +1 -1
- package/dist/dts/ConfigProviderPathPatch.d.ts +1 -1
- package/dist/dts/ConfigProviderPathPatch.d.ts.map +1 -1
- package/dist/dts/Console.d.ts +36 -36
- package/dist/dts/Console.d.ts.map +1 -1
- package/dist/dts/Context.d.ts +4 -4
- package/dist/dts/Context.d.ts.map +1 -1
- package/dist/dts/Data.d.ts +3 -17
- package/dist/dts/Data.d.ts.map +1 -1
- package/dist/dts/Deferred.d.ts +4 -4
- package/dist/dts/Deferred.d.ts.map +1 -1
- package/dist/dts/Differ.d.ts +9 -9
- package/dist/dts/Differ.d.ts.map +1 -1
- package/dist/dts/Duration.d.ts +1 -1
- package/dist/dts/Duration.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +34 -20
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +15 -3
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/Equal.d.ts +1 -1
- package/dist/dts/Equal.d.ts.map +1 -1
- package/dist/dts/Equivalence.d.ts +1 -1
- package/dist/dts/Equivalence.d.ts.map +1 -1
- package/dist/dts/Exit.d.ts +5 -3
- package/dist/dts/Exit.d.ts.map +1 -1
- package/dist/dts/Fiber.d.ts +12 -12
- package/dist/dts/Fiber.d.ts.map +1 -1
- package/dist/dts/FiberRef.d.ts +3 -3
- package/dist/dts/FiberRef.d.ts.map +1 -1
- package/dist/dts/GroupBy.d.ts +2 -2
- package/dist/dts/GroupBy.d.ts.map +1 -1
- package/dist/dts/Hash.d.ts +1 -1
- package/dist/dts/Hash.d.ts.map +1 -1
- package/dist/dts/HashMap.d.ts +6 -4
- package/dist/dts/HashMap.d.ts.map +1 -1
- package/dist/dts/HashSet.d.ts +9 -9
- package/dist/dts/HashSet.d.ts.map +1 -1
- package/dist/dts/Inspectable.d.ts +3 -3
- package/dist/dts/Inspectable.d.ts.map +1 -1
- package/dist/dts/KeyedPool.d.ts +5 -5
- package/dist/dts/KeyedPool.d.ts.map +1 -1
- package/dist/dts/Layer.d.ts +2 -2
- package/dist/dts/Layer.d.ts.map +1 -1
- package/dist/dts/List.d.ts +16 -16
- package/dist/dts/List.d.ts.map +1 -1
- package/dist/dts/Logger.d.ts +4 -4
- package/dist/dts/Logger.d.ts.map +1 -1
- package/dist/dts/Match.d.ts +11 -11
- package/dist/dts/Match.d.ts.map +1 -1
- package/dist/dts/MergeDecision.d.ts +2 -2
- package/dist/dts/MergeDecision.d.ts.map +1 -1
- package/dist/dts/MergeState.d.ts +5 -5
- package/dist/dts/MergeState.d.ts.map +1 -1
- package/dist/dts/Metric.d.ts +5 -5
- package/dist/dts/Metric.d.ts.map +1 -1
- package/dist/dts/MetricHook.d.ts +4 -4
- package/dist/dts/MetricHook.d.ts.map +1 -1
- package/dist/dts/MetricKey.d.ts +2 -2
- package/dist/dts/MetricKey.d.ts.map +1 -1
- package/dist/dts/MetricKeyType.d.ts +2 -2
- package/dist/dts/MetricKeyType.d.ts.map +1 -1
- package/dist/dts/MetricPair.d.ts +2 -2
- package/dist/dts/MetricPair.d.ts.map +1 -1
- package/dist/dts/MetricPolling.d.ts +16 -16
- package/dist/dts/MetricPolling.d.ts.map +1 -1
- package/dist/dts/MetricRegistry.d.ts +7 -7
- package/dist/dts/MetricRegistry.d.ts.map +1 -1
- package/dist/dts/MetricState.d.ts +4 -4
- package/dist/dts/MetricState.d.ts.map +1 -1
- package/dist/dts/MutableHashMap.d.ts +1 -1
- package/dist/dts/MutableHashMap.d.ts.map +1 -1
- package/dist/dts/MutableHashSet.d.ts +1 -1
- package/dist/dts/MutableHashSet.d.ts.map +1 -1
- package/dist/dts/MutableList.d.ts +1 -1
- package/dist/dts/MutableList.d.ts.map +1 -1
- package/dist/dts/MutableQueue.d.ts +1 -1
- package/dist/dts/MutableQueue.d.ts.map +1 -1
- package/dist/dts/MutableRef.d.ts +1 -1
- package/dist/dts/MutableRef.d.ts.map +1 -1
- package/dist/dts/NonEmptyIterable.d.ts +2 -2
- package/dist/dts/NonEmptyIterable.d.ts.map +1 -1
- package/dist/dts/Option.d.ts +13 -11
- package/dist/dts/Option.d.ts.map +1 -1
- package/dist/dts/Order.d.ts +1 -1
- package/dist/dts/Order.d.ts.map +1 -1
- package/dist/dts/Pipeable.d.ts +21 -23
- package/dist/dts/Pipeable.d.ts.map +1 -1
- package/dist/dts/Pool.d.ts +4 -4
- package/dist/dts/Pool.d.ts.map +1 -1
- package/dist/dts/Predicate.d.ts +17 -2
- package/dist/dts/Predicate.d.ts.map +1 -1
- package/dist/dts/PrimaryKey.d.ts +16 -0
- package/dist/dts/PrimaryKey.d.ts.map +1 -0
- package/dist/dts/PubSub.d.ts +3 -3
- package/dist/dts/PubSub.d.ts.map +1 -1
- package/dist/dts/Queue.d.ts +46 -27
- package/dist/dts/Queue.d.ts.map +1 -1
- package/dist/dts/Random.d.ts +3 -3
- package/dist/dts/Random.d.ts.map +1 -1
- package/dist/dts/ReadonlyArray.d.ts +36 -36
- package/dist/dts/ReadonlyArray.d.ts.map +1 -1
- package/dist/dts/ReadonlyRecord.d.ts +13 -11
- package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
- package/dist/dts/RedBlackTree.d.ts +5 -2
- package/dist/dts/RedBlackTree.d.ts.map +1 -1
- package/dist/dts/Ref.d.ts +3 -3
- package/dist/dts/Ref.d.ts.map +1 -1
- package/dist/dts/Reloadable.d.ts +3 -3
- package/dist/dts/Reloadable.d.ts.map +1 -1
- package/dist/dts/Request.d.ts +49 -8
- package/dist/dts/Request.d.ts.map +1 -1
- package/dist/dts/RequestBlock.d.ts +8 -8
- package/dist/dts/RequestBlock.d.ts.map +1 -1
- package/dist/dts/RequestResolver.d.ts +5 -5
- package/dist/dts/RequestResolver.d.ts.map +1 -1
- package/dist/dts/Resource.d.ts +4 -4
- package/dist/dts/Resource.d.ts.map +1 -1
- package/dist/dts/Runtime.d.ts +3 -3
- package/dist/dts/Runtime.d.ts.map +1 -1
- package/dist/dts/STM.d.ts +9 -9
- package/dist/dts/STM.d.ts.map +1 -1
- package/dist/dts/Schedule.d.ts +6 -6
- package/dist/dts/Schedule.d.ts.map +1 -1
- package/dist/dts/Scheduler.d.ts +3 -3
- package/dist/dts/Scheduler.d.ts.map +1 -1
- package/dist/dts/ScopedCache.d.ts +9 -9
- package/dist/dts/ScopedCache.d.ts.map +1 -1
- package/dist/dts/ScopedRef.d.ts +3 -3
- package/dist/dts/ScopedRef.d.ts.map +1 -1
- package/dist/dts/SingleProducerAsyncInput.d.ts +7 -7
- package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -1
- package/dist/dts/Sink.d.ts +7 -4
- package/dist/dts/Sink.d.ts.map +1 -1
- package/dist/dts/SortedMap.d.ts +5 -2
- package/dist/dts/SortedMap.d.ts.map +1 -1
- package/dist/dts/SortedSet.d.ts +6 -12
- package/dist/dts/SortedSet.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +27 -19
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/StreamEmit.d.ts +12 -12
- package/dist/dts/StreamEmit.d.ts.map +1 -1
- package/dist/dts/SubscriptionRef.d.ts +3 -3
- package/dist/dts/SubscriptionRef.d.ts.map +1 -1
- package/dist/dts/Supervisor.d.ts +9 -9
- package/dist/dts/Supervisor.d.ts.map +1 -1
- package/dist/dts/SynchronizedRef.d.ts +4 -4
- package/dist/dts/SynchronizedRef.d.ts.map +1 -1
- package/dist/dts/TArray.d.ts +3 -3
- package/dist/dts/TArray.d.ts.map +1 -1
- package/dist/dts/TDeferred.d.ts +4 -4
- package/dist/dts/TDeferred.d.ts.map +1 -1
- package/dist/dts/TMap.d.ts +4 -4
- package/dist/dts/TMap.d.ts.map +1 -1
- package/dist/dts/TPriorityQueue.d.ts +3 -3
- package/dist/dts/TPriorityQueue.d.ts.map +1 -1
- package/dist/dts/TPubSub.d.ts +4 -1
- package/dist/dts/TPubSub.d.ts.map +1 -1
- package/dist/dts/TQueue.d.ts +9 -9
- package/dist/dts/TQueue.d.ts.map +1 -1
- package/dist/dts/TRandom.d.ts +3 -3
- package/dist/dts/TRandom.d.ts.map +1 -1
- package/dist/dts/TRef.d.ts +3 -3
- package/dist/dts/TRef.d.ts.map +1 -1
- package/dist/dts/TSet.d.ts +3 -3
- package/dist/dts/TSet.d.ts.map +1 -1
- package/dist/dts/Take.d.ts +2 -2
- package/dist/dts/Take.d.ts.map +1 -1
- package/dist/dts/TestAnnotation.d.ts +5 -3
- package/dist/dts/TestAnnotation.d.ts.map +1 -1
- package/dist/dts/TestAnnotations.d.ts +2 -2
- package/dist/dts/TestAnnotations.d.ts.map +1 -1
- package/dist/dts/TestClock.d.ts +3 -3
- package/dist/dts/TestClock.d.ts.map +1 -1
- package/dist/dts/TestLive.d.ts +1 -1
- package/dist/dts/TestLive.d.ts.map +1 -1
- package/dist/dts/TestSized.d.ts +1 -1
- package/dist/dts/TestSized.d.ts.map +1 -1
- package/dist/dts/Tracer.d.ts +5 -5
- package/dist/dts/Tracer.d.ts.map +1 -1
- package/dist/dts/Types.d.ts +7 -0
- package/dist/dts/Types.d.ts.map +1 -1
- package/dist/dts/UpstreamPullRequest.d.ts +2 -2
- package/dist/dts/UpstreamPullRequest.d.ts.map +1 -1
- package/dist/dts/UpstreamPullStrategy.d.ts +3 -3
- package/dist/dts/UpstreamPullStrategy.d.ts.map +1 -1
- package/dist/dts/Utils.d.ts +1 -1
- package/dist/dts/Utils.d.ts.map +1 -1
- package/dist/dts/index.d.ts +4 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/core-stream.d.ts.map +1 -1
- package/dist/dts/internal/fiberScope.d.ts +1 -1
- package/dist/dts/internal/fiberScope.d.ts.map +1 -1
- package/dist/dts/internal/stream/handoffSignal.d.ts +1 -1
- package/dist/dts/internal/stream/handoffSignal.d.ts.map +1 -1
- package/dist/dts/internal/version.d.ts +1 -1
- package/dist/esm/Cache.js.map +1 -1
- package/dist/esm/Cause.js +52 -17
- package/dist/esm/Cause.js.map +1 -1
- package/dist/esm/ChildExecutorDecision.js.map +1 -1
- package/dist/esm/Chunk.js +5 -5
- package/dist/esm/Chunk.js.map +1 -1
- package/dist/esm/Data.js +10 -19
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/Duration.js +4 -0
- package/dist/esm/Duration.js.map +1 -1
- package/dist/esm/Effect.js +7 -0
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Either.js +8 -1
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/Exit.js.map +1 -1
- package/dist/esm/Fiber.js.map +1 -1
- package/dist/esm/HashMap.js.map +1 -1
- package/dist/esm/KeyedPool.js.map +1 -1
- package/dist/esm/List.js.map +1 -1
- package/dist/esm/MergeState.js.map +1 -1
- package/dist/esm/MetricPolling.js +1 -1
- package/dist/esm/MetricPolling.js.map +1 -1
- package/dist/esm/MetricState.js.map +1 -1
- package/dist/esm/NonEmptyIterable.js.map +1 -1
- package/dist/esm/Option.js +2 -2
- package/dist/esm/Option.js.map +1 -1
- package/dist/esm/Pipeable.js.map +1 -1
- package/dist/esm/Predicate.js +15 -0
- package/dist/esm/Predicate.js.map +1 -1
- package/dist/esm/PrimaryKey.js +9 -0
- package/dist/esm/PrimaryKey.js.map +1 -0
- package/dist/esm/Queue.js +5 -0
- package/dist/esm/Queue.js.map +1 -1
- package/dist/esm/ReadonlyArray.js +2 -0
- package/dist/esm/ReadonlyArray.js.map +1 -1
- package/dist/esm/ReadonlyRecord.js +2 -2
- package/dist/esm/ReadonlyRecord.js.map +1 -1
- package/dist/esm/RedBlackTree.js.map +1 -1
- package/dist/esm/Request.js +34 -0
- package/dist/esm/Request.js.map +1 -1
- package/dist/esm/STM.js +1 -1
- package/dist/esm/STM.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 +2 -2
- package/dist/esm/SortedSet.js.map +1 -1
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/SubscriptionRef.js.map +1 -1
- package/dist/esm/TPubSub.js.map +1 -1
- package/dist/esm/TestAnnotation.js +3 -1
- package/dist/esm/TestAnnotation.js.map +1 -1
- package/dist/esm/TestClock.js.map +1 -1
- package/dist/esm/UpstreamPullRequest.js.map +1 -1
- package/dist/esm/index.js +4 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/cache.js.map +1 -1
- package/dist/esm/internal/cause.js +3 -96
- package/dist/esm/internal/cause.js.map +1 -1
- package/dist/esm/internal/channel/continuation.js.map +1 -1
- package/dist/esm/internal/configProvider.js +13 -1
- package/dist/esm/internal/configProvider.js.map +1 -1
- package/dist/esm/internal/core-effect.js +7 -7
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core-stream.js.map +1 -1
- package/dist/esm/internal/core.js +151 -10
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/data.js +3 -21
- package/dist/esm/internal/data.js.map +1 -1
- package/dist/esm/internal/dataSource.js +1 -1
- package/dist/esm/internal/dataSource.js.map +1 -1
- package/dist/esm/internal/deferred.js.map +1 -1
- package/dist/esm/internal/differ/orPatch.js.map +1 -1
- package/dist/esm/internal/effect/circular.js.map +1 -1
- package/dist/esm/internal/effectable.js +20 -2
- package/dist/esm/internal/effectable.js.map +1 -1
- package/dist/esm/internal/fiberMessage.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +9 -10
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/hashMap.js +1 -1
- package/dist/esm/internal/hashMap.js.map +1 -1
- package/dist/esm/internal/hashSet.js +2 -2
- package/dist/esm/internal/hashSet.js.map +1 -1
- package/dist/esm/internal/keyedPool.js.map +1 -1
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/metric/polling.js +6 -6
- package/dist/esm/internal/metric/polling.js.map +1 -1
- package/dist/esm/internal/metric.js +4 -0
- package/dist/esm/internal/metric.js.map +1 -1
- package/dist/esm/internal/pool.js.map +1 -1
- package/dist/esm/internal/pubsub.js +24 -23
- package/dist/esm/internal/pubsub.js.map +1 -1
- package/dist/esm/internal/queue.js +9 -0
- package/dist/esm/internal/queue.js.map +1 -1
- package/dist/esm/internal/redBlackTree.js +5 -1
- package/dist/esm/internal/redBlackTree.js.map +1 -1
- package/dist/esm/internal/reloadable.js.map +1 -1
- package/dist/esm/internal/request.js +27 -14
- package/dist/esm/internal/request.js.map +1 -1
- package/dist/esm/internal/resource.js +2 -2
- package/dist/esm/internal/resource.js.map +1 -1
- package/dist/esm/internal/runtime.js +1 -2
- package/dist/esm/internal/runtime.js.map +1 -1
- package/dist/esm/internal/schedule.js +6 -7
- package/dist/esm/internal/schedule.js.map +1 -1
- package/dist/esm/internal/scopedCache.js.map +1 -1
- package/dist/esm/internal/scopedRef.js.map +1 -1
- package/dist/esm/internal/sink.js +1 -1
- package/dist/esm/internal/sink.js.map +1 -1
- package/dist/esm/internal/stm/core.js +2 -2
- package/dist/esm/internal/stm/core.js.map +1 -1
- package/dist/esm/internal/stm/tArray.js.map +1 -1
- package/dist/esm/internal/stm/tDeferred.js.map +1 -1
- package/dist/esm/internal/stm/tMap.js.map +1 -1
- package/dist/esm/internal/stm/tPriorityQueue.js.map +1 -1
- package/dist/esm/internal/stm/tPubSub.js +17 -14
- package/dist/esm/internal/stm/tPubSub.js.map +1 -1
- package/dist/esm/internal/stm/tQueue.js +6 -7
- package/dist/esm/internal/stm/tQueue.js.map +1 -1
- package/dist/esm/internal/stm/tSemaphore.js +2 -2
- package/dist/esm/internal/stm/tSemaphore.js.map +1 -1
- package/dist/esm/internal/stm/tSet.js.map +1 -1
- package/dist/esm/internal/stream.js +4 -4
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/subscriptionRef.js.map +1 -1
- package/dist/esm/internal/take.js +1 -1
- package/dist/esm/internal/take.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/dist/esm/package.json +1 -1
- package/package.json +10 -2
- package/src/Brand.ts +4 -4
- package/src/Cache.ts +15 -17
- package/src/Cause.ts +124 -40
- package/src/Channel.ts +4 -4
- package/src/ChildExecutorDecision.ts +10 -2
- package/src/Chunk.ts +44 -36
- package/src/Clock.ts +4 -4
- package/src/Config.ts +4 -4
- package/src/ConfigError.ts +8 -8
- package/src/ConfigProvider.ts +5 -5
- package/src/ConfigProviderPathPatch.ts +1 -1
- package/src/Console.ts +36 -36
- package/src/Context.ts +4 -4
- package/src/Data.ts +13 -44
- package/src/Deferred.ts +4 -4
- package/src/Differ.ts +9 -9
- package/src/Duration.ts +5 -0
- package/src/Effect.ts +88 -26
- package/src/Either.ts +28 -5
- package/src/Equal.ts +1 -1
- package/src/Equivalence.ts +1 -1
- package/src/Exit.ts +21 -7
- package/src/Fiber.ts +20 -14
- package/src/FiberRef.ts +7 -7
- package/src/GroupBy.ts +2 -2
- package/src/Hash.ts +1 -1
- package/src/HashMap.ts +6 -4
- package/src/HashSet.ts +11 -11
- package/src/Inspectable.ts +3 -3
- package/src/KeyedPool.ts +13 -7
- package/src/Layer.ts +2 -2
- package/src/List.ts +24 -22
- package/src/Logger.ts +4 -4
- package/src/Match.ts +11 -11
- package/src/MergeDecision.ts +2 -2
- package/src/MergeState.ts +11 -5
- package/src/Metric.ts +5 -5
- package/src/MetricHook.ts +4 -4
- package/src/MetricKey.ts +2 -2
- package/src/MetricKeyType.ts +2 -2
- package/src/MetricPair.ts +2 -2
- package/src/MetricPolling.ts +22 -22
- package/src/MetricRegistry.ts +9 -9
- package/src/MetricState.ts +6 -4
- package/src/MutableHashMap.ts +1 -1
- package/src/MutableHashSet.ts +1 -1
- package/src/MutableList.ts +1 -1
- package/src/MutableQueue.ts +1 -1
- package/src/MutableRef.ts +1 -1
- package/src/NonEmptyIterable.ts +2 -2
- package/src/Option.ts +18 -15
- package/src/Order.ts +1 -1
- package/src/Pipeable.ts +275 -277
- package/src/Pool.ts +4 -4
- package/src/Predicate.ts +21 -2
- package/src/PrimaryKey.ts +17 -0
- package/src/PubSub.ts +3 -3
- package/src/Queue.ts +52 -30
- package/src/Random.ts +3 -3
- package/src/ReadonlyArray.ts +51 -66
- package/src/ReadonlyRecord.ts +37 -35
- package/src/RedBlackTree.ts +5 -2
- package/src/Ref.ts +3 -3
- package/src/Reloadable.ts +3 -3
- package/src/Request.ts +53 -8
- package/src/RequestBlock.ts +9 -9
- package/src/RequestResolver.ts +5 -5
- package/src/Resource.ts +4 -4
- package/src/Runtime.ts +3 -3
- package/src/STM.ts +23 -12
- package/src/Schedule.ts +7 -7
- package/src/Scheduler.ts +3 -3
- package/src/Scope.ts +3 -3
- package/src/ScopedCache.ts +9 -9
- package/src/ScopedRef.ts +3 -3
- package/src/SingleProducerAsyncInput.ts +7 -7
- package/src/Sink.ts +23 -9
- package/src/SortedMap.ts +9 -3
- package/src/SortedSet.ts +26 -41
- package/src/Stream.ts +70 -29
- package/src/StreamEmit.ts +12 -12
- package/src/SubscriptionRef.ts +5 -3
- package/src/Supervisor.ts +10 -10
- package/src/SynchronizedRef.ts +4 -4
- package/src/TArray.ts +4 -4
- package/src/TDeferred.ts +5 -5
- package/src/TMap.ts +5 -5
- package/src/TPriorityQueue.ts +4 -4
- package/src/TPubSub.ts +6 -3
- package/src/TQueue.ts +9 -9
- package/src/TRandom.ts +3 -3
- package/src/TRef.ts +4 -4
- package/src/TSet.ts +4 -4
- package/src/Take.ts +2 -2
- package/src/TestAnnotation.ts +8 -4
- package/src/TestAnnotations.ts +2 -2
- package/src/TestClock.ts +3 -5
- package/src/TestLive.ts +1 -1
- package/src/TestSized.ts +1 -1
- package/src/Tracer.ts +6 -6
- package/src/Types.ts +8 -0
- package/src/UpstreamPullRequest.ts +10 -4
- package/src/UpstreamPullStrategy.ts +3 -3
- package/src/Utils.ts +1 -1
- package/src/index.ts +5 -0
- package/src/internal/blockedRequests.ts +6 -6
- package/src/internal/cache.ts +12 -12
- package/src/internal/cause.ts +14 -138
- package/src/internal/channel/channelExecutor.ts +1 -1
- package/src/internal/channel/channelState.ts +5 -5
- package/src/internal/channel/continuation.ts +52 -32
- package/src/internal/channel/mergeDecision.ts +1 -1
- package/src/internal/channel/singleProducerAsyncInput.ts +1 -1
- package/src/internal/channel/subexecutor.ts +7 -7
- package/src/internal/config.ts +6 -6
- package/src/internal/configProvider.ts +14 -1
- package/src/internal/core-effect.ts +49 -38
- package/src/internal/core-stream.ts +18 -21
- package/src/internal/core.ts +286 -38
- package/src/internal/data.ts +3 -22
- package/src/internal/dataSource.ts +1 -1
- package/src/internal/deferred.ts +5 -5
- package/src/internal/differ/contextPatch.ts +5 -5
- package/src/internal/differ/orPatch.ts +18 -6
- package/src/internal/effect/circular.ts +3 -3
- package/src/internal/effectable.ts +23 -4
- package/src/internal/fiberMessage.ts +1 -4
- package/src/internal/fiberRuntime.ts +14 -15
- package/src/internal/fiberScope.ts +1 -1
- package/src/internal/groupBy.ts +1 -1
- package/src/internal/hashMap/node.ts +5 -5
- package/src/internal/hashMap.ts +23 -22
- package/src/internal/hashSet.ts +18 -20
- package/src/internal/keyedPool.ts +4 -4
- package/src/internal/layer.ts +6 -12
- package/src/internal/metric/key.ts +1 -1
- package/src/internal/metric/polling.ts +26 -26
- package/src/internal/metric.ts +4 -0
- package/src/internal/pool.ts +2 -2
- package/src/internal/pubsub.ts +64 -61
- package/src/internal/queue.ts +20 -6
- package/src/internal/redBlackTree/iterator.ts +1 -1
- package/src/internal/redBlackTree/node.ts +1 -1
- package/src/internal/redBlackTree.ts +7 -2
- package/src/internal/ref.ts +1 -1
- package/src/internal/reloadable.ts +1 -1
- package/src/internal/request.ts +39 -13
- package/src/internal/resource.ts +4 -4
- package/src/internal/ringBuffer.ts +1 -1
- package/src/internal/runtime.ts +2 -3
- package/src/internal/schedule.ts +6 -7
- package/src/internal/scopedCache.ts +7 -5
- package/src/internal/scopedRef.ts +1 -1
- package/src/internal/sink.ts +6 -3
- package/src/internal/stack.ts +1 -1
- package/src/internal/stm/core.ts +3 -3
- package/src/internal/stm/stm/stmState.ts +1 -1
- package/src/internal/stm/stm/tExit.ts +3 -3
- package/src/internal/stm/stm/tryCommit.ts +1 -1
- package/src/internal/stm/stm/versioned.ts +1 -1
- package/src/internal/stm/stm.ts +2 -2
- package/src/internal/stm/tArray.ts +2 -2
- package/src/internal/stm/tDeferred.ts +3 -3
- package/src/internal/stm/tMap.ts +3 -3
- package/src/internal/stm/tPriorityQueue.ts +2 -2
- package/src/internal/stm/tPubSub.ts +43 -38
- package/src/internal/stm/tQueue.ts +7 -8
- package/src/internal/stm/tReentrantLock.ts +2 -2
- package/src/internal/stm/tRef.ts +1 -1
- package/src/internal/stm/tSemaphore.ts +2 -2
- package/src/internal/stm/tSet.ts +2 -2
- package/src/internal/stream/debounceState.ts +2 -2
- package/src/internal/stream/handoff.ts +3 -3
- package/src/internal/stream/handoffSignal.ts +2 -2
- package/src/internal/stream/pull.ts +1 -1
- package/src/internal/stream.ts +66 -33
- package/src/internal/subscriptionRef.ts +2 -2
- package/src/internal/supervisor.ts +3 -3
- package/src/internal/take.ts +2 -2
- package/src/internal/version.ts +1 -1
package/src/Duration.ts
CHANGED
|
@@ -63,6 +63,7 @@ export type DurationInput =
|
|
|
63
63
|
| Duration
|
|
64
64
|
| number // millis
|
|
65
65
|
| bigint // nanos
|
|
66
|
+
| [number, number] // [seconds, nanos]
|
|
66
67
|
| `${number} ${Unit}`
|
|
67
68
|
|
|
68
69
|
const DURATION_REGEX = /^(-?\d+(?:\.\d+)?)\s+(nanos|micros|millis|seconds|minutes|hours|days|weeks)$/
|
|
@@ -77,6 +78,10 @@ export const decode = (input: DurationInput): Duration => {
|
|
|
77
78
|
return millis(input)
|
|
78
79
|
} else if (isBigInt(input)) {
|
|
79
80
|
return nanos(input)
|
|
81
|
+
} else if (Array.isArray(input)) {
|
|
82
|
+
if (input.length === 2 && isNumber(input[0]) && isNumber(input[1])) {
|
|
83
|
+
return nanos(BigInt(input[0]) * bigint1e9 + BigInt(input[1]))
|
|
84
|
+
}
|
|
80
85
|
} else {
|
|
81
86
|
DURATION_REGEX.lastIndex = 0 // Reset the lastIndex before each use
|
|
82
87
|
const match = DURATION_REGEX.exec(input)
|
package/src/Effect.ts
CHANGED
|
@@ -54,7 +54,7 @@ import * as Scheduler from "./Scheduler.js"
|
|
|
54
54
|
import type * as Scope from "./Scope.js"
|
|
55
55
|
import type * as Supervisor from "./Supervisor.js"
|
|
56
56
|
import type * as Tracer from "./Tracer.js"
|
|
57
|
-
import type { Concurrency } from "./Types.js"
|
|
57
|
+
import type { Concurrency, NoInfer } from "./Types.js"
|
|
58
58
|
import type * as Unify from "./Unify.js"
|
|
59
59
|
|
|
60
60
|
// -------------------------------------------------------------------------------------
|
|
@@ -99,7 +99,7 @@ export type EffectTypeId = typeof EffectTypeId
|
|
|
99
99
|
* @since 2.0.0
|
|
100
100
|
* @category models
|
|
101
101
|
*/
|
|
102
|
-
export interface Effect<R, E, A> extends Effect.Variance<R, E, A>, Equal.Equal, Pipeable {
|
|
102
|
+
export interface Effect<out R, out E, out A> extends Effect.Variance<R, E, A>, Equal.Equal, Pipeable {
|
|
103
103
|
readonly [Unify.typeSymbol]?: unknown
|
|
104
104
|
readonly [Unify.unifySymbol]?: EffectUnify<this>
|
|
105
105
|
readonly [Unify.ignoreSymbol]?: EffectUnifyIgnore
|
|
@@ -137,7 +137,7 @@ export interface EffectTypeLambda extends TypeLambda {
|
|
|
137
137
|
* @since 2.0.0
|
|
138
138
|
* @category models
|
|
139
139
|
*/
|
|
140
|
-
export interface Blocked<R, E, A> extends Effect<R, E, A> {
|
|
140
|
+
export interface Blocked<out R, out E, out A> extends Effect<R, E, A> {
|
|
141
141
|
readonly _op: "Blocked"
|
|
142
142
|
readonly i0: RequestBlock<R>
|
|
143
143
|
readonly i1: Effect<R, E, A>
|
|
@@ -200,14 +200,14 @@ export declare namespace Effect {
|
|
|
200
200
|
* @since 2.0.0
|
|
201
201
|
* @category models
|
|
202
202
|
*/
|
|
203
|
-
export interface Variance<R, E, A> {
|
|
203
|
+
export interface Variance<out R, out E, out A> {
|
|
204
204
|
readonly [EffectTypeId]: VarianceStruct<R, E, A>
|
|
205
205
|
}
|
|
206
206
|
/**
|
|
207
207
|
* @since 2.0.0
|
|
208
208
|
* @category models
|
|
209
209
|
*/
|
|
210
|
-
export interface VarianceStruct<R, E, A> {
|
|
210
|
+
export interface VarianceStruct<out R, out E, out A> {
|
|
211
211
|
readonly _V: string
|
|
212
212
|
readonly _R: (_: never) => R
|
|
213
213
|
readonly _E: (_: never) => E
|
|
@@ -508,7 +508,9 @@ export const allSuccesses: <R, E, A>(
|
|
|
508
508
|
* @category collecting & elements
|
|
509
509
|
*/
|
|
510
510
|
export const dropUntil: {
|
|
511
|
-
<
|
|
511
|
+
<B extends A, R, E, A = B>(
|
|
512
|
+
predicate: (a: A, i: number) => Effect<R, E, boolean>
|
|
513
|
+
): (elements: Iterable<B>) => Effect<R, E, Array<B>>
|
|
512
514
|
<A, R, E>(elements: Iterable<A>, predicate: (a: A, i: number) => Effect<R, E, boolean>): Effect<R, E, Array<A>>
|
|
513
515
|
} = effect.dropUntil
|
|
514
516
|
|
|
@@ -519,8 +521,10 @@ export const dropUntil: {
|
|
|
519
521
|
* @category collecting & elements
|
|
520
522
|
*/
|
|
521
523
|
export const dropWhile: {
|
|
522
|
-
<
|
|
523
|
-
|
|
524
|
+
<B extends A, R, E, A = B>(
|
|
525
|
+
predicate: (a: A, i: number) => Effect<R, E, boolean>
|
|
526
|
+
): (elements: Iterable<B>) => Effect<R, E, Array<B>>
|
|
527
|
+
<A, R, E>(elements: Iterable<A>, predicate: (a: A, i: number) => Effect<R, E, boolean>): Effect<R, E, Array<A>>
|
|
524
528
|
} = effect.dropWhile
|
|
525
529
|
|
|
526
530
|
/**
|
|
@@ -709,11 +713,11 @@ export const partition: {
|
|
|
709
713
|
readonly concurrency?: Concurrency | undefined
|
|
710
714
|
readonly batching?: boolean | "inherit" | undefined
|
|
711
715
|
}
|
|
712
|
-
): (elements: Iterable<A>) => Effect<R, never, [Array<E>, Array<B>]>
|
|
716
|
+
): (elements: Iterable<A>) => Effect<R, never, [excluded: Array<E>, satisfying: Array<B>]>
|
|
713
717
|
<R, E, A, B>(elements: Iterable<A>, f: (a: A) => Effect<R, E, B>, options?: {
|
|
714
718
|
readonly concurrency?: Concurrency | undefined
|
|
715
719
|
readonly batching?: boolean | "inherit" | undefined
|
|
716
|
-
}): Effect<R, never, [Array<E>, Array<B>]>
|
|
720
|
+
}): Effect<R, never, [excluded: Array<E>, satisfying: Array<B>]>
|
|
717
721
|
} = fiberRuntime.partition
|
|
718
722
|
|
|
719
723
|
/**
|
|
@@ -852,7 +856,9 @@ export const replicateEffect: {
|
|
|
852
856
|
* @category collecting & elements
|
|
853
857
|
*/
|
|
854
858
|
export const takeUntil: {
|
|
855
|
-
<
|
|
859
|
+
<B extends A, R, E, A = B>(
|
|
860
|
+
predicate: (a: A, i: number) => Effect<R, E, boolean>
|
|
861
|
+
): (elements: Iterable<B>) => Effect<R, E, Array<B>>
|
|
856
862
|
<R, E, A>(elements: Iterable<A>, predicate: (a: A, i: number) => Effect<R, E, boolean>): Effect<R, E, Array<A>>
|
|
857
863
|
} = effect.takeUntil
|
|
858
864
|
|
|
@@ -863,7 +869,9 @@ export const takeUntil: {
|
|
|
863
869
|
* @category collecting & elements
|
|
864
870
|
*/
|
|
865
871
|
export const takeWhile: {
|
|
866
|
-
<R, E,
|
|
872
|
+
<R, E, B extends A, A = B>(
|
|
873
|
+
predicate: (a: A, i: number) => Effect<R, E, boolean>
|
|
874
|
+
): (elements: Iterable<B>) => Effect<R, E, Array<B>>
|
|
867
875
|
<R, E, A>(elements: Iterable<A>, predicate: (a: A, i: number) => Effect<R, E, boolean>): Effect<R, E, Array<A>>
|
|
868
876
|
} = effect.takeWhile
|
|
869
877
|
|
|
@@ -1105,7 +1113,7 @@ export const gen: {
|
|
|
1105
1113
|
* @category models
|
|
1106
1114
|
* @since 2.0.0
|
|
1107
1115
|
*/
|
|
1108
|
-
export interface EffectGen<R, E, A> {
|
|
1116
|
+
export interface EffectGen<out R, out E, out A> {
|
|
1109
1117
|
readonly _R: () => R
|
|
1110
1118
|
readonly _E: () => E
|
|
1111
1119
|
readonly _A: () => A
|
|
@@ -1844,7 +1852,7 @@ export const retryWhileEffect: {
|
|
|
1844
1852
|
|
|
1845
1853
|
const try_: {
|
|
1846
1854
|
<A, E>(options: { readonly try: LazyArg<A>; readonly catch: (error: unknown) => E }): Effect<never, E, A>
|
|
1847
|
-
<A>(evaluate: LazyArg<A>): Effect<never,
|
|
1855
|
+
<A>(evaluate: LazyArg<A>): Effect<never, Cause.UnknownException, A>
|
|
1848
1856
|
} = effect.try_
|
|
1849
1857
|
export {
|
|
1850
1858
|
/**
|
|
@@ -1914,12 +1922,9 @@ export const tryMapPromise: {
|
|
|
1914
1922
|
*/
|
|
1915
1923
|
export const tryPromise: {
|
|
1916
1924
|
<A, E>(
|
|
1917
|
-
options: {
|
|
1918
|
-
readonly try: (signal: AbortSignal) => Promise<A>
|
|
1919
|
-
readonly catch: (error: unknown) => E
|
|
1920
|
-
}
|
|
1925
|
+
options: { readonly try: (signal: AbortSignal) => Promise<A>; readonly catch: (error: unknown) => E }
|
|
1921
1926
|
): Effect<never, E, A>
|
|
1922
|
-
<A>(try_: (signal: AbortSignal) => Promise<A>): Effect<never,
|
|
1927
|
+
<A>(try_: (signal: AbortSignal) => Promise<A>): Effect<never, Cause.UnknownException, A>
|
|
1923
1928
|
} = effect.tryPromise
|
|
1924
1929
|
|
|
1925
1930
|
/**
|
|
@@ -3537,6 +3542,41 @@ export const flatMap: {
|
|
|
3537
3542
|
<R, E, A, R1, E1, B>(self: Effect<R, E, A>, f: (a: A) => Effect<R1, E1, B>): Effect<R | R1, E | E1, B>
|
|
3538
3543
|
} = core.flatMap
|
|
3539
3544
|
|
|
3545
|
+
/**
|
|
3546
|
+
* Executes a sequence of two `Effect`s. The second `Effect` can be dependent on the result of the first `Effect`.
|
|
3547
|
+
*
|
|
3548
|
+
* @since 2.0.0
|
|
3549
|
+
* @category sequencing
|
|
3550
|
+
*/
|
|
3551
|
+
export const andThen: {
|
|
3552
|
+
<A, X>(
|
|
3553
|
+
f: (a: NoInfer<A>) => X
|
|
3554
|
+
): <R, E>(
|
|
3555
|
+
self: Effect<R, E, A>
|
|
3556
|
+
) => [X] extends [Effect<infer R1, infer E1, infer A1>] ? Effect<R | R1, E | E1, A1>
|
|
3557
|
+
: [X] extends [Promise<infer A1>] ? Effect<R, E | Cause.UnknownException, A1>
|
|
3558
|
+
: Effect<R, E, X>
|
|
3559
|
+
<X>(
|
|
3560
|
+
f: X
|
|
3561
|
+
): <R, E, A>(
|
|
3562
|
+
self: Effect<R, E, A>
|
|
3563
|
+
) => [X] extends [Effect<infer R1, infer E1, infer A1>] ? Effect<R | R1, E | E1, A1>
|
|
3564
|
+
: [X] extends [Promise<infer A1>] ? Effect<R, Cause.UnknownException | E, A1>
|
|
3565
|
+
: Effect<R, E, X>
|
|
3566
|
+
<A, R, E, X>(
|
|
3567
|
+
self: Effect<R, E, A>,
|
|
3568
|
+
f: (a: NoInfer<A>) => X
|
|
3569
|
+
): [X] extends [Effect<infer R1, infer E1, infer A1>] ? Effect<R | R1, E | E1, A1>
|
|
3570
|
+
: [X] extends [Promise<infer A1>] ? Effect<R, Cause.UnknownException | E, A1>
|
|
3571
|
+
: Effect<R, E, X>
|
|
3572
|
+
<A, R, E, X>(
|
|
3573
|
+
self: Effect<R, E, A>,
|
|
3574
|
+
f: X
|
|
3575
|
+
): [X] extends [Effect<infer R1, infer E1, infer A1>] ? Effect<R | R1, E | E1, A1>
|
|
3576
|
+
: [X] extends [Promise<infer A1>] ? Effect<R, Cause.UnknownException | E, A1>
|
|
3577
|
+
: Effect<R, E, X>
|
|
3578
|
+
} = core.andThen
|
|
3579
|
+
|
|
3540
3580
|
/**
|
|
3541
3581
|
* @since 2.0.0
|
|
3542
3582
|
* @category sequencing
|
|
@@ -3638,10 +3678,32 @@ export const summarized: {
|
|
|
3638
3678
|
* @category sequencing
|
|
3639
3679
|
*/
|
|
3640
3680
|
export const tap: {
|
|
3641
|
-
<A, X
|
|
3642
|
-
f: (a:
|
|
3643
|
-
): <R, E>(
|
|
3644
|
-
|
|
3681
|
+
<A, X>(
|
|
3682
|
+
f: (a: NoInfer<A>) => X
|
|
3683
|
+
): <R, E>(
|
|
3684
|
+
self: Effect<R, E, A>
|
|
3685
|
+
) => [X] extends [Effect<infer R1, infer E1, infer _A1>] ? Effect<R | R1, E | E1, A>
|
|
3686
|
+
: [X] extends [Promise<infer _A1>] ? Effect<R, E | Cause.UnknownException, A>
|
|
3687
|
+
: Effect<R, E, A>
|
|
3688
|
+
<X>(
|
|
3689
|
+
f: X
|
|
3690
|
+
): <R, E, A>(
|
|
3691
|
+
self: Effect<R, E, A>
|
|
3692
|
+
) => [X] extends [Effect<infer R1, infer E1, infer _A1>] ? Effect<R | R1, E | E1, A>
|
|
3693
|
+
: [X] extends [Promise<infer _A1>] ? Effect<R, Cause.UnknownException | E, A>
|
|
3694
|
+
: Effect<R, E, A>
|
|
3695
|
+
<A, R, E, X>(
|
|
3696
|
+
self: Effect<R, E, A>,
|
|
3697
|
+
f: (a: NoInfer<A>) => X
|
|
3698
|
+
): [X] extends [Effect<infer R1, infer E1, infer _A1>] ? Effect<R | R1, E | E1, A>
|
|
3699
|
+
: [X] extends [Promise<infer _A1>] ? Effect<R, Cause.UnknownException | E, A>
|
|
3700
|
+
: Effect<R, E, A>
|
|
3701
|
+
<A, R, E, X>(
|
|
3702
|
+
self: Effect<R, E, A>,
|
|
3703
|
+
f: X
|
|
3704
|
+
): [X] extends [Effect<infer R1, infer E1, infer _A1>] ? Effect<R | R1, E | E1, A>
|
|
3705
|
+
: [X] extends [Promise<infer _A1>] ? Effect<R, Cause.UnknownException | E, A>
|
|
3706
|
+
: Effect<R, E, A>
|
|
3645
3707
|
} = core.tap
|
|
3646
3708
|
|
|
3647
3709
|
/**
|
|
@@ -4580,9 +4642,9 @@ export interface Permit {
|
|
|
4580
4642
|
* @since 2.0.0
|
|
4581
4643
|
*/
|
|
4582
4644
|
export interface Semaphore {
|
|
4583
|
-
|
|
4584
|
-
|
|
4585
|
-
|
|
4645
|
+
withPermits(permits: number): <R, E, A>(self: Effect<R, E, A>) => Effect<R, E, A>
|
|
4646
|
+
take(permits: number): Effect<never, never, number>
|
|
4647
|
+
release(permits: number): Effect<never, never, void>
|
|
4586
4648
|
}
|
|
4587
4649
|
|
|
4588
4650
|
/**
|
package/src/Either.ts
CHANGED
|
@@ -37,7 +37,7 @@ export type TypeId = typeof TypeId
|
|
|
37
37
|
* @category models
|
|
38
38
|
* @since 2.0.0
|
|
39
39
|
*/
|
|
40
|
-
export interface Left<E, A> extends Data.Case, Pipeable, Inspectable {
|
|
40
|
+
export interface Left<out E, out A> extends Data.Case, Pipeable, Inspectable {
|
|
41
41
|
readonly _tag: "Left"
|
|
42
42
|
readonly _op: "Left"
|
|
43
43
|
readonly left: E
|
|
@@ -54,7 +54,7 @@ export interface Left<E, A> extends Data.Case, Pipeable, Inspectable {
|
|
|
54
54
|
* @category models
|
|
55
55
|
* @since 2.0.0
|
|
56
56
|
*/
|
|
57
|
-
export interface Right<E, A> extends Data.Case, Pipeable, Inspectable {
|
|
57
|
+
export interface Right<out E, out A> extends Data.Case, Pipeable, Inspectable {
|
|
58
58
|
readonly _tag: "Right"
|
|
59
59
|
readonly _op: "Right"
|
|
60
60
|
readonly right: A
|
|
@@ -147,11 +147,17 @@ export const fromOption: {
|
|
|
147
147
|
|
|
148
148
|
const try_: {
|
|
149
149
|
<A, E>(
|
|
150
|
-
options: {
|
|
150
|
+
options: {
|
|
151
|
+
readonly try: LazyArg<A>
|
|
152
|
+
readonly catch: (error: unknown) => E
|
|
153
|
+
}
|
|
151
154
|
): Either<E, A>
|
|
152
155
|
<A>(evaluate: LazyArg<A>): Either<unknown, A>
|
|
153
156
|
} = (<A, E>(
|
|
154
|
-
evaluate: LazyArg<A> | {
|
|
157
|
+
evaluate: LazyArg<A> | {
|
|
158
|
+
readonly try: LazyArg<A>
|
|
159
|
+
readonly catch: (error: unknown) => E
|
|
160
|
+
}
|
|
155
161
|
) => {
|
|
156
162
|
if (isFunction(evaluate)) {
|
|
157
163
|
try {
|
|
@@ -491,7 +497,7 @@ export const orElse: {
|
|
|
491
497
|
)
|
|
492
498
|
|
|
493
499
|
/**
|
|
494
|
-
* @category
|
|
500
|
+
* @category sequencing
|
|
495
501
|
* @since 2.0.0
|
|
496
502
|
*/
|
|
497
503
|
export const flatMap: {
|
|
@@ -503,6 +509,23 @@ export const flatMap: {
|
|
|
503
509
|
isLeft(self) ? left(self.left) : f(self.right)
|
|
504
510
|
)
|
|
505
511
|
|
|
512
|
+
/**
|
|
513
|
+
* Executes a sequence of two `Either`s. The second `Either` can be dependent on the result of the first `Either`.
|
|
514
|
+
*
|
|
515
|
+
* @category sequencing
|
|
516
|
+
* @since 2.0.0
|
|
517
|
+
*/
|
|
518
|
+
export const andThen: {
|
|
519
|
+
<A, E2, B>(f: (a: A) => Either<E2, B>): <E1>(self: Either<E1, A>) => Either<E1 | E2, B>
|
|
520
|
+
<E2, B>(f: Either<E2, B>): <E1, A>(self: Either<E1, A>) => Either<E1 | E2, B>
|
|
521
|
+
<E1, A, E2, B>(self: Either<E1, A>, f: (a: A) => Either<E2, B>): Either<E1 | E2, B>
|
|
522
|
+
<E1, A, E2, B>(self: Either<E1, A>, f: Either<E2, B>): Either<E1 | E2, B>
|
|
523
|
+
} = dual(
|
|
524
|
+
2,
|
|
525
|
+
<E1, A, E2, B>(self: Either<E1, A>, f: (a: A) => Either<E2, B> | Either<E2, B>): Either<E1 | E2, B> =>
|
|
526
|
+
isFunction(f) ? flatMap(self, f) : flatMap(self, () => f)
|
|
527
|
+
)
|
|
528
|
+
|
|
506
529
|
/**
|
|
507
530
|
* @since 2.0.0
|
|
508
531
|
* @category combining
|
package/src/Equal.ts
CHANGED
package/src/Equivalence.ts
CHANGED
package/src/Exit.ts
CHANGED
|
@@ -9,7 +9,7 @@ import type { Inspectable } from "./Inspectable.js"
|
|
|
9
9
|
import * as core from "./internal/core.js"
|
|
10
10
|
import type * as Option from "./Option.js"
|
|
11
11
|
import type { Pipeable } from "./Pipeable.js"
|
|
12
|
-
import type { Predicate } from "./Predicate.js"
|
|
12
|
+
import type { Predicate, Refinement } from "./Predicate.js"
|
|
13
13
|
import type * as Unify from "./Unify.js"
|
|
14
14
|
|
|
15
15
|
/**
|
|
@@ -31,7 +31,7 @@ export type Exit<E, A> = Failure<E, A> | Success<E, A>
|
|
|
31
31
|
* @since 2.0.0
|
|
32
32
|
* @category models
|
|
33
33
|
*/
|
|
34
|
-
export interface Failure<E, A> extends Effect.Effect<never, E, A>, Pipeable, Inspectable {
|
|
34
|
+
export interface Failure<out E, out A> extends Effect.Effect<never, E, A>, Pipeable, Inspectable {
|
|
35
35
|
readonly _tag: "Failure"
|
|
36
36
|
readonly _op: "Failure"
|
|
37
37
|
readonly cause: Cause.Cause<E>
|
|
@@ -65,7 +65,7 @@ export interface ExitUnifyIgnore extends Effect.EffectUnifyIgnore {
|
|
|
65
65
|
* @since 2.0.0
|
|
66
66
|
* @category models
|
|
67
67
|
*/
|
|
68
|
-
export interface Success<E, A> extends Effect.Effect<never, E, A>, Pipeable, Inspectable {
|
|
68
|
+
export interface Success<out E, out A> extends Effect.Effect<never, E, A>, Pipeable, Inspectable {
|
|
69
69
|
readonly _tag: "Success"
|
|
70
70
|
readonly _op: "Success"
|
|
71
71
|
readonly value: A
|
|
@@ -168,7 +168,9 @@ export const die: (defect: unknown) => Exit<never, never> = core.exitDie
|
|
|
168
168
|
* @category elements
|
|
169
169
|
*/
|
|
170
170
|
export const exists: {
|
|
171
|
+
<A, B extends A>(refinement: Refinement<A, B>): <E>(self: Exit<E, A>) => self is Exit<never, B>
|
|
171
172
|
<A>(predicate: Predicate<A>): <E>(self: Exit<E, A>) => boolean
|
|
173
|
+
<E, A, B extends A>(self: Exit<E, A>, refinement: Refinement<A, B>): self is Exit<never, B>
|
|
172
174
|
<E, A>(self: Exit<E, A>, predicate: Predicate<A>): boolean
|
|
173
175
|
} = core.exitExists
|
|
174
176
|
|
|
@@ -286,11 +288,17 @@ export const map: {
|
|
|
286
288
|
*/
|
|
287
289
|
export const mapBoth: {
|
|
288
290
|
<E, A, E2, A2>(
|
|
289
|
-
options: {
|
|
291
|
+
options: {
|
|
292
|
+
readonly onFailure: (e: E) => E2
|
|
293
|
+
readonly onSuccess: (a: A) => A2
|
|
294
|
+
}
|
|
290
295
|
): (self: Exit<E, A>) => Exit<E2, A2>
|
|
291
296
|
<E, A, E2, A2>(
|
|
292
297
|
self: Exit<E, A>,
|
|
293
|
-
options: {
|
|
298
|
+
options: {
|
|
299
|
+
readonly onFailure: (e: E) => E2
|
|
300
|
+
readonly onSuccess: (a: A) => A2
|
|
301
|
+
}
|
|
294
302
|
): Exit<E2, A2>
|
|
295
303
|
} = core.exitMapBoth
|
|
296
304
|
|
|
@@ -324,11 +332,17 @@ export const mapErrorCause: {
|
|
|
324
332
|
*/
|
|
325
333
|
export const match: {
|
|
326
334
|
<E, A, Z1, Z2>(
|
|
327
|
-
options: {
|
|
335
|
+
options: {
|
|
336
|
+
readonly onFailure: (cause: Cause.Cause<E>) => Z1
|
|
337
|
+
readonly onSuccess: (a: A) => Z2
|
|
338
|
+
}
|
|
328
339
|
): (self: Exit<E, A>) => Z1 | Z2
|
|
329
340
|
<E, A, Z1, Z2>(
|
|
330
341
|
self: Exit<E, A>,
|
|
331
|
-
options: {
|
|
342
|
+
options: {
|
|
343
|
+
readonly onFailure: (cause: Cause.Cause<E>) => Z1
|
|
344
|
+
readonly onSuccess: (a: A) => Z2
|
|
345
|
+
}
|
|
332
346
|
): Z1 | Z2
|
|
333
347
|
} = core.exitMatch
|
|
334
348
|
|
package/src/Fiber.ts
CHANGED
|
@@ -56,11 +56,11 @@ export type RuntimeFiberTypeId = typeof RuntimeFiberTypeId
|
|
|
56
56
|
* @since 2.0.0
|
|
57
57
|
* @category models
|
|
58
58
|
*/
|
|
59
|
-
export interface Fiber<E, A> extends Fiber.Variance<E, A>, Pipeable {
|
|
59
|
+
export interface Fiber<out E, out A> extends Fiber.Variance<E, A>, Pipeable {
|
|
60
60
|
/**
|
|
61
61
|
* The identity of the fiber.
|
|
62
62
|
*/
|
|
63
|
-
|
|
63
|
+
id(): FiberId.FiberId
|
|
64
64
|
|
|
65
65
|
/**
|
|
66
66
|
* Awaits the fiber, which suspends the awaiting fiber until the result of the
|
|
@@ -90,7 +90,7 @@ export interface Fiber<E, A> extends Fiber.Variance<E, A>, Pipeable {
|
|
|
90
90
|
* specified fiber. If the fiber has already exited, the returned effect will
|
|
91
91
|
* resume immediately. Otherwise, the effect will resume when the fiber exits.
|
|
92
92
|
*/
|
|
93
|
-
|
|
93
|
+
interruptAsFork(fiberId: FiberId.FiberId): Effect.Effect<never, never, void>
|
|
94
94
|
}
|
|
95
95
|
|
|
96
96
|
/**
|
|
@@ -100,7 +100,7 @@ export interface Fiber<E, A> extends Fiber.Variance<E, A>, Pipeable {
|
|
|
100
100
|
* @since 2.0.0
|
|
101
101
|
* @category models
|
|
102
102
|
*/
|
|
103
|
-
export interface RuntimeFiber<E, A> extends Fiber<E, A>, Fiber.RuntimeVariance<E, A> {
|
|
103
|
+
export interface RuntimeFiber<out E, out A> extends Fiber<E, A>, Fiber.RuntimeVariance<E, A> {
|
|
104
104
|
/**
|
|
105
105
|
* Reads the current number of ops that have occurred since the last yield
|
|
106
106
|
*/
|
|
@@ -109,12 +109,12 @@ export interface RuntimeFiber<E, A> extends Fiber<E, A>, Fiber.RuntimeVariance<E
|
|
|
109
109
|
/**
|
|
110
110
|
* Reads the current value of a fiber ref
|
|
111
111
|
*/
|
|
112
|
-
|
|
112
|
+
getFiberRef<X>(fiberRef: FiberRef<X>): X
|
|
113
113
|
|
|
114
114
|
/**
|
|
115
115
|
* The identity of the fiber.
|
|
116
116
|
*/
|
|
117
|
-
|
|
117
|
+
id(): FiberId.Runtime
|
|
118
118
|
|
|
119
119
|
/**
|
|
120
120
|
* The status of the fiber.
|
|
@@ -129,24 +129,24 @@ export interface RuntimeFiber<E, A> extends Fiber<E, A>, Fiber.RuntimeVariance<E
|
|
|
129
129
|
/**
|
|
130
130
|
* Adds an observer to the list of observers.
|
|
131
131
|
*/
|
|
132
|
-
|
|
132
|
+
addObserver(observer: (exit: Exit.Exit<E, A>) => void): void
|
|
133
133
|
|
|
134
134
|
/**
|
|
135
135
|
* Removes the specified observer from the list of observers that will be
|
|
136
136
|
* notified when the fiber exits.
|
|
137
137
|
*/
|
|
138
|
-
|
|
138
|
+
removeObserver(observer: (exit: Exit.Exit<E, A>) => void): void
|
|
139
139
|
|
|
140
140
|
/**
|
|
141
141
|
* Retrieves all fiber refs of the fiber.
|
|
142
142
|
*/
|
|
143
|
-
|
|
143
|
+
getFiberRefs(): FiberRefs.FiberRefs
|
|
144
144
|
|
|
145
145
|
/**
|
|
146
146
|
* Unsafely observes the fiber, but returns immediately if it is not
|
|
147
147
|
* already done.
|
|
148
148
|
*/
|
|
149
|
-
|
|
149
|
+
unsafePoll(): Exit.Exit<E, A> | null
|
|
150
150
|
}
|
|
151
151
|
|
|
152
152
|
/**
|
|
@@ -163,7 +163,7 @@ export declare namespace Fiber {
|
|
|
163
163
|
* @since 2.0.0
|
|
164
164
|
* @category models
|
|
165
165
|
*/
|
|
166
|
-
export interface Variance<E, A> {
|
|
166
|
+
export interface Variance<out E, out A> {
|
|
167
167
|
readonly [FiberTypeId]: {
|
|
168
168
|
readonly _E: (_: never) => E
|
|
169
169
|
readonly _A: (_: never) => A
|
|
@@ -173,7 +173,7 @@ export declare namespace Fiber {
|
|
|
173
173
|
/**
|
|
174
174
|
* @since 2.0.0
|
|
175
175
|
*/
|
|
176
|
-
export interface RuntimeVariance<E, A> {
|
|
176
|
+
export interface RuntimeVariance<out E, out A> {
|
|
177
177
|
readonly [RuntimeFiberTypeId]: {
|
|
178
178
|
readonly _E: (_: never) => E
|
|
179
179
|
readonly _A: (_: never) => A
|
|
@@ -491,11 +491,17 @@ export const mapFiber: {
|
|
|
491
491
|
*/
|
|
492
492
|
export const match: {
|
|
493
493
|
<E, A, Z>(
|
|
494
|
-
options: {
|
|
494
|
+
options: {
|
|
495
|
+
readonly onFiber: (fiber: Fiber<E, A>) => Z
|
|
496
|
+
readonly onRuntimeFiber: (fiber: RuntimeFiber<E, A>) => Z
|
|
497
|
+
}
|
|
495
498
|
): (self: Fiber<E, A>) => Z
|
|
496
499
|
<E, A, Z>(
|
|
497
500
|
self: Fiber<E, A>,
|
|
498
|
-
options: {
|
|
501
|
+
options: {
|
|
502
|
+
readonly onFiber: (fiber: Fiber<E, A>) => Z
|
|
503
|
+
readonly onRuntimeFiber: (fiber: RuntimeFiber<E, A>) => Z
|
|
504
|
+
}
|
|
499
505
|
): Z
|
|
500
506
|
} = internal.match
|
|
501
507
|
|
package/src/FiberRef.ts
CHANGED
|
@@ -42,28 +42,28 @@ export type FiberRefTypeId = typeof FiberRefTypeId
|
|
|
42
42
|
* @since 2.0.0
|
|
43
43
|
* @category model
|
|
44
44
|
*/
|
|
45
|
-
export interface FiberRef<A> extends Variance<A>, Pipeable {
|
|
45
|
+
export interface FiberRef<in out A> extends Variance<A>, Pipeable {
|
|
46
46
|
/** @internal */
|
|
47
47
|
readonly initial: A
|
|
48
48
|
/** @internal */
|
|
49
|
-
|
|
49
|
+
diff(oldValue: A, newValue: A): unknown
|
|
50
50
|
/** @internal */
|
|
51
|
-
|
|
51
|
+
combine(first: unknown, second: unknown): unknown
|
|
52
52
|
/** @internal */
|
|
53
|
-
|
|
53
|
+
patch(patch: unknown): (oldValue: A) => A
|
|
54
54
|
/** @internal */
|
|
55
55
|
readonly fork: unknown
|
|
56
56
|
/** @internal */
|
|
57
|
-
|
|
57
|
+
join(oldValue: A, newValue: A): A
|
|
58
58
|
}
|
|
59
59
|
|
|
60
60
|
/**
|
|
61
61
|
* @since 2.0.0
|
|
62
62
|
* @category models
|
|
63
63
|
*/
|
|
64
|
-
export interface Variance<A> {
|
|
64
|
+
export interface Variance<in out A> {
|
|
65
65
|
readonly [FiberRefTypeId]: {
|
|
66
|
-
readonly _A: (_:
|
|
66
|
+
readonly _A: (_: A) => A
|
|
67
67
|
}
|
|
68
68
|
}
|
|
69
69
|
|
package/src/GroupBy.ts
CHANGED
|
@@ -28,7 +28,7 @@ export type GroupByTypeId = typeof GroupByTypeId
|
|
|
28
28
|
* @since 2.0.0
|
|
29
29
|
* @category models
|
|
30
30
|
*/
|
|
31
|
-
export interface GroupBy<R, E, K, V> extends GroupBy.Variance<R, E, K, V>, Pipeable {
|
|
31
|
+
export interface GroupBy<out R, out E, out K, out V> extends GroupBy.Variance<R, E, K, V>, Pipeable {
|
|
32
32
|
readonly grouped: Stream.Stream<R, E, readonly [K, Queue.Dequeue<Take.Take<E, V>>]>
|
|
33
33
|
}
|
|
34
34
|
|
|
@@ -40,7 +40,7 @@ export declare namespace GroupBy {
|
|
|
40
40
|
* @since 2.0.0
|
|
41
41
|
* @category models
|
|
42
42
|
*/
|
|
43
|
-
export interface Variance<R, E, K, V> {
|
|
43
|
+
export interface Variance<out R, out E, out K, out V> {
|
|
44
44
|
readonly [GroupByTypeId]: {
|
|
45
45
|
readonly _R: (_: never) => R
|
|
46
46
|
readonly _E: (_: never) => E
|
package/src/Hash.ts
CHANGED
package/src/HashMap.ts
CHANGED
|
@@ -22,7 +22,7 @@ export type TypeId = typeof TypeId
|
|
|
22
22
|
* @since 2.0.0
|
|
23
23
|
* @category models
|
|
24
24
|
*/
|
|
25
|
-
export interface HashMap<Key, Value> extends Iterable<[Key, Value]>, Equal, Pipeable, Inspectable {
|
|
25
|
+
export interface HashMap<out Key, out Value> extends Iterable<[Key, Value]>, Equal, Pipeable, Inspectable {
|
|
26
26
|
readonly [TypeId]: TypeId
|
|
27
27
|
}
|
|
28
28
|
|
|
@@ -381,7 +381,7 @@ export const reduce: {
|
|
|
381
381
|
*/
|
|
382
382
|
export const filter: {
|
|
383
383
|
<K, A, B extends A>(f: (a: A, k: K) => a is B): (self: HashMap<K, A>) => HashMap<K, B>
|
|
384
|
-
<K, A>(f: (a: A, k: K) => boolean): (self: HashMap<K,
|
|
384
|
+
<K, B extends A, A = B>(f: (a: A, k: K) => boolean): (self: HashMap<K, B>) => HashMap<K, B>
|
|
385
385
|
<K, A, B extends A>(self: HashMap<K, A>, f: (a: A, k: K) => a is B): HashMap<K, B>
|
|
386
386
|
<K, A>(self: HashMap<K, A>, f: (a: A, k: K) => boolean): HashMap<K, A>
|
|
387
387
|
} = HM.filter
|
|
@@ -414,6 +414,8 @@ export const filterMap: {
|
|
|
414
414
|
* @since 2.0.0
|
|
415
415
|
*/
|
|
416
416
|
export const findFirst: {
|
|
417
|
-
<K, A>(predicate: (
|
|
418
|
-
<K, A
|
|
417
|
+
<K, A, B extends A>(predicate: (a: A, k: K) => a is B): (self: HashMap<K, A>) => Option<[K, B]>
|
|
418
|
+
<K, B extends A, A = B>(predicate: (a: A, k: K) => boolean): (self: HashMap<K, B>) => Option<[K, B]>
|
|
419
|
+
<K, A, B extends A>(self: HashMap<K, A>, predicate: (a: A, k: K) => a is B): Option<[K, B]>
|
|
420
|
+
<K, A>(self: HashMap<K, A>, predicate: (a: A, k: K) => boolean): Option<[K, A]>
|
|
419
421
|
} = HM.findFirst
|
package/src/HashSet.ts
CHANGED
|
@@ -20,7 +20,7 @@ export type TypeId = typeof TypeId
|
|
|
20
20
|
* @since 2.0.0
|
|
21
21
|
* @category models
|
|
22
22
|
*/
|
|
23
|
-
export interface HashSet<A> extends Iterable<A>, Equal, Pipeable, Inspectable {
|
|
23
|
+
export interface HashSet<out A> extends Iterable<A>, Equal, Pipeable, Inspectable {
|
|
24
24
|
readonly [TypeId]: TypeId
|
|
25
25
|
}
|
|
26
26
|
|
|
@@ -271,10 +271,10 @@ export const reduce: {
|
|
|
271
271
|
* @category filtering
|
|
272
272
|
*/
|
|
273
273
|
export const filter: {
|
|
274
|
-
<A, B extends A>(
|
|
275
|
-
<A>(
|
|
276
|
-
<A, B extends A>(self: HashSet<A>,
|
|
277
|
-
<A>(self: HashSet<A>,
|
|
274
|
+
<A, B extends A>(refinement: Refinement<A, B>): (self: HashSet<A>) => HashSet<B>
|
|
275
|
+
<B extends A, A = B>(predicate: Predicate<A>): (self: HashSet<B>) => HashSet<B>
|
|
276
|
+
<A, B extends A>(self: HashSet<A>, refinement: Refinement<A, B>): HashSet<B>
|
|
277
|
+
<A>(self: HashSet<A>, predicate: Predicate<A>): HashSet<A>
|
|
278
278
|
} = HS.filter
|
|
279
279
|
|
|
280
280
|
/**
|
|
@@ -290,11 +290,11 @@ export const filter: {
|
|
|
290
290
|
export const partition: {
|
|
291
291
|
<C extends A, B extends A, A = C>(
|
|
292
292
|
refinement: Refinement<A, B>
|
|
293
|
-
): (self: HashSet<C>) => [HashSet<Exclude<C, B>>, HashSet<B>]
|
|
294
|
-
<B extends A, A = B>(predicate:
|
|
295
|
-
<
|
|
296
|
-
self: HashSet<
|
|
293
|
+
): (self: HashSet<C>) => [excluded: HashSet<Exclude<C, B>>, satisfying: HashSet<B>]
|
|
294
|
+
<B extends A, A = B>(predicate: Predicate<A>): (self: HashSet<B>) => [excluded: HashSet<B>, satisfying: HashSet<B>]
|
|
295
|
+
<A, B extends A>(
|
|
296
|
+
self: HashSet<A>,
|
|
297
297
|
refinement: Refinement<A, B>
|
|
298
|
-
): [HashSet<Exclude<
|
|
299
|
-
<
|
|
298
|
+
): [excluded: HashSet<Exclude<A, B>>, satisfying: HashSet<B>]
|
|
299
|
+
<A>(self: HashSet<A>, predicate: Predicate<A>): [excluded: HashSet<A>, satisfying: HashSet<A>]
|
|
300
300
|
} = HS.partition
|