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/Schedule.ts
CHANGED
|
@@ -81,7 +81,7 @@ export interface Schedule<out Env, in In, out Out> extends Schedule.Variance<Env
|
|
|
81
81
|
now: number,
|
|
82
82
|
input: In,
|
|
83
83
|
state: any
|
|
84
|
-
): Effect.Effect<
|
|
84
|
+
): Effect.Effect<readonly [any, Out, ScheduleDecision.ScheduleDecision], never, Env>
|
|
85
85
|
}
|
|
86
86
|
|
|
87
87
|
/**
|
|
@@ -117,10 +117,10 @@ export declare namespace Schedule {
|
|
|
117
117
|
* @category models
|
|
118
118
|
*/
|
|
119
119
|
export interface ScheduleDriver<out Env, in In, out Out> extends Schedule.DriverVariance<Env, In, Out> {
|
|
120
|
-
readonly state: Effect.Effect<
|
|
121
|
-
readonly last: Effect.Effect<
|
|
122
|
-
readonly reset: Effect.Effect<
|
|
123
|
-
next(input: In): Effect.Effect<
|
|
120
|
+
readonly state: Effect.Effect<unknown>
|
|
121
|
+
readonly last: Effect.Effect<Out, Cause.NoSuchElementException>
|
|
122
|
+
readonly reset: Effect.Effect<void>
|
|
123
|
+
next(input: In): Effect.Effect<Out, Option.Option<never>, Env>
|
|
124
124
|
}
|
|
125
125
|
|
|
126
126
|
/**
|
|
@@ -136,7 +136,7 @@ export const makeWithState: <S, Env, In, Out>(
|
|
|
136
136
|
now: number,
|
|
137
137
|
input: In,
|
|
138
138
|
state: S
|
|
139
|
-
) => Effect.Effect<
|
|
139
|
+
) => Effect.Effect<readonly [S, Out, ScheduleDecision.ScheduleDecision], never, Env>
|
|
140
140
|
) => Schedule<Env, In, Out> = internal.makeWithState
|
|
141
141
|
|
|
142
142
|
/**
|
|
@@ -160,11 +160,11 @@ export const addDelay: {
|
|
|
160
160
|
*/
|
|
161
161
|
export const addDelayEffect: {
|
|
162
162
|
<Out, Env2>(
|
|
163
|
-
f: (out: Out) => Effect.Effect<
|
|
163
|
+
f: (out: Out) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
164
164
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
165
165
|
<Env, In, Out, Env2>(
|
|
166
166
|
self: Schedule<Env, In, Out>,
|
|
167
|
-
f: (out: Out) => Effect.Effect<
|
|
167
|
+
f: (out: Out) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
168
168
|
): Schedule<Env | Env2, In, Out>
|
|
169
169
|
} = internal.addDelayEffect
|
|
170
170
|
|
|
@@ -268,11 +268,11 @@ export const check: {
|
|
|
268
268
|
*/
|
|
269
269
|
export const checkEffect: {
|
|
270
270
|
<In, Out, Env2>(
|
|
271
|
-
test: (input: In, output: Out) => Effect.Effect<
|
|
271
|
+
test: (input: In, output: Out) => Effect.Effect<boolean, never, Env2>
|
|
272
272
|
): <Env>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
273
273
|
<Env, In, Out, Env2>(
|
|
274
274
|
self: Schedule<Env, In, Out>,
|
|
275
|
-
test: (input: In, output: Out) => Effect.Effect<
|
|
275
|
+
test: (input: In, output: Out) => Effect.Effect<boolean, never, Env2>
|
|
276
276
|
): Schedule<Env | Env2, In, Out>
|
|
277
277
|
} = internal.checkEffect
|
|
278
278
|
|
|
@@ -310,7 +310,7 @@ export const collectUntil: <A>(f: Predicate<A>) => Schedule<never, A, Chunk.Chun
|
|
|
310
310
|
* @category utils
|
|
311
311
|
*/
|
|
312
312
|
export const collectUntilEffect: <Env, A>(
|
|
313
|
-
f: (a: A) => Effect.Effect<
|
|
313
|
+
f: (a: A) => Effect.Effect<boolean, never, Env>
|
|
314
314
|
) => Schedule<Env, A, Chunk.Chunk<A>> = internal.collectUntilEffect
|
|
315
315
|
|
|
316
316
|
/**
|
|
@@ -330,7 +330,7 @@ export const collectWhile: <A>(f: Predicate<A>) => Schedule<never, A, Chunk.Chun
|
|
|
330
330
|
* @since 2.0.0
|
|
331
331
|
*/
|
|
332
332
|
export const collectWhileEffect: <Env, A>(
|
|
333
|
-
f: (a: A) => Effect.Effect<
|
|
333
|
+
f: (a: A) => Effect.Effect<boolean, never, Env>
|
|
334
334
|
) => Schedule<Env, A, Chunk.Chunk<A>> = internal.collectWhileEffect
|
|
335
335
|
|
|
336
336
|
/**
|
|
@@ -390,11 +390,11 @@ export const mapInputContext: {
|
|
|
390
390
|
*/
|
|
391
391
|
export const mapInputEffect: {
|
|
392
392
|
<In, Env2, In2>(
|
|
393
|
-
f: (in2: In2) => Effect.Effect<
|
|
393
|
+
f: (in2: In2) => Effect.Effect<In, never, Env2>
|
|
394
394
|
): <Env, Out>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In2, Out>
|
|
395
395
|
<Env, In, Out, Env2, In2>(
|
|
396
396
|
self: Schedule<Env, In, Out>,
|
|
397
|
-
f: (in2: In2) => Effect.Effect<
|
|
397
|
+
f: (in2: In2) => Effect.Effect<In, never, Env2>
|
|
398
398
|
): Schedule<Env | Env2, In2, Out>
|
|
399
399
|
} = internal.mapInputEffect
|
|
400
400
|
|
|
@@ -469,11 +469,11 @@ export const delayed: {
|
|
|
469
469
|
*/
|
|
470
470
|
export const delayedEffect: {
|
|
471
471
|
<Env2>(
|
|
472
|
-
f: (duration: Duration.Duration) => Effect.Effect<
|
|
472
|
+
f: (duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
473
473
|
): <Env, In, Out>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
474
474
|
<Env, In, Out, Env2>(
|
|
475
475
|
self: Schedule<Env, In, Out>,
|
|
476
|
-
f: (duration: Duration.Duration) => Effect.Effect<
|
|
476
|
+
f: (duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
477
477
|
): Schedule<Env | Env2, In, Out>
|
|
478
478
|
} = internal.delayedEffect
|
|
479
479
|
|
|
@@ -528,15 +528,15 @@ export const mapBoth: {
|
|
|
528
528
|
export const mapBothEffect: {
|
|
529
529
|
<In2, Env2, In, Out, Env3, Out2>(
|
|
530
530
|
options: {
|
|
531
|
-
readonly onInput: (input: In2) => Effect.Effect<
|
|
532
|
-
readonly onOutput: (out: Out) => Effect.Effect<
|
|
531
|
+
readonly onInput: (input: In2) => Effect.Effect<In, never, Env2>
|
|
532
|
+
readonly onOutput: (out: Out) => Effect.Effect<Out2, never, Env3>
|
|
533
533
|
}
|
|
534
534
|
): <Env>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env3 | Env, In2, Out2>
|
|
535
535
|
<Env, In, Out, In2, Env2, Env3, Out2>(
|
|
536
536
|
self: Schedule<Env, In, Out>,
|
|
537
537
|
options: {
|
|
538
|
-
readonly onInput: (input: In2) => Effect.Effect<
|
|
539
|
-
readonly onOutput: (out: Out) => Effect.Effect<
|
|
538
|
+
readonly onInput: (input: In2) => Effect.Effect<In, never, Env2>
|
|
539
|
+
readonly onOutput: (out: Out) => Effect.Effect<Out2, never, Env3>
|
|
540
540
|
}
|
|
541
541
|
): Schedule<Env | Env2 | Env3, In2, Out2>
|
|
542
542
|
} = internal.mapBothEffect
|
|
@@ -550,7 +550,7 @@ export const mapBothEffect: {
|
|
|
550
550
|
*/
|
|
551
551
|
export const driver: <Env, In, Out>(
|
|
552
552
|
self: Schedule<Env, In, Out>
|
|
553
|
-
) => Effect.Effect<
|
|
553
|
+
) => Effect.Effect<ScheduleDriver<Env, In, Out>> = internal.driver
|
|
554
554
|
|
|
555
555
|
/**
|
|
556
556
|
* A schedule that can recur one time, the specified amount of time into the
|
|
@@ -617,8 +617,8 @@ export const elapsed: Schedule<never, unknown, Duration.Duration> = internal.ela
|
|
|
617
617
|
* @category finalization
|
|
618
618
|
*/
|
|
619
619
|
export const ensuring: {
|
|
620
|
-
<X>(finalizer: Effect.Effect<
|
|
621
|
-
<Env, In, Out, X>(self: Schedule<Env, In, Out>, finalizer: Effect.Effect<
|
|
620
|
+
<X>(finalizer: Effect.Effect<X>): <Env, In, Out>(self: Schedule<Env, In, Out>) => Schedule<Env, In, Out>
|
|
621
|
+
<Env, In, Out, X>(self: Schedule<Env, In, Out>, finalizer: Effect.Effect<X>): Schedule<Env, In, Out>
|
|
622
622
|
} = internal.ensuring
|
|
623
623
|
|
|
624
624
|
/**
|
|
@@ -822,11 +822,11 @@ export const map: {
|
|
|
822
822
|
*/
|
|
823
823
|
export const mapEffect: {
|
|
824
824
|
<Out, Env2, Out2>(
|
|
825
|
-
f: (out: Out) => Effect.Effect<
|
|
825
|
+
f: (out: Out) => Effect.Effect<Out2, never, Env2>
|
|
826
826
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out2>
|
|
827
827
|
<Env, In, Out, Env2, Out2>(
|
|
828
828
|
self: Schedule<Env, In, Out>,
|
|
829
|
-
f: (out: Out) => Effect.Effect<
|
|
829
|
+
f: (out: Out) => Effect.Effect<Out2, never, Env2>
|
|
830
830
|
): Schedule<Env | Env2, In, Out2>
|
|
831
831
|
} = internal.mapEffect
|
|
832
832
|
|
|
@@ -868,11 +868,11 @@ export const modifyDelay: {
|
|
|
868
868
|
*/
|
|
869
869
|
export const modifyDelayEffect: {
|
|
870
870
|
<Out, Env2>(
|
|
871
|
-
f: (out: Out, duration: Duration.Duration) => Effect.Effect<
|
|
871
|
+
f: (out: Out, duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
872
872
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
873
873
|
<Env, In, Out, Env2>(
|
|
874
874
|
self: Schedule<Env, In, Out>,
|
|
875
|
-
f: (out: Out, duration: Duration.Duration) => Effect.Effect<
|
|
875
|
+
f: (out: Out, duration: Duration.Duration) => Effect.Effect<Duration.DurationInput, never, Env2>
|
|
876
876
|
): Schedule<Env | Env2, In, Out>
|
|
877
877
|
} = internal.modifyDelayEffect
|
|
878
878
|
|
|
@@ -886,11 +886,11 @@ export const modifyDelayEffect: {
|
|
|
886
886
|
*/
|
|
887
887
|
export const onDecision: {
|
|
888
888
|
<Out, Env2, X>(
|
|
889
|
-
f: (out: Out, decision: ScheduleDecision.ScheduleDecision) => Effect.Effect<
|
|
889
|
+
f: (out: Out, decision: ScheduleDecision.ScheduleDecision) => Effect.Effect<X, never, Env2>
|
|
890
890
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
891
891
|
<Env, In, Out, Env2, X>(
|
|
892
892
|
self: Schedule<Env, In, Out>,
|
|
893
|
-
f: (out: Out, decision: ScheduleDecision.ScheduleDecision) => Effect.Effect<
|
|
893
|
+
f: (out: Out, decision: ScheduleDecision.ScheduleDecision) => Effect.Effect<X, never, Env2>
|
|
894
894
|
): Schedule<Env | Env2, In, Out>
|
|
895
895
|
} = internal.onDecision
|
|
896
896
|
|
|
@@ -957,7 +957,7 @@ export const recurUntil: <A>(f: Predicate<A>) => Schedule<never, A, A> = interna
|
|
|
957
957
|
* @since 2.0.0
|
|
958
958
|
* @category utils
|
|
959
959
|
*/
|
|
960
|
-
export const recurUntilEffect: <Env, A>(f: (a: A) => Effect.Effect<
|
|
960
|
+
export const recurUntilEffect: <Env, A>(f: (a: A) => Effect.Effect<boolean, never, Env>) => Schedule<Env, A, A> =
|
|
961
961
|
internal.recurUntilEffect
|
|
962
962
|
|
|
963
963
|
/**
|
|
@@ -994,7 +994,7 @@ export const recurWhile: <A>(f: Predicate<A>) => Schedule<never, A, A> = interna
|
|
|
994
994
|
* @since 2.0.0
|
|
995
995
|
* @category utils
|
|
996
996
|
*/
|
|
997
|
-
export const recurWhileEffect: <Env, A>(f: (a: A) => Effect.Effect<
|
|
997
|
+
export const recurWhileEffect: <Env, A>(f: (a: A) => Effect.Effect<boolean, never, Env>) => Schedule<Env, A, A> =
|
|
998
998
|
internal.recurWhileEffect
|
|
999
999
|
|
|
1000
1000
|
/**
|
|
@@ -1026,12 +1026,12 @@ export const reduce: {
|
|
|
1026
1026
|
export const reduceEffect: {
|
|
1027
1027
|
<Out, Env1, Z>(
|
|
1028
1028
|
zero: Z,
|
|
1029
|
-
f: (z: Z, out: Out) => Effect.Effect<
|
|
1029
|
+
f: (z: Z, out: Out) => Effect.Effect<Z, never, Env1>
|
|
1030
1030
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env1 | Env, In, Z>
|
|
1031
1031
|
<Env, In, Out, Env1, Z>(
|
|
1032
1032
|
self: Schedule<Env, In, Out>,
|
|
1033
1033
|
zero: Z,
|
|
1034
|
-
f: (z: Z, out: Out) => Effect.Effect<
|
|
1034
|
+
f: (z: Z, out: Out) => Effect.Effect<Z, never, Env1>
|
|
1035
1035
|
): Schedule<Env | Env1, In, Z>
|
|
1036
1036
|
} = internal.reduceEffect
|
|
1037
1037
|
|
|
@@ -1087,12 +1087,12 @@ export const run: {
|
|
|
1087
1087
|
<In>(
|
|
1088
1088
|
now: number,
|
|
1089
1089
|
input: Iterable<In>
|
|
1090
|
-
): <Env, Out>(self: Schedule<Env, In, Out>) => Effect.Effect<
|
|
1090
|
+
): <Env, Out>(self: Schedule<Env, In, Out>) => Effect.Effect<Chunk.Chunk<Out>, never, Env>
|
|
1091
1091
|
<Env, In, Out>(
|
|
1092
1092
|
self: Schedule<Env, In, Out>,
|
|
1093
1093
|
now: number,
|
|
1094
1094
|
input: Iterable<In>
|
|
1095
|
-
): Effect.Effect<
|
|
1095
|
+
): Effect.Effect<Chunk.Chunk<Out>, never, Env>
|
|
1096
1096
|
} = internal.run
|
|
1097
1097
|
|
|
1098
1098
|
/**
|
|
@@ -1151,11 +1151,11 @@ export const sync: <A>(evaluate: LazyArg<A>) => Schedule<never, unknown, A> = in
|
|
|
1151
1151
|
*/
|
|
1152
1152
|
export const tapInput: {
|
|
1153
1153
|
<Env2, In2, X>(
|
|
1154
|
-
f: (input: In2) => Effect.Effect<
|
|
1154
|
+
f: (input: In2) => Effect.Effect<X, never, Env2>
|
|
1155
1155
|
): <Env, In, Out>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In & In2, Out>
|
|
1156
1156
|
<Env, In, Out, Env2, In2, X>(
|
|
1157
1157
|
self: Schedule<Env, In, Out>,
|
|
1158
|
-
f: (input: In2) => Effect.Effect<
|
|
1158
|
+
f: (input: In2) => Effect.Effect<X, never, Env2>
|
|
1159
1159
|
): Schedule<Env | Env2, In & In2, Out>
|
|
1160
1160
|
} = internal.tapInput
|
|
1161
1161
|
|
|
@@ -1168,11 +1168,11 @@ export const tapInput: {
|
|
|
1168
1168
|
*/
|
|
1169
1169
|
export const tapOutput: {
|
|
1170
1170
|
<Out, XO extends Out, Env2, X>(
|
|
1171
|
-
f: (out: XO) => Effect.Effect<
|
|
1171
|
+
f: (out: XO) => Effect.Effect<X, never, Env2>
|
|
1172
1172
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
1173
1173
|
<Env, In, Out, XO extends Out, Env2, X>(
|
|
1174
1174
|
self: Schedule<Env, In, Out>,
|
|
1175
|
-
f: (out: XO) => Effect.Effect<
|
|
1175
|
+
f: (out: XO) => Effect.Effect<X, never, Env2>
|
|
1176
1176
|
): Schedule<Env | Env2, In, Out>
|
|
1177
1177
|
} = internal.tapOutput
|
|
1178
1178
|
|
|
@@ -1243,11 +1243,11 @@ export const untilInput: {
|
|
|
1243
1243
|
*/
|
|
1244
1244
|
export const untilInputEffect: {
|
|
1245
1245
|
<In, Env2>(
|
|
1246
|
-
f: (input: In) => Effect.Effect<
|
|
1246
|
+
f: (input: In) => Effect.Effect<boolean, never, Env2>
|
|
1247
1247
|
): <Env, Out>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
1248
1248
|
<Env, In, Out, Env2>(
|
|
1249
1249
|
self: Schedule<Env, In, Out>,
|
|
1250
|
-
f: (input: In) => Effect.Effect<
|
|
1250
|
+
f: (input: In) => Effect.Effect<boolean, never, Env2>
|
|
1251
1251
|
): Schedule<Env | Env2, In, Out>
|
|
1252
1252
|
} = internal.untilInputEffect
|
|
1253
1253
|
|
|
@@ -1272,11 +1272,11 @@ export const untilOutput: {
|
|
|
1272
1272
|
*/
|
|
1273
1273
|
export const untilOutputEffect: {
|
|
1274
1274
|
<Out, Env2>(
|
|
1275
|
-
f: (out: Out) => Effect.Effect<
|
|
1275
|
+
f: (out: Out) => Effect.Effect<boolean, never, Env2>
|
|
1276
1276
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
1277
1277
|
<Env, In, Out, Env2>(
|
|
1278
1278
|
self: Schedule<Env, In, Out>,
|
|
1279
|
-
f: (out: Out) => Effect.Effect<
|
|
1279
|
+
f: (out: Out) => Effect.Effect<boolean, never, Env2>
|
|
1280
1280
|
): Schedule<Env | Env2, In, Out>
|
|
1281
1281
|
} = internal.untilOutputEffect
|
|
1282
1282
|
|
|
@@ -1312,11 +1312,11 @@ export const whileInput: {
|
|
|
1312
1312
|
*/
|
|
1313
1313
|
export const whileInputEffect: {
|
|
1314
1314
|
<In, Env2>(
|
|
1315
|
-
f: (input: In) => Effect.Effect<
|
|
1315
|
+
f: (input: In) => Effect.Effect<boolean, never, Env2>
|
|
1316
1316
|
): <Env, Out>(self: Schedule<Env, In, Out>) => Schedule<Env2 | Env, In, Out>
|
|
1317
1317
|
<Env, In, Out, Env2>(
|
|
1318
1318
|
self: Schedule<Env, In, Out>,
|
|
1319
|
-
f: (input: In) => Effect.Effect<
|
|
1319
|
+
f: (input: In) => Effect.Effect<boolean, never, Env2>
|
|
1320
1320
|
): Schedule<Env | Env2, In, Out>
|
|
1321
1321
|
} = internal.whileInputEffect
|
|
1322
1322
|
|
|
@@ -1341,11 +1341,11 @@ export const whileOutput: {
|
|
|
1341
1341
|
*/
|
|
1342
1342
|
export const whileOutputEffect: {
|
|
1343
1343
|
<Out, Env1>(
|
|
1344
|
-
f: (out: Out) => Effect.Effect<
|
|
1344
|
+
f: (out: Out) => Effect.Effect<boolean, never, Env1>
|
|
1345
1345
|
): <Env, In>(self: Schedule<Env, In, Out>) => Schedule<Env1 | Env, In, Out>
|
|
1346
1346
|
<Env, In, Out, Env1>(
|
|
1347
1347
|
self: Schedule<Env, In, Out>,
|
|
1348
|
-
f: (out: Out) => Effect.Effect<
|
|
1348
|
+
f: (out: Out) => Effect.Effect<boolean, never, Env1>
|
|
1349
1349
|
): Schedule<Env | Env1, In, Out>
|
|
1350
1350
|
} = internal.whileOutputEffect
|
|
1351
1351
|
|
package/src/Scheduler.ts
CHANGED
|
@@ -354,6 +354,6 @@ export const currentScheduler: FiberRef<Scheduler> = globalValue(
|
|
|
354
354
|
|
|
355
355
|
/** @internal */
|
|
356
356
|
export const withScheduler = dual<
|
|
357
|
-
(scheduler: Scheduler) => <
|
|
358
|
-
<
|
|
357
|
+
(scheduler: Scheduler) => <A, E, R>(self: Effect<A, E, R>) => Effect<A, E, R>,
|
|
358
|
+
<A, E, R>(self: Effect<A, E, R>, scheduler: Scheduler) => Effect<A, E, R>
|
|
359
359
|
>(2, (self, scheduler) => core.fiberRefLocally(self, currentScheduler, scheduler))
|
package/src/Scope.ts
CHANGED
|
@@ -44,11 +44,11 @@ export interface Scope extends Pipeable {
|
|
|
44
44
|
/**
|
|
45
45
|
* @internal
|
|
46
46
|
*/
|
|
47
|
-
fork(strategy: ExecutionStrategy.ExecutionStrategy): Effect.Effect<
|
|
47
|
+
fork(strategy: ExecutionStrategy.ExecutionStrategy): Effect.Effect<Scope.Closeable>
|
|
48
48
|
/**
|
|
49
49
|
* @internal
|
|
50
50
|
*/
|
|
51
|
-
addFinalizer(finalizer: Scope.Finalizer): Effect.Effect<
|
|
51
|
+
addFinalizer(finalizer: Scope.Finalizer): Effect.Effect<void>
|
|
52
52
|
}
|
|
53
53
|
|
|
54
54
|
/**
|
|
@@ -61,7 +61,7 @@ export interface CloseableScope extends Scope, Pipeable {
|
|
|
61
61
|
/**
|
|
62
62
|
* @internal
|
|
63
63
|
*/
|
|
64
|
-
close(exit: Exit.Exit<unknown, unknown>): Effect.Effect<
|
|
64
|
+
close(exit: Exit.Exit<unknown, unknown>): Effect.Effect<void>
|
|
65
65
|
}
|
|
66
66
|
|
|
67
67
|
/**
|
|
@@ -78,7 +78,7 @@ export declare namespace Scope {
|
|
|
78
78
|
* @since 2.0.0
|
|
79
79
|
* @category model
|
|
80
80
|
*/
|
|
81
|
-
export type Finalizer = (exit: Exit.Exit<unknown, unknown>) => Effect.Effect<
|
|
81
|
+
export type Finalizer = (exit: Exit.Exit<unknown, unknown>) => Effect.Effect<void>
|
|
82
82
|
/**
|
|
83
83
|
* @since 2.0.0
|
|
84
84
|
* @category model
|
|
@@ -95,8 +95,8 @@ export declare namespace Scope {
|
|
|
95
95
|
*/
|
|
96
96
|
export const addFinalizer: (
|
|
97
97
|
self: Scope,
|
|
98
|
-
finalizer: Effect.Effect<
|
|
99
|
-
) => Effect.Effect<
|
|
98
|
+
finalizer: Effect.Effect<unknown>
|
|
99
|
+
) => Effect.Effect<void> = core.scopeAddFinalizer
|
|
100
100
|
|
|
101
101
|
/**
|
|
102
102
|
* A simplified version of `addFinalizerWith` when the `finalizer` does not
|
|
@@ -105,7 +105,7 @@ export const addFinalizer: (
|
|
|
105
105
|
* @since 2.0.0
|
|
106
106
|
* @category utils
|
|
107
107
|
*/
|
|
108
|
-
export const addFinalizerExit: (self: Scope, finalizer: Scope.Finalizer) => Effect.Effect<
|
|
108
|
+
export const addFinalizerExit: (self: Scope, finalizer: Scope.Finalizer) => Effect.Effect<void> =
|
|
109
109
|
core.scopeAddFinalizerExit
|
|
110
110
|
|
|
111
111
|
/**
|
|
@@ -115,8 +115,7 @@ export const addFinalizerExit: (self: Scope, finalizer: Scope.Finalizer) => Effe
|
|
|
115
115
|
* @since 2.0.0
|
|
116
116
|
* @category destructors
|
|
117
117
|
*/
|
|
118
|
-
export const close: (self: CloseableScope, exit: Exit.Exit<unknown, unknown>) => Effect.Effect<
|
|
119
|
-
core.scopeClose
|
|
118
|
+
export const close: (self: CloseableScope, exit: Exit.Exit<unknown, unknown>) => Effect.Effect<void> = core.scopeClose
|
|
120
119
|
|
|
121
120
|
/**
|
|
122
121
|
* Extends the scope of an `Effect` workflow that needs a scope into this
|
|
@@ -128,8 +127,8 @@ export const close: (self: CloseableScope, exit: Exit.Exit<unknown, unknown>) =>
|
|
|
128
127
|
* @category utils
|
|
129
128
|
*/
|
|
130
129
|
export const extend: {
|
|
131
|
-
(scope: Scope): <
|
|
132
|
-
<
|
|
130
|
+
(scope: Scope): <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, Exclude<R, Scope>>
|
|
131
|
+
<A, E, R>(effect: Effect.Effect<A, E, R>, scope: Scope): Effect.Effect<A, E, Exclude<R, Scope>>
|
|
133
132
|
} = fiberRuntime.scopeExtend
|
|
134
133
|
|
|
135
134
|
/**
|
|
@@ -142,7 +141,7 @@ export const extend: {
|
|
|
142
141
|
export const fork: (
|
|
143
142
|
self: Scope,
|
|
144
143
|
strategy: ExecutionStrategy.ExecutionStrategy
|
|
145
|
-
) => Effect.Effect<
|
|
144
|
+
) => Effect.Effect<CloseableScope> = core.scopeFork
|
|
146
145
|
|
|
147
146
|
/**
|
|
148
147
|
* Uses the scope by providing it to an `Effect` workflow that needs a scope,
|
|
@@ -154,8 +153,8 @@ export const fork: (
|
|
|
154
153
|
* @category destructors
|
|
155
154
|
*/
|
|
156
155
|
export const use: {
|
|
157
|
-
(scope: CloseableScope): <
|
|
158
|
-
<
|
|
156
|
+
(scope: CloseableScope): <A, E, R>(effect: Effect.Effect<A, E, R>) => Effect.Effect<A, E, Exclude<R, Scope>>
|
|
157
|
+
<A, E, R>(effect: Effect.Effect<A, E, R>, scope: CloseableScope): Effect.Effect<A, E, Exclude<R, Scope>>
|
|
159
158
|
} = fiberRuntime.scopeUse
|
|
160
159
|
|
|
161
160
|
/**
|
|
@@ -168,4 +167,4 @@ export const use: {
|
|
|
168
167
|
*/
|
|
169
168
|
export const make: (
|
|
170
169
|
executionStrategy?: ExecutionStrategy.ExecutionStrategy
|
|
171
|
-
) => Effect.Effect<
|
|
170
|
+
) => Effect.Effect<CloseableScope> = fiberRuntime.scopeMake
|
package/src/ScopedCache.ts
CHANGED
|
@@ -32,47 +32,47 @@ export interface ScopedCache<in Key, out Error, out Value> extends ScopedCache.V
|
|
|
32
32
|
* Retrieves the value associated with the specified key if it exists.
|
|
33
33
|
* Otherwise returns `Option.none`.
|
|
34
34
|
*/
|
|
35
|
-
getOption(key: Key): Effect.Effect<
|
|
35
|
+
getOption(key: Key): Effect.Effect<Option.Option<Value>, Error, Scope.Scope>
|
|
36
36
|
|
|
37
37
|
/**
|
|
38
38
|
* Retrieves the value associated with the specified key if it exists and the
|
|
39
39
|
* lookup function has completed. Otherwise returns `Option.none`.
|
|
40
40
|
*/
|
|
41
|
-
getOptionComplete(key: Key): Effect.Effect<
|
|
41
|
+
getOptionComplete(key: Key): Effect.Effect<Option.Option<Value>, never, Scope.Scope>
|
|
42
42
|
|
|
43
43
|
/**
|
|
44
44
|
* Returns statistics for this cache.
|
|
45
45
|
*/
|
|
46
|
-
readonly cacheStats: Effect.Effect<
|
|
46
|
+
readonly cacheStats: Effect.Effect<Cache.CacheStats>
|
|
47
47
|
|
|
48
48
|
/**
|
|
49
49
|
* Return whether a resource associated with the specified key exists in the
|
|
50
50
|
* cache. Sometime `contains` can return true if the resource is currently
|
|
51
51
|
* being created but not yet totally created.
|
|
52
52
|
*/
|
|
53
|
-
contains(key: Key): Effect.Effect<
|
|
53
|
+
contains(key: Key): Effect.Effect<boolean>
|
|
54
54
|
|
|
55
55
|
/**
|
|
56
56
|
* Return statistics for the specified entry.
|
|
57
57
|
*/
|
|
58
|
-
entryStats(key: Key): Effect.Effect<
|
|
58
|
+
entryStats(key: Key): Effect.Effect<Option.Option<Cache.EntryStats>>
|
|
59
59
|
|
|
60
60
|
/**
|
|
61
61
|
* Gets the value from the cache if it exists or otherwise computes it, the
|
|
62
62
|
* release action signals to the cache that the value is no longer being used
|
|
63
63
|
* and can potentially be finalized subject to the policies of the cache.
|
|
64
64
|
*/
|
|
65
|
-
get(key: Key): Effect.Effect<
|
|
65
|
+
get(key: Key): Effect.Effect<Value, Error, Scope.Scope>
|
|
66
66
|
|
|
67
67
|
/**
|
|
68
68
|
* Invalidates the resource associated with the specified key.
|
|
69
69
|
*/
|
|
70
|
-
invalidate(key: Key): Effect.Effect<
|
|
70
|
+
invalidate(key: Key): Effect.Effect<void>
|
|
71
71
|
|
|
72
72
|
/**
|
|
73
73
|
* Invalidates all values in the cache.
|
|
74
74
|
*/
|
|
75
|
-
readonly invalidateAll: Effect.Effect<
|
|
75
|
+
readonly invalidateAll: Effect.Effect<void>
|
|
76
76
|
|
|
77
77
|
/**
|
|
78
78
|
* Force the reuse of the lookup function to compute the returned scoped
|
|
@@ -82,12 +82,12 @@ export interface ScopedCache<in Key, out Error, out Value> extends ScopedCache.V
|
|
|
82
82
|
* computed, concurrent call the .get will use the old resource if this one is
|
|
83
83
|
* not expired.
|
|
84
84
|
*/
|
|
85
|
-
refresh(key: Key): Effect.Effect<
|
|
85
|
+
refresh(key: Key): Effect.Effect<void, Error>
|
|
86
86
|
|
|
87
87
|
/**
|
|
88
88
|
* Returns the approximate number of values in the cache.
|
|
89
89
|
*/
|
|
90
|
-
readonly size: Effect.Effect<
|
|
90
|
+
readonly size: Effect.Effect<number>
|
|
91
91
|
}
|
|
92
92
|
|
|
93
93
|
/**
|
|
@@ -120,7 +120,7 @@ export const make: <Key, Environment, Error, Value>(
|
|
|
120
120
|
readonly capacity: number
|
|
121
121
|
readonly timeToLive: Duration.DurationInput
|
|
122
122
|
}
|
|
123
|
-
) => Effect.Effect<
|
|
123
|
+
) => Effect.Effect<ScopedCache<Key, Error, Value>, never, Scope.Scope | Environment> = internal.make
|
|
124
124
|
|
|
125
125
|
/**
|
|
126
126
|
* Constructs a new cache with the specified capacity, time to live, and
|
|
@@ -134,9 +134,9 @@ export const makeWith: <Key, Environment, Error, Value>(
|
|
|
134
134
|
options: {
|
|
135
135
|
readonly capacity: number
|
|
136
136
|
readonly lookup: Lookup<Key, Environment, Error, Value>
|
|
137
|
-
readonly timeToLive: (exit: Exit.Exit<
|
|
137
|
+
readonly timeToLive: (exit: Exit.Exit<Value, Error>) => Duration.DurationInput
|
|
138
138
|
}
|
|
139
|
-
) => Effect.Effect<
|
|
139
|
+
) => Effect.Effect<ScopedCache<Key, Error, Value>, never, Scope.Scope | Environment> = internal.makeWith
|
|
140
140
|
|
|
141
141
|
/**
|
|
142
142
|
* Similar to `Cache.Lookup`, but executes the lookup function within a `Scope`.
|
|
@@ -146,4 +146,4 @@ export const makeWith: <Key, Environment, Error, Value>(
|
|
|
146
146
|
*/
|
|
147
147
|
export type Lookup<Key, Environment, Error, Value> = (
|
|
148
148
|
key: Key
|
|
149
|
-
) => Effect.Effect<Environment | Scope.Scope
|
|
149
|
+
) => Effect.Effect<Value, Error, Environment | Scope.Scope>
|
package/src/ScopedRef.ts
CHANGED
|
@@ -58,9 +58,9 @@ export declare namespace ScopedRef {
|
|
|
58
58
|
* @since 2.0.0
|
|
59
59
|
* @category constructors
|
|
60
60
|
*/
|
|
61
|
-
export const fromAcquire: <
|
|
62
|
-
acquire: Effect.Effect<
|
|
63
|
-
) => Effect.Effect<Scope.Scope | R
|
|
61
|
+
export const fromAcquire: <A, E, R>(
|
|
62
|
+
acquire: Effect.Effect<A, E, R>
|
|
63
|
+
) => Effect.Effect<ScopedRef<A>, E, Scope.Scope | R> = internal.fromAcquire
|
|
64
64
|
|
|
65
65
|
/**
|
|
66
66
|
* Retrieves the current value of the scoped reference.
|
|
@@ -68,7 +68,7 @@ export const fromAcquire: <R, E, A>(
|
|
|
68
68
|
* @since 2.0.0
|
|
69
69
|
* @category getters
|
|
70
70
|
*/
|
|
71
|
-
export const get: <A>(self: ScopedRef<A>) => Effect.Effect<
|
|
71
|
+
export const get: <A>(self: ScopedRef<A>) => Effect.Effect<A> = internal.get
|
|
72
72
|
|
|
73
73
|
/**
|
|
74
74
|
* Creates a new `ScopedRef` from the specified value. This method should
|
|
@@ -77,7 +77,7 @@ export const get: <A>(self: ScopedRef<A>) => Effect.Effect<never, never, A> = in
|
|
|
77
77
|
* @since 2.0.0
|
|
78
78
|
* @category constructors
|
|
79
79
|
*/
|
|
80
|
-
export const make: <A>(evaluate: LazyArg<A>) => Effect.Effect<
|
|
80
|
+
export const make: <A>(evaluate: LazyArg<A>) => Effect.Effect<ScopedRef<A>, never, Scope.Scope> = internal.make
|
|
81
81
|
|
|
82
82
|
/**
|
|
83
83
|
* Sets the value of this reference to the specified resourcefully-created
|
|
@@ -91,6 +91,6 @@ export const make: <A>(evaluate: LazyArg<A>) => Effect.Effect<Scope.Scope, never
|
|
|
91
91
|
* @category getters
|
|
92
92
|
*/
|
|
93
93
|
export const set: {
|
|
94
|
-
<A, R, E>(acquire: Effect.Effect<
|
|
95
|
-
<A, R, E>(self: ScopedRef<A>, acquire: Effect.Effect<
|
|
94
|
+
<A, R, E>(acquire: Effect.Effect<A, E, R>): (self: ScopedRef<A>) => Effect.Effect<void, E, Exclude<R, Scope.Scope>>
|
|
95
|
+
<A, R, E>(self: ScopedRef<A>, acquire: Effect.Effect<A, E, R>): Effect.Effect<void, E, Exclude<R, Scope.Scope>>
|
|
96
96
|
} = internal.set
|
|
@@ -29,8 +29,8 @@ import * as internal from "./internal/channel/singleProducerAsyncInput.js"
|
|
|
29
29
|
export interface SingleProducerAsyncInput<in out Err, in out Elem, in out Done>
|
|
30
30
|
extends AsyncInputProducer<Err, Elem, Done>, AsyncInputConsumer<Err, Elem, Done>
|
|
31
31
|
{
|
|
32
|
-
readonly close: Effect.Effect<
|
|
33
|
-
readonly take: Effect.Effect<
|
|
32
|
+
readonly close: Effect.Effect<unknown>
|
|
33
|
+
readonly take: Effect.Effect<Exit.Exit<Elem, Either.Either<Err, Done>>>
|
|
34
34
|
}
|
|
35
35
|
|
|
36
36
|
/**
|
|
@@ -40,10 +40,10 @@ export interface SingleProducerAsyncInput<in out Err, in out Elem, in out Done>
|
|
|
40
40
|
* @category models
|
|
41
41
|
*/
|
|
42
42
|
export interface AsyncInputProducer<in Err, in Elem, in Done> {
|
|
43
|
-
awaitRead(): Effect.Effect<
|
|
44
|
-
done(value: Done): Effect.Effect<
|
|
45
|
-
emit(element: Elem): Effect.Effect<
|
|
46
|
-
error(cause: Cause.Cause<Err>): Effect.Effect<
|
|
43
|
+
awaitRead(): Effect.Effect<unknown>
|
|
44
|
+
done(value: Done): Effect.Effect<unknown>
|
|
45
|
+
emit(element: Elem): Effect.Effect<unknown>
|
|
46
|
+
error(cause: Cause.Cause<Err>): Effect.Effect<unknown>
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
/**
|
|
@@ -57,12 +57,11 @@ export interface AsyncInputConsumer<out Err, out Elem, out Done> {
|
|
|
57
57
|
onError: (cause: Cause.Cause<Err>) => A,
|
|
58
58
|
onElement: (element: Elem) => A,
|
|
59
59
|
onDone: (value: Done) => A
|
|
60
|
-
): Effect.Effect<
|
|
60
|
+
): Effect.Effect<A>
|
|
61
61
|
}
|
|
62
62
|
|
|
63
63
|
/**
|
|
64
64
|
* @since 2.0.0
|
|
65
65
|
* @category constructors
|
|
66
66
|
*/
|
|
67
|
-
export const make: <Err, Elem, Done>() => Effect.Effect<
|
|
68
|
-
internal.make
|
|
67
|
+
export const make: <Err, Elem, Done>() => Effect.Effect<SingleProducerAsyncInput<Err, Elem, Done>> = internal.make
|