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/dist/dts/STM.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ export declare const STMTypeId: unique symbol;
|
|
|
24
24
|
*/
|
|
25
25
|
export type STMTypeId = typeof STMTypeId;
|
|
26
26
|
/**
|
|
27
|
-
* `STM<
|
|
27
|
+
* `STM<A, E, R>` represents an effect that can be performed transactionally,
|
|
28
28
|
* resulting in a failure `E` or a value `A` that may require an environment
|
|
29
29
|
* `R` to execute.
|
|
30
30
|
*
|
|
@@ -60,7 +60,7 @@ export type STMTypeId = typeof STMTypeId;
|
|
|
60
60
|
* @since 2.0.0
|
|
61
61
|
* @category models
|
|
62
62
|
*/
|
|
63
|
-
export interface STM<out
|
|
63
|
+
export interface STM<out A, out E = never, out R = never> extends Effect.Effect<A, E, R>, STM.Variance<A, E, R>, Pipeable {
|
|
64
64
|
[Unify.typeSymbol]?: unknown;
|
|
65
65
|
[Unify.unifySymbol]?: STMUnify<this>;
|
|
66
66
|
[Unify.ignoreSymbol]?: STMUnifyIgnore;
|
|
@@ -72,7 +72,7 @@ export interface STM<out R, out E, out A> extends Effect.Effect<R, E, A>, STM.Va
|
|
|
72
72
|
export interface STMUnify<A extends {
|
|
73
73
|
[Unify.typeSymbol]?: any;
|
|
74
74
|
}> extends Effect.EffectUnify<A> {
|
|
75
|
-
STM?: () => A[Unify.typeSymbol] extends STM<infer
|
|
75
|
+
STM?: () => A[Unify.typeSymbol] extends STM<infer A0, infer E0, infer R0> | infer _ ? STM<R0, E0, A0> : never;
|
|
76
76
|
}
|
|
77
77
|
/**
|
|
78
78
|
* @category models
|
|
@@ -86,14 +86,14 @@ export interface STMUnifyIgnore extends Effect.EffectUnifyIgnore {
|
|
|
86
86
|
* @since 2.0.0
|
|
87
87
|
*/
|
|
88
88
|
export interface STMTypeLambda extends TypeLambda {
|
|
89
|
-
readonly type: STM<this["
|
|
89
|
+
readonly type: STM<this["Target"], this["Out1"], this["Out2"]>;
|
|
90
90
|
}
|
|
91
91
|
/**
|
|
92
92
|
* @since 2.0.0
|
|
93
93
|
* @category models
|
|
94
94
|
*/
|
|
95
95
|
declare module "./Context.js" {
|
|
96
|
-
interface Tag<Identifier, Service> extends STM<
|
|
96
|
+
interface Tag<Identifier, Service> extends STM<Service, never, Identifier> {
|
|
97
97
|
}
|
|
98
98
|
}
|
|
99
99
|
/**
|
|
@@ -101,10 +101,10 @@ declare module "./Context.js" {
|
|
|
101
101
|
* @category models
|
|
102
102
|
*/
|
|
103
103
|
declare module "./Either.js" {
|
|
104
|
-
interface Left<E, A> extends STM<
|
|
104
|
+
interface Left<E, A> extends STM<A, E> {
|
|
105
105
|
readonly _tag: "Left";
|
|
106
106
|
}
|
|
107
|
-
interface Right<E, A> extends STM<
|
|
107
|
+
interface Right<E, A> extends STM<A, E> {
|
|
108
108
|
readonly _tag: "Right";
|
|
109
109
|
}
|
|
110
110
|
}
|
|
@@ -113,10 +113,10 @@ declare module "./Either.js" {
|
|
|
113
113
|
* @category models
|
|
114
114
|
*/
|
|
115
115
|
declare module "./Option.js" {
|
|
116
|
-
interface None<A> extends STM<
|
|
116
|
+
interface None<A> extends STM<A, Cause.NoSuchElementException> {
|
|
117
117
|
readonly _tag: "None";
|
|
118
118
|
}
|
|
119
|
-
interface Some<A> extends STM<
|
|
119
|
+
interface Some<A> extends STM<A, Cause.NoSuchElementException> {
|
|
120
120
|
readonly _tag: "Some";
|
|
121
121
|
}
|
|
122
122
|
}
|
|
@@ -128,11 +128,11 @@ export declare namespace STM {
|
|
|
128
128
|
* @since 2.0.0
|
|
129
129
|
* @category models
|
|
130
130
|
*/
|
|
131
|
-
interface Variance<out
|
|
131
|
+
interface Variance<out A, out E, out R> {
|
|
132
132
|
readonly [STMTypeId]: {
|
|
133
|
-
readonly _R: Covariant<R>;
|
|
134
|
-
readonly _E: Covariant<E>;
|
|
135
133
|
readonly _A: Covariant<A>;
|
|
134
|
+
readonly _E: Covariant<E>;
|
|
135
|
+
readonly _R: Covariant<R>;
|
|
136
136
|
};
|
|
137
137
|
}
|
|
138
138
|
}
|
|
@@ -140,12 +140,12 @@ export declare namespace STM {
|
|
|
140
140
|
* @category models
|
|
141
141
|
* @since 2.0.0
|
|
142
142
|
*/
|
|
143
|
-
export interface STMGen<out
|
|
144
|
-
readonly _R: () => R;
|
|
145
|
-
readonly _E: () => E;
|
|
143
|
+
export interface STMGen<out A, out E, out R> {
|
|
146
144
|
readonly _A: () => A;
|
|
147
|
-
readonly
|
|
148
|
-
|
|
145
|
+
readonly _E: () => E;
|
|
146
|
+
readonly _R: () => R;
|
|
147
|
+
readonly value: STM<A, E, R>;
|
|
148
|
+
[Symbol.iterator](): Generator<STMGen<A, E, R>, A>;
|
|
149
149
|
}
|
|
150
150
|
/**
|
|
151
151
|
* Returns `true` if the provided value is an `STM`, `false` otherwise.
|
|
@@ -164,8 +164,8 @@ export declare const isSTM: (u: unknown) => u is STM<unknown, unknown, unknown>;
|
|
|
164
164
|
* @category constructors
|
|
165
165
|
*/
|
|
166
166
|
export declare const acquireUseRelease: {
|
|
167
|
-
<A, R2, E2, A2, R3, E3, A3>(use: (resource: A) => STM<
|
|
168
|
-
<R, E, A, R2, E2, A2, R3, E3, A3>(acquire: STM<
|
|
167
|
+
<A, R2, E2, A2, R3, E3, A3>(use: (resource: A) => STM<A2, E2, R2>, release: (resource: A) => STM<A3, E3, R3>): <R, E>(acquire: STM<A, E, R>) => Effect.Effect<A2, E2 | E3 | E, R2 | R3 | R>;
|
|
168
|
+
<R, E, A, R2, E2, A2, R3, E3, A3>(acquire: STM<A, E, R>, use: (resource: A) => STM<A2, E2, R2>, release: (resource: A) => STM<A3, E3, R3>): Effect.Effect<A2, E | E2 | E3, R | R2 | R3>;
|
|
169
169
|
};
|
|
170
170
|
/**
|
|
171
171
|
* @since 2.0.0
|
|
@@ -173,31 +173,31 @@ export declare const acquireUseRelease: {
|
|
|
173
173
|
*/
|
|
174
174
|
export declare namespace All {
|
|
175
175
|
type STMAny = STM<any, any, any>;
|
|
176
|
-
type ReturnTuple<T extends ReadonlyArray<STM<any, any, any>>, Discard extends boolean> = STM<
|
|
177
|
-
[
|
|
178
|
-
|
|
179
|
-
};
|
|
180
|
-
}] ? R : never, T[number] extends never ? never : [T[number]] extends [{
|
|
176
|
+
type ReturnTuple<T extends ReadonlyArray<STM<any, any, any>>, Discard extends boolean> = STM<Discard extends true ? void : T[number] extends never ? [] : {
|
|
177
|
+
-readonly [K in keyof T]: [T[K]] extends [STM<infer A, infer _E, infer _R>] ? A : never;
|
|
178
|
+
}, T[number] extends never ? never : [T[number]] extends [{
|
|
181
179
|
[STMTypeId]: {
|
|
182
180
|
_E: (_: never) => infer E;
|
|
183
181
|
};
|
|
184
|
-
}] ? E : never,
|
|
185
|
-
-readonly [K in keyof T]: [T[K]] extends [STM<infer _R, infer _E, infer A>] ? A : never;
|
|
186
|
-
}> extends infer X ? X : never;
|
|
187
|
-
type ReturnIterable<T extends Iterable<STMAny>, Discard extends boolean> = [T] extends [
|
|
188
|
-
Iterable<STM.Variance<infer R, infer E, infer A>>
|
|
189
|
-
] ? STM<R, E, Discard extends true ? void : Array<A>> : never;
|
|
190
|
-
type ReturnObject<T extends Record<string, STMAny>, Discard extends boolean> = STM<keyof T extends never ? never : [T[keyof T]] extends [{
|
|
182
|
+
}] ? E : never, T[number] extends never ? never : [T[number]] extends [{
|
|
191
183
|
[STMTypeId]: {
|
|
192
184
|
_R: (_: never) => infer R;
|
|
193
185
|
};
|
|
194
|
-
}] ? R : never
|
|
186
|
+
}] ? R : never> extends infer X ? X : never;
|
|
187
|
+
type ReturnIterable<T extends Iterable<STMAny>, Discard extends boolean> = [T] extends [
|
|
188
|
+
Iterable<STM.Variance<infer A, infer E, infer R>>
|
|
189
|
+
] ? STM<Discard extends true ? void : Array<A>, E, R> : never;
|
|
190
|
+
type ReturnObject<T extends Record<string, STMAny>, Discard extends boolean> = STM<Discard extends true ? void : {
|
|
191
|
+
-readonly [K in keyof T]: [T[K]] extends [STM.Variance<infer A, infer _E, infer _R>] ? A : never;
|
|
192
|
+
}, keyof T extends never ? never : [T[keyof T]] extends [{
|
|
195
193
|
[STMTypeId]: {
|
|
196
194
|
_E: (_: never) => infer E;
|
|
197
195
|
};
|
|
198
|
-
}] ? E : never,
|
|
199
|
-
|
|
200
|
-
|
|
196
|
+
}] ? E : never, keyof T extends never ? never : [T[keyof T]] extends [{
|
|
197
|
+
[STMTypeId]: {
|
|
198
|
+
_R: (_: never) => infer R;
|
|
199
|
+
};
|
|
200
|
+
}] ? R : never>;
|
|
201
201
|
/**
|
|
202
202
|
* @since 2.0.0
|
|
203
203
|
* @category utils
|
|
@@ -235,8 +235,8 @@ export declare const all: All.Signature;
|
|
|
235
235
|
* @category mapping
|
|
236
236
|
*/
|
|
237
237
|
export declare const as: {
|
|
238
|
-
<A2>(value: A2): <
|
|
239
|
-
<R, E, A, A2>(self: STM<
|
|
238
|
+
<A2>(value: A2): <A, E, R>(self: STM<A, E, R>) => STM<A2, E, R>;
|
|
239
|
+
<R, E, A, A2>(self: STM<A, E, R>, value: A2): STM<A2, E, R>;
|
|
240
240
|
};
|
|
241
241
|
/**
|
|
242
242
|
* Maps the success value of this effect to an optional value.
|
|
@@ -244,14 +244,14 @@ export declare const as: {
|
|
|
244
244
|
* @since 2.0.0
|
|
245
245
|
* @category mapping
|
|
246
246
|
*/
|
|
247
|
-
export declare const asSome: <
|
|
247
|
+
export declare const asSome: <A, E, R>(self: STM<A, E, R>) => STM<Option.Option<A>, E, R>;
|
|
248
248
|
/**
|
|
249
249
|
* Maps the error value of this effect to an optional value.
|
|
250
250
|
*
|
|
251
251
|
* @since 2.0.0
|
|
252
252
|
* @category mapping
|
|
253
253
|
*/
|
|
254
|
-
export declare const asSomeError: <
|
|
254
|
+
export declare const asSomeError: <A, E, R>(self: STM<A, E, R>) => STM<A, Option.Option<E>, R>;
|
|
255
255
|
/**
|
|
256
256
|
* This function maps the success value of an `STM` to `void`. If the original
|
|
257
257
|
* `STM` succeeds, the returned `STM` will also succeed. If the original `STM`
|
|
@@ -260,14 +260,14 @@ export declare const asSomeError: <R, E, A>(self: STM<R, E, A>) => STM<R, Option
|
|
|
260
260
|
* @since 2.0.0
|
|
261
261
|
* @category mapping
|
|
262
262
|
*/
|
|
263
|
-
export declare const asUnit: <
|
|
263
|
+
export declare const asUnit: <A, E, R>(self: STM<A, E, R>) => STM<void, E, R>;
|
|
264
264
|
/**
|
|
265
265
|
* Creates an `STM` value from a partial (but pure) function.
|
|
266
266
|
*
|
|
267
267
|
* @since 2.0.0
|
|
268
268
|
* @category constructors
|
|
269
269
|
*/
|
|
270
|
-
export declare const attempt: <A>(evaluate: LazyArg<A>) => STM<
|
|
270
|
+
export declare const attempt: <A>(evaluate: LazyArg<A>) => STM<A, unknown>;
|
|
271
271
|
/**
|
|
272
272
|
* Recovers from all errors.
|
|
273
273
|
*
|
|
@@ -275,8 +275,8 @@ export declare const attempt: <A>(evaluate: LazyArg<A>) => STM<never, unknown, A
|
|
|
275
275
|
* @category error handling
|
|
276
276
|
*/
|
|
277
277
|
export declare const catchAll: {
|
|
278
|
-
<E, R1, E1, B>(f: (e: E) => STM<
|
|
279
|
-
<R, A, E, R1, E1, B>(self: STM<
|
|
278
|
+
<E, R1, E1, B>(f: (e: E) => STM<B, E1, R1>): <R, A>(self: STM<A, E, R>) => STM<B | A, E1, R1 | R>;
|
|
279
|
+
<R, A, E, R1, E1, B>(self: STM<A, E, R>, f: (e: E) => STM<B, E1, R1>): STM<A | B, E1, R | R1>;
|
|
280
280
|
};
|
|
281
281
|
/**
|
|
282
282
|
* Recovers from some or all of the error cases.
|
|
@@ -285,8 +285,8 @@ export declare const catchAll: {
|
|
|
285
285
|
* @category error handling
|
|
286
286
|
*/
|
|
287
287
|
export declare const catchSome: {
|
|
288
|
-
<E, R2, E2, A2>(pf: (error: E) => Option.Option<STM<
|
|
289
|
-
<R, A, E, R2, E2, A2>(self: STM<
|
|
288
|
+
<E, R2, E2, A2>(pf: (error: E) => Option.Option<STM<A2, E2, R2>>): <R, A>(self: STM<A, E, R>) => STM<A2 | A, E | E2, R2 | R>;
|
|
289
|
+
<R, A, E, R2, E2, A2>(self: STM<A, E, R>, pf: (error: E) => Option.Option<STM<A2, E2, R2>>): STM<A | A2, E | E2, R | R2>;
|
|
290
290
|
};
|
|
291
291
|
/**
|
|
292
292
|
* Recovers from the specified tagged error.
|
|
@@ -299,16 +299,16 @@ export declare const catchTag: {
|
|
|
299
299
|
_tag: string;
|
|
300
300
|
}, R1, E1, A1>(k: K, f: (e: Extract<E, {
|
|
301
301
|
_tag: K;
|
|
302
|
-
}>) => STM<
|
|
302
|
+
}>) => STM<A1, E1, R1>): <R, A>(self: STM<A, E, R>) => STM<A1 | A, E1 | Exclude<E, {
|
|
303
303
|
_tag: K;
|
|
304
|
-
}>,
|
|
304
|
+
}>, R1 | R>;
|
|
305
305
|
<R, E extends {
|
|
306
306
|
_tag: string;
|
|
307
|
-
}, A, K extends E["_tag"] & string, R1, E1, A1>(self: STM<
|
|
307
|
+
}, A, K extends E["_tag"] & string, R1, E1, A1>(self: STM<A, E, R>, k: K, f: (e: Extract<E, {
|
|
308
308
|
_tag: K;
|
|
309
|
-
}>) => STM<
|
|
309
|
+
}>) => STM<A1, E1, R1>): STM<A | A1, E1 | Exclude<E, {
|
|
310
310
|
_tag: K;
|
|
311
|
-
}>,
|
|
311
|
+
}>, R | R1>;
|
|
312
312
|
};
|
|
313
313
|
/**
|
|
314
314
|
* Recovers from multiple tagged errors.
|
|
@@ -323,14 +323,14 @@ export declare const catchTags: {
|
|
|
323
323
|
[K in E["_tag"]]+?: ((error: Extract<E, {
|
|
324
324
|
_tag: K;
|
|
325
325
|
}>) => STM<any, any, any>);
|
|
326
|
-
}>(cases: Cases): <R, A>(self: STM<
|
|
327
|
-
[K in keyof Cases]: Cases[K] extends (...args: Array<any>) => STM<infer
|
|
326
|
+
}>(cases: Cases): <R, A>(self: STM<A, E, R>) => STM<A | {
|
|
327
|
+
[K in keyof Cases]: Cases[K] extends (...args: Array<any>) => STM<infer A, any, any> ? A : never;
|
|
328
328
|
}[keyof Cases], Exclude<E, {
|
|
329
329
|
_tag: keyof Cases;
|
|
330
330
|
}> | {
|
|
331
331
|
[K in keyof Cases]: Cases[K] extends (...args: Array<any>) => STM<any, infer E, any> ? E : never;
|
|
332
|
-
}[keyof Cases],
|
|
333
|
-
[K in keyof Cases]: Cases[K] extends (...args: Array<any>) => STM<any, any, infer
|
|
332
|
+
}[keyof Cases], R | {
|
|
333
|
+
[K in keyof Cases]: Cases[K] extends (...args: Array<any>) => STM<any, any, infer R> ? R : never;
|
|
334
334
|
}[keyof Cases]>;
|
|
335
335
|
<R, E extends {
|
|
336
336
|
_tag: string;
|
|
@@ -338,14 +338,14 @@ export declare const catchTags: {
|
|
|
338
338
|
[K in E["_tag"]]+?: ((error: Extract<E, {
|
|
339
339
|
_tag: K;
|
|
340
340
|
}>) => STM<any, any, any>);
|
|
341
|
-
}>(self: STM<
|
|
342
|
-
[K in keyof Cases]: Cases[K] extends (...args: Array<any>) => STM<infer
|
|
341
|
+
}>(self: STM<A, E, R>, cases: Cases): STM<A | {
|
|
342
|
+
[K in keyof Cases]: Cases[K] extends (...args: Array<any>) => STM<infer A, any, any> ? A : never;
|
|
343
343
|
}[keyof Cases], Exclude<E, {
|
|
344
344
|
_tag: keyof Cases;
|
|
345
345
|
}> | {
|
|
346
346
|
[K in keyof Cases]: Cases[K] extends (...args: Array<any>) => STM<any, infer E, any> ? E : never;
|
|
347
|
-
}[keyof Cases],
|
|
348
|
-
[K in keyof Cases]: Cases[K] extends (...args: Array<any>) => STM<any, any, infer
|
|
347
|
+
}[keyof Cases], R | {
|
|
348
|
+
[K in keyof Cases]: Cases[K] extends (...args: Array<any>) => STM<any, any, infer R> ? R : never;
|
|
349
349
|
}[keyof Cases]>;
|
|
350
350
|
};
|
|
351
351
|
/**
|
|
@@ -354,7 +354,7 @@ export declare const catchTags: {
|
|
|
354
354
|
* @since 2.0.0
|
|
355
355
|
* @category constructors
|
|
356
356
|
*/
|
|
357
|
-
export declare const check: (predicate: LazyArg<boolean>) => STM<
|
|
357
|
+
export declare const check: (predicate: LazyArg<boolean>) => STM<void>;
|
|
358
358
|
/**
|
|
359
359
|
* Simultaneously filters and maps the value produced by this effect.
|
|
360
360
|
*
|
|
@@ -362,8 +362,8 @@ export declare const check: (predicate: LazyArg<boolean>) => STM<never, never, v
|
|
|
362
362
|
* @category mutations
|
|
363
363
|
*/
|
|
364
364
|
export declare const collect: {
|
|
365
|
-
<A, A2>(pf: (a: A) => Option.Option<A2>): <R, E>(self: STM<
|
|
366
|
-
<R, E, A, A2>(self: STM<
|
|
365
|
+
<A, A2>(pf: (a: A) => Option.Option<A2>): <R, E>(self: STM<A, E, R>) => STM<A2, E, R>;
|
|
366
|
+
<R, E, A, A2>(self: STM<A, E, R>, pf: (a: A) => Option.Option<A2>): STM<A2, E, R>;
|
|
367
367
|
};
|
|
368
368
|
/**
|
|
369
369
|
* Simultaneously filters and maps the value produced by this effect.
|
|
@@ -372,8 +372,8 @@ export declare const collect: {
|
|
|
372
372
|
* @category mutations
|
|
373
373
|
*/
|
|
374
374
|
export declare const collectSTM: {
|
|
375
|
-
<A, R2, E2, A2>(pf: (a: A) => Option.Option<STM<
|
|
376
|
-
<R, E, A, R2, E2, A2>(self: STM<
|
|
375
|
+
<A, R2, E2, A2>(pf: (a: A) => Option.Option<STM<A2, E2, R2>>): <R, E>(self: STM<A, E, R>) => STM<A2, E2 | E, R2 | R>;
|
|
376
|
+
<R, E, A, R2, E2, A2>(self: STM<A, E, R>, pf: (a: A) => Option.Option<STM<A2, E2, R2>>): STM<A2, E | E2, R | R2>;
|
|
377
377
|
};
|
|
378
378
|
/**
|
|
379
379
|
* Commits this transaction atomically.
|
|
@@ -381,7 +381,7 @@ export declare const collectSTM: {
|
|
|
381
381
|
* @since 2.0.0
|
|
382
382
|
* @category destructors
|
|
383
383
|
*/
|
|
384
|
-
export declare const commit: <
|
|
384
|
+
export declare const commit: <A, E, R>(self: STM<A, E, R>) => Effect.Effect<A, E, R>;
|
|
385
385
|
/**
|
|
386
386
|
* Commits this transaction atomically, regardless of whether the transaction
|
|
387
387
|
* is a success or a failure.
|
|
@@ -389,7 +389,7 @@ export declare const commit: <R, E, A>(self: STM<R, E, A>) => Effect.Effect<R, E
|
|
|
389
389
|
* @since 2.0.0
|
|
390
390
|
* @category destructors
|
|
391
391
|
*/
|
|
392
|
-
export declare const commitEither: <
|
|
392
|
+
export declare const commitEither: <A, E, R>(self: STM<A, E, R>) => Effect.Effect<A, E, R>;
|
|
393
393
|
/**
|
|
394
394
|
* Similar to Either.cond, evaluate the predicate, return the given A as
|
|
395
395
|
* success if predicate returns true, and the given E as error otherwise
|
|
@@ -397,28 +397,28 @@ export declare const commitEither: <R, E, A>(self: STM<R, E, A>) => Effect.Effec
|
|
|
397
397
|
* @since 2.0.0
|
|
398
398
|
* @category constructors
|
|
399
399
|
*/
|
|
400
|
-
export declare const cond: <
|
|
400
|
+
export declare const cond: <A, E>(predicate: LazyArg<boolean>, error: LazyArg<E>, result: LazyArg<A>) => STM<A, E>;
|
|
401
401
|
/**
|
|
402
402
|
* Retrieves the environment inside an stm.
|
|
403
403
|
*
|
|
404
404
|
* @since 2.0.0
|
|
405
405
|
* @category constructors
|
|
406
406
|
*/
|
|
407
|
-
export declare const context: <R>() => STM<R
|
|
407
|
+
export declare const context: <R>() => STM<Context.Context<R>, never, R>;
|
|
408
408
|
/**
|
|
409
409
|
* Accesses the environment of the transaction to perform a transaction.
|
|
410
410
|
*
|
|
411
411
|
* @since 2.0.0
|
|
412
412
|
* @category constructors
|
|
413
413
|
*/
|
|
414
|
-
export declare const contextWith: <R0, R>(f: (environment: Context.Context<R0>) => R) => STM<
|
|
414
|
+
export declare const contextWith: <R0, R>(f: (environment: Context.Context<R0>) => R) => STM<R, never, R0>;
|
|
415
415
|
/**
|
|
416
416
|
* Accesses the environment of the transaction to perform a transaction.
|
|
417
417
|
*
|
|
418
418
|
* @since 2.0.0
|
|
419
419
|
* @category constructors
|
|
420
420
|
*/
|
|
421
|
-
export declare const contextWithSTM: <R0, R, E, A>(f: (environment: Context.Context<R0>) => STM<
|
|
421
|
+
export declare const contextWithSTM: <R0, R, E, A>(f: (environment: Context.Context<R0>) => STM<A, E, R>) => STM<A, E, R0 | R>;
|
|
422
422
|
/**
|
|
423
423
|
* Transforms the environment being provided to this effect with the specified
|
|
424
424
|
* function.
|
|
@@ -427,8 +427,8 @@ export declare const contextWithSTM: <R0, R, E, A>(f: (environment: Context.Cont
|
|
|
427
427
|
* @category context
|
|
428
428
|
*/
|
|
429
429
|
export declare const mapInputContext: {
|
|
430
|
-
<R0, R>(f: (context: Context.Context<R0>) => Context.Context<R>): <
|
|
431
|
-
<
|
|
430
|
+
<R0, R>(f: (context: Context.Context<R0>) => Context.Context<R>): <A, E>(self: STM<A, E, R>) => STM<A, E, R0>;
|
|
431
|
+
<A, E, R0, R>(self: STM<A, E, R>, f: (context: Context.Context<R0>) => Context.Context<R>): STM<A, E, R0>;
|
|
432
432
|
};
|
|
433
433
|
/**
|
|
434
434
|
* Fails the transactional effect with the specified defect.
|
|
@@ -436,7 +436,7 @@ export declare const mapInputContext: {
|
|
|
436
436
|
* @since 2.0.0
|
|
437
437
|
* @category constructors
|
|
438
438
|
*/
|
|
439
|
-
export declare const die: (defect: unknown) => STM<never
|
|
439
|
+
export declare const die: (defect: unknown) => STM<never>;
|
|
440
440
|
/**
|
|
441
441
|
* Kills the fiber running the effect with a `Cause.RuntimeException` that
|
|
442
442
|
* contains the specified message.
|
|
@@ -444,21 +444,21 @@ export declare const die: (defect: unknown) => STM<never, never, never>;
|
|
|
444
444
|
* @since 2.0.0
|
|
445
445
|
* @category constructors
|
|
446
446
|
*/
|
|
447
|
-
export declare const dieMessage: (message: string) => STM<never
|
|
447
|
+
export declare const dieMessage: (message: string) => STM<never>;
|
|
448
448
|
/**
|
|
449
449
|
* Fails the transactional effect with the specified lazily evaluated defect.
|
|
450
450
|
*
|
|
451
451
|
* @since 2.0.0
|
|
452
452
|
* @category constructors
|
|
453
453
|
*/
|
|
454
|
-
export declare const dieSync: (evaluate: LazyArg<unknown>) => STM<never
|
|
454
|
+
export declare const dieSync: (evaluate: LazyArg<unknown>) => STM<never>;
|
|
455
455
|
/**
|
|
456
456
|
* Converts the failure channel into an `Either`.
|
|
457
457
|
*
|
|
458
458
|
* @since 2.0.0
|
|
459
459
|
* @category mutations
|
|
460
460
|
*/
|
|
461
|
-
export declare const either: <
|
|
461
|
+
export declare const either: <A, E, R>(self: STM<A, E, R>) => STM<Either.Either<E, A>, never, R>;
|
|
462
462
|
/**
|
|
463
463
|
* Executes the specified finalization transaction whether or not this effect
|
|
464
464
|
* succeeds. Note that as with all STM transactions, if the full transaction
|
|
@@ -468,8 +468,8 @@ export declare const either: <R, E, A>(self: STM<R, E, A>) => STM<R, never, Eith
|
|
|
468
468
|
* @category finalization
|
|
469
469
|
*/
|
|
470
470
|
export declare const ensuring: {
|
|
471
|
-
<R1, B>(finalizer: STM<
|
|
472
|
-
<R, E, A, R1, B>(self: STM<
|
|
471
|
+
<R1, B>(finalizer: STM<B, never, R1>): <A, E, R>(self: STM<A, E, R>) => STM<A, E, R1 | R>;
|
|
472
|
+
<R, E, A, R1, B>(self: STM<A, E, R>, finalizer: STM<B, never, R1>): STM<A, E, R | R1>;
|
|
473
473
|
};
|
|
474
474
|
/**
|
|
475
475
|
* Returns an effect that ignores errors and runs repeatedly until it
|
|
@@ -478,7 +478,7 @@ export declare const ensuring: {
|
|
|
478
478
|
* @since 2.0.0
|
|
479
479
|
* @category mutations
|
|
480
480
|
*/
|
|
481
|
-
export declare const eventually: <
|
|
481
|
+
export declare const eventually: <A, E, R>(self: STM<A, E, R>) => STM<A, E, R>;
|
|
482
482
|
/**
|
|
483
483
|
* Determines whether all elements of the `Iterable<A>` satisfy the effectual
|
|
484
484
|
* predicate.
|
|
@@ -487,8 +487,8 @@ export declare const eventually: <R, E, A>(self: STM<R, E, A>) => STM<R, E, A>;
|
|
|
487
487
|
* @category constructors
|
|
488
488
|
*/
|
|
489
489
|
export declare const every: {
|
|
490
|
-
<A, R, E>(predicate: (a: NoInfer<A>) => STM<
|
|
491
|
-
<A, R, E>(iterable: Iterable<A>, predicate: (a: A) => STM<
|
|
490
|
+
<A, R, E>(predicate: (a: NoInfer<A>) => STM<boolean, E, R>): (iterable: Iterable<A>) => STM<boolean, E, R>;
|
|
491
|
+
<A, R, E>(iterable: Iterable<A>, predicate: (a: A) => STM<boolean, E, R>): STM<boolean, E, R>;
|
|
492
492
|
};
|
|
493
493
|
/**
|
|
494
494
|
* Determines whether any element of the `Iterable[A]` satisfies the effectual
|
|
@@ -498,8 +498,8 @@ export declare const every: {
|
|
|
498
498
|
* @category constructors
|
|
499
499
|
*/
|
|
500
500
|
export declare const exists: {
|
|
501
|
-
<A, R, E>(predicate: (a: NoInfer<A>) => STM<
|
|
502
|
-
<A, R, E>(iterable: Iterable<A>, predicate: (a: A) => STM<
|
|
501
|
+
<A, R, E>(predicate: (a: NoInfer<A>) => STM<boolean, E, R>): (iterable: Iterable<A>) => STM<boolean, E, R>;
|
|
502
|
+
<A, R, E>(iterable: Iterable<A>, predicate: (a: A) => STM<boolean, E, R>): STM<boolean, E, R>;
|
|
503
503
|
};
|
|
504
504
|
/**
|
|
505
505
|
* Fails the transactional effect with the specified error.
|
|
@@ -507,21 +507,21 @@ export declare const exists: {
|
|
|
507
507
|
* @since 2.0.0
|
|
508
508
|
* @category constructors
|
|
509
509
|
*/
|
|
510
|
-
export declare const fail: <E>(error: E) => STM<never, E
|
|
510
|
+
export declare const fail: <E>(error: E) => STM<never, E>;
|
|
511
511
|
/**
|
|
512
512
|
* Fails the transactional effect with the specified lazily evaluated error.
|
|
513
513
|
*
|
|
514
514
|
* @since 2.0.0
|
|
515
515
|
* @category constructors
|
|
516
516
|
*/
|
|
517
|
-
export declare const failSync: <E>(evaluate: LazyArg<E>) => STM<never, E
|
|
517
|
+
export declare const failSync: <E>(evaluate: LazyArg<E>) => STM<never, E>;
|
|
518
518
|
/**
|
|
519
519
|
* Returns the fiber id of the fiber committing the transaction.
|
|
520
520
|
*
|
|
521
521
|
* @since 2.0.0
|
|
522
522
|
* @category constructors
|
|
523
523
|
*/
|
|
524
|
-
export declare const fiberId: STM<
|
|
524
|
+
export declare const fiberId: STM<FiberId.FiberId>;
|
|
525
525
|
/**
|
|
526
526
|
* Filters the collection using the specified effectual predicate.
|
|
527
527
|
*
|
|
@@ -529,8 +529,8 @@ export declare const fiberId: STM<never, never, FiberId.FiberId>;
|
|
|
529
529
|
* @category constructors
|
|
530
530
|
*/
|
|
531
531
|
export declare const filter: {
|
|
532
|
-
<A, R, E>(predicate: (a: NoInfer<A>) => STM<
|
|
533
|
-
<A, R, E>(iterable: Iterable<A>, predicate: (a: A) => STM<
|
|
532
|
+
<A, R, E>(predicate: (a: NoInfer<A>) => STM<boolean, E, R>): (iterable: Iterable<A>) => STM<Array<A>, E, R>;
|
|
533
|
+
<A, R, E>(iterable: Iterable<A>, predicate: (a: A) => STM<boolean, E, R>): STM<Array<A>, E, R>;
|
|
534
534
|
};
|
|
535
535
|
/**
|
|
536
536
|
* Filters the collection using the specified effectual predicate, removing
|
|
@@ -540,8 +540,8 @@ export declare const filter: {
|
|
|
540
540
|
* @category constructors
|
|
541
541
|
*/
|
|
542
542
|
export declare const filterNot: {
|
|
543
|
-
<A, R, E>(predicate: (a: NoInfer<A>) => STM<
|
|
544
|
-
<A, R, E>(iterable: Iterable<A>, predicate: (a: A) => STM<
|
|
543
|
+
<A, R, E>(predicate: (a: NoInfer<A>) => STM<boolean, E, R>): (iterable: Iterable<A>) => STM<Array<A>, E, R>;
|
|
544
|
+
<A, R, E>(iterable: Iterable<A>, predicate: (a: A) => STM<boolean, E, R>): STM<Array<A>, E, R>;
|
|
545
545
|
};
|
|
546
546
|
/**
|
|
547
547
|
* Dies with specified defect if the predicate fails.
|
|
@@ -550,10 +550,10 @@ export declare const filterNot: {
|
|
|
550
550
|
* @category filtering
|
|
551
551
|
*/
|
|
552
552
|
export declare const filterOrDie: {
|
|
553
|
-
<A, B extends A>(refinement: Refinement<NoInfer<A>, B>, defect: LazyArg<unknown>): <R, E>(self: STM<
|
|
554
|
-
<A>(predicate: Predicate<NoInfer<A>>, defect: LazyArg<unknown>): <R, E>(self: STM<
|
|
555
|
-
<R, E, A, B extends A>(self: STM<
|
|
556
|
-
<
|
|
553
|
+
<A, B extends A>(refinement: Refinement<NoInfer<A>, B>, defect: LazyArg<unknown>): <R, E>(self: STM<A, E, R>) => STM<B, E, R>;
|
|
554
|
+
<A>(predicate: Predicate<NoInfer<A>>, defect: LazyArg<unknown>): <R, E>(self: STM<A, E, R>) => STM<A, E, R>;
|
|
555
|
+
<R, E, A, B extends A>(self: STM<A, E, R>, refinement: Refinement<A, B>, defect: LazyArg<unknown>): STM<B, E, R>;
|
|
556
|
+
<A, E, R>(self: STM<A, E, R>, predicate: Predicate<A>, defect: LazyArg<unknown>): STM<A, E, R>;
|
|
557
557
|
};
|
|
558
558
|
/**
|
|
559
559
|
* Dies with a `Cause.RuntimeException` having the specified message if the
|
|
@@ -563,10 +563,10 @@ export declare const filterOrDie: {
|
|
|
563
563
|
* @category filtering
|
|
564
564
|
*/
|
|
565
565
|
export declare const filterOrDieMessage: {
|
|
566
|
-
<A, B extends A>(refinement: Refinement<NoInfer<A>, B>, message: string): <R, E>(self: STM<
|
|
567
|
-
<A>(predicate: Predicate<NoInfer<A>>, message: string): <R, E>(self: STM<
|
|
568
|
-
<R, E, A, B extends A>(self: STM<
|
|
569
|
-
<
|
|
566
|
+
<A, B extends A>(refinement: Refinement<NoInfer<A>, B>, message: string): <R, E>(self: STM<A, E, R>) => STM<B, E, R>;
|
|
567
|
+
<A>(predicate: Predicate<NoInfer<A>>, message: string): <R, E>(self: STM<A, E, R>) => STM<A, E, R>;
|
|
568
|
+
<R, E, A, B extends A>(self: STM<A, E, R>, refinement: Refinement<A, B>, message: string): STM<B, E, R>;
|
|
569
|
+
<A, E, R>(self: STM<A, E, R>, predicate: Predicate<A>, message: string): STM<A, E, R>;
|
|
570
570
|
};
|
|
571
571
|
/**
|
|
572
572
|
* Supplies `orElse` if the predicate fails.
|
|
@@ -575,10 +575,10 @@ export declare const filterOrDieMessage: {
|
|
|
575
575
|
* @category filtering
|
|
576
576
|
*/
|
|
577
577
|
export declare const filterOrElse: {
|
|
578
|
-
<A, B extends A, R2, E2, C>(refinement: Refinement<NoInfer<A>, B>, orElse: (a: NoInfer<A>) => STM<
|
|
579
|
-
<A, R2, E2, B>(predicate: Predicate<NoInfer<A>>, orElse: (a: NoInfer<A>) => STM<
|
|
580
|
-
<R, E, A, B extends A, R2, E2, C>(self: STM<
|
|
581
|
-
<R, E, A, R2, E2, B>(self: STM<
|
|
578
|
+
<A, B extends A, R2, E2, C>(refinement: Refinement<NoInfer<A>, B>, orElse: (a: NoInfer<A>) => STM<C, E2, R2>): <R, E>(self: STM<A, E, R>) => STM<B | C, E2 | E, R2 | R>;
|
|
579
|
+
<A, R2, E2, B>(predicate: Predicate<NoInfer<A>>, orElse: (a: NoInfer<A>) => STM<B, E2, R2>): <R, E>(self: STM<A, E, R>) => STM<A | B, E2 | E, R2 | R>;
|
|
580
|
+
<R, E, A, B extends A, R2, E2, C>(self: STM<A, E, R>, refinement: Refinement<A, B>, orElse: (a: A) => STM<C, E2, R2>): STM<B | C, E | E2, R | R2>;
|
|
581
|
+
<R, E, A, R2, E2, B>(self: STM<A, E, R>, predicate: Predicate<A>, orElse: (a: A) => STM<B, E2, R2>): STM<A | B, E | E2, R | R2>;
|
|
582
582
|
};
|
|
583
583
|
/**
|
|
584
584
|
* Fails with the specified error if the predicate fails.
|
|
@@ -587,10 +587,10 @@ export declare const filterOrElse: {
|
|
|
587
587
|
* @category filtering
|
|
588
588
|
*/
|
|
589
589
|
export declare const filterOrFail: {
|
|
590
|
-
<A, B extends A, E2>(refinement: Refinement<NoInfer<A>, B>, orFailWith: (a: NoInfer<A>) => E2): <R, E>(self: STM<
|
|
591
|
-
<A, E2>(predicate: Predicate<NoInfer<A>>, orFailWith: (a: NoInfer<A>) => E2): <R, E>(self: STM<
|
|
592
|
-
<R, E, A, B extends A, E2>(self: STM<
|
|
593
|
-
<R, E, A, E2>(self: STM<
|
|
590
|
+
<A, B extends A, E2>(refinement: Refinement<NoInfer<A>, B>, orFailWith: (a: NoInfer<A>) => E2): <R, E>(self: STM<A, E, R>) => STM<B, E2 | E, R>;
|
|
591
|
+
<A, E2>(predicate: Predicate<NoInfer<A>>, orFailWith: (a: NoInfer<A>) => E2): <R, E>(self: STM<A, E, R>) => STM<A, E2 | E, R>;
|
|
592
|
+
<R, E, A, B extends A, E2>(self: STM<A, E, R>, refinement: Refinement<A, B>, orFailWith: (a: A) => E2): STM<B, E | E2, R>;
|
|
593
|
+
<R, E, A, E2>(self: STM<A, E, R>, predicate: Predicate<A>, orFailWith: (a: A) => E2): STM<A, E | E2, R>;
|
|
594
594
|
};
|
|
595
595
|
/**
|
|
596
596
|
* Feeds the value produced by this effect to the specified function, and then
|
|
@@ -600,8 +600,8 @@ export declare const filterOrFail: {
|
|
|
600
600
|
* @category sequencing
|
|
601
601
|
*/
|
|
602
602
|
export declare const flatMap: {
|
|
603
|
-
<A, R1, E1, A2>(f: (a: A) => STM<
|
|
604
|
-
<R, E, A, R1, E1, A2>(self: STM<
|
|
603
|
+
<A, R1, E1, A2>(f: (a: A) => STM<A2, E1, R1>): <R, E>(self: STM<A, E, R>) => STM<A2, E1 | E, R1 | R>;
|
|
604
|
+
<R, E, A, R1, E1, A2>(self: STM<A, E, R>, f: (a: A) => STM<A2, E1, R1>): STM<A2, E | E1, R | R1>;
|
|
605
605
|
};
|
|
606
606
|
/**
|
|
607
607
|
* Flattens out a nested `STM` effect.
|
|
@@ -609,7 +609,7 @@ export declare const flatMap: {
|
|
|
609
609
|
* @since 2.0.0
|
|
610
610
|
* @category sequencing
|
|
611
611
|
*/
|
|
612
|
-
export declare const flatten: <R, E, R2, E2, A>(self: STM<
|
|
612
|
+
export declare const flatten: <R, E, R2, E2, A>(self: STM<STM<A, E2, R2>, E, R>) => STM<A, E | E2, R | R2>;
|
|
613
613
|
/**
|
|
614
614
|
* Flips the success and failure channels of this transactional effect. This
|
|
615
615
|
* allows you to use all methods on the error channel, possibly before
|
|
@@ -618,7 +618,7 @@ export declare const flatten: <R, E, R2, E2, A>(self: STM<R, E, STM<R2, E2, A>>)
|
|
|
618
618
|
* @since 2.0.0
|
|
619
619
|
* @category mutations
|
|
620
620
|
*/
|
|
621
|
-
export declare const flip: <
|
|
621
|
+
export declare const flip: <A, E, R>(self: STM<A, E, R>) => STM<E, A, R>;
|
|
622
622
|
/**
|
|
623
623
|
* Swaps the error/value parameters, applies the function `f` and flips the
|
|
624
624
|
* parameters back
|
|
@@ -627,8 +627,8 @@ export declare const flip: <R, E, A>(self: STM<R, E, A>) => STM<R, A, E>;
|
|
|
627
627
|
* @category mutations
|
|
628
628
|
*/
|
|
629
629
|
export declare const flipWith: {
|
|
630
|
-
<R, A, E, R2, A2, E2>(f: (stm: STM<
|
|
631
|
-
<R, A, E, R2, A2, E2>(self: STM<
|
|
630
|
+
<R, A, E, R2, A2, E2>(f: (stm: STM<E, A, R>) => STM<E2, A2, R2>): (self: STM<A, E, R>) => STM<A | A2, E | E2, R | R2>;
|
|
631
|
+
<R, A, E, R2, A2, E2>(self: STM<A, E, R>, f: (stm: STM<E, A, R>) => STM<E2, A2, R2>): STM<A | A2, E | E2, R | R2>;
|
|
632
632
|
};
|
|
633
633
|
/**
|
|
634
634
|
* Folds over the `STM` effect, handling both failure and success, but not
|
|
@@ -641,11 +641,11 @@ export declare const match: {
|
|
|
641
641
|
<E, A2, A, A3>(options: {
|
|
642
642
|
readonly onFailure: (error: E) => A2;
|
|
643
643
|
readonly onSuccess: (value: A) => A3;
|
|
644
|
-
}): <R>(self: STM<
|
|
645
|
-
<R, E, A2, A, A3>(self: STM<
|
|
644
|
+
}): <R>(self: STM<A, E, R>) => STM<A2 | A3, never, R>;
|
|
645
|
+
<R, E, A2, A, A3>(self: STM<A, E, R>, options: {
|
|
646
646
|
readonly onFailure: (error: E) => A2;
|
|
647
647
|
readonly onSuccess: (value: A) => A3;
|
|
648
|
-
}): STM<
|
|
648
|
+
}): STM<A2 | A3, never, R>;
|
|
649
649
|
};
|
|
650
650
|
/**
|
|
651
651
|
* Effectfully folds over the `STM` effect, handling both failure and success.
|
|
@@ -655,13 +655,13 @@ export declare const match: {
|
|
|
655
655
|
*/
|
|
656
656
|
export declare const matchSTM: {
|
|
657
657
|
<E, R1, E1, A1, A, R2, E2, A2>(options: {
|
|
658
|
-
readonly onFailure: (e: E) => STM<
|
|
659
|
-
readonly onSuccess: (a: A) => STM<
|
|
660
|
-
}): <R>(self: STM<
|
|
661
|
-
<R, E, R1, E1, A1, A, R2, E2, A2>(self: STM<
|
|
662
|
-
readonly onFailure: (e: E) => STM<
|
|
663
|
-
readonly onSuccess: (a: A) => STM<
|
|
664
|
-
}): STM<
|
|
658
|
+
readonly onFailure: (e: E) => STM<A1, E1, R1>;
|
|
659
|
+
readonly onSuccess: (a: A) => STM<A2, E2, R2>;
|
|
660
|
+
}): <R>(self: STM<A, E, R>) => STM<A1 | A2, E1 | E2, R1 | R2 | R>;
|
|
661
|
+
<R, E, R1, E1, A1, A, R2, E2, A2>(self: STM<A, E, R>, options: {
|
|
662
|
+
readonly onFailure: (e: E) => STM<A1, E1, R1>;
|
|
663
|
+
readonly onSuccess: (a: A) => STM<A2, E2, R2>;
|
|
664
|
+
}): STM<A1 | A2, E1 | E2, R | R1 | R2>;
|
|
665
665
|
};
|
|
666
666
|
/**
|
|
667
667
|
* Applies the function `f` to each element of the `Iterable<A>` and returns
|
|
@@ -671,18 +671,18 @@ export declare const matchSTM: {
|
|
|
671
671
|
* @category traversing
|
|
672
672
|
*/
|
|
673
673
|
export declare const forEach: {
|
|
674
|
-
<A, R, E, A2>(f: (a: A) => STM<
|
|
674
|
+
<A, R, E, A2>(f: (a: A) => STM<A2, E, R>, options?: {
|
|
675
675
|
readonly discard?: false | undefined;
|
|
676
|
-
}): (elements: Iterable<A>) => STM<
|
|
677
|
-
<A, R, E, A2>(f: (a: A) => STM<
|
|
676
|
+
}): (elements: Iterable<A>) => STM<Array<A2>, E, R>;
|
|
677
|
+
<A, R, E, A2>(f: (a: A) => STM<A2, E, R>, options: {
|
|
678
678
|
readonly discard: true;
|
|
679
|
-
}): (elements: Iterable<A>) => STM<
|
|
680
|
-
<A, R, E, A2>(elements: Iterable<A>, f: (a: A) => STM<
|
|
679
|
+
}): (elements: Iterable<A>) => STM<void, E, R>;
|
|
680
|
+
<A, R, E, A2>(elements: Iterable<A>, f: (a: A) => STM<A2, E, R>, options?: {
|
|
681
681
|
readonly discard?: false | undefined;
|
|
682
|
-
}): STM<
|
|
683
|
-
<A, R, E, A2>(elements: Iterable<A>, f: (a: A) => STM<
|
|
682
|
+
}): STM<Array<A2>, E, R>;
|
|
683
|
+
<A, R, E, A2>(elements: Iterable<A>, f: (a: A) => STM<A2, E, R>, options: {
|
|
684
684
|
readonly discard: true;
|
|
685
|
-
}): STM<
|
|
685
|
+
}): STM<void, E, R>;
|
|
686
686
|
};
|
|
687
687
|
/**
|
|
688
688
|
* Lifts an `Either` into a `STM`.
|
|
@@ -690,50 +690,50 @@ export declare const forEach: {
|
|
|
690
690
|
* @since 2.0.0
|
|
691
691
|
* @category constructors
|
|
692
692
|
*/
|
|
693
|
-
export declare const fromEither: <E, A>(either: Either.Either<E, A>) => STM<
|
|
693
|
+
export declare const fromEither: <E, A>(either: Either.Either<E, A>) => STM<A, E>;
|
|
694
694
|
/**
|
|
695
695
|
* Lifts an `Option` into a `STM`.
|
|
696
696
|
*
|
|
697
697
|
* @since 2.0.0
|
|
698
698
|
* @category constructors
|
|
699
699
|
*/
|
|
700
|
-
export declare const fromOption: <A>(option: Option.Option<A>) => STM<
|
|
700
|
+
export declare const fromOption: <A>(option: Option.Option<A>) => STM<A, Option.Option<never>>;
|
|
701
701
|
/**
|
|
702
702
|
* @since 2.0.0
|
|
703
703
|
* @category models
|
|
704
704
|
*/
|
|
705
705
|
export interface Adapter {
|
|
706
|
-
<
|
|
707
|
-
<A, _R, _E, _A>(a: A, ab: (a: A) => STM<
|
|
708
|
-
<A, B, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => STM<
|
|
709
|
-
<A, B, C, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => STM<
|
|
710
|
-
<A, B, C, D, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => STM<
|
|
711
|
-
<A, B, C, D, E, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => STM<
|
|
712
|
-
<A, B, C, D, E, F, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => STM<
|
|
713
|
-
<A, B, C, D, E, F, G, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: F) => STM<
|
|
714
|
-
<A, B, C, D, E, F, G, H, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (g: H) => STM<
|
|
715
|
-
<A, B, C, D, E, F, G, H, I, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => STM<
|
|
716
|
-
<A, B, C, D, E, F, G, H, I, J, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => STM<
|
|
717
|
-
<A, B, C, D, E, F, G, H, I, J, K, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => STM<
|
|
718
|
-
<A, B, C, D, E, F, G, H, I, J, K, L, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => STM<
|
|
719
|
-
<A, B, C, D, E, F, G, H, I, J, K, L, M, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => STM<
|
|
720
|
-
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => STM<
|
|
721
|
-
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => STM<
|
|
722
|
-
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => STM<
|
|
723
|
-
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => STM<
|
|
724
|
-
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R, rs: (r: R) => STM<
|
|
725
|
-
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R, rs: (r: R) => S, st: (s: S) => STM<
|
|
726
|
-
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R, rs: (r: R) => S, st: (s: S) => T, tu: (s: T) => STM<
|
|
706
|
+
<A, E, R>(self: STM<A, E, R>): STMGen<A, E, R>;
|
|
707
|
+
<A, _R, _E, _A>(a: A, ab: (a: A) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
708
|
+
<A, B, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
709
|
+
<A, B, C, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
710
|
+
<A, B, C, D, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
711
|
+
<A, B, C, D, E, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
712
|
+
<A, B, C, D, E, F, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
713
|
+
<A, B, C, D, E, F, G, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: F) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
714
|
+
<A, B, C, D, E, F, G, H, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (g: H) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
715
|
+
<A, B, C, D, E, F, G, H, I, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
716
|
+
<A, B, C, D, E, F, G, H, I, J, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
717
|
+
<A, B, C, D, E, F, G, H, I, J, K, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
718
|
+
<A, B, C, D, E, F, G, H, I, J, K, L, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
719
|
+
<A, B, C, D, E, F, G, H, I, J, K, L, M, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
720
|
+
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
721
|
+
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
722
|
+
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
723
|
+
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
724
|
+
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R, rs: (r: R) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
725
|
+
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R, rs: (r: R) => S, st: (s: S) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
726
|
+
<A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, _R, _E, _A>(a: A, ab: (a: A) => B, bc: (b: B) => C, cd: (c: C) => D, de: (d: D) => E, ef: (e: E) => F, fg: (f: F) => G, gh: (g: G) => H, hi: (h: H) => I, ij: (i: I) => J, jk: (j: J) => K, kl: (k: K) => L, lm: (l: L) => M, mn: (m: M) => N, no: (n: N) => O, op: (o: O) => P, pq: (p: P) => Q, qr: (q: Q) => R, rs: (r: R) => S, st: (s: S) => T, tu: (s: T) => STM<_A, _E, _R>): STMGen<_A, _E, _R>;
|
|
727
727
|
}
|
|
728
728
|
/**
|
|
729
729
|
* @since 2.0.0
|
|
730
730
|
* @category constructors
|
|
731
731
|
*/
|
|
732
|
-
export declare const gen: <Eff extends STMGen<any, any, any>, AEff>(f: (resume: Adapter) => Generator<Eff, AEff, any>) => STM<[
|
|
732
|
+
export declare const gen: <Eff extends STMGen<any, any, any>, AEff>(f: (resume: Adapter) => Generator<Eff, AEff, any>) => STM<AEff, [
|
|
733
733
|
Eff
|
|
734
|
-
] extends [never] ? never : [Eff] extends [STMGen<infer
|
|
734
|
+
] extends [never] ? never : [Eff] extends [STMGen<any, infer E, any>] ? E : never, [
|
|
735
735
|
Eff
|
|
736
|
-
] extends [never] ? never : [Eff] extends [STMGen<any, infer
|
|
736
|
+
] extends [never] ? never : [Eff] extends [STMGen<any, any, infer R>] ? R : never>;
|
|
737
737
|
/**
|
|
738
738
|
* Returns a successful effect with the head of the list if the list is
|
|
739
739
|
* non-empty or fails with the error `None` if the list is empty.
|
|
@@ -741,20 +741,20 @@ export declare const gen: <Eff extends STMGen<any, any, any>, AEff>(f: (resume:
|
|
|
741
741
|
* @since 2.0.0
|
|
742
742
|
* @category getters
|
|
743
743
|
*/
|
|
744
|
-
export declare const head: <
|
|
744
|
+
export declare const head: <A, E, R>(self: STM<Iterable<A>, E, R>) => STM<A, Option.Option<E>, R>;
|
|
745
745
|
declare const if_: {
|
|
746
746
|
<R1, R2, E1, E2, A, A1>(options: {
|
|
747
|
-
readonly onTrue: STM<
|
|
748
|
-
readonly onFalse: STM<
|
|
749
|
-
}): <R = never, E = never>(self: boolean | STM<
|
|
747
|
+
readonly onTrue: STM<A, E1, R1>;
|
|
748
|
+
readonly onFalse: STM<A1, E2, R2>;
|
|
749
|
+
}): <R = never, E = never>(self: boolean | STM<boolean, E, R>) => STM<A | A1, E1 | E2 | E, R1 | R2 | R>;
|
|
750
750
|
<R, E, R1, R2, E1, E2, A, A1>(self: boolean, options: {
|
|
751
|
-
readonly onTrue: STM<
|
|
752
|
-
readonly onFalse: STM<
|
|
753
|
-
}): STM<
|
|
754
|
-
<R, E, R1, R2, E1, E2, A, A1>(self: STM<
|
|
755
|
-
readonly onTrue: STM<
|
|
756
|
-
readonly onFalse: STM<
|
|
757
|
-
}): STM<
|
|
751
|
+
readonly onTrue: STM<A, E1, R1>;
|
|
752
|
+
readonly onFalse: STM<A1, E2, R2>;
|
|
753
|
+
}): STM<A | A1, E | E1 | E2, R | R1 | R2>;
|
|
754
|
+
<R, E, R1, R2, E1, E2, A, A1>(self: STM<boolean, E, R>, options: {
|
|
755
|
+
readonly onTrue: STM<A, E1, R1>;
|
|
756
|
+
readonly onFalse: STM<A1, E2, R2>;
|
|
757
|
+
}): STM<A | A1, E | E1 | E2, R | R1 | R2>;
|
|
758
758
|
};
|
|
759
759
|
export {
|
|
760
760
|
/**
|
|
@@ -770,35 +770,35 @@ if_ as if };
|
|
|
770
770
|
* @since 2.0.0
|
|
771
771
|
* @category mutations
|
|
772
772
|
*/
|
|
773
|
-
export declare const ignore: <
|
|
773
|
+
export declare const ignore: <A, E, R>(self: STM<A, E, R>) => STM<void, never, R>;
|
|
774
774
|
/**
|
|
775
775
|
* Interrupts the fiber running the effect.
|
|
776
776
|
*
|
|
777
777
|
* @since 2.0.0
|
|
778
778
|
* @category constructors
|
|
779
779
|
*/
|
|
780
|
-
export declare const interrupt: STM<never
|
|
780
|
+
export declare const interrupt: STM<never>;
|
|
781
781
|
/**
|
|
782
782
|
* Interrupts the fiber running the effect with the specified `FiberId`.
|
|
783
783
|
*
|
|
784
784
|
* @since 2.0.0
|
|
785
785
|
* @category constructors
|
|
786
786
|
*/
|
|
787
|
-
export declare const interruptAs: (fiberId: FiberId.FiberId) => STM<never
|
|
787
|
+
export declare const interruptAs: (fiberId: FiberId.FiberId) => STM<never>;
|
|
788
788
|
/**
|
|
789
789
|
* Returns whether this transactional effect is a failure.
|
|
790
790
|
*
|
|
791
791
|
* @since 2.0.0
|
|
792
792
|
* @category getters
|
|
793
793
|
*/
|
|
794
|
-
export declare const isFailure: <
|
|
794
|
+
export declare const isFailure: <A, E, R>(self: STM<A, E, R>) => STM<boolean, never, R>;
|
|
795
795
|
/**
|
|
796
796
|
* Returns whether this transactional effect is a success.
|
|
797
797
|
*
|
|
798
798
|
* @since 2.0.0
|
|
799
799
|
* @category getters
|
|
800
800
|
*/
|
|
801
|
-
export declare const isSuccess: <
|
|
801
|
+
export declare const isSuccess: <A, E, R>(self: STM<A, E, R>) => STM<boolean, never, R>;
|
|
802
802
|
/**
|
|
803
803
|
* Iterates with the specified transactional function. The moral equivalent
|
|
804
804
|
* of:
|
|
@@ -818,8 +818,8 @@ export declare const isSuccess: <R, E, A>(self: STM<R, E, A>) => STM<R, never, b
|
|
|
818
818
|
*/
|
|
819
819
|
export declare const iterate: <R, E, Z>(initial: Z, options: {
|
|
820
820
|
readonly while: Predicate<Z>;
|
|
821
|
-
readonly body: (z: Z) => STM<
|
|
822
|
-
}) => STM<
|
|
821
|
+
readonly body: (z: Z) => STM<Z, E, R>;
|
|
822
|
+
}) => STM<Z, E, R>;
|
|
823
823
|
/**
|
|
824
824
|
* Loops with the specified transactional function, collecting the results
|
|
825
825
|
* into a list. The moral equivalent of:
|
|
@@ -843,15 +843,15 @@ export declare const loop: {
|
|
|
843
843
|
<Z, R, E, A>(initial: Z, options: {
|
|
844
844
|
readonly while: Predicate<Z>;
|
|
845
845
|
readonly step: (z: Z) => Z;
|
|
846
|
-
readonly body: (z: Z) => STM<
|
|
846
|
+
readonly body: (z: Z) => STM<A, E, R>;
|
|
847
847
|
readonly discard?: false | undefined;
|
|
848
|
-
}): STM<
|
|
848
|
+
}): STM<Array<A>, E, R>;
|
|
849
849
|
<Z, R, E, A>(initial: Z, options: {
|
|
850
850
|
readonly while: Predicate<Z>;
|
|
851
851
|
readonly step: (z: Z) => Z;
|
|
852
|
-
readonly body: (z: Z) => STM<
|
|
852
|
+
readonly body: (z: Z) => STM<A, E, R>;
|
|
853
853
|
readonly discard: true;
|
|
854
|
-
}): STM<
|
|
854
|
+
}): STM<void, E, R>;
|
|
855
855
|
};
|
|
856
856
|
/**
|
|
857
857
|
* Maps the value produced by the effect.
|
|
@@ -860,8 +860,8 @@ export declare const loop: {
|
|
|
860
860
|
* @category mapping
|
|
861
861
|
*/
|
|
862
862
|
export declare const map: {
|
|
863
|
-
<A, B>(f: (a: A) => B): <R, E>(self: STM<
|
|
864
|
-
<R, E, A, B>(self: STM<
|
|
863
|
+
<A, B>(f: (a: A) => B): <R, E>(self: STM<A, E, R>) => STM<B, E, R>;
|
|
864
|
+
<R, E, A, B>(self: STM<A, E, R>, f: (a: A) => B): STM<B, E, R>;
|
|
865
865
|
};
|
|
866
866
|
/**
|
|
867
867
|
* Maps the value produced by the effect with the specified function that may
|
|
@@ -872,8 +872,8 @@ export declare const map: {
|
|
|
872
872
|
* @category mapping
|
|
873
873
|
*/
|
|
874
874
|
export declare const mapAttempt: {
|
|
875
|
-
<A, B>(f: (a: A) => B): <R, E>(self: STM<
|
|
876
|
-
<R, E, A, B>(self: STM<
|
|
875
|
+
<A, B>(f: (a: A) => B): <R, E>(self: STM<A, E, R>) => STM<B, unknown, R>;
|
|
876
|
+
<R, E, A, B>(self: STM<A, E, R>, f: (a: A) => B): STM<B, unknown, R>;
|
|
877
877
|
};
|
|
878
878
|
/**
|
|
879
879
|
* Returns an `STM` effect whose failure and success channels have been mapped
|
|
@@ -886,11 +886,11 @@ export declare const mapBoth: {
|
|
|
886
886
|
<E, E2, A, A2>(options: {
|
|
887
887
|
readonly onFailure: (error: E) => E2;
|
|
888
888
|
readonly onSuccess: (value: A) => A2;
|
|
889
|
-
}): <R>(self: STM<
|
|
890
|
-
<R, E, E2, A, A2>(self: STM<
|
|
889
|
+
}): <R>(self: STM<A, E, R>) => STM<A2, E2, R>;
|
|
890
|
+
<R, E, E2, A, A2>(self: STM<A, E, R>, options: {
|
|
891
891
|
readonly onFailure: (error: E) => E2;
|
|
892
892
|
readonly onSuccess: (value: A) => A2;
|
|
893
|
-
}): STM<
|
|
893
|
+
}): STM<A2, E2, R>;
|
|
894
894
|
};
|
|
895
895
|
/**
|
|
896
896
|
* Maps from one error type to another.
|
|
@@ -899,8 +899,8 @@ export declare const mapBoth: {
|
|
|
899
899
|
* @category mapping
|
|
900
900
|
*/
|
|
901
901
|
export declare const mapError: {
|
|
902
|
-
<E, E2>(f: (error: E) => E2): <R, A>(self: STM<
|
|
903
|
-
<R, A, E, E2>(self: STM<
|
|
902
|
+
<E, E2>(f: (error: E) => E2): <R, A>(self: STM<A, E, R>) => STM<A, E2, R>;
|
|
903
|
+
<R, A, E, E2>(self: STM<A, E, R>, f: (error: E) => E2): STM<A, E2, R>;
|
|
904
904
|
};
|
|
905
905
|
/**
|
|
906
906
|
* Returns a new effect where the error channel has been merged into the
|
|
@@ -909,7 +909,7 @@ export declare const mapError: {
|
|
|
909
909
|
* @since 2.0.0
|
|
910
910
|
* @category mutations
|
|
911
911
|
*/
|
|
912
|
-
export declare const merge: <
|
|
912
|
+
export declare const merge: <A, E, R>(self: STM<A, E, R>) => STM<E | A, never, R>;
|
|
913
913
|
/**
|
|
914
914
|
* Merges an `Iterable<STM>` to a single `STM`, working sequentially.
|
|
915
915
|
*
|
|
@@ -917,8 +917,8 @@ export declare const merge: <R, E, A>(self: STM<R, E, A>) => STM<R, never, E | A
|
|
|
917
917
|
* @category constructors
|
|
918
918
|
*/
|
|
919
919
|
export declare const mergeAll: {
|
|
920
|
-
<A2, A>(zero: A2, f: (a2: A2, a: A) => A2): <R, E>(iterable: Iterable<STM<
|
|
921
|
-
<R, E, A2, A>(iterable: Iterable<STM<
|
|
920
|
+
<A2, A>(zero: A2, f: (a2: A2, a: A) => A2): <R, E>(iterable: Iterable<STM<A, E, R>>) => STM<A2, E, R>;
|
|
921
|
+
<R, E, A2, A>(iterable: Iterable<STM<A, E, R>>, zero: A2, f: (a2: A2, a: A) => A2): STM<A2, E, R>;
|
|
922
922
|
};
|
|
923
923
|
/**
|
|
924
924
|
* Returns a new effect where boolean value of this effect is negated.
|
|
@@ -926,21 +926,21 @@ export declare const mergeAll: {
|
|
|
926
926
|
* @since 2.0.0
|
|
927
927
|
* @category mutations
|
|
928
928
|
*/
|
|
929
|
-
export declare const negate: <R, E>(self: STM<
|
|
929
|
+
export declare const negate: <R, E>(self: STM<boolean, E, R>) => STM<boolean, E, R>;
|
|
930
930
|
/**
|
|
931
931
|
* Requires the option produced by this value to be `None`.
|
|
932
932
|
*
|
|
933
933
|
* @since 2.0.0
|
|
934
934
|
* @category mutations
|
|
935
935
|
*/
|
|
936
|
-
export declare const none: <
|
|
936
|
+
export declare const none: <A, E, R>(self: STM<Option.Option<A>, E, R>) => STM<void, Option.Option<E>, R>;
|
|
937
937
|
/**
|
|
938
938
|
* Converts the failure channel into an `Option`.
|
|
939
939
|
*
|
|
940
940
|
* @since 2.0.0
|
|
941
941
|
* @category mutations
|
|
942
942
|
*/
|
|
943
|
-
export declare const option: <
|
|
943
|
+
export declare const option: <A, E, R>(self: STM<A, E, R>) => STM<Option.Option<A>, never, R>;
|
|
944
944
|
/**
|
|
945
945
|
* Translates `STM` effect failure into death of the fiber, making all
|
|
946
946
|
* failures unchecked and not a part of the type of the effect.
|
|
@@ -948,7 +948,7 @@ export declare const option: <R, E, A>(self: STM<R, E, A>) => STM<R, never, Opti
|
|
|
948
948
|
* @since 2.0.0
|
|
949
949
|
* @category error handling
|
|
950
950
|
*/
|
|
951
|
-
export declare const orDie: <
|
|
951
|
+
export declare const orDie: <A, E, R>(self: STM<A, E, R>) => STM<A, never, R>;
|
|
952
952
|
/**
|
|
953
953
|
* Keeps none of the errors, and terminates the fiber running the `STM` effect
|
|
954
954
|
* with them, using the specified function to convert the `E` into a defect.
|
|
@@ -957,8 +957,8 @@ export declare const orDie: <R, E, A>(self: STM<R, E, A>) => STM<R, never, A>;
|
|
|
957
957
|
* @category error handling
|
|
958
958
|
*/
|
|
959
959
|
export declare const orDieWith: {
|
|
960
|
-
<E>(f: (error: E) => unknown): <R, A>(self: STM<
|
|
961
|
-
<R, A, E>(self: STM<
|
|
960
|
+
<E>(f: (error: E) => unknown): <R, A>(self: STM<A, E, R>) => STM<A, never, R>;
|
|
961
|
+
<R, A, E>(self: STM<A, E, R>, f: (error: E) => unknown): STM<A, never, R>;
|
|
962
962
|
};
|
|
963
963
|
/**
|
|
964
964
|
* Tries this effect first, and if it fails or retries, tries the other
|
|
@@ -968,8 +968,8 @@ export declare const orDieWith: {
|
|
|
968
968
|
* @category error handling
|
|
969
969
|
*/
|
|
970
970
|
export declare const orElse: {
|
|
971
|
-
<R2, E2, A2>(that: LazyArg<STM<
|
|
972
|
-
<R, E, A, R2, E2, A2>(self: STM<
|
|
971
|
+
<R2, E2, A2>(that: LazyArg<STM<A2, E2, R2>>): <A, E, R>(self: STM<A, E, R>) => STM<A2 | A, E2, R2 | R>;
|
|
972
|
+
<R, E, A, R2, E2, A2>(self: STM<A, E, R>, that: LazyArg<STM<A2, E2, R2>>): STM<A | A2, E2, R | R2>;
|
|
973
973
|
};
|
|
974
974
|
/**
|
|
975
975
|
* Returns a transactional effect that will produce the value of this effect
|
|
@@ -980,8 +980,8 @@ export declare const orElse: {
|
|
|
980
980
|
* @category error handling
|
|
981
981
|
*/
|
|
982
982
|
export declare const orElseEither: {
|
|
983
|
-
<R2, E2, A2>(that: LazyArg<STM<
|
|
984
|
-
<R, E, A, R2, E2, A2>(self: STM<
|
|
983
|
+
<R2, E2, A2>(that: LazyArg<STM<A2, E2, R2>>): <A, E, R>(self: STM<A, E, R>) => STM<Either.Either<A, A2>, E2, R2 | R>;
|
|
984
|
+
<R, E, A, R2, E2, A2>(self: STM<A, E, R>, that: LazyArg<STM<A2, E2, R2>>): STM<Either.Either<A, A2>, E2, R | R2>;
|
|
985
985
|
};
|
|
986
986
|
/**
|
|
987
987
|
* Tries this effect first, and if it fails or retries, fails with the
|
|
@@ -991,8 +991,8 @@ export declare const orElseEither: {
|
|
|
991
991
|
* @category error handling
|
|
992
992
|
*/
|
|
993
993
|
export declare const orElseFail: {
|
|
994
|
-
<E2>(error: LazyArg<E2>): <
|
|
995
|
-
<R, E, A, E2>(self: STM<
|
|
994
|
+
<E2>(error: LazyArg<E2>): <A, E, R>(self: STM<A, E, R>) => STM<A, E2, R>;
|
|
995
|
+
<R, E, A, E2>(self: STM<A, E, R>, error: LazyArg<E2>): STM<A, E2, R>;
|
|
996
996
|
};
|
|
997
997
|
/**
|
|
998
998
|
* Returns an effect that will produce the value of this effect, unless it
|
|
@@ -1003,8 +1003,8 @@ export declare const orElseFail: {
|
|
|
1003
1003
|
* @category error handling
|
|
1004
1004
|
*/
|
|
1005
1005
|
export declare const orElseOptional: {
|
|
1006
|
-
<R2, E2, A2>(that: LazyArg<STM<
|
|
1007
|
-
<R, E, A, R2, E2, A2>(self: STM<
|
|
1006
|
+
<R2, E2, A2>(that: LazyArg<STM<A2, Option.Option<E2>, R2>>): <A, E, R>(self: STM<A, Option.Option<E>, R>) => STM<A2 | A, Option.Option<E2 | E>, R2 | R>;
|
|
1007
|
+
<R, E, A, R2, E2, A2>(self: STM<A, Option.Option<E>, R>, that: LazyArg<STM<A2, Option.Option<E2>, R2>>): STM<A | A2, Option.Option<E | E2>, R | R2>;
|
|
1008
1008
|
};
|
|
1009
1009
|
/**
|
|
1010
1010
|
* Tries this effect first, and if it fails or retries, succeeds with the
|
|
@@ -1014,8 +1014,8 @@ export declare const orElseOptional: {
|
|
|
1014
1014
|
* @category error handling
|
|
1015
1015
|
*/
|
|
1016
1016
|
export declare const orElseSucceed: {
|
|
1017
|
-
<A2>(value: LazyArg<A2>): <
|
|
1018
|
-
<R, E, A, A2>(self: STM<
|
|
1017
|
+
<A2>(value: LazyArg<A2>): <A, E, R>(self: STM<A, E, R>) => STM<A2 | A, never, R>;
|
|
1018
|
+
<R, E, A, A2>(self: STM<A, E, R>, value: LazyArg<A2>): STM<A | A2, never, R>;
|
|
1019
1019
|
};
|
|
1020
1020
|
/**
|
|
1021
1021
|
* Tries this effect first, and if it enters retry, then it tries the other
|
|
@@ -1025,8 +1025,8 @@ export declare const orElseSucceed: {
|
|
|
1025
1025
|
* @category error handling
|
|
1026
1026
|
*/
|
|
1027
1027
|
export declare const orTry: {
|
|
1028
|
-
<R1, E1, A1>(that: LazyArg<STM<
|
|
1029
|
-
<R, E, A, R1, E1, A1>(self: STM<
|
|
1028
|
+
<R1, E1, A1>(that: LazyArg<STM<A1, E1, R1>>): <A, E, R>(self: STM<A, E, R>) => STM<A1 | A, E1 | E, R1 | R>;
|
|
1029
|
+
<R, E, A, R1, E1, A1>(self: STM<A, E, R>, that: LazyArg<STM<A1, E1, R1>>): STM<A | A1, E | E1, R | R1>;
|
|
1030
1030
|
};
|
|
1031
1031
|
/**
|
|
1032
1032
|
* Feeds elements of type `A` to a function `f` that returns an effect.
|
|
@@ -1036,8 +1036,8 @@ export declare const orTry: {
|
|
|
1036
1036
|
* @category traversing
|
|
1037
1037
|
*/
|
|
1038
1038
|
export declare const partition: {
|
|
1039
|
-
<R, E, A, A2>(f: (a: A) => STM<
|
|
1040
|
-
<R, E, A, A2>(elements: Iterable<A>, f: (a: A) => STM<
|
|
1039
|
+
<R, E, A, A2>(f: (a: A) => STM<A2, E, R>): (elements: Iterable<A>) => STM<[excluded: Array<E>, satisfying: Array<A2>], never, R>;
|
|
1040
|
+
<R, E, A, A2>(elements: Iterable<A>, f: (a: A) => STM<A2, E, R>): STM<[excluded: Array<E>, satisfying: Array<A2>], never, R>;
|
|
1041
1041
|
};
|
|
1042
1042
|
/**
|
|
1043
1043
|
* Provides the transaction its required environment, which eliminates its
|
|
@@ -1047,8 +1047,8 @@ export declare const partition: {
|
|
|
1047
1047
|
* @category context
|
|
1048
1048
|
*/
|
|
1049
1049
|
export declare const provideContext: {
|
|
1050
|
-
<R>(env: Context.Context<R>): <
|
|
1051
|
-
<
|
|
1050
|
+
<R>(env: Context.Context<R>): <A, E>(self: STM<A, E, R>) => STM<A, E>;
|
|
1051
|
+
<A, E, R>(self: STM<A, E, R>, env: Context.Context<R>): STM<A, E>;
|
|
1052
1052
|
};
|
|
1053
1053
|
/**
|
|
1054
1054
|
* Splits the context into two parts, providing one part using the
|
|
@@ -1058,8 +1058,8 @@ export declare const provideContext: {
|
|
|
1058
1058
|
* @category context
|
|
1059
1059
|
*/
|
|
1060
1060
|
export declare const provideSomeContext: {
|
|
1061
|
-
<R>(context: Context.Context<R>): <R1, E, A>(self: STM<
|
|
1062
|
-
<R, R1, E, A>(self: STM<
|
|
1061
|
+
<R>(context: Context.Context<R>): <R1, E, A>(self: STM<A, E, R1>) => STM<A, E, Exclude<R1, R>>;
|
|
1062
|
+
<R, R1, E, A>(self: STM<A, E, R1>, context: Context.Context<R>): STM<A, E, Exclude<R1, R>>;
|
|
1063
1063
|
};
|
|
1064
1064
|
/**
|
|
1065
1065
|
* Provides the effect with the single service it requires. If the transactional
|
|
@@ -1069,8 +1069,8 @@ export declare const provideSomeContext: {
|
|
|
1069
1069
|
* @category context
|
|
1070
1070
|
*/
|
|
1071
1071
|
export declare const provideService: {
|
|
1072
|
-
<T extends Context.Tag<any, any>>(tag: T, resource: Context.Tag.Service<T>): <
|
|
1073
|
-
<R, E, A, T extends Context.Tag<any, any>>(self: STM<
|
|
1072
|
+
<T extends Context.Tag<any, any>>(tag: T, resource: Context.Tag.Service<T>): <A, E, R>(self: STM<A, E, R>) => STM<A, E, Exclude<R, Context.Tag.Identifier<T>>>;
|
|
1073
|
+
<R, E, A, T extends Context.Tag<any, any>>(self: STM<A, E, R>, tag: T, resource: Context.Tag.Service<T>): STM<A, E, Exclude<R, Context.Tag.Identifier<T>>>;
|
|
1074
1074
|
};
|
|
1075
1075
|
/**
|
|
1076
1076
|
* Provides the effect with the single service it requires. If the transactional
|
|
@@ -1080,8 +1080,8 @@ export declare const provideService: {
|
|
|
1080
1080
|
* @category context
|
|
1081
1081
|
*/
|
|
1082
1082
|
export declare const provideServiceSTM: {
|
|
1083
|
-
<T extends Context.Tag<any, any>, R1, E1>(tag: T, stm: STM<
|
|
1084
|
-
<R, E, A, T extends Context.Tag<any, any>, R1, E1>(self: STM<
|
|
1083
|
+
<T extends Context.Tag<any, any>, R1, E1>(tag: T, stm: STM<Context.Tag.Service<T>, E1, R1>): <A, E, R>(self: STM<A, E, R>) => STM<A, E1 | E, R1 | Exclude<R, Context.Tag.Identifier<T>>>;
|
|
1084
|
+
<R, E, A, T extends Context.Tag<any, any>, R1, E1>(self: STM<A, E, R>, tag: T, stm: STM<Context.Tag.Service<T>, E1, R1>): STM<A, E | E1, R1 | Exclude<R, Context.Tag.Identifier<T>>>;
|
|
1085
1085
|
};
|
|
1086
1086
|
/**
|
|
1087
1087
|
* Folds an `Iterable<A>` using an effectual function f, working sequentially
|
|
@@ -1091,8 +1091,8 @@ export declare const provideServiceSTM: {
|
|
|
1091
1091
|
* @category constructors
|
|
1092
1092
|
*/
|
|
1093
1093
|
export declare const reduce: {
|
|
1094
|
-
<S, A, R, E>(zero: S, f: (s: S, a: A) => STM<
|
|
1095
|
-
<S, A, R, E>(iterable: Iterable<A>, zero: S, f: (s: S, a: A) => STM<
|
|
1094
|
+
<S, A, R, E>(zero: S, f: (s: S, a: A) => STM<S, E, R>): (iterable: Iterable<A>) => STM<S, E, R>;
|
|
1095
|
+
<S, A, R, E>(iterable: Iterable<A>, zero: S, f: (s: S, a: A) => STM<S, E, R>): STM<S, E, R>;
|
|
1096
1096
|
};
|
|
1097
1097
|
/**
|
|
1098
1098
|
* Reduces an `Iterable<STM>` to a single `STM`, working sequentially.
|
|
@@ -1101,8 +1101,8 @@ export declare const reduce: {
|
|
|
1101
1101
|
* @category constructors
|
|
1102
1102
|
*/
|
|
1103
1103
|
export declare const reduceAll: {
|
|
1104
|
-
<R2, E2, A>(initial: STM<
|
|
1105
|
-
<R, E, R2, E2, A>(iterable: Iterable<STM<
|
|
1104
|
+
<R2, E2, A>(initial: STM<A, E2, R2>, f: (x: A, y: A) => A): <R, E>(iterable: Iterable<STM<A, E, R>>) => STM<A, E2 | E, R2 | R>;
|
|
1105
|
+
<R, E, R2, E2, A>(iterable: Iterable<STM<A, E, R>>, initial: STM<A, E2, R2>, f: (x: A, y: A) => A): STM<A, E | E2, R | R2>;
|
|
1106
1106
|
};
|
|
1107
1107
|
/**
|
|
1108
1108
|
* Folds an `Iterable<A>` using an effectual function f, working sequentially
|
|
@@ -1112,8 +1112,8 @@ export declare const reduceAll: {
|
|
|
1112
1112
|
* @category constructors
|
|
1113
1113
|
*/
|
|
1114
1114
|
export declare const reduceRight: {
|
|
1115
|
-
<S, A, R, E>(zero: S, f: (s: S, a: A) => STM<
|
|
1116
|
-
<S, A, R, E>(iterable: Iterable<A>, zero: S, f: (s: S, a: A) => STM<
|
|
1115
|
+
<S, A, R, E>(zero: S, f: (s: S, a: A) => STM<S, E, R>): (iterable: Iterable<A>) => STM<S, E, R>;
|
|
1116
|
+
<S, A, R, E>(iterable: Iterable<A>, zero: S, f: (s: S, a: A) => STM<S, E, R>): STM<S, E, R>;
|
|
1117
1117
|
};
|
|
1118
1118
|
/**
|
|
1119
1119
|
* Keeps some of the errors, and terminates the fiber with the rest.
|
|
@@ -1122,8 +1122,8 @@ export declare const reduceRight: {
|
|
|
1122
1122
|
* @category mutations
|
|
1123
1123
|
*/
|
|
1124
1124
|
export declare const refineOrDie: {
|
|
1125
|
-
<E, E2>(pf: (error: E) => Option.Option<E2>): <R, A>(self: STM<
|
|
1126
|
-
<R, A, E, E2>(self: STM<
|
|
1125
|
+
<E, E2>(pf: (error: E) => Option.Option<E2>): <R, A>(self: STM<A, E, R>) => STM<A, E2, R>;
|
|
1126
|
+
<R, A, E, E2>(self: STM<A, E, R>, pf: (error: E) => Option.Option<E2>): STM<A, E2, R>;
|
|
1127
1127
|
};
|
|
1128
1128
|
/**
|
|
1129
1129
|
* Keeps some of the errors, and terminates the fiber with the rest, using the
|
|
@@ -1133,8 +1133,8 @@ export declare const refineOrDie: {
|
|
|
1133
1133
|
* @category mutations
|
|
1134
1134
|
*/
|
|
1135
1135
|
export declare const refineOrDieWith: {
|
|
1136
|
-
<E, E2>(pf: (error: E) => Option.Option<E2>, f: (error: E) => unknown): <R, A>(self: STM<
|
|
1137
|
-
<R, A, E, E2>(self: STM<
|
|
1136
|
+
<E, E2>(pf: (error: E) => Option.Option<E2>, f: (error: E) => unknown): <R, A>(self: STM<A, E, R>) => STM<A, E2, R>;
|
|
1137
|
+
<R, A, E, E2>(self: STM<A, E, R>, pf: (error: E) => Option.Option<E2>, f: (error: E) => unknown): STM<A, E2, R>;
|
|
1138
1138
|
};
|
|
1139
1139
|
/**
|
|
1140
1140
|
* Fail with the returned value if the `PartialFunction` matches, otherwise
|
|
@@ -1144,8 +1144,8 @@ export declare const refineOrDieWith: {
|
|
|
1144
1144
|
* @category mutations
|
|
1145
1145
|
*/
|
|
1146
1146
|
export declare const reject: {
|
|
1147
|
-
<A, E2>(pf: (a: A) => Option.Option<E2>): <R, E>(self: STM<
|
|
1148
|
-
<R, E, A, E2>(self: STM<
|
|
1147
|
+
<A, E2>(pf: (a: A) => Option.Option<E2>): <R, E>(self: STM<A, E, R>) => STM<A, E2 | E, R>;
|
|
1148
|
+
<R, E, A, E2>(self: STM<A, E, R>, pf: (a: A) => Option.Option<E2>): STM<A, E | E2, R>;
|
|
1149
1149
|
};
|
|
1150
1150
|
/**
|
|
1151
1151
|
* Continue with the returned computation if the specified partial function
|
|
@@ -1156,8 +1156,8 @@ export declare const reject: {
|
|
|
1156
1156
|
* @category mutations
|
|
1157
1157
|
*/
|
|
1158
1158
|
export declare const rejectSTM: {
|
|
1159
|
-
<A, R2, E2>(pf: (a: A) => Option.Option<STM<
|
|
1160
|
-
<R, E, A, R2, E2>(self: STM<
|
|
1159
|
+
<A, R2, E2>(pf: (a: A) => Option.Option<STM<E2, E2, R2>>): <R, E>(self: STM<A, E, R>) => STM<A, E2 | E, R2 | R>;
|
|
1160
|
+
<R, E, A, R2, E2>(self: STM<A, E, R>, pf: (a: A) => Option.Option<STM<E2, E2, R2>>): STM<A, E | E2, R | R2>;
|
|
1161
1161
|
};
|
|
1162
1162
|
/**
|
|
1163
1163
|
* Repeats this `STM` effect until its result satisfies the specified
|
|
@@ -1175,8 +1175,8 @@ export declare const rejectSTM: {
|
|
|
1175
1175
|
* @category mutations
|
|
1176
1176
|
*/
|
|
1177
1177
|
export declare const repeatUntil: {
|
|
1178
|
-
<A>(predicate: Predicate<A>): <R, E>(self: STM<
|
|
1179
|
-
<
|
|
1178
|
+
<A>(predicate: Predicate<A>): <R, E>(self: STM<A, E, R>) => STM<A, E, R>;
|
|
1179
|
+
<A, E, R>(self: STM<A, E, R>, predicate: Predicate<A>): STM<A, E, R>;
|
|
1180
1180
|
};
|
|
1181
1181
|
/**
|
|
1182
1182
|
* Repeats this `STM` effect while its result satisfies the specified
|
|
@@ -1195,8 +1195,8 @@ export declare const repeatUntil: {
|
|
|
1195
1195
|
* @category mutations
|
|
1196
1196
|
*/
|
|
1197
1197
|
export declare const repeatWhile: {
|
|
1198
|
-
<A>(predicate: Predicate<A>): <R, E>(self: STM<
|
|
1199
|
-
<
|
|
1198
|
+
<A>(predicate: Predicate<A>): <R, E>(self: STM<A, E, R>) => STM<A, E, R>;
|
|
1199
|
+
<A, E, R>(self: STM<A, E, R>, predicate: Predicate<A>): STM<A, E, R>;
|
|
1200
1200
|
};
|
|
1201
1201
|
/**
|
|
1202
1202
|
* Replicates the given effect n times. If 0 or negative numbers are given, an
|
|
@@ -1206,8 +1206,8 @@ export declare const repeatWhile: {
|
|
|
1206
1206
|
* @category constructors
|
|
1207
1207
|
*/
|
|
1208
1208
|
export declare const replicate: {
|
|
1209
|
-
(n: number): <
|
|
1210
|
-
<
|
|
1209
|
+
(n: number): <A, E, R>(self: STM<A, E, R>) => Array<STM<A, E, R>>;
|
|
1210
|
+
<A, E, R>(self: STM<A, E, R>, n: number): Array<STM<A, E, R>>;
|
|
1211
1211
|
};
|
|
1212
1212
|
/**
|
|
1213
1213
|
* Performs this transaction the specified number of times and collects the
|
|
@@ -1217,8 +1217,8 @@ export declare const replicate: {
|
|
|
1217
1217
|
* @category constructors
|
|
1218
1218
|
*/
|
|
1219
1219
|
export declare const replicateSTM: {
|
|
1220
|
-
(n: number): <
|
|
1221
|
-
<
|
|
1220
|
+
(n: number): <A, E, R>(self: STM<A, E, R>) => STM<Array<A>, E, R>;
|
|
1221
|
+
<A, E, R>(self: STM<A, E, R>, n: number): STM<Array<A>, E, R>;
|
|
1222
1222
|
};
|
|
1223
1223
|
/**
|
|
1224
1224
|
* Performs this transaction the specified number of times, discarding the
|
|
@@ -1228,8 +1228,8 @@ export declare const replicateSTM: {
|
|
|
1228
1228
|
* @category constructors
|
|
1229
1229
|
*/
|
|
1230
1230
|
export declare const replicateSTMDiscard: {
|
|
1231
|
-
(n: number): <
|
|
1232
|
-
<
|
|
1231
|
+
(n: number): <A, E, R>(self: STM<A, E, R>) => STM<void, E, R>;
|
|
1232
|
+
<A, E, R>(self: STM<A, E, R>, n: number): STM<void, E, R>;
|
|
1233
1233
|
};
|
|
1234
1234
|
/**
|
|
1235
1235
|
* Abort and retry the whole transaction when any of the underlying
|
|
@@ -1238,7 +1238,7 @@ export declare const replicateSTMDiscard: {
|
|
|
1238
1238
|
* @since 2.0.0
|
|
1239
1239
|
* @category error handling
|
|
1240
1240
|
*/
|
|
1241
|
-
export declare const retry: STM<never
|
|
1241
|
+
export declare const retry: STM<never>;
|
|
1242
1242
|
/**
|
|
1243
1243
|
* Filters the value produced by this effect, retrying the transaction until
|
|
1244
1244
|
* the predicate returns `true` for the value.
|
|
@@ -1247,10 +1247,10 @@ export declare const retry: STM<never, never, never>;
|
|
|
1247
1247
|
* @category mutations
|
|
1248
1248
|
*/
|
|
1249
1249
|
export declare const retryUntil: {
|
|
1250
|
-
<A, B extends A>(refinement: Refinement<NoInfer<A>, B>): <R, E>(self: STM<
|
|
1251
|
-
<A>(predicate: Predicate<A>): <R, E>(self: STM<
|
|
1252
|
-
<R, E, A, B extends A>(self: STM<
|
|
1253
|
-
<
|
|
1250
|
+
<A, B extends A>(refinement: Refinement<NoInfer<A>, B>): <R, E>(self: STM<A, E, R>) => STM<B, E, R>;
|
|
1251
|
+
<A>(predicate: Predicate<A>): <R, E>(self: STM<A, E, R>) => STM<A, E, R>;
|
|
1252
|
+
<R, E, A, B extends A>(self: STM<A, E, R>, refinement: Refinement<A, B>): STM<B, E, R>;
|
|
1253
|
+
<A, E, R>(self: STM<A, E, R>, predicate: Predicate<A>): STM<A, E, R>;
|
|
1254
1254
|
};
|
|
1255
1255
|
/**
|
|
1256
1256
|
* Filters the value produced by this effect, retrying the transaction while
|
|
@@ -1260,8 +1260,8 @@ export declare const retryUntil: {
|
|
|
1260
1260
|
* @category mutations
|
|
1261
1261
|
*/
|
|
1262
1262
|
export declare const retryWhile: {
|
|
1263
|
-
<A>(predicate: Predicate<A>): <R, E>(self: STM<
|
|
1264
|
-
<
|
|
1263
|
+
<A>(predicate: Predicate<A>): <R, E>(self: STM<A, E, R>) => STM<A, E, R>;
|
|
1264
|
+
<A, E, R>(self: STM<A, E, R>, predicate: Predicate<A>): STM<A, E, R>;
|
|
1265
1265
|
};
|
|
1266
1266
|
/**
|
|
1267
1267
|
* Converts an option on values into an option on errors.
|
|
@@ -1269,28 +1269,28 @@ export declare const retryWhile: {
|
|
|
1269
1269
|
* @since 2.0.0
|
|
1270
1270
|
* @category getters
|
|
1271
1271
|
*/
|
|
1272
|
-
export declare const some: <
|
|
1272
|
+
export declare const some: <A, E, R>(self: STM<Option.Option<A>, E, R>) => STM<A, Option.Option<E>, R>;
|
|
1273
1273
|
/**
|
|
1274
1274
|
* Returns an `STM` effect that succeeds with the specified value.
|
|
1275
1275
|
*
|
|
1276
1276
|
* @since 2.0.0
|
|
1277
1277
|
* @category constructors
|
|
1278
1278
|
*/
|
|
1279
|
-
export declare const succeed: <A>(value: A) => STM<
|
|
1279
|
+
export declare const succeed: <A>(value: A) => STM<A>;
|
|
1280
1280
|
/**
|
|
1281
1281
|
* Returns an effect with the empty value.
|
|
1282
1282
|
*
|
|
1283
1283
|
* @since 2.0.0
|
|
1284
1284
|
* @category constructors
|
|
1285
1285
|
*/
|
|
1286
|
-
export declare const succeedNone: STM<
|
|
1286
|
+
export declare const succeedNone: STM<Option.Option<never>>;
|
|
1287
1287
|
/**
|
|
1288
1288
|
* Returns an effect with the optional value.
|
|
1289
1289
|
*
|
|
1290
1290
|
* @since 2.0.0
|
|
1291
1291
|
* @category constructors
|
|
1292
1292
|
*/
|
|
1293
|
-
export declare const succeedSome: <A>(value: A) => STM<
|
|
1293
|
+
export declare const succeedSome: <A>(value: A) => STM<Option.Option<A>>;
|
|
1294
1294
|
/**
|
|
1295
1295
|
* Summarizes a `STM` effect by computing a provided value before and after
|
|
1296
1296
|
* execution, and then combining the values to produce a summary, together
|
|
@@ -1300,8 +1300,8 @@ export declare const succeedSome: <A>(value: A) => STM<never, never, Option.Opti
|
|
|
1300
1300
|
* @category mutations
|
|
1301
1301
|
*/
|
|
1302
1302
|
export declare const summarized: {
|
|
1303
|
-
<R2, E2, A2, A3>(summary: STM<
|
|
1304
|
-
<R, E, A, R2, E2, A2, A3>(self: STM<
|
|
1303
|
+
<R2, E2, A2, A3>(summary: STM<A2, E2, R2>, f: (before: A2, after: A2) => A3): <A, E, R>(self: STM<A, E, R>) => STM<[A3, A], E2 | E, R2 | R>;
|
|
1304
|
+
<R, E, A, R2, E2, A2, A3>(self: STM<A, E, R>, summary: STM<A2, E2, R2>, f: (before: A2, after: A2) => A3): STM<[A3, A], E | E2, R | R2>;
|
|
1305
1305
|
};
|
|
1306
1306
|
/**
|
|
1307
1307
|
* Suspends creation of the specified transaction lazily.
|
|
@@ -1309,7 +1309,7 @@ export declare const summarized: {
|
|
|
1309
1309
|
* @since 2.0.0
|
|
1310
1310
|
* @category constructors
|
|
1311
1311
|
*/
|
|
1312
|
-
export declare const suspend: <
|
|
1312
|
+
export declare const suspend: <A, E, R>(evaluate: LazyArg<STM<A, E, R>>) => STM<A, E, R>;
|
|
1313
1313
|
/**
|
|
1314
1314
|
* Returns an `STM` effect that succeeds with the specified lazily evaluated
|
|
1315
1315
|
* value.
|
|
@@ -1317,7 +1317,7 @@ export declare const suspend: <R, E, A>(evaluate: LazyArg<STM<R, E, A>>) => STM<
|
|
|
1317
1317
|
* @since 2.0.0
|
|
1318
1318
|
* @category constructors
|
|
1319
1319
|
*/
|
|
1320
|
-
export declare const sync: <A>(evaluate: () => A) => STM<
|
|
1320
|
+
export declare const sync: <A>(evaluate: () => A) => STM<A>;
|
|
1321
1321
|
/**
|
|
1322
1322
|
* "Peeks" at the success of transactional effect.
|
|
1323
1323
|
*
|
|
@@ -1325,8 +1325,8 @@ export declare const sync: <A>(evaluate: () => A) => STM<never, never, A>;
|
|
|
1325
1325
|
* @category sequencing
|
|
1326
1326
|
*/
|
|
1327
1327
|
export declare const tap: {
|
|
1328
|
-
<A, R2, E2, _>(f: (a: A) => STM<
|
|
1329
|
-
<R, E, A, R2, E2, _>(self: STM<
|
|
1328
|
+
<A, R2, E2, _>(f: (a: A) => STM<_, E2, R2>): <R, E>(self: STM<A, E, R>) => STM<A, E2 | E, R2 | R>;
|
|
1329
|
+
<R, E, A, R2, E2, _>(self: STM<A, E, R>, f: (a: A) => STM<_, E2, R2>): STM<A, E | E2, R | R2>;
|
|
1330
1330
|
};
|
|
1331
1331
|
/**
|
|
1332
1332
|
* "Peeks" at both sides of an transactional effect.
|
|
@@ -1336,13 +1336,13 @@ export declare const tap: {
|
|
|
1336
1336
|
*/
|
|
1337
1337
|
export declare const tapBoth: {
|
|
1338
1338
|
<E, XE extends E, R2, E2, A2, A, XA extends A, R3, E3, A3>(options: {
|
|
1339
|
-
readonly onFailure: (error: XE) => STM<
|
|
1340
|
-
readonly onSuccess: (value: XA) => STM<
|
|
1341
|
-
}): <R>(self: STM<
|
|
1342
|
-
<R, E, XE extends E, R2, E2, A2, A, XA extends A, R3, E3, A3>(self: STM<
|
|
1343
|
-
readonly onFailure: (error: XE) => STM<
|
|
1344
|
-
readonly onSuccess: (value: XA) => STM<
|
|
1345
|
-
}): STM<
|
|
1339
|
+
readonly onFailure: (error: XE) => STM<A2, E2, R2>;
|
|
1340
|
+
readonly onSuccess: (value: XA) => STM<A3, E3, R3>;
|
|
1341
|
+
}): <R>(self: STM<A, E, R>) => STM<A, E | E2 | E3, R2 | R3 | R>;
|
|
1342
|
+
<R, E, XE extends E, R2, E2, A2, A, XA extends A, R3, E3, A3>(self: STM<A, E, R>, options: {
|
|
1343
|
+
readonly onFailure: (error: XE) => STM<A2, E2, R2>;
|
|
1344
|
+
readonly onSuccess: (value: XA) => STM<A3, E3, R3>;
|
|
1345
|
+
}): STM<A, E | E2 | E3, R | R2 | R3>;
|
|
1346
1346
|
};
|
|
1347
1347
|
/**
|
|
1348
1348
|
* "Peeks" at the error of the transactional effect.
|
|
@@ -1351,15 +1351,15 @@ export declare const tapBoth: {
|
|
|
1351
1351
|
* @category sequencing
|
|
1352
1352
|
*/
|
|
1353
1353
|
export declare const tapError: {
|
|
1354
|
-
<E, R2, E2, _>(f: (error: NoInfer<E>) => STM<
|
|
1355
|
-
<R, A, E, R2, E2, _>(self: STM<
|
|
1354
|
+
<E, R2, E2, _>(f: (error: NoInfer<E>) => STM<_, E2, R2>): <R, A>(self: STM<A, E, R>) => STM<A, E | E2, R2 | R>;
|
|
1355
|
+
<R, A, E, R2, E2, _>(self: STM<A, E, R>, f: (error: E) => STM<_, E2, R2>): STM<A, E | E2, R | R2>;
|
|
1356
1356
|
};
|
|
1357
1357
|
declare const try_: {
|
|
1358
1358
|
<A, E>(options: {
|
|
1359
1359
|
readonly try: LazyArg<A>;
|
|
1360
1360
|
readonly catch: (u: unknown) => E;
|
|
1361
|
-
}): STM<
|
|
1362
|
-
<A>(try_: LazyArg<A>): STM<
|
|
1361
|
+
}): STM<A, E>;
|
|
1362
|
+
<A>(try_: LazyArg<A>): STM<A, unknown>;
|
|
1363
1363
|
};
|
|
1364
1364
|
export {
|
|
1365
1365
|
/**
|
|
@@ -1377,8 +1377,8 @@ try_ as try };
|
|
|
1377
1377
|
* @category mutations
|
|
1378
1378
|
*/
|
|
1379
1379
|
export declare const unless: {
|
|
1380
|
-
(predicate: LazyArg<boolean>): <
|
|
1381
|
-
<
|
|
1380
|
+
(predicate: LazyArg<boolean>): <A, E, R>(self: STM<A, E, R>) => STM<Option.Option<A>, E, R>;
|
|
1381
|
+
<A, E, R>(self: STM<A, E, R>, predicate: LazyArg<boolean>): STM<Option.Option<A>, E, R>;
|
|
1382
1382
|
};
|
|
1383
1383
|
/**
|
|
1384
1384
|
* The moral equivalent of `if (!p) exp` when `p` has side-effects
|
|
@@ -1387,8 +1387,8 @@ export declare const unless: {
|
|
|
1387
1387
|
* @category mutations
|
|
1388
1388
|
*/
|
|
1389
1389
|
export declare const unlessSTM: {
|
|
1390
|
-
<R2, E2>(predicate: STM<
|
|
1391
|
-
<R, E, A, R2, E2>(self: STM<
|
|
1390
|
+
<R2, E2>(predicate: STM<boolean, E2, R2>): <A, E, R>(self: STM<A, E, R>) => STM<Option.Option<A>, E2 | E, R2 | R>;
|
|
1391
|
+
<R, E, A, R2, E2>(self: STM<A, E, R>, predicate: STM<boolean, E2, R2>): STM<Option.Option<A>, E | E2, R | R2>;
|
|
1392
1392
|
};
|
|
1393
1393
|
/**
|
|
1394
1394
|
* Converts an option on errors into an option on values.
|
|
@@ -1396,14 +1396,14 @@ export declare const unlessSTM: {
|
|
|
1396
1396
|
* @since 2.0.0
|
|
1397
1397
|
* @category getters
|
|
1398
1398
|
*/
|
|
1399
|
-
export declare const unsome: <
|
|
1399
|
+
export declare const unsome: <A, E, R>(self: STM<A, Option.Option<E>, R>) => STM<Option.Option<A>, E, R>;
|
|
1400
1400
|
/**
|
|
1401
1401
|
* Returns an `STM` effect that succeeds with `Unit`.
|
|
1402
1402
|
*
|
|
1403
1403
|
* @since 2.0.0
|
|
1404
1404
|
* @category constructors
|
|
1405
1405
|
*/
|
|
1406
|
-
export declare const unit: STM<
|
|
1406
|
+
export declare const unit: STM<void>;
|
|
1407
1407
|
/**
|
|
1408
1408
|
* Feeds elements of type `A` to `f` and accumulates all errors in error
|
|
1409
1409
|
* channel or successes in success channel.
|
|
@@ -1415,8 +1415,8 @@ export declare const unit: STM<never, never, void>;
|
|
|
1415
1415
|
* @category mutations
|
|
1416
1416
|
*/
|
|
1417
1417
|
export declare const validateAll: {
|
|
1418
|
-
<R, E, A, B>(f: (a: A) => STM<
|
|
1419
|
-
<R, E, A, B>(elements: Iterable<A>, f: (a: A) => STM<
|
|
1418
|
+
<R, E, A, B>(f: (a: A) => STM<B, E, R>): (elements: Iterable<A>) => STM<Array<B>, [E, ...Array<E>], R>;
|
|
1419
|
+
<R, E, A, B>(elements: Iterable<A>, f: (a: A) => STM<B, E, R>): STM<Array<B>, [E, ...Array<E>], R>;
|
|
1420
1420
|
};
|
|
1421
1421
|
/**
|
|
1422
1422
|
* Feeds elements of type `A` to `f` until it succeeds. Returns first success
|
|
@@ -1426,8 +1426,8 @@ export declare const validateAll: {
|
|
|
1426
1426
|
* @category mutations
|
|
1427
1427
|
*/
|
|
1428
1428
|
export declare const validateFirst: {
|
|
1429
|
-
<R, E, A, B>(f: (a: A) => STM<
|
|
1430
|
-
<R, E, A, B>(elements: Iterable<A>, f: (a: A) => STM<
|
|
1429
|
+
<R, E, A, B>(f: (a: A) => STM<B, E, R>): (elements: Iterable<A>) => STM<B, Array<E>, R>;
|
|
1430
|
+
<R, E, A, B>(elements: Iterable<A>, f: (a: A) => STM<B, E, R>): STM<B, Array<E>, R>;
|
|
1431
1431
|
};
|
|
1432
1432
|
/**
|
|
1433
1433
|
* The moral equivalent of `if (p) exp`.
|
|
@@ -1436,8 +1436,8 @@ export declare const validateFirst: {
|
|
|
1436
1436
|
* @category mutations
|
|
1437
1437
|
*/
|
|
1438
1438
|
export declare const when: {
|
|
1439
|
-
(predicate: LazyArg<boolean>): <
|
|
1440
|
-
<
|
|
1439
|
+
(predicate: LazyArg<boolean>): <A, E, R>(self: STM<A, E, R>) => STM<Option.Option<A>, E, R>;
|
|
1440
|
+
<A, E, R>(self: STM<A, E, R>, predicate: LazyArg<boolean>): STM<Option.Option<A>, E, R>;
|
|
1441
1441
|
};
|
|
1442
1442
|
/**
|
|
1443
1443
|
* The moral equivalent of `if (p) exp` when `p` has side-effects.
|
|
@@ -1446,8 +1446,8 @@ export declare const when: {
|
|
|
1446
1446
|
* @category mutations
|
|
1447
1447
|
*/
|
|
1448
1448
|
export declare const whenSTM: {
|
|
1449
|
-
<R2, E2>(predicate: STM<
|
|
1450
|
-
<R, E, A, R2, E2>(self: STM<
|
|
1449
|
+
<R2, E2>(predicate: STM<boolean, E2, R2>): <A, E, R>(self: STM<A, E, R>) => STM<Option.Option<A>, E2 | E, R2 | R>;
|
|
1450
|
+
<R, E, A, R2, E2>(self: STM<A, E, R>, predicate: STM<boolean, E2, R2>): STM<Option.Option<A>, E | E2, R | R2>;
|
|
1451
1451
|
};
|
|
1452
1452
|
/**
|
|
1453
1453
|
* Sequentially zips this value with the specified one.
|
|
@@ -1456,8 +1456,8 @@ export declare const whenSTM: {
|
|
|
1456
1456
|
* @category zipping
|
|
1457
1457
|
*/
|
|
1458
1458
|
export declare const zip: {
|
|
1459
|
-
<R1, E1, A1>(that: STM<
|
|
1460
|
-
<R, E, A, R1, E1, A1>(self: STM<
|
|
1459
|
+
<R1, E1, A1>(that: STM<A1, E1, R1>): <A, E, R>(self: STM<A, E, R>) => STM<[A, A1], E1 | E, R1 | R>;
|
|
1460
|
+
<R, E, A, R1, E1, A1>(self: STM<A, E, R>, that: STM<A1, E1, R1>): STM<[A, A1], E | E1, R | R1>;
|
|
1461
1461
|
};
|
|
1462
1462
|
/**
|
|
1463
1463
|
* Sequentially zips this value with the specified one, discarding the second
|
|
@@ -1467,8 +1467,8 @@ export declare const zip: {
|
|
|
1467
1467
|
* @category zipping
|
|
1468
1468
|
*/
|
|
1469
1469
|
export declare const zipLeft: {
|
|
1470
|
-
<R1, E1, A1>(that: STM<
|
|
1471
|
-
<R, E, A, R1, E1, A1>(self: STM<
|
|
1470
|
+
<R1, E1, A1>(that: STM<A1, E1, R1>): <A, E, R>(self: STM<A, E, R>) => STM<A, E1 | E, R1 | R>;
|
|
1471
|
+
<R, E, A, R1, E1, A1>(self: STM<A, E, R>, that: STM<A1, E1, R1>): STM<A, E | E1, R | R1>;
|
|
1472
1472
|
};
|
|
1473
1473
|
/**
|
|
1474
1474
|
* Sequentially zips this value with the specified one, discarding the first
|
|
@@ -1478,8 +1478,8 @@ export declare const zipLeft: {
|
|
|
1478
1478
|
* @category zipping
|
|
1479
1479
|
*/
|
|
1480
1480
|
export declare const zipRight: {
|
|
1481
|
-
<R1, E1, A1>(that: STM<
|
|
1482
|
-
<R, E, A, R1, E1, A1>(self: STM<
|
|
1481
|
+
<R1, E1, A1>(that: STM<A1, E1, R1>): <A, E, R>(self: STM<A, E, R>) => STM<A1, E1 | E, R1 | R>;
|
|
1482
|
+
<R, E, A, R1, E1, A1>(self: STM<A, E, R>, that: STM<A1, E1, R1>): STM<A1, E | E1, R | R1>;
|
|
1483
1483
|
};
|
|
1484
1484
|
/**
|
|
1485
1485
|
* Sequentially zips this value with the specified one, combining the values
|
|
@@ -1489,8 +1489,8 @@ export declare const zipRight: {
|
|
|
1489
1489
|
* @category zipping
|
|
1490
1490
|
*/
|
|
1491
1491
|
export declare const zipWith: {
|
|
1492
|
-
<R1, E1, A1, A, A2>(that: STM<
|
|
1493
|
-
<R, E, R1, E1, A1, A, A2>(self: STM<
|
|
1492
|
+
<R1, E1, A1, A, A2>(that: STM<A1, E1, R1>, f: (a: A, b: A1) => A2): <R, E>(self: STM<A, E, R>) => STM<A2, E1 | E, R1 | R>;
|
|
1493
|
+
<R, E, R1, E1, A1, A, A2>(self: STM<A, E, R>, that: STM<A1, E1, R1>, f: (a: A, b: A1) => A2): STM<A2, E | E1, R | R1>;
|
|
1494
1494
|
};
|
|
1495
1495
|
/**
|
|
1496
1496
|
* This function takes an iterable of `STM` values and returns a new
|
|
@@ -1511,31 +1511,31 @@ export declare const zipWith: {
|
|
|
1511
1511
|
* @since 2.0.0
|
|
1512
1512
|
* @category elements
|
|
1513
1513
|
*/
|
|
1514
|
-
export declare const firstSuccessOf: <
|
|
1514
|
+
export declare const firstSuccessOf: <A, E, R>(effects: Iterable<STM<A, E, R>>) => STM<A, E, R>;
|
|
1515
1515
|
/**
|
|
1516
1516
|
* @category do notation
|
|
1517
1517
|
* @since 2.0.0
|
|
1518
1518
|
*/
|
|
1519
|
-
export declare const Do: STM<
|
|
1519
|
+
export declare const Do: STM<{}>;
|
|
1520
1520
|
/**
|
|
1521
1521
|
* @category do notation
|
|
1522
1522
|
* @since 2.0.0
|
|
1523
1523
|
*/
|
|
1524
1524
|
export declare const bind: {
|
|
1525
|
-
<N extends string, K, R2, E2, A>(tag: Exclude<N, keyof K>, f: (_: K) => STM<
|
|
1525
|
+
<N extends string, K, R2, E2, A>(tag: Exclude<N, keyof K>, f: (_: K) => STM<A, E2, R2>): <R, E>(self: STM<K, E, R>) => STM<Effect.MergeRecord<K, {
|
|
1526
1526
|
[k in N]: A;
|
|
1527
|
-
}
|
|
1528
|
-
<R, E, N extends string, K, R2, E2, A>(self: STM<
|
|
1527
|
+
}>, E2 | E, R2 | R>;
|
|
1528
|
+
<R, E, N extends string, K, R2, E2, A>(self: STM<K, E, R>, tag: Exclude<N, keyof K>, f: (_: K) => STM<A, E2, R2>): STM<Effect.MergeRecord<K, {
|
|
1529
1529
|
[k in N]: A;
|
|
1530
|
-
}
|
|
1530
|
+
}>, E | E2, R | R2>;
|
|
1531
1531
|
};
|
|
1532
1532
|
declare const let_: {
|
|
1533
|
-
<N extends string, K, A>(tag: Exclude<N, keyof K>, f: (_: K) => A): <R, E>(self: STM<
|
|
1533
|
+
<N extends string, K, A>(tag: Exclude<N, keyof K>, f: (_: K) => A): <R, E>(self: STM<K, E, R>) => STM<Effect.MergeRecord<K, {
|
|
1534
1534
|
[k in N]: A;
|
|
1535
|
-
}
|
|
1536
|
-
<R, E, K, N extends string, A>(self: STM<
|
|
1535
|
+
}>, E, R>;
|
|
1536
|
+
<R, E, K, N extends string, A>(self: STM<K, E, R>, tag: Exclude<N, keyof K>, f: (_: K) => A): STM<Effect.MergeRecord<K, {
|
|
1537
1537
|
[k in N]: A;
|
|
1538
|
-
}
|
|
1538
|
+
}>, E, R>;
|
|
1539
1539
|
};
|
|
1540
1540
|
export {
|
|
1541
1541
|
/**
|
|
@@ -1548,7 +1548,7 @@ let_ as let };
|
|
|
1548
1548
|
* @since 2.0.0
|
|
1549
1549
|
*/
|
|
1550
1550
|
export declare const bindTo: {
|
|
1551
|
-
<N extends string>(tag: N): <
|
|
1552
|
-
<R, E, A, N extends string>(self: STM<
|
|
1551
|
+
<N extends string>(tag: N): <A, E, R>(self: STM<A, E, R>) => STM<Record<N, A>, E, R>;
|
|
1552
|
+
<R, E, A, N extends string>(self: STM<A, E, R>, tag: N): STM<Record<N, A>, E, R>;
|
|
1553
1553
|
};
|
|
1554
1554
|
//# sourceMappingURL=STM.d.ts.map
|