@fncts/io 0.0.11 → 0.0.14
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/Cached/api.d.ts +3 -4
- package/Channel/UpstreamPullStrategy/definition.d.ts +1 -1
- package/Channel/api/interruptWhen.d.ts +1 -1
- package/Channel/api/mapOutIOC.d.ts +2 -2
- package/Channel/api/mergeAll.d.ts +1 -1
- package/Channel/api/mergeAllUnboundedWith.d.ts +1 -1
- package/Channel/api/mergeAllWith.d.ts +3 -3
- package/Channel/api/mergeMap.d.ts +1 -1
- package/Channel/api/mergeWith.d.ts +3 -3
- package/Channel/api/runScoped.d.ts +1 -2
- package/Channel/api/toPull.d.ts +2 -3
- package/Channel/api/zipC.d.ts +3 -3
- package/Channel/api.d.ts +56 -57
- package/Channel/core-api.d.ts +12 -12
- package/Channel/definition.d.ts +36 -22
- package/Channel/internal/AsyncInputConsumer.d.ts +1 -1
- package/Channel/internal/AsyncInputProducer.d.ts +1 -1
- package/Channel/internal/ChannelExecutor.d.ts +5 -5
- package/Channel/internal/ChannelState.d.ts +1 -1
- package/Channel/internal/MergeDecision.d.ts +2 -2
- package/Channel/internal/MergeState.d.ts +2 -2
- package/Channel/internal/SingleProducerAsyncInput.d.ts +5 -5
- package/Clock/api.d.ts +3 -3
- package/Clock/definition.d.ts +2 -2
- package/Clock/live.d.ts +3 -3
- package/Console/api.d.ts +1 -1
- package/Fiber/FiberContext.d.ts +12 -12
- package/Fiber/api/await.d.ts +2 -2
- package/Fiber/api/awaitAll.d.ts +2 -2
- package/Fiber/api/children.d.ts +1 -1
- package/Fiber/api/collectAll.d.ts +3 -3
- package/Fiber/api/evalOn.d.ts +1 -1
- package/Fiber/api/evalOnIO.d.ts +1 -1
- package/Fiber/api/fromIO.d.ts +1 -1
- package/Fiber/api/id.d.ts +2 -2
- package/Fiber/api/inheritRefs.d.ts +1 -1
- package/Fiber/api/interrupt.d.ts +2 -2
- package/Fiber/api/interruptAll.d.ts +3 -3
- package/Fiber/api/interruptAs.d.ts +3 -3
- package/Fiber/api/join.d.ts +1 -1
- package/Fiber/api/joinAll.d.ts +1 -1
- package/Fiber/api/mapFiber.d.ts +1 -1
- package/Fiber/api/mapIO.d.ts +2 -2
- package/Fiber/api/poll.d.ts +3 -3
- package/Fiber/api/zipWith.d.ts +1 -1
- package/Fiber/constructors.d.ts +8 -8
- package/Fiber/definition.d.ts +4 -4
- package/FiberRef/api/locallyScoped.d.ts +1 -2
- package/FiberRef/api/locallyScopedWith.d.ts +1 -2
- package/FiberRef/api.d.ts +8 -8
- package/FiberRef/constructors.d.ts +2 -3
- package/FiberRef/unsafe.d.ts +11 -5
- package/FiberRefs/api.d.ts +4 -4
- package/FiberRefs/definition.d.ts +3 -3
- package/FiberRefs/join.d.ts +2 -2
- package/FiberScope/constructors.d.ts +1 -1
- package/FiberScope/definition.d.ts +1 -1
- package/FiberState/api.d.ts +1 -1
- package/FiberState/constructors.d.ts +3 -3
- package/FiberState/definition.d.ts +3 -3
- package/FiberStatus/constructors.d.ts +1 -1
- package/FiberStatus/definition.d.ts +1 -1
- package/Future/api.d.ts +18 -18
- package/Future/constructors.d.ts +3 -3
- package/Future/definition.d.ts +2 -2
- package/Hub/api.d.ts +22 -23
- package/Hub/definition.d.ts +6 -7
- package/Hub/internal.d.ts +1 -2
- package/IO/api/acquireRelease.d.ts +2 -3
- package/IO/api/acquireReleaseExit.d.ts +3 -4
- package/IO/api/acquireReleaseInterruptible.d.ts +2 -3
- package/IO/api/acquireReleaseInterruptibleExit.d.ts +3 -4
- package/IO/api/addFinalizer.d.ts +2 -3
- package/IO/api/addFinalizerExit.d.ts +2 -3
- package/IO/api/asyncIO.d.ts +1 -1
- package/IO/api/bracket.d.ts +2 -2
- package/IO/api/bracketExit.d.ts +3 -3
- package/IO/api/clockWith.d.ts +1 -1
- package/IO/api/concurrency.d.ts +4 -4
- package/IO/api/concurrentFinalizers.d.ts +1 -2
- package/IO/api/consoleWith.d.ts +2 -2
- package/IO/api/core-scope.d.ts +4 -4
- package/IO/api/ensuringChildren.d.ts +1 -1
- package/IO/api/environment.d.ts +10 -12
- package/IO/api/foreachC.d.ts +2 -2
- package/IO/api/foreachExec.d.ts +1 -1
- package/IO/api/forkScoped.d.ts +1 -2
- package/IO/api/fulfill.d.ts +1 -1
- package/IO/api/interrupt.d.ts +8 -8
- package/IO/api/onExit.d.ts +2 -2
- package/IO/api/onTermination.d.ts +4 -4
- package/IO/api/provideLayer.d.ts +1 -1
- package/IO/api/provideSomeLayer.d.ts +1 -1
- package/IO/api/race.d.ts +1 -1
- package/IO/api/raceFirst.d.ts +1 -1
- package/IO/api/randomWith.d.ts +2 -2
- package/IO/api/repeat.d.ts +6 -6
- package/IO/api/retry.d.ts +5 -5
- package/IO/api/schedule.d.ts +3 -3
- package/IO/api/scope.d.ts +1 -2
- package/IO/api/scopeWith.d.ts +1 -2
- package/IO/api/scoped.d.ts +3 -4
- package/IO/api/sequenceT.d.ts +4 -4
- package/IO/api/sleep.d.ts +2 -2
- package/IO/api/stateful.d.ts +3 -4
- package/IO/api/timeout.d.ts +4 -4
- package/IO/api/withEarlyRelease.d.ts +1 -2
- package/IO/api/withFinalizer.d.ts +1 -2
- package/IO/api/withFinalizerExit.d.ts +2 -3
- package/IO/api/withRuntimeConfig.d.ts +2 -2
- package/IO/api/zipC.d.ts +4 -4
- package/IO/api.d.ts +94 -94
- package/IO/definition.d.ts +44 -34
- package/IO/runtime.d.ts +29 -16
- package/IOEnv/definition.d.ts +2 -3
- package/IOEnv/live.d.ts +1 -1
- package/IOEnv/services.d.ts +1 -1
- package/IOSpec.d.ts +7 -8
- package/Layer/MemoMap.d.ts +8 -9
- package/Layer/api.d.ts +41 -43
- package/Layer/definition.d.ts +22 -16
- package/Logger/api.d.ts +2 -2
- package/Logger/definition.d.ts +4 -4
- package/Queue/api/dimapIO.d.ts +6 -6
- package/Queue/api/filterInputIO.d.ts +6 -6
- package/Queue/api/filterOutputIO.d.ts +8 -8
- package/Queue/api/operations.d.ts +10 -10
- package/Queue/api/poll.d.ts +2 -2
- package/Queue/api/takeBetween.d.ts +1 -1
- package/Queue/api/zipWithIO.d.ts +9 -9
- package/Queue/constructors.d.ts +4 -4
- package/Queue/definition.d.ts +10 -10
- package/Queue/internal.d.ts +1 -1
- package/Queue/strategy.d.ts +10 -10
- package/Random/api.d.ts +8 -8
- package/Random/definition.d.ts +5 -5
- package/Random/live.d.ts +5 -5
- package/Ref/Atomic/Atomic.d.ts +4 -4
- package/Ref/Atomic/api.d.ts +11 -11
- package/Ref/Derived.d.ts +4 -4
- package/Ref/DerivedAll.d.ts +4 -4
- package/Ref/Synchronized/api.d.ts +16 -16
- package/Ref/Synchronized/constructors.d.ts +2 -2
- package/Ref/Synchronized/definition.d.ts +3 -3
- package/Ref/api/collect.d.ts +2 -2
- package/Ref/api/dimap.d.ts +8 -8
- package/Ref/api/filter.d.ts +3 -3
- package/Ref/api/get.d.ts +1 -1
- package/Ref/api/match.d.ts +1 -1
- package/Ref/api/matchAll.d.ts +1 -1
- package/Ref/api/modify.d.ts +10 -10
- package/Ref/api/set.d.ts +1 -1
- package/Ref/constructors.d.ts +3 -3
- package/Ref/definition.d.ts +15 -15
- package/RuntimeConfig.d.ts +2 -2
- package/STM/api/core-api.d.ts +5 -5
- package/STM/api/core-constructors.d.ts +9 -9
- package/STM/api.d.ts +60 -72
- package/STM/definition.d.ts +10 -9
- package/STM/driver.d.ts +2 -2
- package/STM/internal/CommitState.d.ts +1 -1
- package/STM/internal/Journal.d.ts +7 -6
- package/STM/internal/TryCommit.d.ts +1 -1
- package/Schedule/Decision.d.ts +10 -4
- package/Schedule/Driver.d.ts +4 -4
- package/Schedule/api/driver.d.ts +1 -1
- package/Schedule/api.d.ts +85 -73
- package/Schedule/definition.d.ts +1 -1
- package/Scope/Finalizer/definition.d.ts +3 -3
- package/Scope/ReleaseMap/api/releaseAll.d.ts +2 -2
- package/Scope/ReleaseMap/api.d.ts +7 -7
- package/Scope/ReleaseMap/definition.d.ts +3 -3
- package/Scope/api.d.ts +9 -10
- package/Scope/definition.d.ts +2 -2
- package/ScopedRef/api.d.ts +2 -3
- package/ScopedRef/definition.d.ts +1 -2
- package/Sink/api.d.ts +73 -74
- package/State/api.d.ts +2 -3
- package/Stream/api/zipAllWith.d.ts +3 -3
- package/Stream/api/zipWith.d.ts +1 -1
- package/Stream/api/zipWithChunks.d.ts +4 -4
- package/Stream/api.d.ts +171 -166
- package/Stream/definition.d.ts +3 -3
- package/Stream/internal/Handoff.d.ts +2 -2
- package/Stream/internal/Pull.d.ts +2 -2
- package/Stream/internal/Take.d.ts +4 -4
- package/Stream/internal/util.d.ts +1 -1
- package/Supervisor/api.d.ts +3 -3
- package/Supervisor/constructors.d.ts +6 -6
- package/Supervisor/definition.d.ts +3 -3
- package/TExit/constructors.d.ts +1 -1
- package/TExit/definition.d.ts +1 -1
- package/TFuture/api.d.ts +7 -7
- package/TFuture/constructors.d.ts +4 -4
- package/TFuture/definition.d.ts +3 -3
- package/TReentrantLock/api.d.ts +18 -19
- package/TReentrantLock/definition.d.ts +2 -2
- package/TRef/api.d.ts +15 -15
- package/TRef/constructors.d.ts +5 -5
- package/TRef/definition.d.ts +2 -2
- package/TSemaphore/api.d.ts +7 -7
- package/TSemaphore/constructors.d.ts +1 -1
- package/TSemaphore/definition.d.ts +1 -1
- package/_cjs/Cached/api.cjs +5 -5
- package/_cjs/Cached/api.cjs.map +1 -1
- package/_cjs/Channel/api/interruptWhen.cjs +1 -1
- package/_cjs/Channel/api/interruptWhen.cjs.map +1 -1
- package/_cjs/Channel/api/mapOutIOC.cjs +2 -2
- package/_cjs/Channel/api/mapOutIOC.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAllWith.cjs +11 -11
- package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
- package/_cjs/Channel/api/mergeWith.cjs +5 -5
- package/_cjs/Channel/api/mergeWith.cjs.map +1 -1
- package/_cjs/Channel/api/run.cjs +3 -1
- package/_cjs/Channel/api/run.cjs.map +1 -1
- package/_cjs/Channel/api.cjs +7 -7
- package/_cjs/Channel/api.cjs.map +1 -1
- package/_cjs/Channel/core-api.cjs.map +1 -1
- package/_cjs/Channel/definition.cjs.map +1 -1
- package/_cjs/Channel/internal/ChannelExecutor.cjs +6 -6
- package/_cjs/Channel/internal/ChannelExecutor.cjs.map +1 -1
- package/_cjs/Channel/internal/ChannelState.cjs +2 -1
- package/_cjs/Channel/internal/ChannelState.cjs.map +1 -1
- package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs +16 -16
- package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs.map +1 -1
- package/_cjs/Clock/live.cjs.map +1 -1
- package/_cjs/Console/api.cjs +5 -3
- package/_cjs/Console/api.cjs.map +1 -1
- package/_cjs/Fiber/FiberContext.cjs +8 -10
- package/_cjs/Fiber/FiberContext.cjs.map +1 -1
- package/_cjs/Fiber/api/await.cjs +1 -1
- package/_cjs/Fiber/api/await.cjs.map +1 -1
- package/_cjs/Fiber/api/awaitAll.cjs +2 -4
- package/_cjs/Fiber/api/awaitAll.cjs.map +1 -1
- package/_cjs/Fiber/api/children.cjs +1 -1
- package/_cjs/Fiber/api/children.cjs.map +1 -1
- package/_cjs/Fiber/api/collectAll.cjs +2 -4
- package/_cjs/Fiber/api/collectAll.cjs.map +1 -1
- package/_cjs/Fiber/api/evalOn.cjs +1 -1
- package/_cjs/Fiber/api/evalOn.cjs.map +1 -1
- package/_cjs/Fiber/api/evalOnIO.cjs +2 -4
- package/_cjs/Fiber/api/evalOnIO.cjs.map +1 -1
- package/_cjs/Fiber/api/fromIO.cjs +2 -4
- package/_cjs/Fiber/api/fromIO.cjs.map +1 -1
- package/_cjs/Fiber/api/id.cjs +1 -1
- package/_cjs/Fiber/api/id.cjs.map +1 -1
- package/_cjs/Fiber/api/inheritRefs.cjs +1 -1
- package/_cjs/Fiber/api/inheritRefs.cjs.map +1 -1
- package/_cjs/Fiber/api/interrupt.cjs +2 -4
- package/_cjs/Fiber/api/interrupt.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptAll.cjs +4 -5
- package/_cjs/Fiber/api/interruptAll.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptAs.cjs +1 -1
- package/_cjs/Fiber/api/interruptAs.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptFork.cjs +1 -1
- package/_cjs/Fiber/api/interruptFork.cjs.map +1 -1
- package/_cjs/Fiber/api/join.cjs +2 -4
- package/_cjs/Fiber/api/join.cjs.map +1 -1
- package/_cjs/Fiber/api/joinAll.cjs +2 -4
- package/_cjs/Fiber/api/joinAll.cjs.map +1 -1
- package/_cjs/Fiber/api/mapFiber.cjs +2 -4
- package/_cjs/Fiber/api/mapFiber.cjs.map +1 -1
- package/_cjs/Fiber/api/mapIO.cjs +4 -5
- package/_cjs/Fiber/api/mapIO.cjs.map +1 -1
- package/_cjs/Fiber/api/poll.cjs +1 -1
- package/_cjs/Fiber/api/poll.cjs.map +1 -1
- package/_cjs/Fiber/api/zipWith.cjs +2 -4
- package/_cjs/Fiber/api/zipWith.cjs.map +1 -1
- package/_cjs/Fiber/constructors.cjs +10 -11
- package/_cjs/Fiber/constructors.cjs.map +1 -1
- package/_cjs/FiberRef/api/locallyScoped.cjs +2 -4
- package/_cjs/FiberRef/api/locallyScoped.cjs.map +1 -1
- package/_cjs/FiberRef/api/locallyScopedWith.cjs +2 -4
- package/_cjs/FiberRef/api/locallyScopedWith.cjs.map +1 -1
- package/_cjs/FiberRef/api.cjs +13 -14
- package/_cjs/FiberRef/api.cjs.map +1 -1
- package/_cjs/FiberRef/constructors.cjs +4 -6
- package/_cjs/FiberRef/constructors.cjs.map +1 -1
- package/_cjs/FiberRef/unsafe.cjs +9 -1
- package/_cjs/FiberRef/unsafe.cjs.map +1 -1
- package/_cjs/Future/api.cjs +30 -31
- package/_cjs/Future/api.cjs.map +1 -1
- package/_cjs/Future/constructors.cjs +4 -5
- package/_cjs/Future/constructors.cjs.map +1 -1
- package/_cjs/Hub/api.cjs +44 -44
- package/_cjs/Hub/api.cjs.map +1 -1
- package/_cjs/Hub/internal.cjs +16 -24
- package/_cjs/Hub/internal.cjs.map +1 -1
- package/_cjs/IO/api/acquireRelease.cjs +2 -4
- package/_cjs/IO/api/acquireRelease.cjs.map +1 -1
- package/_cjs/IO/api/acquireReleaseExit.cjs +1 -1
- package/_cjs/IO/api/acquireReleaseExit.cjs.map +1 -1
- package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs +1 -1
- package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs.map +1 -1
- package/_cjs/IO/api/addFinalizer.cjs +1 -1
- package/_cjs/IO/api/addFinalizer.cjs.map +1 -1
- package/_cjs/IO/api/addFinalizerExit.cjs +5 -11
- package/_cjs/IO/api/addFinalizerExit.cjs.map +1 -1
- package/_cjs/IO/api/asyncIO.cjs +5 -7
- package/_cjs/IO/api/asyncIO.cjs.map +1 -1
- package/_cjs/IO/api/bracket.cjs +2 -2
- package/_cjs/IO/api/bracket.cjs.map +1 -1
- package/_cjs/IO/api/bracketExit.cjs +2 -4
- package/_cjs/IO/api/bracketExit.cjs.map +1 -1
- package/_cjs/IO/api/concurrency.cjs +7 -7
- package/_cjs/IO/api/concurrency.cjs.map +1 -1
- package/_cjs/IO/api/concurrentFinalizers.cjs +2 -4
- package/_cjs/IO/api/concurrentFinalizers.cjs.map +1 -1
- package/_cjs/IO/api/consoleWith.cjs +3 -3
- package/_cjs/IO/api/consoleWith.cjs.map +1 -1
- package/_cjs/IO/api/core-scope.cjs +4 -4
- package/_cjs/IO/api/core-scope.cjs.map +1 -1
- package/_cjs/IO/api/ensuringChildren.cjs +2 -4
- package/_cjs/IO/api/ensuringChildren.cjs.map +1 -1
- package/_cjs/IO/api/environment.cjs +6 -8
- package/_cjs/IO/api/environment.cjs.map +1 -1
- package/_cjs/IO/api/foreachC.cjs +25 -27
- package/_cjs/IO/api/foreachC.cjs.map +1 -1
- package/_cjs/IO/api/foreachExec.cjs +2 -4
- package/_cjs/IO/api/foreachExec.cjs.map +1 -1
- package/_cjs/IO/api/forkIn.cjs +1 -1
- package/_cjs/IO/api/forkIn.cjs.map +1 -1
- package/_cjs/IO/api/forkScoped.cjs +1 -1
- package/_cjs/IO/api/forkScoped.cjs.map +1 -1
- package/_cjs/IO/api/fulfill.cjs +2 -4
- package/_cjs/IO/api/fulfill.cjs.map +1 -1
- package/_cjs/IO/api/interrupt.cjs +13 -13
- package/_cjs/IO/api/interrupt.cjs.map +1 -1
- package/_cjs/IO/api/memoize.cjs +4 -8
- package/_cjs/IO/api/memoize.cjs.map +1 -1
- package/_cjs/IO/api/onExit.cjs +2 -2
- package/_cjs/IO/api/onExit.cjs.map +1 -1
- package/_cjs/IO/api/onTermination.cjs +2 -2
- package/_cjs/IO/api/onTermination.cjs.map +1 -1
- package/_cjs/IO/api/once.cjs +1 -1
- package/_cjs/IO/api/once.cjs.map +1 -1
- package/_cjs/IO/api/provideLayer.cjs +2 -4
- package/_cjs/IO/api/provideLayer.cjs.map +1 -1
- package/_cjs/IO/api/provideSomeLayer.cjs +2 -3
- package/_cjs/IO/api/provideSomeLayer.cjs.map +1 -1
- package/_cjs/IO/api/race.cjs +4 -6
- package/_cjs/IO/api/race.cjs.map +1 -1
- package/_cjs/IO/api/raceFirst.cjs +2 -4
- package/_cjs/IO/api/raceFirst.cjs.map +1 -1
- package/_cjs/IO/api/randomWith.cjs +3 -3
- package/_cjs/IO/api/randomWith.cjs.map +1 -1
- package/_cjs/IO/api/repeat.cjs +10 -11
- package/_cjs/IO/api/repeat.cjs.map +1 -1
- package/_cjs/IO/api/retry.cjs +8 -9
- package/_cjs/IO/api/retry.cjs.map +1 -1
- package/_cjs/IO/api/schedule.cjs +6 -7
- package/_cjs/IO/api/schedule.cjs.map +1 -1
- package/_cjs/IO/api/scope.cjs +1 -1
- package/_cjs/IO/api/scope.cjs.map +1 -1
- package/_cjs/IO/api/scopeWith.cjs +2 -4
- package/_cjs/IO/api/scopeWith.cjs.map +1 -1
- package/_cjs/IO/api/scoped.cjs +4 -5
- package/_cjs/IO/api/scoped.cjs.map +1 -1
- package/_cjs/IO/api/stateful.cjs +1 -1
- package/_cjs/IO/api/stateful.cjs.map +1 -1
- package/_cjs/IO/api/timeout.cjs +3 -4
- package/_cjs/IO/api/timeout.cjs.map +1 -1
- package/_cjs/IO/api/withChildren.cjs +1 -1
- package/_cjs/IO/api/withChildren.cjs.map +1 -1
- package/_cjs/IO/api/withEarlyRelease.cjs +2 -4
- package/_cjs/IO/api/withEarlyRelease.cjs.map +1 -1
- package/_cjs/IO/api/withFinalizer.cjs +2 -2
- package/_cjs/IO/api/withFinalizer.cjs.map +1 -1
- package/_cjs/IO/api/withFinalizerExit.cjs +2 -4
- package/_cjs/IO/api/withFinalizerExit.cjs.map +1 -1
- package/_cjs/IO/api/withRuntimeConfig.cjs +2 -4
- package/_cjs/IO/api/withRuntimeConfig.cjs.map +1 -1
- package/_cjs/IO/api/zipC.cjs +5 -6
- package/_cjs/IO/api/zipC.cjs.map +1 -1
- package/_cjs/IO/api.cjs +112 -112
- package/_cjs/IO/api.cjs.map +1 -1
- package/_cjs/IO/definition.cjs +5 -8
- package/_cjs/IO/definition.cjs.map +1 -1
- package/_cjs/IO/runtime.cjs +69 -21
- package/_cjs/IO/runtime.cjs.map +1 -1
- package/_cjs/IOEnv/live.cjs +3 -1
- package/_cjs/IOEnv/live.cjs.map +1 -1
- package/_cjs/Layer/MemoMap.cjs +45 -62
- package/_cjs/Layer/MemoMap.cjs.map +1 -1
- package/_cjs/Layer/api.cjs +84 -83
- package/_cjs/Layer/api.cjs.map +1 -1
- package/_cjs/Layer/definition.cjs +14 -7
- package/_cjs/Layer/definition.cjs.map +1 -1
- package/_cjs/Queue/api/dimapIO.cjs +14 -14
- package/_cjs/Queue/api/dimapIO.cjs.map +1 -1
- package/_cjs/Queue/api/filterInputIO.cjs +6 -6
- package/_cjs/Queue/api/filterInputIO.cjs.map +1 -1
- package/_cjs/Queue/api/filterOutputIO.cjs +6 -6
- package/_cjs/Queue/api/filterOutputIO.cjs.map +1 -1
- package/_cjs/Queue/api/operations.cjs +13 -13
- package/_cjs/Queue/api/operations.cjs.map +1 -1
- package/_cjs/Queue/api/poll.cjs +2 -4
- package/_cjs/Queue/api/poll.cjs.map +1 -1
- package/_cjs/Queue/api/takeBetween.cjs +10 -12
- package/_cjs/Queue/api/takeBetween.cjs.map +1 -1
- package/_cjs/Queue/api/zipWithIO.cjs +12 -12
- package/_cjs/Queue/api/zipWithIO.cjs.map +1 -1
- package/_cjs/Queue/constructors.cjs +8 -10
- package/_cjs/Queue/constructors.cjs.map +1 -1
- package/_cjs/Queue/internal.cjs +17 -17
- package/_cjs/Queue/internal.cjs.map +1 -1
- package/_cjs/Queue/strategy.cjs +16 -20
- package/_cjs/Queue/strategy.cjs.map +1 -1
- package/_cjs/Random/api.cjs +15 -13
- package/_cjs/Random/api.cjs.map +1 -1
- package/_cjs/Random/live.cjs +4 -4
- package/_cjs/Random/live.cjs.map +1 -1
- package/_cjs/Ref/Atomic/Atomic.cjs.map +1 -1
- package/_cjs/Ref/Atomic/api.cjs +19 -21
- package/_cjs/Ref/Atomic/api.cjs.map +1 -1
- package/_cjs/Ref/Derived.cjs.map +1 -1
- package/_cjs/Ref/DerivedAll.cjs +1 -1
- package/_cjs/Ref/DerivedAll.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/api.cjs +25 -26
- package/_cjs/Ref/Synchronized/api.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/constructors.cjs +8 -14
- package/_cjs/Ref/Synchronized/constructors.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/definition.cjs +1 -1
- package/_cjs/Ref/Synchronized/definition.cjs.map +1 -1
- package/_cjs/Ref/api/collect.cjs +1 -1
- package/_cjs/Ref/api/collect.cjs.map +1 -1
- package/_cjs/Ref/api/dimap.cjs +12 -12
- package/_cjs/Ref/api/dimap.cjs.map +1 -1
- package/_cjs/Ref/api/filter.cjs +2 -2
- package/_cjs/Ref/api/filter.cjs.map +1 -1
- package/_cjs/Ref/api/get.cjs +1 -1
- package/_cjs/Ref/api/get.cjs.map +1 -1
- package/_cjs/Ref/api/modify.cjs +29 -30
- package/_cjs/Ref/api/modify.cjs.map +1 -1
- package/_cjs/Ref/api/set.cjs +1 -1
- package/_cjs/Ref/api/set.cjs.map +1 -1
- package/_cjs/Ref/constructors.cjs +3 -4
- package/_cjs/Ref/constructors.cjs.map +1 -1
- package/_cjs/STM/api/core-api.cjs +8 -8
- package/_cjs/STM/api/core-api.cjs.map +1 -1
- package/_cjs/STM/api/core-constructors.cjs +6 -6
- package/_cjs/STM/api/core-constructors.cjs.map +1 -1
- package/_cjs/STM/api.cjs +129 -148
- package/_cjs/STM/api.cjs.map +1 -1
- package/_cjs/STM/definition.cjs.map +1 -1
- package/_cjs/STM/driver.cjs +10 -6
- package/_cjs/STM/driver.cjs.map +1 -1
- package/_cjs/STM/internal/Journal.cjs +20 -22
- package/_cjs/STM/internal/Journal.cjs.map +1 -1
- package/_cjs/Schedule/Decision.cjs +17 -0
- package/_cjs/Schedule/Decision.cjs.map +1 -1
- package/_cjs/Schedule/api/driver.cjs +18 -21
- package/_cjs/Schedule/api/driver.cjs.map +1 -1
- package/_cjs/Schedule/api.cjs +205 -180
- package/_cjs/Schedule/api.cjs.map +1 -1
- package/_cjs/Scope/Finalizer/definition.cjs +4 -6
- package/_cjs/Scope/Finalizer/definition.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs +3 -5
- package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/api.cjs +14 -15
- package/_cjs/Scope/ReleaseMap/api.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/constructors.cjs +1 -1
- package/_cjs/Scope/ReleaseMap/constructors.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/definition.cjs +2 -4
- package/_cjs/Scope/ReleaseMap/definition.cjs.map +1 -1
- package/_cjs/Scope/api.cjs +20 -30
- package/_cjs/Scope/api.cjs.map +1 -1
- package/_cjs/ScopedRef/api.cjs +14 -22
- package/_cjs/ScopedRef/api.cjs.map +1 -1
- package/_cjs/Sink/api.cjs +92 -88
- package/_cjs/Sink/api.cjs.map +1 -1
- package/_cjs/State/api.cjs +5 -7
- package/_cjs/State/api.cjs.map +1 -1
- package/_cjs/Stream/api/zipAllWith.cjs +22 -24
- package/_cjs/Stream/api/zipAllWith.cjs.map +1 -1
- package/_cjs/Stream/api/zipWith.cjs +2 -2
- package/_cjs/Stream/api/zipWith.cjs.map +1 -1
- package/_cjs/Stream/api/zipWithChunks.cjs +20 -22
- package/_cjs/Stream/api/zipWithChunks.cjs.map +1 -1
- package/_cjs/Stream/api.cjs +436 -419
- package/_cjs/Stream/api.cjs.map +1 -1
- package/_cjs/Stream/internal/Handoff.cjs +12 -12
- package/_cjs/Stream/internal/Handoff.cjs.map +1 -1
- package/_cjs/Stream/internal/Pull.cjs +1 -1
- package/_cjs/Stream/internal/Pull.cjs.map +1 -1
- package/_cjs/Stream/internal/Take.cjs +1 -1
- package/_cjs/Stream/internal/Take.cjs.map +1 -1
- package/_cjs/Supervisor/api.cjs +3 -1
- package/_cjs/Supervisor/api.cjs.map +1 -1
- package/_cjs/Supervisor/constructors.cjs +14 -8
- package/_cjs/Supervisor/constructors.cjs.map +1 -1
- package/_cjs/TFuture/api.cjs +10 -10
- package/_cjs/TFuture/api.cjs.map +1 -1
- package/_cjs/TFuture/constructors.cjs +4 -4
- package/_cjs/TFuture/constructors.cjs.map +1 -1
- package/_cjs/TFuture/definition.cjs +2 -4
- package/_cjs/TFuture/definition.cjs.map +1 -1
- package/_cjs/TReentrantLock/api.cjs +41 -42
- package/_cjs/TReentrantLock/api.cjs.map +1 -1
- package/_cjs/TRef/api.cjs +40 -40
- package/_cjs/TRef/api.cjs.map +1 -1
- package/_cjs/TRef/constructors.cjs +6 -6
- package/_cjs/TRef/constructors.cjs.map +1 -1
- package/_cjs/TSemaphore/api.cjs +20 -21
- package/_cjs/TSemaphore/api.cjs.map +1 -1
- package/_cjs/TSemaphore/constructors.cjs +2 -2
- package/_cjs/TSemaphore/constructors.cjs.map +1 -1
- package/_cjs/TSemaphore/definition.cjs +2 -4
- package/_cjs/TSemaphore/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +1 -1
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +1 -1
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/filterIO.cjs +5 -7
- package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/findIO.cjs +7 -9
- package/_cjs/collection/immutable/Conc/findIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/mapIO.cjs +3 -5
- package/_cjs/collection/immutable/Conc/mapIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/takeWhileIO.cjs +7 -9
- package/_cjs/collection/immutable/Conc/takeWhileIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc.cjs +26 -0
- package/_cjs/collection/immutable/Conc.cjs.map +1 -1
- package/_cjs/data/Exit/foreachIO.cjs +2 -4
- package/_cjs/data/Exit/foreachIO.cjs.map +1 -1
- package/_cjs/global.cjs +6 -0
- package/_cjs/global.cjs.map +1 -0
- package/_cjs/index.cjs +6 -0
- package/_cjs/index.cjs.map +1 -0
- package/_cjs/internal/Scheduler.cjs +64 -14
- package/_cjs/internal/Scheduler.cjs.map +1 -1
- package/_mjs/Cached/api.mjs +5 -5
- package/_mjs/Cached/api.mjs.map +1 -1
- package/_mjs/Channel/api/interruptWhen.mjs +1 -1
- package/_mjs/Channel/api/interruptWhen.mjs.map +1 -1
- package/_mjs/Channel/api/mapOutIOC.mjs +2 -2
- package/_mjs/Channel/api/mapOutIOC.mjs.map +1 -1
- package/_mjs/Channel/api/mergeAllWith.mjs +11 -11
- package/_mjs/Channel/api/mergeAllWith.mjs.map +1 -1
- package/_mjs/Channel/api/mergeWith.mjs +6 -5
- package/_mjs/Channel/api/mergeWith.mjs.map +1 -1
- package/_mjs/Channel/api/run.mjs +2 -1
- package/_mjs/Channel/api/run.mjs.map +1 -1
- package/_mjs/Channel/api.mjs +7 -7
- package/_mjs/Channel/api.mjs.map +1 -1
- package/_mjs/Channel/core-api.mjs.map +1 -1
- package/_mjs/Channel/definition.mjs.map +1 -1
- package/_mjs/Channel/internal/ChannelExecutor.mjs +6 -6
- package/_mjs/Channel/internal/ChannelExecutor.mjs.map +1 -1
- package/_mjs/Channel/internal/ChannelState.mjs +2 -1
- package/_mjs/Channel/internal/ChannelState.mjs.map +1 -1
- package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs +16 -16
- package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs.map +1 -1
- package/_mjs/Clock/live.mjs.map +1 -1
- package/_mjs/Console/api.mjs +4 -3
- package/_mjs/Console/api.mjs.map +1 -1
- package/_mjs/Fiber/FiberContext.mjs +9 -9
- package/_mjs/Fiber/FiberContext.mjs.map +1 -1
- package/_mjs/Fiber/api/await.mjs +1 -1
- package/_mjs/Fiber/api/await.mjs.map +1 -1
- package/_mjs/Fiber/api/awaitAll.mjs +2 -3
- package/_mjs/Fiber/api/awaitAll.mjs.map +1 -1
- package/_mjs/Fiber/api/children.mjs +1 -1
- package/_mjs/Fiber/api/children.mjs.map +1 -1
- package/_mjs/Fiber/api/collectAll.mjs +2 -3
- package/_mjs/Fiber/api/collectAll.mjs.map +1 -1
- package/_mjs/Fiber/api/evalOn.mjs +1 -1
- package/_mjs/Fiber/api/evalOn.mjs.map +1 -1
- package/_mjs/Fiber/api/evalOnIO.mjs +2 -3
- package/_mjs/Fiber/api/evalOnIO.mjs.map +1 -1
- package/_mjs/Fiber/api/fromIO.mjs +2 -3
- package/_mjs/Fiber/api/fromIO.mjs.map +1 -1
- package/_mjs/Fiber/api/id.mjs +1 -1
- package/_mjs/Fiber/api/id.mjs.map +1 -1
- package/_mjs/Fiber/api/inheritRefs.mjs +1 -1
- package/_mjs/Fiber/api/inheritRefs.mjs.map +1 -1
- package/_mjs/Fiber/api/interrupt.mjs +2 -3
- package/_mjs/Fiber/api/interrupt.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptAll.mjs +4 -5
- package/_mjs/Fiber/api/interruptAll.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptAs.mjs +1 -1
- package/_mjs/Fiber/api/interruptAs.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptFork.mjs +1 -1
- package/_mjs/Fiber/api/interruptFork.mjs.map +1 -1
- package/_mjs/Fiber/api/join.mjs +2 -3
- package/_mjs/Fiber/api/join.mjs.map +1 -1
- package/_mjs/Fiber/api/joinAll.mjs +2 -3
- package/_mjs/Fiber/api/joinAll.mjs.map +1 -1
- package/_mjs/Fiber/api/mapFiber.mjs +2 -3
- package/_mjs/Fiber/api/mapFiber.mjs.map +1 -1
- package/_mjs/Fiber/api/mapIO.mjs +4 -5
- package/_mjs/Fiber/api/mapIO.mjs.map +1 -1
- package/_mjs/Fiber/api/poll.mjs +1 -1
- package/_mjs/Fiber/api/poll.mjs.map +1 -1
- package/_mjs/Fiber/api/zipWith.mjs +2 -3
- package/_mjs/Fiber/api/zipWith.mjs.map +1 -1
- package/_mjs/Fiber/constructors.mjs +10 -11
- package/_mjs/Fiber/constructors.mjs.map +1 -1
- package/_mjs/FiberRef/api/locallyScoped.mjs +2 -3
- package/_mjs/FiberRef/api/locallyScoped.mjs.map +1 -1
- package/_mjs/FiberRef/api/locallyScopedWith.mjs +2 -3
- package/_mjs/FiberRef/api/locallyScopedWith.mjs.map +1 -1
- package/_mjs/FiberRef/api.mjs +13 -14
- package/_mjs/FiberRef/api.mjs.map +1 -1
- package/_mjs/FiberRef/constructors.mjs +4 -5
- package/_mjs/FiberRef/constructors.mjs.map +1 -1
- package/_mjs/FiberRef/unsafe.mjs +6 -0
- package/_mjs/FiberRef/unsafe.mjs.map +1 -1
- package/_mjs/Future/api.mjs +30 -31
- package/_mjs/Future/api.mjs.map +1 -1
- package/_mjs/Future/constructors.mjs +4 -5
- package/_mjs/Future/constructors.mjs.map +1 -1
- package/_mjs/Hub/api.mjs +44 -44
- package/_mjs/Hub/api.mjs.map +1 -1
- package/_mjs/Hub/internal.mjs +16 -24
- package/_mjs/Hub/internal.mjs.map +1 -1
- package/_mjs/IO/api/acquireRelease.mjs +2 -3
- package/_mjs/IO/api/acquireRelease.mjs.map +1 -1
- package/_mjs/IO/api/acquireReleaseExit.mjs +1 -1
- package/_mjs/IO/api/acquireReleaseExit.mjs.map +1 -1
- package/_mjs/IO/api/acquireReleaseInterruptibleExit.mjs +1 -1
- package/_mjs/IO/api/acquireReleaseInterruptibleExit.mjs.map +1 -1
- package/_mjs/IO/api/addFinalizer.mjs +1 -1
- package/_mjs/IO/api/addFinalizer.mjs.map +1 -1
- package/_mjs/IO/api/addFinalizerExit.mjs +5 -10
- package/_mjs/IO/api/addFinalizerExit.mjs.map +1 -1
- package/_mjs/IO/api/asyncIO.mjs +5 -6
- package/_mjs/IO/api/asyncIO.mjs.map +1 -1
- package/_mjs/IO/api/bracket.mjs +2 -2
- package/_mjs/IO/api/bracket.mjs.map +1 -1
- package/_mjs/IO/api/bracketExit.mjs +2 -3
- package/_mjs/IO/api/bracketExit.mjs.map +1 -1
- package/_mjs/IO/api/concurrency.mjs +7 -7
- package/_mjs/IO/api/concurrency.mjs.map +1 -1
- package/_mjs/IO/api/concurrentFinalizers.mjs +2 -3
- package/_mjs/IO/api/concurrentFinalizers.mjs.map +1 -1
- package/_mjs/IO/api/consoleWith.mjs +3 -3
- package/_mjs/IO/api/consoleWith.mjs.map +1 -1
- package/_mjs/IO/api/core-scope.mjs +4 -4
- package/_mjs/IO/api/core-scope.mjs.map +1 -1
- package/_mjs/IO/api/ensuringChildren.mjs +2 -3
- package/_mjs/IO/api/ensuringChildren.mjs.map +1 -1
- package/_mjs/IO/api/environment.mjs +6 -8
- package/_mjs/IO/api/environment.mjs.map +1 -1
- package/_mjs/IO/api/foreachC.mjs +25 -26
- package/_mjs/IO/api/foreachC.mjs.map +1 -1
- package/_mjs/IO/api/foreachExec.mjs +2 -3
- package/_mjs/IO/api/foreachExec.mjs.map +1 -1
- package/_mjs/IO/api/forkIn.mjs +1 -1
- package/_mjs/IO/api/forkIn.mjs.map +1 -1
- package/_mjs/IO/api/forkScoped.mjs +1 -1
- package/_mjs/IO/api/forkScoped.mjs.map +1 -1
- package/_mjs/IO/api/fulfill.mjs +2 -3
- package/_mjs/IO/api/fulfill.mjs.map +1 -1
- package/_mjs/IO/api/interrupt.mjs +13 -13
- package/_mjs/IO/api/interrupt.mjs.map +1 -1
- package/_mjs/IO/api/memoize.mjs +4 -8
- package/_mjs/IO/api/memoize.mjs.map +1 -1
- package/_mjs/IO/api/onExit.mjs +2 -2
- package/_mjs/IO/api/onExit.mjs.map +1 -1
- package/_mjs/IO/api/onTermination.mjs +2 -2
- package/_mjs/IO/api/onTermination.mjs.map +1 -1
- package/_mjs/IO/api/once.mjs +1 -1
- package/_mjs/IO/api/once.mjs.map +1 -1
- package/_mjs/IO/api/provideLayer.mjs +2 -3
- package/_mjs/IO/api/provideLayer.mjs.map +1 -1
- package/_mjs/IO/api/provideSomeLayer.mjs +2 -3
- package/_mjs/IO/api/provideSomeLayer.mjs.map +1 -1
- package/_mjs/IO/api/race.mjs +4 -5
- package/_mjs/IO/api/race.mjs.map +1 -1
- package/_mjs/IO/api/raceFirst.mjs +2 -3
- package/_mjs/IO/api/raceFirst.mjs.map +1 -1
- package/_mjs/IO/api/randomWith.mjs +3 -3
- package/_mjs/IO/api/randomWith.mjs.map +1 -1
- package/_mjs/IO/api/repeat.mjs +10 -11
- package/_mjs/IO/api/repeat.mjs.map +1 -1
- package/_mjs/IO/api/retry.mjs +8 -9
- package/_mjs/IO/api/retry.mjs.map +1 -1
- package/_mjs/IO/api/schedule.mjs +6 -7
- package/_mjs/IO/api/schedule.mjs.map +1 -1
- package/_mjs/IO/api/scope.mjs +1 -1
- package/_mjs/IO/api/scope.mjs.map +1 -1
- package/_mjs/IO/api/scopeWith.mjs +2 -3
- package/_mjs/IO/api/scopeWith.mjs.map +1 -1
- package/_mjs/IO/api/scoped.mjs +4 -5
- package/_mjs/IO/api/scoped.mjs.map +1 -1
- package/_mjs/IO/api/stateful.mjs +1 -1
- package/_mjs/IO/api/stateful.mjs.map +1 -1
- package/_mjs/IO/api/timeout.mjs +3 -4
- package/_mjs/IO/api/timeout.mjs.map +1 -1
- package/_mjs/IO/api/withChildren.mjs +1 -1
- package/_mjs/IO/api/withChildren.mjs.map +1 -1
- package/_mjs/IO/api/withEarlyRelease.mjs +2 -3
- package/_mjs/IO/api/withEarlyRelease.mjs.map +1 -1
- package/_mjs/IO/api/withFinalizer.mjs +2 -2
- package/_mjs/IO/api/withFinalizer.mjs.map +1 -1
- package/_mjs/IO/api/withFinalizerExit.mjs +2 -3
- package/_mjs/IO/api/withFinalizerExit.mjs.map +1 -1
- package/_mjs/IO/api/withRuntimeConfig.mjs +2 -3
- package/_mjs/IO/api/withRuntimeConfig.mjs.map +1 -1
- package/_mjs/IO/api/zipC.mjs +5 -6
- package/_mjs/IO/api/zipC.mjs.map +1 -1
- package/_mjs/IO/api.mjs +112 -112
- package/_mjs/IO/api.mjs.map +1 -1
- package/_mjs/IO/definition.mjs +3 -5
- package/_mjs/IO/definition.mjs.map +1 -1
- package/_mjs/IO/runtime.mjs +61 -18
- package/_mjs/IO/runtime.mjs.map +1 -1
- package/_mjs/IOEnv/live.mjs +2 -1
- package/_mjs/IOEnv/live.mjs.map +1 -1
- package/_mjs/Layer/MemoMap.mjs +43 -60
- package/_mjs/Layer/MemoMap.mjs.map +1 -1
- package/_mjs/Layer/api.mjs +84 -84
- package/_mjs/Layer/api.mjs.map +1 -1
- package/_mjs/Layer/definition.mjs +14 -7
- package/_mjs/Layer/definition.mjs.map +1 -1
- package/_mjs/Queue/api/dimapIO.mjs +14 -14
- package/_mjs/Queue/api/dimapIO.mjs.map +1 -1
- package/_mjs/Queue/api/filterInputIO.mjs +6 -6
- package/_mjs/Queue/api/filterInputIO.mjs.map +1 -1
- package/_mjs/Queue/api/filterOutputIO.mjs +6 -6
- package/_mjs/Queue/api/filterOutputIO.mjs.map +1 -1
- package/_mjs/Queue/api/operations.mjs +13 -13
- package/_mjs/Queue/api/operations.mjs.map +1 -1
- package/_mjs/Queue/api/poll.mjs +2 -3
- package/_mjs/Queue/api/poll.mjs.map +1 -1
- package/_mjs/Queue/api/takeBetween.mjs +10 -11
- package/_mjs/Queue/api/takeBetween.mjs.map +1 -1
- package/_mjs/Queue/api/zipWithIO.mjs +12 -12
- package/_mjs/Queue/api/zipWithIO.mjs.map +1 -1
- package/_mjs/Queue/constructors.mjs +8 -9
- package/_mjs/Queue/constructors.mjs.map +1 -1
- package/_mjs/Queue/internal.mjs +17 -17
- package/_mjs/Queue/internal.mjs.map +1 -1
- package/_mjs/Queue/strategy.mjs +16 -20
- package/_mjs/Queue/strategy.mjs.map +1 -1
- package/_mjs/Random/api.mjs +14 -13
- package/_mjs/Random/api.mjs.map +1 -1
- package/_mjs/Random/live.mjs +4 -4
- package/_mjs/Random/live.mjs.map +1 -1
- package/_mjs/Ref/Atomic/Atomic.mjs.map +1 -1
- package/_mjs/Ref/Atomic/api.mjs +19 -20
- package/_mjs/Ref/Atomic/api.mjs.map +1 -1
- package/_mjs/Ref/Derived.mjs.map +1 -1
- package/_mjs/Ref/DerivedAll.mjs +1 -1
- package/_mjs/Ref/DerivedAll.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/api.mjs +25 -26
- package/_mjs/Ref/Synchronized/api.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/constructors.mjs +8 -13
- package/_mjs/Ref/Synchronized/constructors.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/definition.mjs +1 -1
- package/_mjs/Ref/Synchronized/definition.mjs.map +1 -1
- package/_mjs/Ref/api/collect.mjs +1 -1
- package/_mjs/Ref/api/collect.mjs.map +1 -1
- package/_mjs/Ref/api/dimap.mjs +12 -12
- package/_mjs/Ref/api/dimap.mjs.map +1 -1
- package/_mjs/Ref/api/filter.mjs +2 -2
- package/_mjs/Ref/api/filter.mjs.map +1 -1
- package/_mjs/Ref/api/get.mjs +1 -1
- package/_mjs/Ref/api/get.mjs.map +1 -1
- package/_mjs/Ref/api/modify.mjs +29 -30
- package/_mjs/Ref/api/modify.mjs.map +1 -1
- package/_mjs/Ref/api/set.mjs +1 -1
- package/_mjs/Ref/api/set.mjs.map +1 -1
- package/_mjs/Ref/constructors.mjs +3 -4
- package/_mjs/Ref/constructors.mjs.map +1 -1
- package/_mjs/STM/api/core-api.mjs +8 -8
- package/_mjs/STM/api/core-api.mjs.map +1 -1
- package/_mjs/STM/api/core-constructors.mjs +6 -6
- package/_mjs/STM/api/core-constructors.mjs.map +1 -1
- package/_mjs/STM/api.mjs +122 -142
- package/_mjs/STM/api.mjs.map +1 -1
- package/_mjs/STM/definition.mjs.map +1 -1
- package/_mjs/STM/driver.mjs +9 -6
- package/_mjs/STM/driver.mjs.map +1 -1
- package/_mjs/STM/internal/Journal.mjs +20 -21
- package/_mjs/STM/internal/Journal.mjs.map +1 -1
- package/_mjs/Schedule/Decision.mjs +9 -0
- package/_mjs/Schedule/Decision.mjs.map +1 -1
- package/_mjs/Schedule/api/driver.mjs +17 -20
- package/_mjs/Schedule/api/driver.mjs.map +1 -1
- package/_mjs/Schedule/api.mjs +198 -177
- package/_mjs/Schedule/api.mjs.map +1 -1
- package/_mjs/Scope/Finalizer/definition.mjs +4 -5
- package/_mjs/Scope/Finalizer/definition.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs +3 -4
- package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/api.mjs +14 -15
- package/_mjs/Scope/ReleaseMap/api.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/constructors.mjs +1 -1
- package/_mjs/Scope/ReleaseMap/constructors.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/definition.mjs +2 -3
- package/_mjs/Scope/ReleaseMap/definition.mjs.map +1 -1
- package/_mjs/Scope/api.mjs +20 -30
- package/_mjs/Scope/api.mjs.map +1 -1
- package/_mjs/ScopedRef/api.mjs +14 -22
- package/_mjs/ScopedRef/api.mjs.map +1 -1
- package/_mjs/Sink/api.mjs +92 -88
- package/_mjs/Sink/api.mjs.map +1 -1
- package/_mjs/State/api.mjs +5 -6
- package/_mjs/State/api.mjs.map +1 -1
- package/_mjs/Stream/api/zipAllWith.mjs +22 -23
- package/_mjs/Stream/api/zipAllWith.mjs.map +1 -1
- package/_mjs/Stream/api/zipWith.mjs +2 -2
- package/_mjs/Stream/api/zipWith.mjs.map +1 -1
- package/_mjs/Stream/api/zipWithChunks.mjs +20 -21
- package/_mjs/Stream/api/zipWithChunks.mjs.map +1 -1
- package/_mjs/Stream/api.mjs +430 -417
- package/_mjs/Stream/api.mjs.map +1 -1
- package/_mjs/Stream/internal/Handoff.mjs +12 -12
- package/_mjs/Stream/internal/Handoff.mjs.map +1 -1
- package/_mjs/Stream/internal/Pull.mjs +1 -1
- package/_mjs/Stream/internal/Pull.mjs.map +1 -1
- package/_mjs/Stream/internal/Take.mjs +1 -1
- package/_mjs/Stream/internal/Take.mjs.map +1 -1
- package/_mjs/Supervisor/api.mjs +2 -1
- package/_mjs/Supervisor/api.mjs.map +1 -1
- package/_mjs/Supervisor/constructors.mjs +9 -6
- package/_mjs/Supervisor/constructors.mjs.map +1 -1
- package/_mjs/TFuture/api.mjs +10 -10
- package/_mjs/TFuture/api.mjs.map +1 -1
- package/_mjs/TFuture/constructors.mjs +4 -4
- package/_mjs/TFuture/constructors.mjs.map +1 -1
- package/_mjs/TFuture/definition.mjs +2 -3
- package/_mjs/TFuture/definition.mjs.map +1 -1
- package/_mjs/TReentrantLock/api.mjs +41 -42
- package/_mjs/TReentrantLock/api.mjs.map +1 -1
- package/_mjs/TRef/api.mjs +40 -40
- package/_mjs/TRef/api.mjs.map +1 -1
- package/_mjs/TRef/constructors.mjs +6 -6
- package/_mjs/TRef/constructors.mjs.map +1 -1
- package/_mjs/TSemaphore/api.mjs +17 -18
- package/_mjs/TSemaphore/api.mjs.map +1 -1
- package/_mjs/TSemaphore/constructors.mjs +2 -2
- package/_mjs/TSemaphore/constructors.mjs.map +1 -1
- package/_mjs/TSemaphore/definition.mjs +2 -3
- package/_mjs/TSemaphore/definition.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/dropUntilIO.mjs +1 -1
- package/_mjs/collection/immutable/Conc/dropUntilIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/dropWhileIO.mjs +1 -1
- package/_mjs/collection/immutable/Conc/dropWhileIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/filterIO.mjs +5 -6
- package/_mjs/collection/immutable/Conc/filterIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/findIO.mjs +7 -8
- package/_mjs/collection/immutable/Conc/findIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/mapIO.mjs +3 -4
- package/_mjs/collection/immutable/Conc/mapIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/takeWhileIO.mjs +7 -8
- package/_mjs/collection/immutable/Conc/takeWhileIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc.mjs +2 -0
- package/_mjs/collection/immutable/Conc.mjs.map +1 -1
- package/_mjs/data/Exit/foreachIO.mjs +2 -3
- package/_mjs/data/Exit/foreachIO.mjs.map +1 -1
- package/_mjs/global.mjs +2 -0
- package/_mjs/global.mjs.map +1 -0
- package/_mjs/index.mjs +2 -0
- package/_mjs/index.mjs.map +1 -0
- package/_mjs/internal/Scheduler.mjs +62 -15
- package/_mjs/internal/Scheduler.mjs.map +1 -1
- package/_src/Cached/api.ts +4 -3
- package/_src/Channel/api/interruptWhen.ts +1 -1
- package/_src/Channel/api/mapOutIOC.ts +2 -2
- package/_src/Channel/api/mergeAll.ts +1 -1
- package/_src/Channel/api/mergeAllUnboundedWith.ts +1 -1
- package/_src/Channel/api/mergeAllWith.ts +3 -3
- package/_src/Channel/api/mergeMap.ts +1 -1
- package/_src/Channel/api/mergeWith.ts +9 -9
- package/_src/Channel/api/runScoped.ts +1 -1
- package/_src/Channel/api/toPull.ts +1 -1
- package/_src/Channel/api/zipC.ts +3 -3
- package/_src/Channel/api.ts +73 -73
- package/_src/Channel/core-api.ts +11 -13
- package/_src/Channel/definition.ts +19 -19
- package/_src/Channel/internal/MergeDecision.ts +1 -1
- package/_src/Clock/live.ts +1 -1
- package/_src/Console/api.ts +1 -1
- package/_src/Fiber/FiberContext.ts +10 -8
- package/_src/Fiber/api/await.ts +1 -1
- package/_src/Fiber/api/awaitAll.ts +1 -1
- package/_src/Fiber/api/children.ts +1 -1
- package/_src/Fiber/api/collectAll.ts +4 -1
- package/_src/Fiber/api/evalOn.ts +6 -1
- package/_src/Fiber/api/evalOnIO.ts +2 -1
- package/_src/Fiber/api/fromIO.ts +1 -1
- package/_src/Fiber/api/id.ts +1 -1
- package/_src/Fiber/api/inheritRefs.ts +1 -1
- package/_src/Fiber/api/interrupt.ts +1 -1
- package/_src/Fiber/api/interruptAll.ts +2 -2
- package/_src/Fiber/api/interruptAs.ts +1 -1
- package/_src/Fiber/api/join.ts +1 -1
- package/_src/Fiber/api/joinAll.ts +1 -1
- package/_src/Fiber/api/mapFiber.ts +5 -1
- package/_src/Fiber/api/mapIO.ts +6 -2
- package/_src/Fiber/api/poll.ts +1 -1
- package/_src/Fiber/api/zipWith.ts +1 -0
- package/_src/Fiber/constructors.ts +5 -5
- package/_src/Fiber/definition.ts +1 -1
- package/_src/FiberRef/api/locallyScoped.ts +1 -1
- package/_src/FiberRef/api/locallyScopedWith.ts +5 -1
- package/_src/FiberRef/api.ts +7 -7
- package/_src/FiberRef/constructors.ts +4 -2
- package/_src/FiberRef/unsafe.ts +7 -0
- package/_src/Future/api.ts +24 -16
- package/_src/Future/constructors.ts +2 -2
- package/_src/Hub/api.ts +50 -23
- package/_src/Hub/definition.ts +6 -6
- package/_src/Hub/internal.ts +15 -15
- package/_src/IO/api/acquireRelease.ts +2 -1
- package/_src/IO/api/acquireReleaseExit.ts +1 -1
- package/_src/IO/api/acquireReleaseInterruptible.ts +1 -1
- package/_src/IO/api/acquireReleaseInterruptibleExit.ts +1 -1
- package/_src/IO/api/addFinalizer.ts +1 -4
- package/_src/IO/api/addFinalizerExit.ts +6 -5
- package/_src/IO/api/asyncIO.ts +4 -1
- package/_src/IO/api/bracket.ts +2 -1
- package/_src/IO/api/bracketExit.ts +2 -1
- package/_src/IO/api/concurrency.ts +6 -3
- package/_src/IO/api/concurrentFinalizers.ts +1 -1
- package/_src/IO/api/consoleWith.ts +1 -1
- package/_src/IO/api/core-scope.ts +1 -1
- package/_src/IO/api/ensuringChildren.ts +3 -2
- package/_src/IO/api/environment.ts +9 -11
- package/_src/IO/api/foreachC.ts +33 -6
- package/_src/IO/api/foreachExec.ts +1 -0
- package/_src/IO/api/forkScoped.ts +1 -1
- package/_src/IO/api/fulfill.ts +1 -1
- package/_src/IO/api/interrupt.ts +13 -5
- package/_src/IO/api/memoize.ts +3 -3
- package/_src/IO/api/onExit.ts +2 -1
- package/_src/IO/api/onTermination.ts +2 -2
- package/_src/IO/api/provideLayer.ts +1 -0
- package/_src/IO/api/provideSomeLayer.ts +1 -3
- package/_src/IO/api/race.ts +6 -2
- package/_src/IO/api/raceFirst.ts +6 -2
- package/_src/IO/api/randomWith.ts +1 -1
- package/_src/IO/api/repeat.ts +7 -7
- package/_src/IO/api/retry.ts +7 -7
- package/_src/IO/api/schedule.ts +4 -3
- package/_src/IO/api/scope.ts +1 -1
- package/_src/IO/api/scopeWith.ts +1 -1
- package/_src/IO/api/scoped.ts +2 -2
- package/_src/IO/api/sequenceT.ts +1 -1
- package/_src/IO/api/stateful.ts +1 -1
- package/_src/IO/api/timeout.ts +5 -1
- package/_src/IO/api/withChildren.ts +1 -1
- package/_src/IO/api/withEarlyRelease.ts +4 -1
- package/_src/IO/api/withFinalizer.ts +2 -1
- package/_src/IO/api/withFinalizerExit.ts +2 -1
- package/_src/IO/api/withRuntimeConfig.ts +5 -1
- package/_src/IO/api/zipC.ts +7 -2
- package/_src/IO/api.ts +125 -75
- package/_src/IO/definition.ts +32 -27
- package/_src/IO/runtime.ts +66 -12
- package/_src/IOEnv/definition.ts +1 -1
- package/_src/Layer/MemoMap.ts +41 -34
- package/_src/Layer/api.ts +82 -49
- package/_src/Layer/definition.ts +11 -8
- package/_src/Queue/api/dimapIO.ts +21 -11
- package/_src/Queue/api/filterInputIO.ts +6 -4
- package/_src/Queue/api/filterOutputIO.ts +8 -6
- package/_src/Queue/api/operations.ts +28 -10
- package/_src/Queue/api/poll.ts +4 -1
- package/_src/Queue/api/takeBetween.ts +6 -1
- package/_src/Queue/api/zipWithIO.ts +13 -10
- package/_src/Queue/constructors.ts +4 -4
- package/_src/Queue/definition.ts +10 -10
- package/_src/Queue/internal.ts +7 -7
- package/_src/Queue/strategy.ts +18 -10
- package/_src/Random/api.ts +5 -5
- package/_src/Random/definition.ts +5 -5
- package/_src/Random/live.ts +4 -4
- package/_src/Ref/Atomic/Atomic.ts +3 -3
- package/_src/Ref/Atomic/api.ts +10 -10
- package/_src/Ref/Derived.ts +3 -3
- package/_src/Ref/DerivedAll.ts +3 -3
- package/_src/Ref/Synchronized/api.ts +33 -18
- package/_src/Ref/Synchronized/constructors.ts +5 -5
- package/_src/Ref/Synchronized/definition.ts +2 -2
- package/_src/Ref/api/collect.ts +1 -0
- package/_src/Ref/api/dimap.ts +7 -0
- package/_src/Ref/api/filter.ts +2 -0
- package/_src/Ref/api/get.ts +5 -2
- package/_src/Ref/api/modify.ts +21 -9
- package/_src/Ref/api/set.ts +5 -1
- package/_src/Ref/constructors.ts +2 -2
- package/_src/Ref/definition.ts +14 -14
- package/_src/STM/api/core-api.ts +20 -7
- package/_src/STM/api/core-constructors.ts +7 -7
- package/_src/STM/api.ts +150 -116
- package/_src/STM/definition.ts +6 -6
- package/_src/STM/driver.ts +3 -3
- package/_src/STM/internal/Journal.ts +25 -16
- package/_src/Schedule/Decision.ts +10 -3
- package/_src/Schedule/Driver.ts +2 -2
- package/_src/Schedule/api/driver.ts +6 -6
- package/_src/Schedule/api.ts +182 -82
- package/_src/Schedule/definition.ts +1 -1
- package/_src/Scope/Finalizer/definition.ts +2 -2
- package/_src/Scope/ReleaseMap/api/releaseAll.ts +6 -1
- package/_src/Scope/ReleaseMap/api.ts +15 -5
- package/_src/Scope/ReleaseMap/definition.ts +1 -1
- package/_src/Scope/api.ts +23 -15
- package/_src/ScopedRef/api.ts +12 -17
- package/_src/ScopedRef/definition.ts +1 -1
- package/_src/Sink/api.ts +111 -85
- package/_src/State/api.ts +1 -1
- package/_src/Stream/api/zipAllWith.ts +5 -2
- package/_src/Stream/api/zipWith.ts +2 -1
- package/_src/Stream/api/zipWithChunks.ts +5 -2
- package/_src/Stream/api.ts +484 -216
- package/_src/Stream/definition.ts +3 -3
- package/_src/Stream/internal/Take.ts +1 -1
- package/_src/Supervisor/constructors.ts +7 -3
- package/_src/TFuture/api.ts +5 -5
- package/_src/TFuture/constructors.ts +2 -2
- package/_src/TFuture/definition.ts +1 -1
- package/_src/TReentrantLock/api.ts +18 -18
- package/_src/TRef/api.ts +36 -14
- package/_src/TRef/constructors.ts +4 -4
- package/_src/TSemaphore/api.ts +7 -7
- package/_src/TSemaphore/constructors.ts +1 -1
- package/_src/TSemaphore/definition.ts +1 -1
- package/_src/collection/immutable/Conc/filterIO.ts +5 -1
- package/_src/collection/immutable/Conc/findIO.ts +6 -1
- package/_src/collection/immutable/Conc/mapIO.ts +1 -1
- package/_src/collection/immutable/Conc/takeWhileIO.ts +5 -1
- package/_src/collection/immutable/Conc.ts +2 -0
- package/_src/data/Exit/foreachIO.ts +1 -0
- package/_src/global.ts +149 -0
- package/_src/index.ts +42 -0
- package/_src/internal/Scheduler.ts +59 -15
- package/collection/immutable/Conc/filterIO.d.ts +1 -1
- package/collection/immutable/Conc/findIO.d.ts +2 -2
- package/collection/immutable/Conc/mapIO.d.ts +1 -1
- package/collection/immutable/Conc/takeWhileIO.d.ts +1 -1
- package/collection/immutable/Conc.d.ts +2 -0
- package/data/Exit/foreachIO.d.ts +2 -2
- package/global.d.ts +149 -0
- package/index.d.ts +40 -0
- package/internal/Scheduler.d.ts +18 -1
- package/package.json +3 -3
package/_src/STM/api.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Journal} from "./internal/Journal.js";
|
|
1
|
+
import type { Journal } from "./internal/Journal.js";
|
|
2
2
|
|
|
3
3
|
import { identity } from "@fncts/base/data/function";
|
|
4
4
|
import { AtomicReference } from "@fncts/base/internal/AtomicReference";
|
|
@@ -14,7 +14,7 @@ import { TryCommitTag } from "./internal/TryCommit.js";
|
|
|
14
14
|
*
|
|
15
15
|
* @tsplus fluent fncts.io.STM as
|
|
16
16
|
*/
|
|
17
|
-
export function as_<R, E, A, B>(stm: STM<R, E, A>, b: Lazy<B
|
|
17
|
+
export function as_<R, E, A, B>(stm: STM<R, E, A>, b: Lazy<B>, __tsplusTrace?: string): STM<R, E, B> {
|
|
18
18
|
return stm.map(() => b());
|
|
19
19
|
}
|
|
20
20
|
|
|
@@ -23,7 +23,7 @@ export function as_<R, E, A, B>(stm: STM<R, E, A>, b: Lazy<B>): STM<R, E, B> {
|
|
|
23
23
|
*
|
|
24
24
|
* @tsplus getter fncts.io.STM asJust
|
|
25
25
|
*/
|
|
26
|
-
export function asJust<R, E, A>(stm: STM<R, E, A
|
|
26
|
+
export function asJust<R, E, A>(stm: STM<R, E, A>, __tsplusTrace?: string): STM<R, E, Maybe<A>> {
|
|
27
27
|
return stm.map(Maybe.just);
|
|
28
28
|
}
|
|
29
29
|
|
|
@@ -32,7 +32,7 @@ export function asJust<R, E, A>(stm: STM<R, E, A>): STM<R, E, Maybe<A>> {
|
|
|
32
32
|
*
|
|
33
33
|
* @tsplus getter fncts.io.STM asJustError
|
|
34
34
|
*/
|
|
35
|
-
export function asJustError<R, E, A>(stm: STM<R, E, A
|
|
35
|
+
export function asJustError<R, E, A>(stm: STM<R, E, A>, __tsplusTrace?: string): STM<R, Maybe<E>, A> {
|
|
36
36
|
return stm.mapError(Maybe.just);
|
|
37
37
|
}
|
|
38
38
|
|
|
@@ -42,14 +42,17 @@ export function asJustError<R, E, A>(stm: STM<R, E, A>): STM<R, Maybe<E>, A> {
|
|
|
42
42
|
*
|
|
43
43
|
* @tsplus getter fncts.io.STM absolve
|
|
44
44
|
*/
|
|
45
|
-
export function absolve<R, E, E1, A>(z: STM<R, E, Either<E1, A
|
|
45
|
+
export function absolve<R, E, E1, A>(z: STM<R, E, Either<E1, A>>, __tsplusTrace?: string): STM<R, E | E1, A> {
|
|
46
46
|
return z.flatMap(STM.fromEitherNow);
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
/**
|
|
50
50
|
* @tsplus static fncts.io.STMOps Effect
|
|
51
51
|
*/
|
|
52
|
-
export function makeEffect<R, E, A>(
|
|
52
|
+
export function makeEffect<R, E, A>(
|
|
53
|
+
f: (journal: Journal, fiberId: FiberId, r: Environment<R>) => A,
|
|
54
|
+
__tsplusTrace?: string,
|
|
55
|
+
): STM<R, E, A> {
|
|
53
56
|
return new Effect(f);
|
|
54
57
|
}
|
|
55
58
|
|
|
@@ -58,8 +61,8 @@ export function makeEffect<R, E, A>(f: (journal: Journal, fiberId: FiberId, r: R
|
|
|
58
61
|
*
|
|
59
62
|
* @tsplus static fncts.io.STMOps environment
|
|
60
63
|
*/
|
|
61
|
-
export function environment<R>(): STM<R, never, R
|
|
62
|
-
return new Effect((_, __, r
|
|
64
|
+
export function environment<R>(__tsplusTrace?: string): STM<R, never, Environment<R>> {
|
|
65
|
+
return new Effect((_, __, r) => r);
|
|
63
66
|
}
|
|
64
67
|
|
|
65
68
|
/**
|
|
@@ -67,7 +70,7 @@ export function environment<R>(): STM<R, never, R> {
|
|
|
67
70
|
*
|
|
68
71
|
* @tsplus static fncts.io.STMOps environmentWith
|
|
69
72
|
*/
|
|
70
|
-
export function environmentWith<R, A>(f: (r: R) => A): STM<R, never, A> {
|
|
73
|
+
export function environmentWith<R, A>(f: (r: Environment<R>) => A, __tsplusTrace?: string): STM<R, never, A> {
|
|
71
74
|
return STM.environment<R>().map(f);
|
|
72
75
|
}
|
|
73
76
|
|
|
@@ -76,7 +79,7 @@ export function environmentWith<R, A>(f: (r: R) => A): STM<R, never, A> {
|
|
|
76
79
|
*
|
|
77
80
|
* @tsplus static fncts.io.STMOps environmentWithSTM
|
|
78
81
|
*/
|
|
79
|
-
export function environmentWithSTM<R0, R, E, A>(f: (r: R0) => STM<R, E, A
|
|
82
|
+
export function environmentWithSTM<R0, R, E, A>(f: (r: Environment<R0>) => STM<R, E, A>, __tsplusTrace?: string) {
|
|
80
83
|
return STM.environment<R0>().flatMap(f);
|
|
81
84
|
}
|
|
82
85
|
|
|
@@ -84,35 +87,37 @@ export function environmentWithSTM<R0, R, E, A>(f: (r: R0) => STM<R, E, A>) {
|
|
|
84
87
|
* @tsplus static fncts.io.STMOps atomically
|
|
85
88
|
* @tsplus getter fncts.io.STM commit
|
|
86
89
|
*/
|
|
87
|
-
export function atomically<R, E, A>(stm: STM<R, E, A
|
|
90
|
+
export function atomically<R, E, A>(stm: STM<R, E, A>, __tsplusTrace?: string): IO<R, E, A> {
|
|
88
91
|
return IO.environmentWithIO((r: Environment<R>) =>
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
92
|
+
FiberRef.currentScheduler.getWith((scheduler) =>
|
|
93
|
+
IO.deferWith((_, fiberId) => {
|
|
94
|
+
const result = tryCommitSync(fiberId, stm, r, scheduler);
|
|
95
|
+
switch (result._tag) {
|
|
96
|
+
case TryCommitTag.Done: {
|
|
97
|
+
return IO.fromExitNow(result.exit);
|
|
98
|
+
}
|
|
99
|
+
case TryCommitTag.Suspend: {
|
|
100
|
+
const id = TxnId.make();
|
|
101
|
+
const state = new AtomicReference<CommitState<E, A>>(CommitState.Running);
|
|
102
|
+
const async = IO.async(tryCommitAsync(result.journal, fiberId, stm, id, state, r, scheduler));
|
|
103
|
+
return IO.uninterruptibleMask(({ restore }) =>
|
|
104
|
+
restore(async).catchAllCause((cause) => {
|
|
105
|
+
state.compareAndSet(CommitState.Running, CommitState.Interrupted);
|
|
106
|
+
const newState = state.get;
|
|
107
|
+
switch (newState._tag) {
|
|
108
|
+
case "Done": {
|
|
109
|
+
return IO.fromExitNow(newState.exit);
|
|
110
|
+
}
|
|
111
|
+
default: {
|
|
112
|
+
return IO.failCauseNow(cause);
|
|
113
|
+
}
|
|
109
114
|
}
|
|
110
|
-
}
|
|
111
|
-
|
|
112
|
-
|
|
115
|
+
}),
|
|
116
|
+
);
|
|
117
|
+
}
|
|
113
118
|
}
|
|
114
|
-
}
|
|
115
|
-
|
|
119
|
+
}),
|
|
120
|
+
),
|
|
116
121
|
);
|
|
117
122
|
}
|
|
118
123
|
|
|
@@ -120,7 +125,12 @@ export function atomically<R, E, A>(stm: STM<R, E, A>): IO<R, E, A> {
|
|
|
120
125
|
* Returns an `STM` effect whose failure and success channels have been mapped by
|
|
121
126
|
* the specified pair of functions, `f` and `g`.
|
|
122
127
|
*/
|
|
123
|
-
export function bimap_<R, E, A, E1, B>(
|
|
128
|
+
export function bimap_<R, E, A, E1, B>(
|
|
129
|
+
stm: STM<R, E, A>,
|
|
130
|
+
g: (e: E) => E1,
|
|
131
|
+
f: (a: A) => B,
|
|
132
|
+
__tsplusTrace?: string,
|
|
133
|
+
): STM<R, E1, B> {
|
|
124
134
|
return stm.matchSTM(
|
|
125
135
|
(e) => STM.failNow(g(e)),
|
|
126
136
|
(a) => STM.succeedNow(f(a)),
|
|
@@ -137,7 +147,8 @@ export function catch_<N extends keyof E, K extends E[N] & string, E, R, A, R1,
|
|
|
137
147
|
tag: N,
|
|
138
148
|
k: K,
|
|
139
149
|
f: (e: Extract<E, { [n in N]: K }>) => STM<R1, E1, A1>,
|
|
140
|
-
|
|
150
|
+
__tsplusTrace?: string,
|
|
151
|
+
): STM<R | R1, Exclude<E, { [n in N]: K }> | E1, A | A1> {
|
|
141
152
|
return stm.catchAll((e) => {
|
|
142
153
|
if (tag in e && e[tag] === k) {
|
|
143
154
|
return f(e as any);
|
|
@@ -154,7 +165,8 @@ export function catch_<N extends keyof E, K extends E[N] & string, E, R, A, R1,
|
|
|
154
165
|
export function catchJust_<R, E, A, R1, E1, B>(
|
|
155
166
|
stm: STM<R, E, A>,
|
|
156
167
|
f: (e: E) => Maybe<STM<R1, E1, B>>,
|
|
157
|
-
|
|
168
|
+
__tsplusTrace?: string,
|
|
169
|
+
): STM<R1 | R, E | E1, A | B> {
|
|
158
170
|
return stm.catchAll((e): STM<R1, E | E1, A | B> => f(e).getOrElse(STM.failNow(e)));
|
|
159
171
|
}
|
|
160
172
|
|
|
@@ -167,7 +179,8 @@ export function catchTag_<K extends E["_tag"] & string, E extends { _tag: string
|
|
|
167
179
|
stm: STM<R, E, A>,
|
|
168
180
|
k: K,
|
|
169
181
|
f: (e: Extract<E, { _tag: K }>) => STM<R1, E1, A1>,
|
|
170
|
-
|
|
182
|
+
__tsplusTrace?: string,
|
|
183
|
+
): STM<R | R1, Exclude<E, { _tag: K }> | E1, A | A1> {
|
|
171
184
|
return stm.catchAll((e) => {
|
|
172
185
|
if ("_tag" in e && e["_tag"] === k) {
|
|
173
186
|
return f(e as any);
|
|
@@ -182,7 +195,11 @@ export function catchTag_<K extends E["_tag"] & string, E extends { _tag: string
|
|
|
182
195
|
*
|
|
183
196
|
* @tsplus fluent fncts.io.STM flatMapError
|
|
184
197
|
*/
|
|
185
|
-
export function chainError_<R, E, A, R2, E2>(
|
|
198
|
+
export function chainError_<R, E, A, R2, E2>(
|
|
199
|
+
stm: STM<R, E, A>,
|
|
200
|
+
f: (e: E) => STM<R2, never, E2>,
|
|
201
|
+
__tsplusTrace?: string,
|
|
202
|
+
): STM<R2 | R, E2, A> {
|
|
186
203
|
return stm.swapWith((effect) => effect.flatMap(f));
|
|
187
204
|
}
|
|
188
205
|
|
|
@@ -191,7 +208,7 @@ export function chainError_<R, E, A, R2, E2>(stm: STM<R, E, A>, f: (e: E) => STM
|
|
|
191
208
|
*
|
|
192
209
|
* @tsplus static fncts.io.STMOps check
|
|
193
210
|
*/
|
|
194
|
-
export function check(predicate: () => boolean): STM<
|
|
211
|
+
export function check(predicate: () => boolean, __tsplusTrace?: string): STM<never, never, void> {
|
|
195
212
|
return STM.defer(() => (predicate() ? STM.unit : STM.retry));
|
|
196
213
|
}
|
|
197
214
|
|
|
@@ -199,7 +216,7 @@ export function check(predicate: () => boolean): STM<unknown, never, void> {
|
|
|
199
216
|
* Commits this transaction atomically, regardless of whether the transaction
|
|
200
217
|
* is a success or a failure.
|
|
201
218
|
*/
|
|
202
|
-
export function commitEither<R, E, A>(stm: STM<R, E, A
|
|
219
|
+
export function commitEither<R, E, A>(stm: STM<R, E, A>, __tsplusTrace?: string): IO<R, E, A> {
|
|
203
220
|
return stm.either.commit.absolve;
|
|
204
221
|
}
|
|
205
222
|
|
|
@@ -213,6 +230,7 @@ export function continueOrFail_<R, E, E1, A, A2>(
|
|
|
213
230
|
fa: STM<R, E, A>,
|
|
214
231
|
e: Lazy<E1>,
|
|
215
232
|
pf: (a: A) => Maybe<A2>,
|
|
233
|
+
__tsplusTrace?: string,
|
|
216
234
|
): STM<R, E | E1, A2> {
|
|
217
235
|
return fa.continueOrFailSTM(e, (a) => pf(a).map(STM.succeedNow));
|
|
218
236
|
}
|
|
@@ -227,7 +245,8 @@ export function continueOrFailSTM_<R, E, E1, A, R2, E2, A2>(
|
|
|
227
245
|
fa: STM<R, E, A>,
|
|
228
246
|
e: Lazy<E1>,
|
|
229
247
|
pf: (a: A) => Maybe<STM<R2, E2, A2>>,
|
|
230
|
-
|
|
248
|
+
__tsplusTrace?: string,
|
|
249
|
+
): STM<R2 | R, E | E1 | E2, A2> {
|
|
231
250
|
return fa.flatMap((a) => pf(a).getOrElse(STM.fail(e)));
|
|
232
251
|
}
|
|
233
252
|
|
|
@@ -237,7 +256,11 @@ export function continueOrFailSTM_<R, E, E1, A, R2, E2, A2>(
|
|
|
237
256
|
*
|
|
238
257
|
* @tsplus fluent fncts.io.STM continueOrRetry
|
|
239
258
|
*/
|
|
240
|
-
export function continueOrRetry_<R, E, A, A2>(
|
|
259
|
+
export function continueOrRetry_<R, E, A, A2>(
|
|
260
|
+
fa: STM<R, E, A>,
|
|
261
|
+
pf: (a: A) => Maybe<A2>,
|
|
262
|
+
__tsplusTrace?: string,
|
|
263
|
+
): STM<R, E, A2> {
|
|
241
264
|
return fa.continueOrRetrySTM((a) => pf(a).map(STM.succeedNow));
|
|
242
265
|
}
|
|
243
266
|
|
|
@@ -250,7 +273,8 @@ export function continueOrRetry_<R, E, A, A2>(fa: STM<R, E, A>, pf: (a: A) => Ma
|
|
|
250
273
|
export function continueOrRetrySTM_<R, E, A, R2, E2, A2>(
|
|
251
274
|
fa: STM<R, E, A>,
|
|
252
275
|
pf: (a: A) => Maybe<STM<R2, E2, A2>>,
|
|
253
|
-
|
|
276
|
+
__tsplusTrace?: string,
|
|
277
|
+
): STM<R2 | R, E | E2, A2> {
|
|
254
278
|
return fa.flatMap((a) => pf(a).getOrElse(STM.retry));
|
|
255
279
|
}
|
|
256
280
|
|
|
@@ -259,7 +283,7 @@ export function continueOrRetrySTM_<R, E, A, R2, E2, A2>(
|
|
|
259
283
|
*
|
|
260
284
|
* @tsplus static fncts.io.STMOps defer
|
|
261
285
|
*/
|
|
262
|
-
export function defer<R, E, A>(make: Lazy<STM<R, E, A
|
|
286
|
+
export function defer<R, E, A>(make: Lazy<STM<R, E, A>>, __tsplusTrace?: string): STM<R, E, A> {
|
|
263
287
|
return STM.succeed(make).flatten;
|
|
264
288
|
}
|
|
265
289
|
|
|
@@ -268,7 +292,7 @@ export function defer<R, E, A>(make: Lazy<STM<R, E, A>>): STM<R, E, A> {
|
|
|
268
292
|
*
|
|
269
293
|
* @tsplus getter fncts.io.STM either
|
|
270
294
|
*/
|
|
271
|
-
export function either<R, E, A>(stm: STM<R, E, A
|
|
295
|
+
export function either<R, E, A>(stm: STM<R, E, A>, __tsplusTrace?: string): STM<R, never, Either<E, A>> {
|
|
272
296
|
return stm.match(Either.left, Either.right);
|
|
273
297
|
}
|
|
274
298
|
|
|
@@ -277,7 +301,7 @@ export function either<R, E, A>(stm: STM<R, E, A>): STM<R, never, Either<E, A>>
|
|
|
277
301
|
*
|
|
278
302
|
* @tsplus getter fncts.io.STM eventually
|
|
279
303
|
*/
|
|
280
|
-
export function eventually<R, E, A>(stm: STM<R, E, A
|
|
304
|
+
export function eventually<R, E, A>(stm: STM<R, E, A>, __tsplusTrace?: string): STM<R, never, A> {
|
|
281
305
|
return stm.matchSTM(() => stm.eventually, STM.succeedNow);
|
|
282
306
|
}
|
|
283
307
|
|
|
@@ -286,7 +310,7 @@ export function eventually<R, E, A>(stm: STM<R, E, A>): STM<R, never, A> {
|
|
|
286
310
|
*
|
|
287
311
|
* @tsplus fluent fncts.io.STM filterMap
|
|
288
312
|
*/
|
|
289
|
-
export function filterMap_<R, E, A, B>(stm: STM<R, E, A>, f: (a: A) => Maybe<B
|
|
313
|
+
export function filterMap_<R, E, A, B>(stm: STM<R, E, A>, f: (a: A) => Maybe<B>, __tsplusTrace?: string): STM<R, E, B> {
|
|
290
314
|
return stm.filterMapSTM((a) => f(a).map(STM.succeedNow));
|
|
291
315
|
}
|
|
292
316
|
|
|
@@ -299,7 +323,8 @@ export function filterMap_<R, E, A, B>(stm: STM<R, E, A>, f: (a: A) => Maybe<B>)
|
|
|
299
323
|
export function filterMapSTM_<R, E, A, R1, E1, B>(
|
|
300
324
|
self: STM<R, E, A>,
|
|
301
325
|
f: (a: A) => Maybe<STM<R1, E1, B>>,
|
|
302
|
-
|
|
326
|
+
__tsplusTrace?: string,
|
|
327
|
+
): STM<R | R1, E | E1, B> {
|
|
303
328
|
return self.matchSTM(STM.failNow, (a) => f(a).getOrElse(STM.retry));
|
|
304
329
|
}
|
|
305
330
|
|
|
@@ -312,17 +337,18 @@ export function filterOrElse_<R, E, A, B extends A, R2, E2, A2>(
|
|
|
312
337
|
fa: STM<R, E, A>,
|
|
313
338
|
p: Refinement<A, B>,
|
|
314
339
|
or: (a: Exclude<A, B>) => STM<R2, E2, A2>,
|
|
315
|
-
): STM<R
|
|
340
|
+
): STM<R | R2, E | E2, B | A2>;
|
|
316
341
|
export function filterOrElse_<R, E, A, R2, E2, A2>(
|
|
317
342
|
fa: STM<R, E, A>,
|
|
318
343
|
p: Predicate<A>,
|
|
319
344
|
or: (a: A) => STM<R2, E2, A2>,
|
|
320
|
-
): STM<R
|
|
345
|
+
): STM<R | R2, E | E2, A | A2>;
|
|
321
346
|
export function filterOrElse_<R, E, A, R2, E2, A2>(
|
|
322
347
|
fa: STM<R, E, A>,
|
|
323
348
|
p: Predicate<A>,
|
|
324
349
|
or: unknown,
|
|
325
|
-
|
|
350
|
+
__tsplusTrace?: string,
|
|
351
|
+
): STM<R | R2, E | E2, A | A2> {
|
|
326
352
|
return fa.flatMap((a) => (p(a) ? STM.succeedNow(a) : STM.defer((or as (a: A) => STM<R2, E2, A2>)(a))));
|
|
327
353
|
}
|
|
328
354
|
|
|
@@ -341,7 +367,12 @@ export function filterOrFail_<R, E, E1, A>(
|
|
|
341
367
|
p: Predicate<A>,
|
|
342
368
|
failWith: (a: A) => E1,
|
|
343
369
|
): STM<R, E | E1, A>;
|
|
344
|
-
export function filterOrFail_<R, E, E1, A>(
|
|
370
|
+
export function filterOrFail_<R, E, E1, A>(
|
|
371
|
+
fa: STM<R, E, A>,
|
|
372
|
+
p: Predicate<A>,
|
|
373
|
+
failWith: unknown,
|
|
374
|
+
__tsplusTrace?: string,
|
|
375
|
+
): STM<R, E | E1, A> {
|
|
345
376
|
return fa.filterOrElse(p, (a) => STM.fail((failWith as (a: A) => E1)(a)));
|
|
346
377
|
}
|
|
347
378
|
|
|
@@ -356,7 +387,12 @@ export function filterOrHalt_<R, E, A, B extends A>(
|
|
|
356
387
|
haltWith: (a: Exclude<A, B>) => unknown,
|
|
357
388
|
): STM<R, E, B>;
|
|
358
389
|
export function filterOrHalt_<R, E, A>(fa: STM<R, E, A>, p: Predicate<A>, haltWith: (a: A) => unknown): STM<R, E, A>;
|
|
359
|
-
export function filterOrHalt_<R, E, A>(
|
|
390
|
+
export function filterOrHalt_<R, E, A>(
|
|
391
|
+
fa: STM<R, E, A>,
|
|
392
|
+
p: Predicate<A>,
|
|
393
|
+
haltWith: unknown,
|
|
394
|
+
__tsplusTrace?: string,
|
|
395
|
+
): STM<R, E, A> {
|
|
360
396
|
return fa.filterOrElse(p, (a) => STM.halt((haltWith as (a: A) => unknown)(a)));
|
|
361
397
|
}
|
|
362
398
|
|
|
@@ -365,7 +401,10 @@ export function filterOrHalt_<R, E, A>(fa: STM<R, E, A>, p: Predicate<A>, haltWi
|
|
|
365
401
|
*
|
|
366
402
|
* @tsplus getter fncts.io.STM flatten
|
|
367
403
|
*/
|
|
368
|
-
export function flatten<R, E, R1, E1, B>(
|
|
404
|
+
export function flatten<R, E, R1, E1, B>(
|
|
405
|
+
stm: STM<R, E, STM<R1, E1, B>>,
|
|
406
|
+
__tsplusTrace?: string,
|
|
407
|
+
): STM<R1 | R, E | E1, B> {
|
|
369
408
|
return stm.flatMap(identity);
|
|
370
409
|
}
|
|
371
410
|
|
|
@@ -374,7 +413,11 @@ export function flatten<R, E, R1, E1, B>(stm: STM<R, E, STM<R1, E1, B>>): STM<R1
|
|
|
374
413
|
*
|
|
375
414
|
* @tsplus fluent fncts.io.STM flattenErrorOption
|
|
376
415
|
*/
|
|
377
|
-
export function flattenErrorOption_<R, E, A, E2>(
|
|
416
|
+
export function flattenErrorOption_<R, E, A, E2>(
|
|
417
|
+
stm: STM<R, Maybe<E>, A>,
|
|
418
|
+
def: Lazy<E2>,
|
|
419
|
+
__tsplusTrace?: string,
|
|
420
|
+
): STM<R, E | E2, A> {
|
|
378
421
|
return stm.mapError((me) => me.getOrElse(def));
|
|
379
422
|
}
|
|
380
423
|
|
|
@@ -384,7 +427,11 @@ export function flattenErrorOption_<R, E, A, E2>(stm: STM<R, Maybe<E>, A>, def:
|
|
|
384
427
|
*
|
|
385
428
|
* @tsplus static fncts.io.STMOps foreach
|
|
386
429
|
*/
|
|
387
|
-
export function foreach_<A, R, E, B>(
|
|
430
|
+
export function foreach_<A, R, E, B>(
|
|
431
|
+
it: Iterable<A>,
|
|
432
|
+
f: (a: A) => STM<R, E, B>,
|
|
433
|
+
__tsplusTrace?: string,
|
|
434
|
+
): STM<R, E, readonly B[]> {
|
|
388
435
|
return STM.defer(() => {
|
|
389
436
|
let stm = STM.succeedNow([]) as STM<R, E, B[]>;
|
|
390
437
|
|
|
@@ -404,7 +451,7 @@ export function foreach_<A, R, E, B>(it: Iterable<A>, f: (a: A) => STM<R, E, B>)
|
|
|
404
451
|
*
|
|
405
452
|
* @tsplus static fncts.io.STMOps fromEither
|
|
406
453
|
*/
|
|
407
|
-
export function fromEither<E, A>(e: Lazy<Either<E, A
|
|
454
|
+
export function fromEither<E, A>(e: Lazy<Either<E, A>>, __tsplusTrace?: string): STM<never, E, A> {
|
|
408
455
|
return STM.defer(e().match(STM.failNow, STM.succeedNow));
|
|
409
456
|
}
|
|
410
457
|
|
|
@@ -413,14 +460,14 @@ export function fromEither<E, A>(e: Lazy<Either<E, A>>): STM<unknown, E, A> {
|
|
|
413
460
|
*
|
|
414
461
|
* @tsplus static fncts.io.STMOps fromEitherNow
|
|
415
462
|
*/
|
|
416
|
-
export function fromEitherNow<E, A>(e: Either<E, A
|
|
463
|
+
export function fromEitherNow<E, A>(e: Either<E, A>, __tsplusTrace?: string): STM<never, E, A> {
|
|
417
464
|
return e.match(STM.failNow, STM.succeedNow);
|
|
418
465
|
}
|
|
419
466
|
|
|
420
467
|
/**
|
|
421
468
|
* Unwraps the optional success of this effect, but can fail with an None value.
|
|
422
469
|
*/
|
|
423
|
-
export function get<R, E, A>(stm: STM<R, E, Maybe<A
|
|
470
|
+
export function get<R, E, A>(stm: STM<R, E, Maybe<A>>, __tsplusTrace?: string): STM<R, Maybe<E>, A> {
|
|
424
471
|
return stm.matchSTM(
|
|
425
472
|
(e) => STM.failNow(Just(e)),
|
|
426
473
|
(ma) => ma.match(() => STM.failNow(Nothing()), STM.succeedNow),
|
|
@@ -433,7 +480,11 @@ export function get<R, E, A>(stm: STM<R, E, Maybe<A>>): STM<R, Maybe<E>, A> {
|
|
|
433
480
|
*
|
|
434
481
|
* @tsplus fluent fncts.io.STM provideEnvironment
|
|
435
482
|
*/
|
|
436
|
-
export function provideEnvironment_<R, E, A>(
|
|
483
|
+
export function provideEnvironment_<R, E, A>(
|
|
484
|
+
stm: STM<R, E, A>,
|
|
485
|
+
r: Environment<R>,
|
|
486
|
+
__tsplusTrace?: string,
|
|
487
|
+
): STM<never, E, A> {
|
|
437
488
|
return stm.contramapEnvironment(() => r);
|
|
438
489
|
}
|
|
439
490
|
|
|
@@ -443,7 +494,11 @@ export function provideEnvironment_<R, E, A>(stm: STM<R, E, A>, r: R): STM<unkno
|
|
|
443
494
|
*
|
|
444
495
|
* @tsplus fluent fncts.io.STM contramapEnvironment
|
|
445
496
|
*/
|
|
446
|
-
export function contramapEnvironment_<R, E, A, R0>(
|
|
497
|
+
export function contramapEnvironment_<R, E, A, R0>(
|
|
498
|
+
self: STM<R, E, A>,
|
|
499
|
+
f: (r: Environment<R0>) => Environment<R>,
|
|
500
|
+
__tsplusTrace?: string,
|
|
501
|
+
): STM<R0, E, A> {
|
|
447
502
|
return new ContramapEnvironment(self, f);
|
|
448
503
|
}
|
|
449
504
|
|
|
@@ -452,7 +507,7 @@ export function contramapEnvironment_<R, E, A, R0>(self: STM<R, E, A>, f: (r: R0
|
|
|
452
507
|
*
|
|
453
508
|
* @tsplus static fncts.io.STMOps halt
|
|
454
509
|
*/
|
|
455
|
-
export function halt(u: Lazy<unknown
|
|
510
|
+
export function halt(u: Lazy<unknown>, __tsplusTrace?: string): STM<never, never, never> {
|
|
456
511
|
return new Effect(() => {
|
|
457
512
|
throw new HaltException(u());
|
|
458
513
|
});
|
|
@@ -463,7 +518,7 @@ export function halt(u: Lazy<unknown>): STM<unknown, never, never> {
|
|
|
463
518
|
*
|
|
464
519
|
* @tsplus static fncts.io.STMOps haltNow
|
|
465
520
|
*/
|
|
466
|
-
export function haltNow(u: unknown): STM<
|
|
521
|
+
export function haltNow(u: unknown, __tsplusTrace?: string): STM<never, never, never> {
|
|
467
522
|
return new Effect(() => {
|
|
468
523
|
throw new HaltException(u);
|
|
469
524
|
});
|
|
@@ -475,7 +530,7 @@ export function haltNow(u: unknown): STM<unknown, never, never> {
|
|
|
475
530
|
*
|
|
476
531
|
* @tsplus getter fncts.io.STM head
|
|
477
532
|
*/
|
|
478
|
-
export function head<R, E, A>(stm: STM<R, E, Iterable<A
|
|
533
|
+
export function head<R, E, A>(stm: STM<R, E, Iterable<A>>, __tsplusTrace?: string): STM<R, Maybe<E>, A> {
|
|
479
534
|
return stm.matchSTM(
|
|
480
535
|
(e) => STM.failNow(Just(e)),
|
|
481
536
|
(ia) => {
|
|
@@ -491,14 +546,14 @@ export function head<R, E, A>(stm: STM<R, E, Iterable<A>>): STM<R, Maybe<E>, A>
|
|
|
491
546
|
*
|
|
492
547
|
* @tsplus static fncts.io.STMOps interrupt
|
|
493
548
|
*/
|
|
494
|
-
export const interrupt: STM<
|
|
549
|
+
export const interrupt: STM<never, never, never> = STM.fiberId.flatMap((id) => STM.interruptAs(id));
|
|
495
550
|
|
|
496
551
|
/**
|
|
497
552
|
* Returns whether this effect is a failure.
|
|
498
553
|
*
|
|
499
554
|
* @tsplus getter fncts.io.STM isFailure
|
|
500
555
|
*/
|
|
501
|
-
export function isFailure<R, E, A>(stm: STM<R, E, A
|
|
556
|
+
export function isFailure<R, E, A>(stm: STM<R, E, A>, __tsplusTrace?: string) {
|
|
502
557
|
return stm.match(
|
|
503
558
|
() => true,
|
|
504
559
|
() => false,
|
|
@@ -510,55 +565,19 @@ export function isFailure<R, E, A>(stm: STM<R, E, A>) {
|
|
|
510
565
|
*
|
|
511
566
|
* @tsplus getter fncts.io.STM isSuccess
|
|
512
567
|
*/
|
|
513
|
-
export function isSuccess<R, E, A>(stm: STM<R, E, A
|
|
568
|
+
export function isSuccess<R, E, A>(stm: STM<R, E, A>, __tsplusTrace?: string) {
|
|
514
569
|
return stm.match(
|
|
515
570
|
() => false,
|
|
516
571
|
() => true,
|
|
517
572
|
);
|
|
518
573
|
}
|
|
519
574
|
|
|
520
|
-
/**
|
|
521
|
-
* Depending on provided environment returns either this one or the other effect.
|
|
522
|
-
*
|
|
523
|
-
* @tsplus fluent fncts.io.STM join
|
|
524
|
-
*/
|
|
525
|
-
export function join_<R, E, A, R1, E1, A1>(
|
|
526
|
-
stm: STM<R, E, A>,
|
|
527
|
-
that: STM<R1, E1, A1>,
|
|
528
|
-
): STM<Either<R, R1>, E | E1, A | A1> {
|
|
529
|
-
return STM.environmentWithSTM(
|
|
530
|
-
(r: Either<R, R1>): STM<unknown, E | E1, A | A1> =>
|
|
531
|
-
r.match(
|
|
532
|
-
(r) => stm.provideEnvironment(r),
|
|
533
|
-
(r1) => that.provideEnvironment(r1),
|
|
534
|
-
),
|
|
535
|
-
);
|
|
536
|
-
}
|
|
537
|
-
|
|
538
|
-
/**
|
|
539
|
-
* Depending on provided environment returns either this one or the other effect.
|
|
540
|
-
*
|
|
541
|
-
* @tsplus fluent fncts.io.STM joinEither
|
|
542
|
-
*/
|
|
543
|
-
export function joinEither_<R, E, A, R1, E1, A1>(
|
|
544
|
-
stm: STM<R, E, A>,
|
|
545
|
-
that: STM<R1, E1, A1>,
|
|
546
|
-
): STM<Either<R, R1>, E | E1, Either<A, A1>> {
|
|
547
|
-
return STM.environmentWithSTM(
|
|
548
|
-
(r: Either<R, R1>): STM<unknown, E | E1, Either<A, A1>> =>
|
|
549
|
-
r.match(
|
|
550
|
-
(r) => stm.provideEnvironment(r).map(Either.left),
|
|
551
|
-
(r1) => that.provideEnvironment(r1).map(Either.right),
|
|
552
|
-
),
|
|
553
|
-
);
|
|
554
|
-
}
|
|
555
|
-
|
|
556
575
|
/**
|
|
557
576
|
* Returns a successful effect if the value is `Left`, or fails with the error `None`.
|
|
558
577
|
*
|
|
559
578
|
* @tsplus getter fncts.io.STM left
|
|
560
579
|
*/
|
|
561
|
-
export function left<R, E, B, C>(stm: STM<R, E, Either<B, C
|
|
580
|
+
export function left<R, E, B, C>(stm: STM<R, E, Either<B, C>>, __tsplusTrace?: string): STM<R, Maybe<E>, B> {
|
|
562
581
|
return stm.matchSTM(
|
|
563
582
|
(e) => STM.fail(Just(e)),
|
|
564
583
|
(bc) => bc.match(STM.succeedNow, () => STM.failNow(Nothing())),
|
|
@@ -570,7 +589,11 @@ export function left<R, E, B, C>(stm: STM<R, E, Either<B, C>>): STM<R, Maybe<E>,
|
|
|
570
589
|
*
|
|
571
590
|
* @tsplus fluent fncts.io.STM leftOrFail
|
|
572
591
|
*/
|
|
573
|
-
export function leftOrFail_<R, E, B, C, E1>(
|
|
592
|
+
export function leftOrFail_<R, E, B, C, E1>(
|
|
593
|
+
stm: STM<R, E, Either<B, C>>,
|
|
594
|
+
orFail: (c: C) => E1,
|
|
595
|
+
__tsplusTrace?: string,
|
|
596
|
+
): STM<R, E | E1, B> {
|
|
574
597
|
return stm.flatMap((bc) => bc.match(STM.succeedNow, (c) => STM.fail(orFail(c))));
|
|
575
598
|
}
|
|
576
599
|
|
|
@@ -579,7 +602,7 @@ export function leftOrFail_<R, E, B, C, E1>(stm: STM<R, E, Either<B, C>>, orFail
|
|
|
579
602
|
*
|
|
580
603
|
* @tsplus fluent fncts.io.STM mapError
|
|
581
604
|
*/
|
|
582
|
-
export function mapError_<R, E, A, E1>(stm: STM<R, E, A>, f: (a: E) => E1): STM<R, E1, A> {
|
|
605
|
+
export function mapError_<R, E, A, E1>(stm: STM<R, E, A>, f: (a: E) => E1, __tsplusTrace?: string): STM<R, E1, A> {
|
|
583
606
|
return stm.matchSTM((e) => STM.failNow(f(e)), STM.succeedNow);
|
|
584
607
|
}
|
|
585
608
|
|
|
@@ -589,7 +612,12 @@ export function mapError_<R, E, A, E1>(stm: STM<R, E, A>, f: (a: E) => E1): STM<
|
|
|
589
612
|
*
|
|
590
613
|
* @tsplus fluent fncts.io.STM match
|
|
591
614
|
*/
|
|
592
|
-
export function match_<R, E, A, B, C>(
|
|
615
|
+
export function match_<R, E, A, B, C>(
|
|
616
|
+
stm: STM<R, E, A>,
|
|
617
|
+
g: (e: E) => C,
|
|
618
|
+
f: (a: A) => B,
|
|
619
|
+
__tsplusTrace?: string,
|
|
620
|
+
): STM<R, never, B | C> {
|
|
593
621
|
return stm.matchSTM(
|
|
594
622
|
(e) => STM.succeedNow(g(e)),
|
|
595
623
|
(a) => STM.succeedNow(f(a)),
|
|
@@ -610,7 +638,7 @@ export function match_<R, E, A, B, C>(stm: STM<R, E, A>, g: (e: E) => C, f: (a:
|
|
|
610
638
|
*
|
|
611
639
|
* @tsplus fluent fncts.io.STM repeatUntil
|
|
612
640
|
*/
|
|
613
|
-
export function repeatUntil_<R, E, A>(stm: STM<R, E, A>, f: (a: A) => boolean): STM<R, E, A> {
|
|
641
|
+
export function repeatUntil_<R, E, A>(stm: STM<R, E, A>, f: (a: A) => boolean, __tsplusTrace?: string): STM<R, E, A> {
|
|
614
642
|
return stm.flatMap((a) => (f(a) ? STM.succeedNow(a) : stm.repeatUntil(f)));
|
|
615
643
|
}
|
|
616
644
|
|
|
@@ -628,7 +656,7 @@ export function repeatUntil_<R, E, A>(stm: STM<R, E, A>, f: (a: A) => boolean):
|
|
|
628
656
|
*
|
|
629
657
|
* @tsplus fluent fncts.io.STM repeatWhile
|
|
630
658
|
*/
|
|
631
|
-
export function repeatWhile_<R, E, A>(stm: STM<R, E, A>, f: (a: A) => boolean): STM<R, E, A> {
|
|
659
|
+
export function repeatWhile_<R, E, A>(stm: STM<R, E, A>, f: (a: A) => boolean, __tsplusTrace?: string): STM<R, E, A> {
|
|
632
660
|
return stm.flatMap((a) => (f(a) ? stm.repeatWhile(f) : STM.succeedNow(a)));
|
|
633
661
|
}
|
|
634
662
|
|
|
@@ -638,7 +666,7 @@ export function repeatWhile_<R, E, A>(stm: STM<R, E, A>, f: (a: A) => boolean):
|
|
|
638
666
|
*
|
|
639
667
|
* @tsplus getter fncts.io.STM swap
|
|
640
668
|
*/
|
|
641
|
-
export function swap<R, E, A>(stm: STM<R, E, A
|
|
669
|
+
export function swap<R, E, A>(stm: STM<R, E, A>, __tsplusTrace?: string): STM<R, A, E> {
|
|
642
670
|
return stm.matchSTM(STM.succeedNow, STM.failNow);
|
|
643
671
|
}
|
|
644
672
|
|
|
@@ -650,6 +678,7 @@ export function swap<R, E, A>(stm: STM<R, E, A>): STM<R, A, E> {
|
|
|
650
678
|
export function swapWith_<R, E, A, R2, E2, A2>(
|
|
651
679
|
stm: STM<R, E, A>,
|
|
652
680
|
f: (stm: STM<R, A, E>) => STM<R2, A2, E2>,
|
|
681
|
+
__tsplusTrace?: string,
|
|
653
682
|
): STM<R2, E2, A2> {
|
|
654
683
|
return f(stm.swap).swap;
|
|
655
684
|
}
|
|
@@ -659,7 +688,11 @@ export function swapWith_<R, E, A, R2, E2, A2>(
|
|
|
659
688
|
*
|
|
660
689
|
* @tsplus fluent fncts.io.STM tap
|
|
661
690
|
*/
|
|
662
|
-
export function tap_<R, E, A, R1, E1, B>(
|
|
691
|
+
export function tap_<R, E, A, R1, E1, B>(
|
|
692
|
+
stm: STM<R, E, A>,
|
|
693
|
+
f: (a: A) => STM<R1, E1, B>,
|
|
694
|
+
__tsplusTrace?: string,
|
|
695
|
+
): STM<R1 | R, E | E1, A> {
|
|
663
696
|
return stm.flatMap((a) => f(a).as(a));
|
|
664
697
|
}
|
|
665
698
|
|
|
@@ -668,7 +701,7 @@ export function tap_<R, E, A, R1, E1, B>(stm: STM<R, E, A>, f: (a: A) => STM<R1,
|
|
|
668
701
|
*
|
|
669
702
|
* @tsplus static fncts.io.STMOps toLeft
|
|
670
703
|
*/
|
|
671
|
-
export function toLeft<A>(a: Lazy<A
|
|
704
|
+
export function toLeft<A>(a: Lazy<A>, __tsplusTrace?: string): STM<never, never, Either<A, never>> {
|
|
672
705
|
return STM.succeed(a).flatMap((a) => STM.succeedNow(Either.left(a)));
|
|
673
706
|
}
|
|
674
707
|
|
|
@@ -689,6 +722,7 @@ export function zipWith_<R, E, A, R1, E1, B, C>(
|
|
|
689
722
|
self: STM<R, E, A>,
|
|
690
723
|
that: STM<R1, E1, B>,
|
|
691
724
|
f: (a: A, b: B) => C,
|
|
692
|
-
|
|
725
|
+
__tsplusTrace?: string,
|
|
726
|
+
): STM<R | R1, E | E1, C> {
|
|
693
727
|
return self.flatMap((a) => that.map((b) => f(a, b)));
|
|
694
728
|
}
|
package/_src/STM/definition.ts
CHANGED
|
@@ -22,7 +22,7 @@ export type STMTypeId = typeof STMTypeId;
|
|
|
22
22
|
*/
|
|
23
23
|
export abstract class STM<R, E, A> {
|
|
24
24
|
readonly _typeId: STMTypeId = STMTypeId;
|
|
25
|
-
readonly _R!: (
|
|
25
|
+
readonly _R!: () => R;
|
|
26
26
|
readonly _E!: () => E;
|
|
27
27
|
readonly _A!: () => A;
|
|
28
28
|
}
|
|
@@ -37,11 +37,11 @@ export function unifySTM<X extends STM<any, any, any>>(self: X): STM<_R<X>, _E<X
|
|
|
37
37
|
/**
|
|
38
38
|
* @tsplus type fncts.io.STM
|
|
39
39
|
*/
|
|
40
|
-
export interface USTM<A> extends STM<
|
|
40
|
+
export interface USTM<A> extends STM<never, never, A> {}
|
|
41
41
|
|
|
42
42
|
export class Effect<R, E, A> extends STM<R, E, A> {
|
|
43
43
|
readonly _tag = STMTag.Effect;
|
|
44
|
-
constructor(readonly f: (journal: Journal, fiberId: FiberId, r: R) => A) {
|
|
44
|
+
constructor(readonly f: (journal: Journal, fiberId: FiberId, r: Environment<R>) => A) {
|
|
45
45
|
super();
|
|
46
46
|
}
|
|
47
47
|
}
|
|
@@ -73,14 +73,14 @@ export class OnSuccess<R, E, A, B> extends STM<R, E, B> {
|
|
|
73
73
|
}
|
|
74
74
|
}
|
|
75
75
|
|
|
76
|
-
export class Succeed<A> extends STM<
|
|
76
|
+
export class Succeed<A> extends STM<never, never, A> {
|
|
77
77
|
readonly _tag = STMTag.Succeed;
|
|
78
78
|
constructor(readonly a: () => A) {
|
|
79
79
|
super();
|
|
80
80
|
}
|
|
81
81
|
}
|
|
82
82
|
|
|
83
|
-
export class SucceedNow<A> extends STM<
|
|
83
|
+
export class SucceedNow<A> extends STM<never, never, A> {
|
|
84
84
|
readonly _tag = STMTag.SucceedNow;
|
|
85
85
|
constructor(readonly a: A) {
|
|
86
86
|
super();
|
|
@@ -89,7 +89,7 @@ export class SucceedNow<A> extends STM<unknown, never, A> {
|
|
|
89
89
|
|
|
90
90
|
export class ContramapEnvironment<R, E, A, R0> extends STM<R0, E, A> {
|
|
91
91
|
readonly _tag = STMTag.ContramapEnvironment;
|
|
92
|
-
constructor(readonly stm: STM<R, E, A>, readonly f: (_: R0) => R) {
|
|
92
|
+
constructor(readonly stm: STM<R, E, A>, readonly f: (_: Environment<R0>) => Environment<R>) {
|
|
93
93
|
super();
|
|
94
94
|
}
|
|
95
95
|
}
|