effect 2.2.5 → 2.3.1
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/RateLimiter/package.json +6 -0
- package/dist/cjs/Cause.js +14 -1
- package/dist/cjs/Cause.js.map +1 -1
- package/dist/cjs/Channel.js.map +1 -1
- package/dist/cjs/Clock.js.map +1 -1
- package/dist/cjs/Console.js.map +1 -1
- package/dist/cjs/Context.js +23 -25
- package/dist/cjs/Context.js.map +1 -1
- package/dist/cjs/Data.js +3 -3
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/Deferred.js +1 -1
- package/dist/cjs/Deferred.js.map +1 -1
- package/dist/cjs/Effect.js +9 -9
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Effectable.js.map +1 -1
- package/dist/cjs/Either.js.map +1 -1
- package/dist/cjs/Exit.js +2 -2
- package/dist/cjs/Exit.js.map +1 -1
- package/dist/cjs/Fiber.js.map +1 -1
- package/dist/cjs/FiberMap.js +3 -3
- package/dist/cjs/FiberRef.js.map +1 -1
- package/dist/cjs/FiberRefs.js.map +1 -1
- package/dist/cjs/FiberSet.js +3 -3
- package/dist/cjs/FiberSet.js.map +1 -1
- package/dist/cjs/GroupBy.js.map +1 -1
- package/dist/cjs/Layer.js.map +1 -1
- package/dist/cjs/LogLevel.js.map +1 -1
- package/dist/cjs/Logger.js.map +1 -1
- package/dist/cjs/Metric.js.map +1 -1
- package/dist/cjs/Number.js +20 -1
- package/dist/cjs/Number.js.map +1 -1
- package/dist/cjs/Option.js.map +1 -1
- package/dist/cjs/Pool.js.map +1 -1
- package/dist/cjs/PubSub.js.map +1 -1
- package/dist/cjs/Queue.js.map +1 -1
- package/dist/cjs/Random.js.map +1 -1
- package/dist/cjs/RateLimiter.js +38 -0
- package/dist/cjs/RateLimiter.js.map +1 -0
- package/dist/cjs/ReadonlyRecord.js +45 -9
- package/dist/cjs/ReadonlyRecord.js.map +1 -1
- package/dist/cjs/Ref.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 +1 -4
- package/dist/cjs/Runtime.js.map +1 -1
- package/dist/cjs/RuntimeFlags.js.map +1 -1
- package/dist/cjs/STM.js.map +1 -1
- package/dist/cjs/Schedule.js.map +1 -1
- package/dist/cjs/Scope.js.map +1 -1
- package/dist/cjs/ScopedRef.js.map +1 -1
- package/dist/cjs/SingleProducerAsyncInput.js.map +1 -1
- package/dist/cjs/Sink.js.map +1 -1
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/SubscriptionRef.js.map +1 -1
- package/dist/cjs/Supervisor.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/TRandom.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 +6 -6
- package/dist/cjs/Take.js.map +1 -1
- package/dist/cjs/TestAnnotation.js +10 -13
- package/dist/cjs/TestAnnotation.js.map +1 -1
- package/dist/cjs/TestAnnotations.js +1 -1
- package/dist/cjs/TestAnnotations.js.map +1 -1
- package/dist/cjs/TestClock.js +1 -1
- package/dist/cjs/TestClock.js.map +1 -1
- package/dist/cjs/TestConfig.js +1 -1
- package/dist/cjs/TestConfig.js.map +1 -1
- package/dist/cjs/TestContext.js.map +1 -1
- package/dist/cjs/TestLive.js +1 -1
- package/dist/cjs/TestLive.js.map +1 -1
- package/dist/cjs/TestServices.js.map +1 -1
- package/dist/cjs/TestSized.js +1 -1
- package/dist/cjs/TestSized.js.map +1 -1
- package/dist/cjs/Utils.js +0 -1
- package/dist/cjs/Utils.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/channel/channelExecutor.js.map +1 -1
- package/dist/cjs/internal/channel/mergeDecision.js +2 -6
- package/dist/cjs/internal/channel/mergeDecision.js.map +1 -1
- package/dist/cjs/internal/channel/singleProducerAsyncInput.js.map +1 -1
- package/dist/cjs/internal/channel.js +1 -1
- package/dist/cjs/internal/channel.js.map +1 -1
- package/dist/cjs/internal/clock.js +1 -1
- package/dist/cjs/internal/clock.js.map +1 -1
- package/dist/cjs/internal/configProvider.js +2 -4
- package/dist/cjs/internal/configProvider.js.map +1 -1
- package/dist/cjs/internal/console.js.map +1 -1
- package/dist/cjs/internal/context.js +31 -22
- package/dist/cjs/internal/context.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +13 -27
- 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 +61 -130
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/data.js.map +1 -1
- package/dist/cjs/internal/defaultServices/console.js +1 -1
- package/dist/cjs/internal/defaultServices/console.js.map +1 -1
- package/dist/cjs/internal/defaultServices.js.map +1 -1
- package/dist/cjs/internal/deferred.js.map +1 -1
- package/dist/cjs/internal/differ/contextPatch.js +9 -9
- package/dist/cjs/internal/differ/contextPatch.js.map +1 -1
- package/dist/cjs/internal/effect/circular.js +7 -10
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- package/dist/cjs/internal/effectable.js +4 -4
- package/dist/cjs/internal/effectable.js.map +1 -1
- package/dist/cjs/internal/fiber.js +2 -6
- package/dist/cjs/internal/fiber.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +10 -19
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/groupBy.js.map +1 -1
- package/dist/cjs/internal/keyedPool.js.map +1 -1
- package/dist/cjs/internal/layer/circular.js.map +1 -1
- package/dist/cjs/internal/layer.js +3 -3
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/logSpan.js +3 -5
- package/dist/cjs/internal/logSpan.js.map +1 -1
- package/dist/cjs/internal/metric.js.map +1 -1
- package/dist/cjs/internal/pool.js.map +1 -1
- package/dist/cjs/internal/pubsub.js +2 -6
- package/dist/cjs/internal/pubsub.js.map +1 -1
- package/dist/cjs/internal/query.js.map +1 -1
- package/dist/cjs/internal/queue.js.map +1 -1
- package/dist/cjs/internal/random.js +1 -1
- package/dist/cjs/internal/random.js.map +1 -1
- package/dist/cjs/internal/rateLimiter.js +44 -0
- package/dist/cjs/internal/rateLimiter.js.map +1 -0
- package/dist/cjs/internal/ref.js.map +1 -1
- package/dist/cjs/internal/reloadable.js +1 -9
- package/dist/cjs/internal/reloadable.js.map +1 -1
- package/dist/cjs/internal/runtime.js +0 -1
- package/dist/cjs/internal/runtime.js.map +1 -1
- 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 +7 -7
- package/dist/cjs/internal/sink.js.map +1 -1
- package/dist/cjs/internal/stm/core.js.map +1 -1
- package/dist/cjs/internal/stm/stm/stmState.js.map +1 -1
- package/dist/cjs/internal/stm/stm/tExit.js +2 -2
- package/dist/cjs/internal/stm/stm/tExit.js.map +1 -1
- package/dist/cjs/internal/stm/stm/tryCommit.js.map +1 -1
- package/dist/cjs/internal/stm/stm.js.map +1 -1
- package/dist/cjs/internal/stm/tArray.js.map +1 -1
- package/dist/cjs/internal/stm/tDeferred.js +4 -2
- 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.map +1 -1
- package/dist/cjs/internal/stm/tQueue.js.map +1 -1
- package/dist/cjs/internal/stm/tRandom.js +1 -1
- package/dist/cjs/internal/stm/tRandom.js.map +1 -1
- package/dist/cjs/internal/stm/tReentrantLock.js.map +1 -1
- package/dist/cjs/internal/stm/tRef.js.map +1 -1
- 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/debounceState.js.map +1 -1
- package/dist/cjs/internal/stream/handoff.js.map +1 -1
- package/dist/cjs/internal/stream/handoffSignal.js.map +1 -1
- package/dist/cjs/internal/stream/pull.js.map +1 -1
- package/dist/cjs/internal/stream.js +0 -2
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/subscriptionRef.js.map +1 -1
- package/dist/cjs/internal/supervisor.js.map +1 -1
- package/dist/cjs/internal/take.js +2 -2
- package/dist/cjs/internal/take.js.map +1 -1
- package/dist/cjs/internal/testing/sleep.js.map +1 -1
- package/dist/cjs/internal/tracer.js +2 -2
- package/dist/cjs/internal/tracer.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Cache.d.ts +20 -20
- package/dist/dts/Cache.d.ts.map +1 -1
- package/dist/dts/Cause.d.ts +33 -5
- package/dist/dts/Cause.d.ts.map +1 -1
- package/dist/dts/Channel.d.ts +197 -194
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/Clock.d.ts +7 -7
- package/dist/dts/Clock.d.ts.map +1 -1
- package/dist/dts/Config.d.ts +1 -1
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/ConfigProvider.d.ts +6 -6
- package/dist/dts/ConfigProvider.d.ts.map +1 -1
- package/dist/dts/Console.d.ts +43 -43
- package/dist/dts/Console.d.ts.map +1 -1
- package/dist/dts/Context.d.ts +44 -29
- package/dist/dts/Context.d.ts.map +1 -1
- package/dist/dts/Data.d.ts +38 -57
- package/dist/dts/Data.d.ts.map +1 -1
- package/dist/dts/Deferred.d.ts +36 -36
- package/dist/dts/Deferred.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +732 -729
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Effectable.d.ts +8 -8
- package/dist/dts/Effectable.d.ts.map +1 -1
- package/dist/dts/Either.d.ts +2 -3
- package/dist/dts/Either.d.ts.map +1 -1
- package/dist/dts/Exit.d.ts +74 -74
- package/dist/dts/Exit.d.ts.map +1 -1
- package/dist/dts/Fiber.d.ts +75 -75
- package/dist/dts/Fiber.d.ts.map +1 -1
- package/dist/dts/FiberMap.d.ts +22 -22
- package/dist/dts/FiberMap.d.ts.map +1 -1
- package/dist/dts/FiberRef.d.ts +28 -28
- package/dist/dts/FiberRef.d.ts.map +1 -1
- package/dist/dts/FiberRefs.d.ts +1 -1
- package/dist/dts/FiberRefs.d.ts.map +1 -1
- package/dist/dts/FiberSet.d.ts +16 -16
- package/dist/dts/FiberSet.d.ts.map +1 -1
- package/dist/dts/GroupBy.d.ts +6 -6
- package/dist/dts/GroupBy.d.ts.map +1 -1
- package/dist/dts/KeyedPool.d.ts +22 -22
- package/dist/dts/KeyedPool.d.ts.map +1 -1
- package/dist/dts/Layer.d.ts +126 -126
- package/dist/dts/Layer.d.ts.map +1 -1
- package/dist/dts/LogLevel.d.ts +2 -2
- package/dist/dts/LogLevel.d.ts.map +1 -1
- package/dist/dts/Logger.d.ts +14 -14
- package/dist/dts/Logger.d.ts.map +1 -1
- package/dist/dts/MergeDecision.d.ts +7 -7
- package/dist/dts/MergeState.d.ts +13 -13
- package/dist/dts/MergeState.d.ts.map +1 -1
- package/dist/dts/Metric.d.ts +32 -32
- package/dist/dts/Metric.d.ts.map +1 -1
- package/dist/dts/MetricPolling.d.ts +6 -6
- package/dist/dts/MetricPolling.d.ts.map +1 -1
- package/dist/dts/Number.d.ts +15 -0
- package/dist/dts/Number.d.ts.map +1 -1
- package/dist/dts/Option.d.ts +2 -3
- package/dist/dts/Option.d.ts.map +1 -1
- package/dist/dts/Pool.d.ts +15 -16
- package/dist/dts/Pool.d.ts.map +1 -1
- package/dist/dts/PubSub.d.ts +18 -18
- package/dist/dts/PubSub.d.ts.map +1 -1
- package/dist/dts/Queue.d.ts +40 -40
- package/dist/dts/Queue.d.ts.map +1 -1
- package/dist/dts/Random.d.ts +13 -13
- package/dist/dts/Random.d.ts.map +1 -1
- package/dist/dts/RateLimiter.d.ts +31 -0
- package/dist/dts/RateLimiter.d.ts.map +1 -0
- package/dist/dts/ReadonlyArray.d.ts +3 -3
- package/dist/dts/ReadonlyRecord.d.ts +37 -8
- package/dist/dts/ReadonlyRecord.d.ts.map +1 -1
- package/dist/dts/Ref.d.ts +25 -25
- package/dist/dts/Ref.d.ts.map +1 -1
- package/dist/dts/Reloadable.d.ts +9 -9
- package/dist/dts/Reloadable.d.ts.map +1 -1
- package/dist/dts/Request.d.ts +27 -28
- package/dist/dts/Request.d.ts.map +1 -1
- package/dist/dts/RequestBlock.d.ts +3 -3
- package/dist/dts/RequestBlock.d.ts.map +1 -1
- package/dist/dts/RequestResolver.d.ts +16 -16
- package/dist/dts/RequestResolver.d.ts.map +1 -1
- package/dist/dts/Resource.d.ts +7 -7
- package/dist/dts/Resource.d.ts.map +1 -1
- package/dist/dts/Runtime.d.ts +13 -16
- package/dist/dts/Runtime.d.ts.map +1 -1
- package/dist/dts/RuntimeFlags.d.ts +10 -10
- package/dist/dts/RuntimeFlags.d.ts.map +1 -1
- package/dist/dts/STM.d.ts +303 -303
- package/dist/dts/STM.d.ts.map +1 -1
- package/dist/dts/Schedule.d.ts +47 -47
- package/dist/dts/Schedule.d.ts.map +1 -1
- package/dist/dts/Scope.d.ts +10 -10
- package/dist/dts/Scope.d.ts.map +1 -1
- package/dist/dts/ScopedCache.d.ts +14 -14
- package/dist/dts/ScopedCache.d.ts.map +1 -1
- package/dist/dts/ScopedRef.d.ts +5 -5
- package/dist/dts/ScopedRef.d.ts.map +1 -1
- package/dist/dts/SingleProducerAsyncInput.d.ts +8 -8
- package/dist/dts/SingleProducerAsyncInput.d.ts.map +1 -1
- package/dist/dts/Sink.d.ts +214 -205
- package/dist/dts/Sink.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +595 -592
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/StreamEmit.d.ts +5 -5
- package/dist/dts/StreamEmit.d.ts.map +1 -1
- package/dist/dts/Streamable.d.ts +2 -2
- package/dist/dts/Streamable.d.ts.map +1 -1
- package/dist/dts/SubscriptionRef.d.ts +41 -41
- package/dist/dts/SubscriptionRef.d.ts.map +1 -1
- package/dist/dts/Supervisor.d.ts +17 -17
- package/dist/dts/Supervisor.d.ts.map +1 -1
- package/dist/dts/SynchronizedRef.d.ts +41 -41
- package/dist/dts/SynchronizedRef.d.ts.map +1 -1
- package/dist/dts/TArray.d.ts +72 -72
- package/dist/dts/TArray.d.ts.map +1 -1
- package/dist/dts/TDeferred.d.ts +12 -12
- package/dist/dts/TDeferred.d.ts.map +1 -1
- package/dist/dts/TMap.d.ts +67 -67
- package/dist/dts/TMap.d.ts.map +1 -1
- package/dist/dts/TPriorityQueue.d.ts +23 -23
- package/dist/dts/TPriorityQueue.d.ts.map +1 -1
- package/dist/dts/TPubSub.d.ts +15 -15
- package/dist/dts/TPubSub.d.ts.map +1 -1
- package/dist/dts/TQueue.d.ts +40 -40
- package/dist/dts/TQueue.d.ts.map +1 -1
- package/dist/dts/TRandom.d.ts +13 -13
- package/dist/dts/TRandom.d.ts.map +1 -1
- package/dist/dts/TReentrantLock.d.ts +21 -21
- package/dist/dts/TReentrantLock.d.ts.map +1 -1
- package/dist/dts/TRef.d.ts +25 -25
- package/dist/dts/TRef.d.ts.map +1 -1
- package/dist/dts/TSemaphore.d.ts +15 -15
- package/dist/dts/TSemaphore.d.ts.map +1 -1
- package/dist/dts/TSet.d.ts +49 -49
- package/dist/dts/TSet.d.ts.map +1 -1
- package/dist/dts/Take.d.ts +41 -41
- package/dist/dts/Take.d.ts.map +1 -1
- package/dist/dts/TestAnnotation.d.ts +1 -3
- package/dist/dts/TestAnnotation.d.ts.map +1 -1
- package/dist/dts/TestAnnotations.d.ts +3 -3
- package/dist/dts/TestAnnotations.d.ts.map +1 -1
- package/dist/dts/TestClock.d.ts +18 -18
- package/dist/dts/TestClock.d.ts.map +1 -1
- package/dist/dts/TestConfig.d.ts.map +1 -1
- package/dist/dts/TestContext.d.ts +2 -2
- package/dist/dts/TestContext.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/TestServices.d.ts +31 -31
- package/dist/dts/TestServices.d.ts.map +1 -1
- package/dist/dts/TestSized.d.ts +2 -2
- package/dist/dts/TestSized.d.ts.map +1 -1
- package/dist/dts/Tracer.d.ts +1 -1
- package/dist/dts/Utils.d.ts.map +1 -1
- package/dist/dts/index.d.ts +12 -2
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/channel/channelExecutor.d.ts +1 -1
- package/dist/dts/internal/channel/channelExecutor.d.ts.map +1 -1
- package/dist/dts/internal/core-stream.d.ts +1 -1
- package/dist/dts/internal/core-stream.d.ts.map +1 -1
- package/dist/dts/internal/rateLimiter.d.ts +2 -0
- package/dist/dts/internal/rateLimiter.d.ts.map +1 -0
- package/dist/dts/internal/stm/stm.d.ts +6 -6
- package/dist/dts/internal/stm/stm.d.ts.map +1 -1
- package/dist/dts/internal/version.d.ts +1 -1
- package/dist/esm/Cause.js +13 -0
- package/dist/esm/Cause.js.map +1 -1
- package/dist/esm/Channel.js.map +1 -1
- package/dist/esm/Clock.js.map +1 -1
- package/dist/esm/Console.js.map +1 -1
- package/dist/esm/Context.js +22 -24
- package/dist/esm/Context.js.map +1 -1
- package/dist/esm/Data.js +4 -5
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/Deferred.js +1 -1
- package/dist/esm/Deferred.js.map +1 -1
- package/dist/esm/Effect.js +9 -9
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Effectable.js.map +1 -1
- package/dist/esm/Either.js.map +1 -1
- package/dist/esm/Exit.js +2 -2
- package/dist/esm/Exit.js.map +1 -1
- package/dist/esm/Fiber.js.map +1 -1
- package/dist/esm/FiberMap.js +3 -3
- package/dist/esm/FiberRef.js.map +1 -1
- package/dist/esm/FiberRefs.js.map +1 -1
- package/dist/esm/FiberSet.js +3 -3
- package/dist/esm/FiberSet.js.map +1 -1
- package/dist/esm/GroupBy.js.map +1 -1
- package/dist/esm/Layer.js.map +1 -1
- package/dist/esm/LogLevel.js.map +1 -1
- package/dist/esm/Logger.js.map +1 -1
- package/dist/esm/Metric.js.map +1 -1
- package/dist/esm/Number.js +18 -0
- package/dist/esm/Number.js.map +1 -1
- package/dist/esm/Option.js.map +1 -1
- package/dist/esm/Pool.js.map +1 -1
- package/dist/esm/PubSub.js.map +1 -1
- package/dist/esm/Queue.js.map +1 -1
- package/dist/esm/Random.js.map +1 -1
- package/dist/esm/RateLimiter.js +7 -0
- package/dist/esm/RateLimiter.js.map +1 -0
- package/dist/esm/ReadonlyRecord.js +44 -8
- package/dist/esm/ReadonlyRecord.js.map +1 -1
- package/dist/esm/Ref.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 +1 -4
- package/dist/esm/Runtime.js.map +1 -1
- package/dist/esm/RuntimeFlags.js.map +1 -1
- package/dist/esm/STM.js.map +1 -1
- package/dist/esm/Schedule.js.map +1 -1
- package/dist/esm/Scope.js.map +1 -1
- package/dist/esm/ScopedRef.js.map +1 -1
- package/dist/esm/SingleProducerAsyncInput.js.map +1 -1
- package/dist/esm/Sink.js.map +1 -1
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/SubscriptionRef.js.map +1 -1
- package/dist/esm/Supervisor.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/TRandom.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 +6 -6
- package/dist/esm/Take.js.map +1 -1
- package/dist/esm/TestAnnotation.js +10 -13
- package/dist/esm/TestAnnotation.js.map +1 -1
- package/dist/esm/TestAnnotations.js +1 -1
- package/dist/esm/TestAnnotations.js.map +1 -1
- package/dist/esm/TestClock.js +1 -1
- package/dist/esm/TestClock.js.map +1 -1
- package/dist/esm/TestConfig.js +1 -1
- package/dist/esm/TestConfig.js.map +1 -1
- package/dist/esm/TestContext.js.map +1 -1
- package/dist/esm/TestLive.js +1 -1
- package/dist/esm/TestLive.js.map +1 -1
- package/dist/esm/TestServices.js.map +1 -1
- package/dist/esm/TestSized.js +1 -1
- package/dist/esm/TestSized.js.map +1 -1
- package/dist/esm/Utils.js +1 -1
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/index.js +12 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/cache.js.map +1 -1
- package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
- package/dist/esm/internal/channel/mergeDecision.js +2 -6
- package/dist/esm/internal/channel/mergeDecision.js.map +1 -1
- package/dist/esm/internal/channel/singleProducerAsyncInput.js.map +1 -1
- package/dist/esm/internal/channel.js +1 -1
- package/dist/esm/internal/channel.js.map +1 -1
- package/dist/esm/internal/clock.js +1 -1
- package/dist/esm/internal/clock.js.map +1 -1
- package/dist/esm/internal/configProvider.js +2 -4
- package/dist/esm/internal/configProvider.js.map +1 -1
- package/dist/esm/internal/console.js.map +1 -1
- package/dist/esm/internal/context.js +28 -20
- package/dist/esm/internal/context.js.map +1 -1
- package/dist/esm/internal/core-effect.js +12 -26
- 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 +57 -127
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/data.js.map +1 -1
- package/dist/esm/internal/defaultServices/console.js +1 -1
- package/dist/esm/internal/defaultServices/console.js.map +1 -1
- package/dist/esm/internal/defaultServices.js.map +1 -1
- package/dist/esm/internal/deferred.js.map +1 -1
- package/dist/esm/internal/differ/contextPatch.js +9 -9
- package/dist/esm/internal/differ/contextPatch.js.map +1 -1
- package/dist/esm/internal/effect/circular.js +5 -8
- package/dist/esm/internal/effect/circular.js.map +1 -1
- package/dist/esm/internal/effectable.js +4 -4
- package/dist/esm/internal/effectable.js.map +1 -1
- package/dist/esm/internal/fiber.js +2 -6
- package/dist/esm/internal/fiber.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +10 -19
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/groupBy.js.map +1 -1
- package/dist/esm/internal/keyedPool.js.map +1 -1
- package/dist/esm/internal/layer/circular.js.map +1 -1
- package/dist/esm/internal/layer.js +3 -3
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/logSpan.js +3 -5
- package/dist/esm/internal/logSpan.js.map +1 -1
- package/dist/esm/internal/metric.js.map +1 -1
- package/dist/esm/internal/pool.js.map +1 -1
- package/dist/esm/internal/pubsub.js +1 -5
- package/dist/esm/internal/pubsub.js.map +1 -1
- package/dist/esm/internal/query.js.map +1 -1
- package/dist/esm/internal/queue.js.map +1 -1
- package/dist/esm/internal/random.js +1 -1
- package/dist/esm/internal/random.js.map +1 -1
- package/dist/esm/internal/rateLimiter.js +12 -0
- package/dist/esm/internal/rateLimiter.js.map +1 -0
- package/dist/esm/internal/ref.js.map +1 -1
- package/dist/esm/internal/reloadable.js +1 -9
- package/dist/esm/internal/reloadable.js.map +1 -1
- package/dist/esm/internal/runtime.js +0 -1
- package/dist/esm/internal/runtime.js.map +1 -1
- 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 +7 -7
- package/dist/esm/internal/sink.js.map +1 -1
- package/dist/esm/internal/stm/core.js.map +1 -1
- package/dist/esm/internal/stm/stm/stmState.js.map +1 -1
- package/dist/esm/internal/stm/stm/tExit.js +2 -2
- package/dist/esm/internal/stm/stm/tExit.js.map +1 -1
- package/dist/esm/internal/stm/stm/tryCommit.js.map +1 -1
- package/dist/esm/internal/stm/stm.js.map +1 -1
- package/dist/esm/internal/stm/tArray.js.map +1 -1
- package/dist/esm/internal/stm/tDeferred.js +4 -2
- 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.map +1 -1
- package/dist/esm/internal/stm/tQueue.js.map +1 -1
- package/dist/esm/internal/stm/tRandom.js +1 -1
- package/dist/esm/internal/stm/tRandom.js.map +1 -1
- package/dist/esm/internal/stm/tReentrantLock.js.map +1 -1
- package/dist/esm/internal/stm/tRef.js.map +1 -1
- 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/debounceState.js.map +1 -1
- package/dist/esm/internal/stream/handoff.js.map +1 -1
- package/dist/esm/internal/stream/handoffSignal.js.map +1 -1
- package/dist/esm/internal/stream/pull.js.map +1 -1
- package/dist/esm/internal/stream.js +0 -2
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/subscriptionRef.js.map +1 -1
- package/dist/esm/internal/supervisor.js.map +1 -1
- package/dist/esm/internal/take.js +2 -2
- package/dist/esm/internal/take.js.map +1 -1
- package/dist/esm/internal/testing/sleep.js.map +1 -1
- package/dist/esm/internal/tracer.js +2 -2
- package/dist/esm/internal/tracer.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +9 -1
- package/src/Cache.ts +20 -20
- package/src/Cause.ts +37 -13
- package/src/Channel.ts +802 -794
- package/src/Clock.ts +7 -7
- package/src/Config.ts +1 -1
- package/src/ConfigProvider.ts +6 -6
- package/src/Console.ts +44 -48
- package/src/Context.ts +52 -30
- package/src/Data.ts +38 -61
- package/src/Deferred.ts +39 -41
- package/src/Effect.ts +1187 -1206
- package/src/Effectable.ts +8 -8
- package/src/Either.ts +2 -3
- package/src/Exit.ts +88 -105
- package/src/Fiber.ts +77 -83
- package/src/FiberMap.ts +77 -77
- package/src/FiberRef.ts +28 -28
- package/src/FiberRefs.ts +1 -1
- package/src/FiberSet.ts +61 -62
- package/src/GroupBy.ts +8 -12
- package/src/KeyedPool.ts +22 -22
- package/src/Layer.ts +187 -181
- package/src/LogLevel.ts +7 -6
- package/src/Logger.ts +18 -18
- package/src/MergeDecision.ts +7 -7
- package/src/MergeState.ts +16 -16
- package/src/Metric.ts +39 -39
- package/src/MetricPolling.ts +6 -6
- package/src/Number.ts +19 -0
- package/src/Option.ts +2 -3
- package/src/Pool.ts +15 -16
- package/src/PubSub.ts +18 -18
- package/src/Queue.ts +43 -46
- package/src/Random.ts +13 -15
- package/src/RateLimiter.ts +37 -0
- package/src/ReadonlyRecord.ts +49 -8
- package/src/Ref.ts +25 -25
- package/src/Reloadable.ts +10 -10
- package/src/Request.ts +31 -31
- package/src/RequestBlock.ts +3 -3
- package/src/RequestResolver.ts +21 -21
- package/src/Resource.ts +13 -13
- package/src/Runtime.ts +16 -19
- package/src/RuntimeFlags.ts +10 -10
- package/src/STM.ts +361 -362
- package/src/Schedule.ts +47 -47
- package/src/Scheduler.ts +2 -2
- package/src/Scope.ts +14 -15
- package/src/ScopedCache.ts +14 -14
- package/src/ScopedRef.ts +7 -7
- package/src/SingleProducerAsyncInput.ts +8 -9
- package/src/Sink.ts +357 -381
- package/src/Stream.ts +935 -1033
- package/src/StreamEmit.ts +5 -5
- package/src/Streamable.ts +2 -2
- package/src/SubscriptionRef.ts +51 -51
- package/src/Supervisor.ts +26 -26
- package/src/SynchronizedRef.ts +44 -44
- package/src/TArray.ts +74 -74
- package/src/TDeferred.ts +14 -14
- package/src/TMap.ts +72 -72
- package/src/TPriorityQueue.ts +23 -24
- package/src/TPubSub.ts +15 -15
- package/src/TQueue.ts +40 -40
- package/src/TRandom.ts +13 -13
- package/src/TReentrantLock.ts +21 -21
- package/src/TRef.ts +25 -25
- package/src/TSemaphore.ts +15 -15
- package/src/TSet.ts +49 -49
- package/src/Take.ts +51 -51
- package/src/TestAnnotation.ts +6 -17
- package/src/TestAnnotations.ts +7 -9
- package/src/TestClock.ts +39 -45
- package/src/TestConfig.ts +1 -3
- package/src/TestContext.ts +3 -3
- package/src/TestLive.ts +3 -5
- package/src/TestServices.ts +45 -47
- package/src/TestSized.ts +5 -5
- package/src/Tracer.ts +1 -1
- package/src/Utils.ts +8 -10
- package/src/index.ts +13 -2
- package/src/internal/blockedRequests.ts +2 -2
- package/src/internal/cache.ts +38 -38
- package/src/internal/channel/channelExecutor.ts +65 -73
- package/src/internal/channel/channelState.ts +11 -11
- package/src/internal/channel/continuation.ts +10 -10
- package/src/internal/channel/mergeDecision.ts +14 -16
- package/src/internal/channel/mergeState.ts +12 -12
- package/src/internal/channel/singleProducerAsyncInput.ts +15 -17
- package/src/internal/channel/subexecutor.ts +7 -7
- package/src/internal/channel.ts +901 -980
- package/src/internal/clock.ts +6 -6
- package/src/internal/concurrency.ts +9 -9
- package/src/internal/configProvider.ts +29 -36
- package/src/internal/console.ts +12 -12
- package/src/internal/context.ts +32 -23
- package/src/internal/core-effect.ts +655 -616
- package/src/internal/core-stream.ts +317 -325
- package/src/internal/core.ts +856 -790
- package/src/internal/data.ts +2 -3
- package/src/internal/dataSource.ts +14 -14
- package/src/internal/defaultServices/console.ts +3 -1
- package/src/internal/defaultServices.ts +21 -21
- package/src/internal/deferred.ts +9 -9
- package/src/internal/differ/contextPatch.ts +17 -17
- package/src/internal/effect/circular.ts +154 -159
- package/src/internal/effectable.ts +7 -7
- package/src/internal/fiber.ts +55 -59
- package/src/internal/fiberRefs.ts +1 -1
- package/src/internal/fiberRuntime.ts +426 -463
- package/src/internal/groupBy.ts +59 -62
- package/src/internal/keyedPool.ts +37 -37
- package/src/internal/layer/circular.ts +37 -37
- package/src/internal/layer.ts +235 -240
- package/src/internal/logSpan.ts +3 -5
- package/src/internal/metric/polling.ts +5 -5
- package/src/internal/metric.ts +54 -55
- package/src/internal/pool.ts +72 -72
- package/src/internal/pubsub.ts +75 -84
- package/src/internal/query.ts +25 -27
- package/src/internal/queue.ts +65 -70
- package/src/internal/random.ts +9 -9
- package/src/internal/rateLimiter.ts +30 -0
- package/src/internal/ref.ts +24 -24
- package/src/internal/reloadable.ts +11 -31
- package/src/internal/request.ts +14 -14
- package/src/internal/resource.ts +8 -8
- package/src/internal/runtime.ts +21 -22
- package/src/internal/schedule.ts +131 -134
- package/src/internal/scopedCache.ts +35 -32
- package/src/internal/scopedRef.ts +14 -14
- package/src/internal/sink.ts +507 -565
- package/src/internal/stm/core.ts +101 -102
- package/src/internal/stm/stm/stmState.ts +10 -10
- package/src/internal/stm/stm/tExit.ts +18 -18
- package/src/internal/stm/stm/tryCommit.ts +5 -5
- package/src/internal/stm/stm.ts +363 -374
- package/src/internal/stm/tArray.ts +92 -92
- package/src/internal/stm/tDeferred.ts +16 -14
- package/src/internal/stm/tMap.ts +83 -84
- package/src/internal/stm/tPriorityQueue.ts +24 -25
- package/src/internal/stm/tPubSub.ts +37 -38
- package/src/internal/stm/tQueue.ts +44 -48
- package/src/internal/stm/tRandom.ts +18 -18
- package/src/internal/stm/tReentrantLock.ts +28 -28
- package/src/internal/stm/tRef.ts +25 -25
- package/src/internal/stm/tSemaphore.ts +16 -16
- package/src/internal/stm/tSet.ts +51 -52
- package/src/internal/stream/debounceState.ts +7 -7
- package/src/internal/stream/emit.ts +4 -4
- package/src/internal/stream/handoff.ts +19 -19
- package/src/internal/stream/handoffSignal.ts +4 -4
- package/src/internal/stream/pull.ts +10 -11
- package/src/internal/stream.ts +1770 -1788
- package/src/internal/subscriptionRef.ts +17 -17
- package/src/internal/supervisor.ts +49 -56
- package/src/internal/synchronizedRef.ts +27 -27
- package/src/internal/take.ts +61 -61
- package/src/internal/testing/sleep.ts +2 -2
- package/src/internal/testing/suspendedWarningData.ts +2 -2
- package/src/internal/testing/warningData.ts +2 -2
- package/src/internal/tracer.ts +2 -6
- package/src/internal/version.ts +1 -1
package/src/Effectable.ts
CHANGED
|
@@ -60,26 +60,26 @@ export type ChannelTypeId = Channel.ChannelTypeId
|
|
|
60
60
|
* @category models
|
|
61
61
|
*/
|
|
62
62
|
export interface CommitPrimitive {
|
|
63
|
-
new<
|
|
63
|
+
new<A, E = never, R = never>(): Effect.Effect<A, E, R>
|
|
64
64
|
}
|
|
65
65
|
|
|
66
66
|
/**
|
|
67
67
|
* @since 2.0.0
|
|
68
68
|
* @category prototypes
|
|
69
69
|
*/
|
|
70
|
-
export const EffectPrototype: Effect.Effect<never
|
|
70
|
+
export const EffectPrototype: Effect.Effect<never> = internal.EffectPrototype
|
|
71
71
|
|
|
72
72
|
/**
|
|
73
73
|
* @since 2.0.0
|
|
74
74
|
* @category prototypes
|
|
75
75
|
*/
|
|
76
|
-
export const CommitPrototype: Effect.Effect<never
|
|
76
|
+
export const CommitPrototype: Effect.Effect<never> = internal.CommitPrototype
|
|
77
77
|
|
|
78
78
|
/**
|
|
79
79
|
* @since 2.0.0
|
|
80
80
|
* @category prototypes
|
|
81
81
|
*/
|
|
82
|
-
export const StructuralCommitPrototype: Effect.Effect<never
|
|
82
|
+
export const StructuralCommitPrototype: Effect.Effect<never> = internal.StructuralCommitPrototype
|
|
83
83
|
|
|
84
84
|
const Base: CommitPrimitive = internal.Base
|
|
85
85
|
const StructuralBase: CommitPrimitive = internal.StructuralBase
|
|
@@ -88,20 +88,20 @@ const StructuralBase: CommitPrimitive = internal.StructuralBase
|
|
|
88
88
|
* @since 2.0.0
|
|
89
89
|
* @category constructors
|
|
90
90
|
*/
|
|
91
|
-
export abstract class Class<
|
|
91
|
+
export abstract class Class<A, E = never, R = never> extends Base<A, E, R> {
|
|
92
92
|
/**
|
|
93
93
|
* @since 2.0.0
|
|
94
94
|
*/
|
|
95
|
-
abstract commit(): Effect.Effect<
|
|
95
|
+
abstract commit(): Effect.Effect<A, E, R>
|
|
96
96
|
}
|
|
97
97
|
|
|
98
98
|
/**
|
|
99
99
|
* @since 2.0.0
|
|
100
100
|
* @category constructors
|
|
101
101
|
*/
|
|
102
|
-
export abstract class StructuralClass<
|
|
102
|
+
export abstract class StructuralClass<A, E = never, R = never> extends StructuralBase<A, E, R> {
|
|
103
103
|
/**
|
|
104
104
|
* @since 2.0.0
|
|
105
105
|
*/
|
|
106
|
-
abstract commit(): Effect.Effect<
|
|
106
|
+
abstract commit(): Effect.Effect<A, E, R>
|
|
107
107
|
}
|
package/src/Either.ts
CHANGED
|
@@ -2,7 +2,6 @@
|
|
|
2
2
|
* @since 2.0.0
|
|
3
3
|
*/
|
|
4
4
|
|
|
5
|
-
import type * as Data from "./Data.js"
|
|
6
5
|
import * as Equivalence from "./Equivalence.js"
|
|
7
6
|
import type { LazyArg } from "./Function.js"
|
|
8
7
|
import { constNull, constUndefined, dual, identity } from "./Function.js"
|
|
@@ -39,7 +38,7 @@ export type TypeId = typeof TypeId
|
|
|
39
38
|
* @category models
|
|
40
39
|
* @since 2.0.0
|
|
41
40
|
*/
|
|
42
|
-
export interface Left<out E, out A> extends
|
|
41
|
+
export interface Left<out E, out A> extends Pipeable, Inspectable {
|
|
43
42
|
readonly _tag: "Left"
|
|
44
43
|
readonly _op: "Left"
|
|
45
44
|
readonly left: E
|
|
@@ -56,7 +55,7 @@ export interface Left<out E, out A> extends Data.Case, Pipeable, Inspectable {
|
|
|
56
55
|
* @category models
|
|
57
56
|
* @since 2.0.0
|
|
58
57
|
*/
|
|
59
|
-
export interface Right<out E, out A> extends
|
|
58
|
+
export interface Right<out E, out A> extends Pipeable, Inspectable {
|
|
60
59
|
readonly _tag: "Right"
|
|
61
60
|
readonly _op: "Right"
|
|
62
61
|
readonly right: A
|
package/src/Exit.ts
CHANGED
|
@@ -14,16 +14,16 @@ import type { NoInfer } from "./Types.js"
|
|
|
14
14
|
import type * as Unify from "./Unify.js"
|
|
15
15
|
|
|
16
16
|
/**
|
|
17
|
-
* An `Exit<
|
|
17
|
+
* An `Exit<A, E = never>` describes the result of a executing an `Effect` workflow.
|
|
18
18
|
*
|
|
19
|
-
* There are two possible values for an `Exit<
|
|
19
|
+
* There are two possible values for an `Exit<A, E>`:
|
|
20
20
|
* - `Exit.Success` contain a success value of type `A`
|
|
21
21
|
* - `Exit.Failure` contains a failure `Cause` of type `E`
|
|
22
22
|
*
|
|
23
23
|
* @since 2.0.0
|
|
24
24
|
* @category models
|
|
25
25
|
*/
|
|
26
|
-
export type Exit<
|
|
26
|
+
export type Exit<A, E = never> = Success<A, E> | Failure<A, E>
|
|
27
27
|
|
|
28
28
|
/**
|
|
29
29
|
* Represents a failed `Effect` workflow containing the `Cause` of the failure
|
|
@@ -32,7 +32,7 @@ export type Exit<E, A> = Failure<E, A> | Success<E, A>
|
|
|
32
32
|
* @since 2.0.0
|
|
33
33
|
* @category models
|
|
34
34
|
*/
|
|
35
|
-
export interface Failure<out
|
|
35
|
+
export interface Failure<out A, out E> extends Effect.Effect<A, E>, Pipeable, Inspectable {
|
|
36
36
|
readonly _tag: "Failure"
|
|
37
37
|
readonly _op: "Failure"
|
|
38
38
|
readonly cause: Cause.Cause<E>
|
|
@@ -48,7 +48,7 @@ export interface Failure<out E, out A> extends Effect.Effect<never, E, A>, Pipea
|
|
|
48
48
|
* @since 2.0.0
|
|
49
49
|
*/
|
|
50
50
|
export interface ExitUnify<A extends { [Unify.typeSymbol]?: any }> extends Effect.EffectUnify<A> {
|
|
51
|
-
Exit?: () => A[Unify.typeSymbol] extends Exit<infer
|
|
51
|
+
Exit?: () => A[Unify.typeSymbol] extends Exit<infer A0, infer E0> | infer _ ? Exit<A0, E0> : never
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
/**
|
|
@@ -66,7 +66,7 @@ export interface ExitUnifyIgnore extends Effect.EffectUnifyIgnore {
|
|
|
66
66
|
* @since 2.0.0
|
|
67
67
|
* @category models
|
|
68
68
|
*/
|
|
69
|
-
export interface Success<out
|
|
69
|
+
export interface Success<out A, out E> extends Effect.Effect<A, E>, Pipeable, Inspectable {
|
|
70
70
|
readonly _tag: "Success"
|
|
71
71
|
readonly _op: "Success"
|
|
72
72
|
readonly value: A
|
|
@@ -91,7 +91,7 @@ export const isExit: (u: unknown) => u is Exit<unknown, unknown> = core.exitIsEx
|
|
|
91
91
|
* @since 2.0.0
|
|
92
92
|
* @category refinements
|
|
93
93
|
*/
|
|
94
|
-
export const isFailure: <
|
|
94
|
+
export const isFailure: <A, E>(self: Exit<A, E>) => self is Failure<A, E> = core.exitIsFailure
|
|
95
95
|
|
|
96
96
|
/**
|
|
97
97
|
* Returns `true` if the specified `Exit` is a `Success`, `false` otherwise.
|
|
@@ -99,7 +99,7 @@ export const isFailure: <E, A>(self: Exit<E, A>) => self is Failure<E, A> = core
|
|
|
99
99
|
* @since 2.0.0
|
|
100
100
|
* @category refinements
|
|
101
101
|
*/
|
|
102
|
-
export const isSuccess: <
|
|
102
|
+
export const isSuccess: <A, E>(self: Exit<A, E>) => self is Success<A, E> = core.exitIsSuccess
|
|
103
103
|
|
|
104
104
|
/**
|
|
105
105
|
* Returns `true` if the specified exit is a `Failure` **and** the `Cause` of
|
|
@@ -108,7 +108,7 @@ export const isSuccess: <E, A>(self: Exit<E, A>) => self is Success<E, A> = core
|
|
|
108
108
|
* @since 2.0.0
|
|
109
109
|
* @category getters
|
|
110
110
|
*/
|
|
111
|
-
export const isInterrupted: <
|
|
111
|
+
export const isInterrupted: <A, E>(self: Exit<A, E>) => boolean = core.exitIsInterrupted
|
|
112
112
|
|
|
113
113
|
/**
|
|
114
114
|
* Maps the `Success` value of the specified exit to the provided constant
|
|
@@ -118,8 +118,8 @@ export const isInterrupted: <E, A>(self: Exit<E, A>) => boolean = core.exitIsInt
|
|
|
118
118
|
* @category mapping
|
|
119
119
|
*/
|
|
120
120
|
export const as: {
|
|
121
|
-
<A2>(value: A2): <
|
|
122
|
-
<
|
|
121
|
+
<A2>(value: A2): <A, E>(self: Exit<A, E>) => Exit<A2, E>
|
|
122
|
+
<A, E, A2>(self: Exit<A, E>, value: A2): Exit<A2, E>
|
|
123
123
|
} = core.exitAs
|
|
124
124
|
|
|
125
125
|
/**
|
|
@@ -128,7 +128,7 @@ export const as: {
|
|
|
128
128
|
* @since 2.0.0
|
|
129
129
|
* @category mapping
|
|
130
130
|
*/
|
|
131
|
-
export const asUnit: <
|
|
131
|
+
export const asUnit: <A, E>(self: Exit<A, E>) => Exit<void, E> = core.exitAsUnit
|
|
132
132
|
|
|
133
133
|
/**
|
|
134
134
|
* Returns a `Some<Cause<E>>` if the specified exit is a `Failure`, `None`
|
|
@@ -137,21 +137,19 @@ export const asUnit: <E, A>(self: Exit<E, A>) => Exit<E, void> = core.exitAsUnit
|
|
|
137
137
|
* @since 2.0.0
|
|
138
138
|
* @category getters
|
|
139
139
|
*/
|
|
140
|
-
export const causeOption: <
|
|
140
|
+
export const causeOption: <A, E>(self: Exit<A, E>) => Option.Option<Cause.Cause<E>> = core.exitCauseOption
|
|
141
141
|
|
|
142
142
|
/**
|
|
143
|
-
* Collects all of the specified exit values into a `Some<Exit<
|
|
143
|
+
* Collects all of the specified exit values into a `Some<Exit<List<A>, E>>`. If
|
|
144
144
|
* the provided iterable contains no elements, `None` will be returned.
|
|
145
145
|
*
|
|
146
146
|
* @since 2.0.0
|
|
147
147
|
* @category constructors
|
|
148
148
|
*/
|
|
149
|
-
export const all: <
|
|
150
|
-
exits: Iterable<Exit<
|
|
151
|
-
options?: {
|
|
152
|
-
|
|
153
|
-
}
|
|
154
|
-
) => Option.Option<Exit<E, Array<A>>> = core.exitCollectAll
|
|
149
|
+
export const all: <A, E>(
|
|
150
|
+
exits: Iterable<Exit<A, E>>,
|
|
151
|
+
options?: { readonly parallel?: boolean | undefined } | undefined
|
|
152
|
+
) => Option.Option<Exit<Array<A>, E>> = core.exitCollectAll
|
|
155
153
|
|
|
156
154
|
/**
|
|
157
155
|
* Constructs a new `Exit.Failure` from the specified unrecoverable defect.
|
|
@@ -159,7 +157,7 @@ export const all: <E, A>(
|
|
|
159
157
|
* @since 2.0.0
|
|
160
158
|
* @category constructors
|
|
161
159
|
*/
|
|
162
|
-
export const die: (defect: unknown) => Exit<never
|
|
160
|
+
export const die: (defect: unknown) => Exit<never> = core.exitDie
|
|
163
161
|
|
|
164
162
|
/**
|
|
165
163
|
* Executes the predicate on the value of the specified exit if it is a
|
|
@@ -169,10 +167,10 @@ export const die: (defect: unknown) => Exit<never, never> = core.exitDie
|
|
|
169
167
|
* @category elements
|
|
170
168
|
*/
|
|
171
169
|
export const exists: {
|
|
172
|
-
<A, B extends A>(refinement: Refinement<NoInfer<A>, B>): <E>(self: Exit<
|
|
173
|
-
<A>(predicate: Predicate<NoInfer<A>>): <E>(self: Exit<
|
|
174
|
-
<
|
|
175
|
-
<
|
|
170
|
+
<A, B extends A>(refinement: Refinement<NoInfer<A>, B>): <E>(self: Exit<A, E>) => self is Exit<B>
|
|
171
|
+
<A>(predicate: Predicate<NoInfer<A>>): <E>(self: Exit<A, E>) => boolean
|
|
172
|
+
<A, E, B extends A>(self: Exit<A, E>, refinement: Refinement<A, B>): self is Exit<B>
|
|
173
|
+
<A, E>(self: Exit<A, E>, predicate: Predicate<A>): boolean
|
|
176
174
|
} = core.exitExists
|
|
177
175
|
|
|
178
176
|
/**
|
|
@@ -182,7 +180,7 @@ export const exists: {
|
|
|
182
180
|
* @since 2.0.0
|
|
183
181
|
* @category constructors
|
|
184
182
|
*/
|
|
185
|
-
export const fail: <E>(error: E) => Exit<
|
|
183
|
+
export const fail: <E>(error: E) => Exit<never, E> = core.exitFail
|
|
186
184
|
|
|
187
185
|
/**
|
|
188
186
|
* Constructs a new `Exit.Failure` from the specified `Cause` of type `E`.
|
|
@@ -190,15 +188,15 @@ export const fail: <E>(error: E) => Exit<E, never> = core.exitFail
|
|
|
190
188
|
* @since 2.0.0
|
|
191
189
|
* @category constructors
|
|
192
190
|
*/
|
|
193
|
-
export const failCause: <E>(cause: Cause.Cause<E>) => Exit<
|
|
191
|
+
export const failCause: <E>(cause: Cause.Cause<E>) => Exit<never, E> = core.exitFailCause
|
|
194
192
|
|
|
195
193
|
/**
|
|
196
194
|
* @since 2.0.0
|
|
197
195
|
* @category sequencing
|
|
198
196
|
*/
|
|
199
197
|
export const flatMap: {
|
|
200
|
-
<A,
|
|
201
|
-
<
|
|
198
|
+
<A, A2, E2>(f: (a: A) => Exit<A2, E2>): <E>(self: Exit<A, E>) => Exit<A2, E2 | E>
|
|
199
|
+
<A, E, E2, A2>(self: Exit<A, E>, f: (a: A) => Exit<A2, E2>): Exit<A2, E | E2>
|
|
202
200
|
} = core.exitFlatMap
|
|
203
201
|
|
|
204
202
|
/**
|
|
@@ -206,37 +204,34 @@ export const flatMap: {
|
|
|
206
204
|
* @category sequencing
|
|
207
205
|
*/
|
|
208
206
|
export const flatMapEffect: {
|
|
209
|
-
<
|
|
210
|
-
f: (a: A) => Effect.Effect<
|
|
211
|
-
): (self: Exit<
|
|
212
|
-
<E, A, R, E2,
|
|
213
|
-
self: Exit<E, A>,
|
|
214
|
-
f: (a: A) => Effect.Effect<R, E2, Exit<E, A2>>
|
|
215
|
-
): Effect.Effect<R, E2, Exit<E, A2>>
|
|
207
|
+
<A, E, A2, E2, R>(
|
|
208
|
+
f: (a: A) => Effect.Effect<Exit<A2, E>, E2, R>
|
|
209
|
+
): (self: Exit<A, E>) => Effect.Effect<Exit<A2, E>, E2, R>
|
|
210
|
+
<A, E, A2, E2, R>(self: Exit<A, E>, f: (a: A) => Effect.Effect<Exit<A2, E>, E2, R>): Effect.Effect<Exit<A2, E>, E2, R>
|
|
216
211
|
} = core.exitFlatMapEffect
|
|
217
212
|
|
|
218
213
|
/**
|
|
219
214
|
* @since 2.0.0
|
|
220
215
|
* @category sequencing
|
|
221
216
|
*/
|
|
222
|
-
export const flatten: <
|
|
217
|
+
export const flatten: <A, E, E2>(self: Exit<Exit<A, E>, E2>) => Exit<A, E | E2> = core.exitFlatten
|
|
223
218
|
|
|
224
219
|
/**
|
|
225
220
|
* @since 2.0.0
|
|
226
221
|
* @category traversing
|
|
227
222
|
*/
|
|
228
223
|
export const forEachEffect: {
|
|
229
|
-
<A,
|
|
230
|
-
<
|
|
224
|
+
<A, B, E2, R>(f: (a: A) => Effect.Effect<B, E2, R>): <E>(self: Exit<A, E>) => Effect.Effect<Exit<B, E2 | E>, never, R>
|
|
225
|
+
<A, E, B, E2, R>(self: Exit<A, E>, f: (a: A) => Effect.Effect<B, E2, R>): Effect.Effect<Exit<B, E | E2>, never, R>
|
|
231
226
|
} = core.exitForEachEffect
|
|
232
227
|
|
|
233
228
|
/**
|
|
234
|
-
* Converts an `Either<E, A>` into an `Exit<
|
|
229
|
+
* Converts an `Either<E, A>` into an `Exit<A, E>`.
|
|
235
230
|
*
|
|
236
231
|
* @since 2.0.0
|
|
237
232
|
* @category conversions
|
|
238
233
|
*/
|
|
239
|
-
export const fromEither: <E, A>(either: Either.Either<E, A>) => Exit<
|
|
234
|
+
export const fromEither: <E, A>(either: Either.Either<E, A>) => Exit<A, E> = core.exitFromEither
|
|
240
235
|
|
|
241
236
|
/**
|
|
242
237
|
* Converts an `Option<A>` into an `Exit<void, A>`.
|
|
@@ -244,7 +239,7 @@ export const fromEither: <E, A>(either: Either.Either<E, A>) => Exit<E, A> = cor
|
|
|
244
239
|
* @since 2.0.0
|
|
245
240
|
* @category conversions
|
|
246
241
|
*/
|
|
247
|
-
export const fromOption: <A>(option: Option.Option<A>) => Exit<
|
|
242
|
+
export const fromOption: <A>(option: Option.Option<A>) => Exit<A, void> = core.exitFromOption
|
|
248
243
|
|
|
249
244
|
/**
|
|
250
245
|
* Returns the `A` if specified exit is a `Success`, otherwise returns the
|
|
@@ -255,8 +250,8 @@ export const fromOption: <A>(option: Option.Option<A>) => Exit<void, A> = core.e
|
|
|
255
250
|
* @category getters
|
|
256
251
|
*/
|
|
257
252
|
export const getOrElse: {
|
|
258
|
-
<E, A2>(orElse: (cause: Cause.Cause<E>) => A2): <
|
|
259
|
-
<
|
|
253
|
+
<E, A2>(orElse: (cause: Cause.Cause<E>) => A2): <A>(self: Exit<A, E>) => A2 | A
|
|
254
|
+
<A, E, A2>(self: Exit<A, E>, orElse: (cause: Cause.Cause<E>) => A2): A | A2
|
|
260
255
|
} = core.exitGetOrElse
|
|
261
256
|
|
|
262
257
|
/**
|
|
@@ -266,7 +261,7 @@ export const getOrElse: {
|
|
|
266
261
|
* @since 2.0.0
|
|
267
262
|
* @category constructors
|
|
268
263
|
*/
|
|
269
|
-
export const interrupt: (fiberId: FiberId.FiberId) => Exit<never
|
|
264
|
+
export const interrupt: (fiberId: FiberId.FiberId) => Exit<never> = core.exitInterrupt
|
|
270
265
|
|
|
271
266
|
/**
|
|
272
267
|
* Maps over the `Success` value of the specified exit using the provided
|
|
@@ -276,8 +271,8 @@ export const interrupt: (fiberId: FiberId.FiberId) => Exit<never, never> = core.
|
|
|
276
271
|
* @category mapping
|
|
277
272
|
*/
|
|
278
273
|
export const map: {
|
|
279
|
-
<A, B>(f: (a: A) => B): <E>(self: Exit<
|
|
280
|
-
<
|
|
274
|
+
<A, B>(f: (a: A) => B): <E>(self: Exit<A, E>) => Exit<B, E>
|
|
275
|
+
<A, E, B>(self: Exit<A, E>, f: (a: A) => B): Exit<B, E>
|
|
281
276
|
} = core.exitMap
|
|
282
277
|
|
|
283
278
|
/**
|
|
@@ -289,18 +284,12 @@ export const map: {
|
|
|
289
284
|
*/
|
|
290
285
|
export const mapBoth: {
|
|
291
286
|
<E, A, E2, A2>(
|
|
292
|
-
options: {
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
<
|
|
298
|
-
self: Exit<E, A>,
|
|
299
|
-
options: {
|
|
300
|
-
readonly onFailure: (e: E) => E2
|
|
301
|
-
readonly onSuccess: (a: A) => A2
|
|
302
|
-
}
|
|
303
|
-
): Exit<E2, A2>
|
|
287
|
+
options: { readonly onFailure: (e: E) => E2; readonly onSuccess: (a: A) => A2 }
|
|
288
|
+
): (self: Exit<A, E>) => Exit<A2, E2>
|
|
289
|
+
<A, E, E2, A2>(
|
|
290
|
+
self: Exit<A, E>,
|
|
291
|
+
options: { readonly onFailure: (e: E) => E2; readonly onSuccess: (a: A) => A2 }
|
|
292
|
+
): Exit<A2, E2>
|
|
304
293
|
} = core.exitMapBoth
|
|
305
294
|
|
|
306
295
|
/**
|
|
@@ -311,8 +300,8 @@ export const mapBoth: {
|
|
|
311
300
|
* @category mapping
|
|
312
301
|
*/
|
|
313
302
|
export const mapError: {
|
|
314
|
-
<E, E2>(f: (e: E) => E2): <A>(self: Exit<
|
|
315
|
-
<
|
|
303
|
+
<E, E2>(f: (e: E) => E2): <A>(self: Exit<A, E>) => Exit<A, E2>
|
|
304
|
+
<A, E, E2>(self: Exit<A, E>, f: (e: E) => E2): Exit<A, E2>
|
|
316
305
|
} = core.exitMapError
|
|
317
306
|
|
|
318
307
|
/**
|
|
@@ -323,8 +312,8 @@ export const mapError: {
|
|
|
323
312
|
* @category mapping
|
|
324
313
|
*/
|
|
325
314
|
export const mapErrorCause: {
|
|
326
|
-
<E, E2>(f: (cause: Cause.Cause<E>) => Cause.Cause<E2>): <A>(self: Exit<
|
|
327
|
-
<E, A, E2>(self: Exit<
|
|
315
|
+
<E, E2>(f: (cause: Cause.Cause<E>) => Cause.Cause<E2>): <A>(self: Exit<A, E>) => Exit<A, E2>
|
|
316
|
+
<E, A, E2>(self: Exit<A, E>, f: (cause: Cause.Cause<E>) => Cause.Cause<E2>): Exit<A, E2>
|
|
328
317
|
} = core.exitMapErrorCause
|
|
329
318
|
|
|
330
319
|
/**
|
|
@@ -333,17 +322,11 @@ export const mapErrorCause: {
|
|
|
333
322
|
*/
|
|
334
323
|
export const match: {
|
|
335
324
|
<E, A, Z1, Z2>(
|
|
336
|
-
options: {
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
<E, A, Z1, Z2>(
|
|
342
|
-
self: Exit<E, A>,
|
|
343
|
-
options: {
|
|
344
|
-
readonly onFailure: (cause: Cause.Cause<E>) => Z1
|
|
345
|
-
readonly onSuccess: (a: A) => Z2
|
|
346
|
-
}
|
|
325
|
+
options: { readonly onFailure: (cause: Cause.Cause<E>) => Z1; readonly onSuccess: (a: A) => Z2 }
|
|
326
|
+
): (self: Exit<A, E>) => Z1 | Z2
|
|
327
|
+
<A, E, Z1, Z2>(
|
|
328
|
+
self: Exit<A, E>,
|
|
329
|
+
options: { readonly onFailure: (cause: Cause.Cause<E>) => Z1; readonly onSuccess: (a: A) => Z2 }
|
|
347
330
|
): Z1 | Z2
|
|
348
331
|
} = core.exitMatch
|
|
349
332
|
|
|
@@ -352,19 +335,19 @@ export const match: {
|
|
|
352
335
|
* @category folding
|
|
353
336
|
*/
|
|
354
337
|
export const matchEffect: {
|
|
355
|
-
<E,
|
|
338
|
+
<E, A2, E2, R, A, A3, E3, R2>(
|
|
356
339
|
options: {
|
|
357
|
-
readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<
|
|
358
|
-
readonly onSuccess: (a: A) => Effect.Effect<
|
|
340
|
+
readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<A2, E2, R>
|
|
341
|
+
readonly onSuccess: (a: A) => Effect.Effect<A3, E3, R2>
|
|
359
342
|
}
|
|
360
|
-
): (self: Exit<
|
|
361
|
-
<
|
|
362
|
-
self: Exit<
|
|
343
|
+
): (self: Exit<A, E>) => Effect.Effect<A2 | A3, E2 | E3, R | R2>
|
|
344
|
+
<A, E, A2, E2, R, A3, E3, R2>(
|
|
345
|
+
self: Exit<A, E>,
|
|
363
346
|
options: {
|
|
364
|
-
readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<
|
|
365
|
-
readonly onSuccess: (a: A) => Effect.Effect<
|
|
347
|
+
readonly onFailure: (cause: Cause.Cause<E>) => Effect.Effect<A2, E2, R>
|
|
348
|
+
readonly onSuccess: (a: A) => Effect.Effect<A3, E3, R2>
|
|
366
349
|
}
|
|
367
|
-
): Effect.Effect<
|
|
350
|
+
): Effect.Effect<A2 | A3, E2 | E3, R | R2>
|
|
368
351
|
} = core.exitMatchEffect
|
|
369
352
|
|
|
370
353
|
/**
|
|
@@ -373,7 +356,7 @@ export const matchEffect: {
|
|
|
373
356
|
* @since 2.0.0
|
|
374
357
|
* @category constructors
|
|
375
358
|
*/
|
|
376
|
-
export const succeed: <A>(value: A) => Exit<
|
|
359
|
+
export const succeed: <A>(value: A) => Exit<A> = core.exitSucceed
|
|
377
360
|
|
|
378
361
|
/**
|
|
379
362
|
* Represents an `Exit` which succeeds with `undefined`.
|
|
@@ -381,7 +364,7 @@ export const succeed: <A>(value: A) => Exit<never, A> = core.exitSucceed
|
|
|
381
364
|
* @since 2.0.0
|
|
382
365
|
* @category constructors
|
|
383
366
|
*/
|
|
384
|
-
export const unit: Exit<
|
|
367
|
+
export const unit: Exit<void> = core.exitUnit
|
|
385
368
|
|
|
386
369
|
/**
|
|
387
370
|
* Sequentially zips the this result with the specified result or else returns
|
|
@@ -391,8 +374,8 @@ export const unit: Exit<never, void> = core.exitUnit
|
|
|
391
374
|
* @category zipping
|
|
392
375
|
*/
|
|
393
376
|
export const zip: {
|
|
394
|
-
<
|
|
395
|
-
<E,
|
|
377
|
+
<A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<[A, A2], E2 | E>
|
|
378
|
+
<A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<[A, A2], E | E2>
|
|
396
379
|
} = core.exitZip
|
|
397
380
|
|
|
398
381
|
/**
|
|
@@ -403,8 +386,8 @@ export const zip: {
|
|
|
403
386
|
* @category zipping
|
|
404
387
|
*/
|
|
405
388
|
export const zipLeft: {
|
|
406
|
-
<
|
|
407
|
-
<E,
|
|
389
|
+
<A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<A, E2 | E>
|
|
390
|
+
<A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<A, E | E2>
|
|
408
391
|
} = core.exitZipLeft
|
|
409
392
|
|
|
410
393
|
/**
|
|
@@ -415,8 +398,8 @@ export const zipLeft: {
|
|
|
415
398
|
* @category zipping
|
|
416
399
|
*/
|
|
417
400
|
export const zipRight: {
|
|
418
|
-
<
|
|
419
|
-
<E,
|
|
401
|
+
<A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<A2, E2 | E>
|
|
402
|
+
<A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<A2, E | E2>
|
|
420
403
|
} = core.exitZipRight
|
|
421
404
|
|
|
422
405
|
/**
|
|
@@ -427,8 +410,8 @@ export const zipRight: {
|
|
|
427
410
|
* @category zipping
|
|
428
411
|
*/
|
|
429
412
|
export const zipPar: {
|
|
430
|
-
<
|
|
431
|
-
<E,
|
|
413
|
+
<A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<[A, A2], E2 | E>
|
|
414
|
+
<A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<[A, A2], E | E2>
|
|
432
415
|
} = core.exitZipPar
|
|
433
416
|
|
|
434
417
|
/**
|
|
@@ -439,8 +422,8 @@ export const zipPar: {
|
|
|
439
422
|
* @category zipping
|
|
440
423
|
*/
|
|
441
424
|
export const zipParLeft: {
|
|
442
|
-
<
|
|
443
|
-
<E,
|
|
425
|
+
<A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<A, E2 | E>
|
|
426
|
+
<A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<A, E | E2>
|
|
444
427
|
} = core.exitZipParLeft
|
|
445
428
|
|
|
446
429
|
/**
|
|
@@ -451,8 +434,8 @@ export const zipParLeft: {
|
|
|
451
434
|
* @category zipping
|
|
452
435
|
*/
|
|
453
436
|
export const zipParRight: {
|
|
454
|
-
<
|
|
455
|
-
<E,
|
|
437
|
+
<A2, E2>(that: Exit<A2, E2>): <A, E>(self: Exit<A, E>) => Exit<A2, E2 | E>
|
|
438
|
+
<A, E, A2, E2>(self: Exit<A, E>, that: Exit<A2, E2>): Exit<A2, E | E2>
|
|
456
439
|
} = core.exitZipParRight
|
|
457
440
|
|
|
458
441
|
/**
|
|
@@ -463,19 +446,19 @@ export const zipParRight: {
|
|
|
463
446
|
* @category zipping
|
|
464
447
|
*/
|
|
465
448
|
export const zipWith: {
|
|
466
|
-
<
|
|
467
|
-
that: Exit<
|
|
449
|
+
<B, E2, A, C, E>(
|
|
450
|
+
that: Exit<B, E2>,
|
|
468
451
|
options: {
|
|
469
452
|
readonly onSuccess: (a: A, b: B) => C
|
|
470
|
-
readonly onFailure: (cause: Cause.Cause<E>, cause2: Cause.Cause<E2>) => Cause.Cause<
|
|
453
|
+
readonly onFailure: (cause: Cause.Cause<E>, cause2: Cause.Cause<E2>) => Cause.Cause<any>
|
|
471
454
|
}
|
|
472
|
-
): (self: Exit<
|
|
473
|
-
<
|
|
474
|
-
self: Exit<
|
|
475
|
-
that: Exit<
|
|
455
|
+
): (self: Exit<A, E>) => Exit<C, any>
|
|
456
|
+
<A, E, B, E2, C>(
|
|
457
|
+
self: Exit<A, E>,
|
|
458
|
+
that: Exit<B, E2>,
|
|
476
459
|
options: {
|
|
477
460
|
readonly onSuccess: (a: A, b: B) => C
|
|
478
461
|
readonly onFailure: (cause: Cause.Cause<E>, cause2: Cause.Cause<E2>) => Cause.Cause<E | E2>
|
|
479
462
|
}
|
|
480
|
-
): Exit<E | E2
|
|
463
|
+
): Exit<C, E | E2>
|
|
481
464
|
} = core.exitZipWith
|