@fncts/io 0.0.20 → 0.0.22
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 +2 -2
- package/Channel/ChildExecutorDecision/api.d.ts +2 -2
- package/Channel/UpstreamPullRequest/api.d.ts +2 -2
- package/Channel/api/interruptWhen.d.ts +5 -5
- package/Channel/api/mapOutConcurrentIO.d.ts +8 -0
- package/Channel/api/mergeAll.d.ts +2 -2
- package/Channel/api/mergeAllUnboundedWith.d.ts +2 -2
- package/Channel/api/mergeAllWith.d.ts +2 -2
- package/Channel/api/mergeMap.d.ts +2 -2
- package/Channel/api/mergeWith.d.ts +2 -2
- package/Channel/api/zipConcurrent.d.ts +16 -0
- package/Channel/api.d.ts +62 -62
- package/Channel/core-api.d.ts +11 -11
- package/Channel/definition.d.ts +35 -21
- package/Channel/internal/SingleProducerAsyncInput.d.ts +1 -1
- package/CountdownLatch.d.ts +25 -0
- package/Fiber/FiberMessage.d.ts +67 -0
- package/Fiber/FiberRuntime.d.ts +116 -0
- package/Fiber/api/interrupt.d.ts +1 -1
- package/Fiber/api/interruptAs.d.ts +6 -1
- package/Fiber/api/location.d.ts +1 -2
- package/Fiber/api/mapFiber.d.ts +2 -2
- package/Fiber/api/mapIO.d.ts +5 -5
- package/Fiber/api/zipWith.d.ts +2 -2
- package/Fiber/definition.d.ts +17 -16
- package/Fiber.d.ts +2 -3
- package/FiberDescriptor.d.ts +3 -6
- package/FiberRef/api/locallyScoped.d.ts +2 -2
- package/FiberRef/api/locallyScopedWith.d.ts +2 -2
- package/FiberRef/api.d.ts +18 -18
- package/FiberRef/definition.d.ts +2 -2
- package/FiberRef/unsafe.d.ts +5 -0
- package/FiberRefs/api.d.ts +30 -2
- package/FiberRefs/definition.d.ts +14 -7
- package/FiberRefs/join.d.ts +3 -3
- package/FiberScope/constructors.d.ts +2 -2
- package/FiberScope/definition.d.ts +8 -5
- package/FiberStatus/constructors.d.ts +3 -7
- package/FiberStatus/definition.d.ts +16 -28
- package/Future/api.d.ts +21 -21
- package/Hub/api.d.ts +27 -25
- package/Hub/definition.d.ts +13 -9
- package/IO/api/acquireRelease.d.ts +1 -1
- package/IO/api/acquireReleaseExit.d.ts +1 -1
- package/IO/api/asyncInterrupt.d.ts +39 -0
- package/IO/api/bracket.d.ts +1 -1
- package/IO/api/bracketExit.d.ts +1 -1
- package/IO/api/concurrency.d.ts +2 -2
- package/IO/api/core-scope.d.ts +7 -43
- package/IO/api/delay.d.ts +8 -0
- package/IO/api/ensuringChildren.d.ts +3 -3
- package/IO/api/environment.d.ts +11 -15
- package/IO/api/{foreachC.d.ts → foreachConcurrent.d.ts} +8 -8
- package/IO/api/foreachExec.d.ts +1 -1
- package/IO/api/fork.d.ts +36 -0
- package/IO/api/forkIn.d.ts +3 -3
- package/IO/api/fulfill.d.ts +3 -3
- package/IO/api/interrupt.d.ts +9 -13
- package/IO/api/onExit.d.ts +3 -3
- package/IO/api/onTermination.d.ts +4 -4
- package/IO/api/provideLayer.d.ts +3 -3
- package/IO/api/provideSomeLayer.d.ts +3 -7
- package/IO/api/race.d.ts +2 -2
- package/IO/api/raceFirst.d.ts +2 -2
- package/IO/api/repeat.d.ts +3 -3
- package/IO/api/retry.d.ts +7 -7
- package/IO/api/schedule.d.ts +5 -5
- package/IO/api/scoped.d.ts +2 -2
- package/IO/api/supervised.d.ts +2 -4
- package/IO/api/timeout.d.ts +5 -5
- package/IO/api/withFinalizer.d.ts +3 -3
- package/IO/api/withFinalizerExit.d.ts +3 -3
- package/IO/api/zipConcurrent.d.ts +13 -0
- package/IO/api.d.ts +208 -306
- package/IO/definition.d.ts +111 -130
- package/IO/runtime.d.ts +19 -22
- package/IO.d.ts +5 -3
- package/Layer/MemoMap.d.ts +5 -5
- package/Layer/api.d.ts +28 -28
- package/LogLevel.d.ts +12 -12
- package/LogSpan.d.ts +2 -2
- package/Logger/api.d.ts +5 -5
- package/Push/api.d.ts +232 -0
- package/Push/definition.d.ts +34 -0
- package/Push/internal.d.ts +11 -0
- package/Push.d.ts +3 -0
- package/Queue/api/dimapIO.d.ts +70 -13
- package/Queue/api/filterInputIO.d.ts +12 -20
- package/Queue/api/filterOutputIO.d.ts +10 -21
- package/Queue/api/operations.d.ts +15 -14
- package/Queue/api/poll.d.ts +2 -2
- package/Queue/api/takeBetween.d.ts +3 -3
- package/Queue/api/zipWithIO.d.ts +7 -24
- package/Queue/definition.d.ts +112 -8
- package/Queue/internal.d.ts +7 -7
- package/Ref/Atomic.d.ts +22 -2
- package/Ref/Derived.d.ts +4 -2
- package/Ref/DerivedAll.d.ts +7 -3
- package/Ref/Synchronized/api.d.ts +31 -29
- package/Ref/Synchronized/constructors.d.ts +1 -1
- package/Ref/Synchronized/definition.d.ts +6 -4
- package/Ref/Synchronized.d.ts +3 -0
- package/Ref/api/collect.d.ts +3 -3
- package/Ref/api/dimap.d.ts +21 -21
- package/Ref/api/filter.d.ts +7 -6
- package/Ref/api/get.d.ts +1 -1
- package/Ref/api/match.d.ts +3 -3
- package/Ref/api/matchAll.d.ts +1 -1
- package/Ref/api/modify.d.ts +27 -27
- package/Ref/api/set.d.ts +3 -3
- package/Ref/constructors.d.ts +1 -1
- package/Ref/definition.d.ts +46 -20
- package/Ref/symbols.d.ts +30 -0
- package/Ref.d.ts +2 -0
- package/RefSubject/Atomic.d.ts +36 -0
- package/RefSubject/Synchronized/api.d.ts +9 -0
- package/RefSubject/Synchronized/definition.d.ts +40 -0
- package/RefSubject/api.d.ts +116 -0
- package/RefSubject/definition.d.ts +45 -0
- package/RefSubject.d.ts +3 -0
- package/RuntimeConfig.d.ts +0 -24
- package/RuntimeFlag.d.ts +10 -0
- package/RuntimeFlags/Patch.d.ts +53 -0
- package/RuntimeFlags/RuntimeFlags.d.ts +82 -0
- package/RuntimeFlags.d.ts +2 -0
- package/STM/api/core-api.d.ts +10 -10
- package/STM/api.d.ts +61 -61
- package/STM/internal/Journal.d.ts +4 -4
- package/Schedule/Decision.d.ts +2 -2
- package/Schedule/api.d.ts +121 -105
- package/Scope/ReleaseMap/api/releaseAll.d.ts +2 -2
- package/Scope/ReleaseMap/api.d.ts +10 -10
- package/Scope/ReleaseMap/definition.d.ts +1 -1
- package/Scope/api.d.ts +8 -8
- package/ScopedRef/api.d.ts +1 -1
- package/Sink/api.d.ts +66 -66
- package/State/api.d.ts +4 -4
- package/State/internal.d.ts +1 -1
- package/Stream/api/zipAllWith.d.ts +2 -2
- package/Stream/api/zipWith.d.ts +2 -2
- package/Stream/api/zipWithChunks.d.ts +2 -2
- package/Stream/api.d.ts +217 -205
- package/Stream/internal/DebounceState.d.ts +3 -3
- package/Stream/internal/Handoff.d.ts +6 -6
- package/Stream/internal/SinkEndReason.d.ts +3 -3
- package/Stream/internal/Take.d.ts +8 -8
- package/Subject/Atomic.d.ts +18 -0
- package/Subject/api.d.ts +13 -0
- package/Subject/definition.d.ts +15 -0
- package/Subject.d.ts +3 -0
- package/SubscriptionRef.d.ts +38 -0
- package/Supervisor/api.d.ts +4 -4
- package/SupervisorPatch.d.ts +4 -4
- package/TExit/definition.d.ts +2 -2
- package/TFuture/api.d.ts +7 -7
- package/TFuture/definition.d.ts +2 -2
- package/TReentrantLock/api.d.ts +4 -4
- package/TReentrantLock/definition.d.ts +3 -3
- package/TRef/api.d.ts +26 -27
- package/TRef/constructors.d.ts +6 -6
- package/TRef/definition.d.ts +47 -34
- package/TRef/symbols.d.ts +20 -0
- package/TRef.d.ts +1 -0
- package/TSemaphore/api.d.ts +4 -4
- package/TSemaphore/constructors.d.ts +6 -0
- package/TSemaphore/definition.d.ts +2 -2
- package/_cjs/Cached/api.cjs +9 -32
- package/_cjs/Cached/api.cjs.map +1 -1
- package/_cjs/Cached/definition.cjs +2 -7
- package/_cjs/Cached/definition.cjs.map +1 -1
- package/_cjs/Cached/internal.cjs +0 -3
- package/_cjs/Cached/internal.cjs.map +1 -1
- package/_cjs/Cached.cjs +0 -6
- package/_cjs/Cached.cjs.map +1 -1
- package/_cjs/CancellerState.cjs +3 -22
- package/_cjs/CancellerState.cjs.map +1 -1
- package/_cjs/Channel/ChildExecutorDecision/api.cjs +19 -20
- package/_cjs/Channel/ChildExecutorDecision/api.cjs.map +1 -1
- package/_cjs/Channel/ChildExecutorDecision/definition.cjs +0 -5
- package/_cjs/Channel/ChildExecutorDecision/definition.cjs.map +1 -1
- package/_cjs/Channel/ChildExecutorDecision.cjs +0 -4
- package/_cjs/Channel/ChildExecutorDecision.cjs.map +1 -1
- package/_cjs/Channel/UpstreamPullRequest/api.cjs +15 -20
- package/_cjs/Channel/UpstreamPullRequest/api.cjs.map +1 -1
- package/_cjs/Channel/UpstreamPullRequest/definition.cjs +0 -6
- package/_cjs/Channel/UpstreamPullRequest/definition.cjs.map +1 -1
- package/_cjs/Channel/UpstreamPullRequest.cjs +0 -4
- package/_cjs/Channel/UpstreamPullRequest.cjs.map +1 -1
- package/_cjs/Channel/UpstreamPullStrategy/definition.cjs +0 -4
- package/_cjs/Channel/UpstreamPullStrategy/definition.cjs.map +1 -1
- package/_cjs/Channel/UpstreamPullStrategy.cjs +0 -2
- package/_cjs/Channel/UpstreamPullStrategy.cjs.map +1 -1
- package/_cjs/Channel/api/interruptWhen.cjs +14 -22
- package/_cjs/Channel/api/interruptWhen.cjs.map +1 -1
- package/_cjs/Channel/api/mapOutConcurrentIO.cjs +42 -0
- package/_cjs/Channel/api/mapOutConcurrentIO.cjs.map +1 -0
- package/_cjs/Channel/api/mergeAll.cjs +6 -8
- package/_cjs/Channel/api/mergeAll.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAllUnboundedWith.cjs +6 -8
- package/_cjs/Channel/api/mergeAllUnboundedWith.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAllWith.cjs +40 -71
- package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
- package/_cjs/Channel/api/mergeMap.cjs +6 -9
- package/_cjs/Channel/api/mergeMap.cjs.map +1 -1
- package/_cjs/Channel/api/mergeWith.cjs +35 -67
- package/_cjs/Channel/api/mergeWith.cjs.map +1 -1
- package/_cjs/Channel/api/run.cjs +1 -7
- package/_cjs/Channel/api/run.cjs.map +1 -1
- package/_cjs/Channel/api/runCollect.cjs +0 -5
- package/_cjs/Channel/api/runCollect.cjs.map +1 -1
- package/_cjs/Channel/api/runDrain.cjs +0 -5
- package/_cjs/Channel/api/runDrain.cjs.map +1 -1
- package/_cjs/Channel/api/runScoped.cjs +6 -28
- package/_cjs/Channel/api/runScoped.cjs.map +1 -1
- package/_cjs/Channel/api/toPull.cjs +7 -29
- package/_cjs/Channel/api/toPull.cjs.map +1 -1
- package/_cjs/Channel/api/{zipC.cjs → zipConcurrent.cjs} +22 -30
- package/_cjs/Channel/api/zipConcurrent.cjs.map +1 -0
- package/_cjs/Channel/api.cjs +242 -367
- package/_cjs/Channel/api.cjs.map +1 -1
- package/_cjs/Channel/core-api.cjs +34 -48
- package/_cjs/Channel/core-api.cjs.map +1 -1
- package/_cjs/Channel/definition.cjs +20 -106
- package/_cjs/Channel/definition.cjs.map +1 -1
- package/_cjs/Channel/internal/ChannelExecutor.cjs +161 -371
- package/_cjs/Channel/internal/ChannelExecutor.cjs.map +1 -1
- package/_cjs/Channel/internal/ChannelState.cjs +5 -37
- package/_cjs/Channel/internal/ChannelState.cjs.map +1 -1
- package/_cjs/Channel/internal/MergeDecision.cjs +4 -27
- package/_cjs/Channel/internal/MergeDecision.cjs.map +1 -1
- package/_cjs/Channel/internal/MergeState.cjs +3 -24
- package/_cjs/Channel/internal/MergeState.cjs.map +1 -1
- package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs +37 -131
- package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs.map +1 -1
- package/_cjs/Channel.cjs +0 -6
- package/_cjs/Channel.cjs.map +1 -1
- package/_cjs/Clock/api.cjs +0 -7
- package/_cjs/Clock/api.cjs.map +1 -1
- package/_cjs/Clock/definition.cjs +0 -6
- package/_cjs/Clock/definition.cjs.map +1 -1
- package/_cjs/Clock/live.cjs +2 -12
- package/_cjs/Clock/live.cjs.map +1 -1
- package/_cjs/Clock.cjs +0 -6
- package/_cjs/Clock.cjs.map +1 -1
- package/_cjs/Console/api.cjs +0 -7
- package/_cjs/Console/api.cjs.map +1 -1
- package/_cjs/Console/definition.cjs +0 -6
- package/_cjs/Console/definition.cjs.map +1 -1
- package/_cjs/Console/live.cjs +0 -11
- package/_cjs/Console/live.cjs.map +1 -1
- package/_cjs/Console.cjs +0 -6
- package/_cjs/Console.cjs.map +1 -1
- package/_cjs/CountdownLatch.cjs +50 -0
- package/_cjs/CountdownLatch.cjs.map +1 -0
- package/_cjs/Differ/api.cjs +5 -28
- package/_cjs/Differ/api.cjs.map +1 -1
- package/_cjs/Differ/definition.cjs +0 -4
- package/_cjs/Differ/definition.cjs.map +1 -1
- package/_cjs/Fiber/FiberMessage.cjs +72 -0
- package/_cjs/Fiber/FiberMessage.cjs.map +1 -0
- package/_cjs/Fiber/FiberRuntime.cjs +735 -0
- package/_cjs/Fiber/FiberRuntime.cjs.map +1 -0
- package/_cjs/Fiber/api/await.cjs +0 -1
- package/_cjs/Fiber/api/await.cjs.map +1 -1
- package/_cjs/Fiber/api/awaitAll.cjs +2 -8
- package/_cjs/Fiber/api/awaitAll.cjs.map +1 -1
- package/_cjs/Fiber/api/children.cjs +0 -1
- package/_cjs/Fiber/api/children.cjs.map +1 -1
- package/_cjs/Fiber/api/collectAll.cjs +3 -25
- package/_cjs/Fiber/api/collectAll.cjs.map +1 -1
- package/_cjs/Fiber/api/fromIO.cjs +1 -6
- package/_cjs/Fiber/api/fromIO.cjs.map +1 -1
- package/_cjs/Fiber/api/id.cjs +0 -1
- package/_cjs/Fiber/api/id.cjs.map +1 -1
- package/_cjs/Fiber/api/inheritRefs.cjs +1 -2
- package/_cjs/Fiber/api/inheritRefs.cjs.map +1 -1
- package/_cjs/Fiber/api/interrupt.cjs +3 -8
- package/_cjs/Fiber/api/interrupt.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptAll.cjs +3 -13
- package/_cjs/Fiber/api/interruptAll.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptAs.cjs +15 -8
- package/_cjs/Fiber/api/interruptAs.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptFork.cjs +2 -9
- package/_cjs/Fiber/api/interruptFork.cjs.map +1 -1
- package/_cjs/Fiber/api/join.cjs +3 -6
- package/_cjs/Fiber/api/join.cjs.map +1 -1
- package/_cjs/Fiber/api/joinAll.cjs +1 -7
- package/_cjs/Fiber/api/joinAll.cjs.map +1 -1
- package/_cjs/Fiber/api/location.cjs +1 -8
- package/_cjs/Fiber/api/location.cjs.map +1 -1
- package/_cjs/Fiber/api/mapFiber.cjs +6 -11
- package/_cjs/Fiber/api/mapFiber.cjs.map +1 -1
- package/_cjs/Fiber/api/mapIO.cjs +14 -27
- package/_cjs/Fiber/api/mapIO.cjs.map +1 -1
- package/_cjs/Fiber/api/poll.cjs +0 -1
- package/_cjs/Fiber/api/poll.cjs.map +1 -1
- package/_cjs/Fiber/api/zipWith.cjs +7 -21
- package/_cjs/Fiber/api/zipWith.cjs.map +1 -1
- package/_cjs/Fiber/constructors.cjs +0 -18
- package/_cjs/Fiber/constructors.cjs.map +1 -1
- package/_cjs/Fiber/definition.cjs +11 -14
- package/_cjs/Fiber/definition.cjs.map +1 -1
- package/_cjs/Fiber.cjs +15 -72
- package/_cjs/Fiber.cjs.map +1 -1
- package/_cjs/FiberDescriptor.cjs +1 -6
- package/_cjs/FiberDescriptor.cjs.map +1 -1
- package/_cjs/FiberRef/api/locallyScoped.cjs +6 -10
- package/_cjs/FiberRef/api/locallyScoped.cjs.map +1 -1
- package/_cjs/FiberRef/api/locallyScopedWith.cjs +5 -8
- package/_cjs/FiberRef/api/locallyScopedWith.cjs.map +1 -1
- package/_cjs/FiberRef/api.cjs +78 -97
- package/_cjs/FiberRef/api.cjs.map +1 -1
- package/_cjs/FiberRef/constructors.cjs +1 -11
- package/_cjs/FiberRef/constructors.cjs.map +1 -1
- package/_cjs/FiberRef/definition.cjs +5 -23
- package/_cjs/FiberRef/definition.cjs.map +1 -1
- package/_cjs/FiberRef/unsafe.cjs +20 -48
- package/_cjs/FiberRef/unsafe.cjs.map +1 -1
- package/_cjs/FiberRef.cjs +0 -12
- package/_cjs/FiberRef.cjs.map +1 -1
- package/_cjs/FiberRefs/api.cjs +74 -32
- package/_cjs/FiberRefs/api.cjs.map +1 -1
- package/_cjs/FiberRefs/definition.cjs +5 -17
- package/_cjs/FiberRefs/definition.cjs.map +1 -1
- package/_cjs/FiberRefs/join.cjs +51 -71
- package/_cjs/FiberRefs/join.cjs.map +1 -1
- package/_cjs/FiberRefs.cjs +0 -6
- package/_cjs/FiberRefs.cjs.map +1 -1
- package/_cjs/FiberScope/constructors.cjs +0 -4
- package/_cjs/FiberScope/constructors.cjs.map +1 -1
- package/_cjs/FiberScope/definition.cjs +15 -20
- package/_cjs/FiberScope/definition.cjs.map +1 -1
- package/_cjs/FiberScope.cjs +0 -4
- package/_cjs/FiberScope.cjs.map +1 -1
- package/_cjs/FiberStatus/constructors.cjs +5 -20
- package/_cjs/FiberStatus/constructors.cjs.map +1 -1
- package/_cjs/FiberStatus/definition.cjs +18 -77
- package/_cjs/FiberStatus/definition.cjs.map +1 -1
- package/_cjs/FiberStatus.cjs +0 -4
- package/_cjs/FiberStatus.cjs.map +1 -1
- package/_cjs/Future/api.cjs +99 -141
- package/_cjs/Future/api.cjs.map +1 -1
- package/_cjs/Future/constructors.cjs +1 -12
- package/_cjs/Future/constructors.cjs.map +1 -1
- package/_cjs/Future/definition.cjs +2 -15
- package/_cjs/Future/definition.cjs.map +1 -1
- package/_cjs/Future.cjs +0 -6
- package/_cjs/Future.cjs.map +1 -1
- package/_cjs/Hub/api.cjs +112 -172
- package/_cjs/Hub/api.cjs.map +1 -1
- package/_cjs/Hub/definition.cjs +14 -7
- package/_cjs/Hub/definition.cjs.map +1 -1
- package/_cjs/Hub/internal.cjs +30 -122
- package/_cjs/Hub/internal.cjs.map +1 -1
- package/_cjs/Hub.cjs +0 -4
- package/_cjs/Hub.cjs.map +1 -1
- package/_cjs/IO/api/acquireRelease.cjs +0 -4
- package/_cjs/IO/api/acquireRelease.cjs.map +1 -1
- package/_cjs/IO/api/acquireReleaseExit.cjs +1 -7
- package/_cjs/IO/api/acquireReleaseExit.cjs.map +1 -1
- package/_cjs/IO/api/acquireReleaseInterruptible.cjs +0 -4
- package/_cjs/IO/api/acquireReleaseInterruptible.cjs.map +1 -1
- package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs +2 -6
- package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs.map +1 -1
- package/_cjs/IO/api/addFinalizer.cjs +0 -4
- package/_cjs/IO/api/addFinalizer.cjs.map +1 -1
- package/_cjs/IO/api/addFinalizerExit.cjs +1 -8
- package/_cjs/IO/api/addFinalizerExit.cjs.map +1 -1
- package/_cjs/IO/api/asyncIO.cjs +8 -16
- package/_cjs/IO/api/asyncIO.cjs.map +1 -1
- package/_cjs/IO/api/asyncInterrupt.cjs +77 -0
- package/_cjs/IO/api/asyncInterrupt.cjs.map +1 -0
- package/_cjs/IO/api/bracket.cjs +3 -7
- package/_cjs/IO/api/bracket.cjs.map +1 -1
- package/_cjs/IO/api/bracketExit.cjs +3 -10
- package/_cjs/IO/api/bracketExit.cjs.map +1 -1
- package/_cjs/IO/api/clockWith.cjs +2 -14
- package/_cjs/IO/api/clockWith.cjs.map +1 -1
- package/_cjs/IO/api/concurrency.cjs +9 -22
- package/_cjs/IO/api/concurrency.cjs.map +1 -1
- package/_cjs/IO/api/concurrentFinalizers.cjs +1 -8
- package/_cjs/IO/api/concurrentFinalizers.cjs.map +1 -1
- package/_cjs/IO/api/consoleWith.cjs +2 -14
- package/_cjs/IO/api/consoleWith.cjs.map +1 -1
- package/_cjs/IO/api/core-scope.cjs +60 -126
- package/_cjs/IO/api/core-scope.cjs.map +1 -1
- package/_cjs/{Fiber/api/evalOn.cjs → IO/api/delay.cjs} +10 -18
- package/_cjs/IO/api/delay.cjs.map +1 -0
- package/_cjs/IO/api/ensuringChildren.cjs +7 -10
- package/_cjs/IO/api/ensuringChildren.cjs.map +1 -1
- package/_cjs/IO/api/environment.cjs +35 -64
- package/_cjs/IO/api/environment.cjs.map +1 -1
- package/_cjs/IO/api/{foreachC.cjs → foreachConcurrent.cjs} +36 -73
- package/_cjs/IO/api/foreachConcurrent.cjs.map +1 -0
- package/_cjs/IO/api/foreachExec.cjs +4 -11
- package/_cjs/IO/api/foreachExec.cjs.map +1 -1
- package/_cjs/IO/api/fork.cjs +75 -0
- package/_cjs/IO/api/fork.cjs.map +1 -0
- package/_cjs/IO/api/forkAll.cjs +3 -7
- package/_cjs/IO/api/forkAll.cjs.map +1 -1
- package/_cjs/IO/api/forkIn.cjs +8 -14
- package/_cjs/IO/api/forkIn.cjs.map +1 -1
- package/_cjs/IO/api/forkScoped.cjs +1 -9
- package/_cjs/IO/api/forkScoped.cjs.map +1 -1
- package/_cjs/IO/api/fulfill.cjs +8 -12
- package/_cjs/IO/api/fulfill.cjs.map +1 -1
- package/_cjs/IO/api/interrupt.cjs +51 -77
- package/_cjs/IO/api/interrupt.cjs.map +1 -1
- package/_cjs/IO/api/memoize.cjs +1 -8
- package/_cjs/IO/api/memoize.cjs.map +1 -1
- package/_cjs/IO/api/onExit.cjs +6 -9
- package/_cjs/IO/api/onExit.cjs.map +1 -1
- package/_cjs/IO/api/onTermination.cjs +5 -11
- package/_cjs/IO/api/onTermination.cjs.map +1 -1
- package/_cjs/IO/api/once.cjs +1 -7
- package/_cjs/IO/api/once.cjs.map +1 -1
- package/_cjs/IO/api/provideLayer.cjs +6 -12
- package/_cjs/IO/api/provideLayer.cjs.map +1 -1
- package/_cjs/IO/api/provideSomeLayer.cjs +5 -20
- package/_cjs/IO/api/provideSomeLayer.cjs.map +1 -1
- package/_cjs/IO/api/race.cjs +8 -17
- package/_cjs/IO/api/race.cjs.map +1 -1
- package/_cjs/IO/api/raceFirst.cjs +6 -9
- package/_cjs/IO/api/raceFirst.cjs.map +1 -1
- package/_cjs/IO/api/randomWith.cjs +1 -13
- package/_cjs/IO/api/randomWith.cjs.map +1 -1
- package/_cjs/IO/api/repeat.cjs +12 -27
- package/_cjs/IO/api/repeat.cjs.map +1 -1
- package/_cjs/IO/api/retry.cjs +14 -29
- package/_cjs/IO/api/retry.cjs.map +1 -1
- package/_cjs/IO/api/schedule.cjs +15 -21
- package/_cjs/IO/api/schedule.cjs.map +1 -1
- package/_cjs/IO/api/scope.cjs +0 -6
- package/_cjs/IO/api/scope.cjs.map +1 -1
- package/_cjs/IO/api/scopeWith.cjs +0 -5
- package/_cjs/IO/api/scopeWith.cjs.map +1 -1
- package/_cjs/IO/api/scoped.cjs +6 -15
- package/_cjs/IO/api/scoped.cjs.map +1 -1
- package/_cjs/IO/api/sequenceT.cjs +1 -7
- package/_cjs/IO/api/sequenceT.cjs.map +1 -1
- package/_cjs/IO/api/sleep.cjs +0 -4
- package/_cjs/IO/api/sleep.cjs.map +1 -1
- package/_cjs/IO/api/stateful.cjs +0 -6
- package/_cjs/IO/api/stateful.cjs.map +1 -1
- package/_cjs/IO/api/supervised.cjs +6 -14
- package/_cjs/IO/api/supervised.cjs.map +1 -1
- package/_cjs/IO/api/timeout.cjs +10 -18
- package/_cjs/IO/api/timeout.cjs.map +1 -1
- package/_cjs/IO/api/withChildren.cjs +2 -10
- package/_cjs/IO/api/withChildren.cjs.map +1 -1
- package/_cjs/IO/api/withEarlyRelease.cjs +1 -8
- package/_cjs/IO/api/withEarlyRelease.cjs.map +1 -1
- package/_cjs/IO/api/withFinalizer.cjs +6 -8
- package/_cjs/IO/api/withFinalizer.cjs.map +1 -1
- package/_cjs/IO/api/withFinalizerExit.cjs +6 -8
- package/_cjs/IO/api/withFinalizerExit.cjs.map +1 -1
- package/_cjs/IO/api/zipConcurrent.cjs +51 -0
- package/_cjs/IO/api/zipConcurrent.cjs.map +1 -0
- package/_cjs/IO/api.cjs +669 -1057
- package/_cjs/IO/api.cjs.map +1 -1
- package/_cjs/IO/definition.cjs +121 -213
- package/_cjs/IO/definition.cjs.map +1 -1
- package/_cjs/IO/runtime.cjs +51 -119
- package/_cjs/IO/runtime.cjs.map +1 -1
- package/_cjs/IO.cjs +41 -123
- package/_cjs/IO.cjs.map +1 -1
- package/_cjs/IOEnv/definition.cjs +1 -12
- package/_cjs/IOEnv/definition.cjs.map +1 -1
- package/_cjs/IOEnv/live.cjs +1 -12
- package/_cjs/IOEnv/live.cjs.map +1 -1
- package/_cjs/IOEnv/services.cjs +0 -5
- package/_cjs/IOEnv/services.cjs.map +1 -1
- package/_cjs/IOEnv.cjs +0 -6
- package/_cjs/IOEnv.cjs.map +1 -1
- package/_cjs/InterruptStatus/constructors.cjs +0 -5
- package/_cjs/InterruptStatus/constructors.cjs.map +1 -1
- package/_cjs/InterruptStatus/definition.cjs +0 -5
- package/_cjs/InterruptStatus/definition.cjs.map +1 -1
- package/_cjs/InterruptStatus.cjs +0 -4
- package/_cjs/InterruptStatus.cjs.map +1 -1
- package/_cjs/Layer/MemoMap.cjs +54 -111
- package/_cjs/Layer/MemoMap.cjs.map +1 -1
- package/_cjs/Layer/api.cjs +112 -184
- package/_cjs/Layer/api.cjs.map +1 -1
- package/_cjs/Layer/definition.cjs +9 -51
- package/_cjs/Layer/definition.cjs.map +1 -1
- package/_cjs/Layer.cjs +0 -6
- package/_cjs/Layer.cjs.map +1 -1
- package/_cjs/LogLevel.cjs +24 -36
- package/_cjs/LogLevel.cjs.map +1 -1
- package/_cjs/LogSpan.cjs +16 -21
- package/_cjs/LogSpan.cjs.map +1 -1
- package/_cjs/Logger/api.cjs +18 -21
- package/_cjs/Logger/api.cjs.map +1 -1
- package/_cjs/Logger/constructors.cjs +3 -18
- package/_cjs/Logger/constructors.cjs.map +1 -1
- package/_cjs/Logger/definition.cjs +0 -3
- package/_cjs/Logger/definition.cjs.map +1 -1
- package/_cjs/Logger.cjs +0 -6
- package/_cjs/Logger.cjs.map +1 -1
- package/_cjs/Push/api.cjs +474 -0
- package/_cjs/Push/api.cjs.map +1 -0
- package/_cjs/Push/definition.cjs +43 -0
- package/_cjs/Push/definition.cjs.map +1 -0
- package/_cjs/Push/internal.cjs +40 -0
- package/_cjs/Push/internal.cjs.map +1 -0
- package/_cjs/Push.cjs +39 -0
- package/_cjs/Push.cjs.map +1 -0
- package/_cjs/Queue/api/dimapIO.cjs +109 -55
- package/_cjs/Queue/api/dimapIO.cjs.map +1 -1
- package/_cjs/Queue/api/filterInputIO.cjs +61 -36
- package/_cjs/Queue/api/filterInputIO.cjs.map +1 -1
- package/_cjs/Queue/api/filterOutputIO.cjs +72 -44
- package/_cjs/Queue/api/filterOutputIO.cjs.map +1 -1
- package/_cjs/Queue/api/operations.cjs +21 -35
- package/_cjs/Queue/api/operations.cjs.map +1 -1
- package/_cjs/Queue/api/poll.cjs +1 -7
- package/_cjs/Queue/api/poll.cjs.map +1 -1
- package/_cjs/Queue/api/takeBetween.cjs +24 -34
- package/_cjs/Queue/api/takeBetween.cjs.map +1 -1
- package/_cjs/Queue/api/zipWithIO.cjs +33 -48
- package/_cjs/Queue/api/zipWithIO.cjs.map +1 -1
- package/_cjs/Queue/api.cjs +0 -14
- package/_cjs/Queue/api.cjs.map +1 -1
- package/_cjs/Queue/constructors.cjs +4 -17
- package/_cjs/Queue/constructors.cjs.map +1 -1
- package/_cjs/Queue/definition.cjs +18 -11
- package/_cjs/Queue/definition.cjs.map +1 -1
- package/_cjs/Queue/internal.cjs +63 -117
- package/_cjs/Queue/internal.cjs.map +1 -1
- package/_cjs/Queue/strategy.cjs +27 -68
- package/_cjs/Queue/strategy.cjs.map +1 -1
- package/_cjs/Queue.cjs +0 -10
- package/_cjs/Queue.cjs.map +1 -1
- package/_cjs/Random/api.cjs +0 -17
- package/_cjs/Random/api.cjs.map +1 -1
- package/_cjs/Random/definition.cjs +0 -7
- package/_cjs/Random/definition.cjs.map +1 -1
- package/_cjs/Random/live.cjs +2 -16
- package/_cjs/Random/live.cjs.map +1 -1
- package/_cjs/Random.cjs +0 -6
- package/_cjs/Random.cjs.map +1 -1
- package/_cjs/Ref/Atomic.cjs +54 -26
- package/_cjs/Ref/Atomic.cjs.map +1 -1
- package/_cjs/Ref/Derived.cjs +11 -20
- package/_cjs/Ref/Derived.cjs.map +1 -1
- package/_cjs/Ref/DerivedAll.cjs +17 -23
- package/_cjs/Ref/DerivedAll.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/api.cjs +99 -103
- package/_cjs/Ref/Synchronized/api.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/constructors.cjs +1 -11
- package/_cjs/Ref/Synchronized/constructors.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/definition.cjs +16 -39
- package/_cjs/Ref/Synchronized/definition.cjs.map +1 -1
- package/_cjs/{FiberState.cjs → Ref/Synchronized.cjs} +4 -10
- package/_cjs/Ref/Synchronized.cjs.map +1 -0
- package/_cjs/Ref/api/collect.cjs +7 -12
- package/_cjs/Ref/api/collect.cjs.map +1 -1
- package/_cjs/Ref/api/dimap.cjs +55 -60
- package/_cjs/Ref/api/dimap.cjs.map +1 -1
- package/_cjs/Ref/api/filter.cjs +14 -19
- package/_cjs/Ref/api/filter.cjs.map +1 -1
- package/_cjs/Ref/api/get.cjs +0 -2
- package/_cjs/Ref/api/get.cjs.map +1 -1
- package/_cjs/Ref/api/match.cjs +8 -10
- package/_cjs/Ref/api/match.cjs.map +1 -1
- package/_cjs/Ref/api/matchAll.cjs +6 -8
- package/_cjs/Ref/api/matchAll.cjs.map +1 -1
- package/_cjs/Ref/api/modify.cjs +73 -171
- package/_cjs/Ref/api/modify.cjs.map +1 -1
- package/_cjs/Ref/api/set.cjs +8 -8
- package/_cjs/Ref/api/set.cjs.map +1 -1
- package/_cjs/Ref/api.cjs +2 -26
- package/_cjs/Ref/api.cjs.map +1 -1
- package/_cjs/Ref/constructors.cjs +2 -9
- package/_cjs/Ref/constructors.cjs.map +1 -1
- package/_cjs/Ref/definition.cjs +11 -7
- package/_cjs/Ref/definition.cjs.map +1 -1
- package/_cjs/Ref/symbols.cjs +37 -0
- package/_cjs/Ref/symbols.cjs.map +1 -0
- package/_cjs/Ref.cjs +22 -18
- package/_cjs/Ref.cjs.map +1 -1
- package/_cjs/RefSubject/Atomic.cjs +109 -0
- package/_cjs/RefSubject/Atomic.cjs.map +1 -0
- package/_cjs/{FiberState/constructors.cjs → RefSubject/Synchronized/api.cjs} +13 -34
- package/_cjs/RefSubject/Synchronized/api.cjs.map +1 -0
- package/_cjs/RefSubject/Synchronized/definition.cjs +56 -0
- package/_cjs/RefSubject/Synchronized/definition.cjs.map +1 -0
- package/_cjs/RefSubject/api.cjs +245 -0
- package/_cjs/RefSubject/api.cjs.map +1 -0
- package/_cjs/{FiberState/api.cjs → RefSubject/definition.cjs} +12 -16
- package/_cjs/RefSubject/definition.cjs.map +1 -0
- package/_cjs/RefSubject.cjs +39 -0
- package/_cjs/RefSubject.cjs.map +1 -0
- package/_cjs/Reloadable/api.cjs +3 -18
- package/_cjs/Reloadable/api.cjs.map +1 -1
- package/_cjs/Reloadable/constructors.cjs +14 -41
- package/_cjs/Reloadable/constructors.cjs.map +1 -1
- package/_cjs/Reloadable/definition.cjs +0 -14
- package/_cjs/Reloadable/definition.cjs.map +1 -1
- package/_cjs/Reloadable.cjs +0 -6
- package/_cjs/Reloadable.cjs.map +1 -1
- package/_cjs/RuntimeConfig.cjs +1 -44
- package/_cjs/RuntimeConfig.cjs.map +1 -1
- package/_cjs/RuntimeFlag.cjs +6 -0
- package/_cjs/RuntimeFlag.cjs.map +1 -0
- package/_cjs/RuntimeFlags/Patch.cjs +76 -0
- package/_cjs/RuntimeFlags/Patch.cjs.map +1 -0
- package/_cjs/RuntimeFlags/RuntimeFlags.cjs +107 -0
- package/_cjs/RuntimeFlags/RuntimeFlags.cjs.map +1 -0
- package/_cjs/RuntimeFlags.cjs +28 -0
- package/_cjs/RuntimeFlags.cjs.map +1 -0
- package/_cjs/STM/api/core-api.cjs +36 -42
- package/_cjs/STM/api/core-api.cjs.map +1 -1
- package/_cjs/STM/api/core-constructors.cjs +0 -15
- package/_cjs/STM/api/core-constructors.cjs.map +1 -1
- package/_cjs/STM/api.cjs +218 -302
- package/_cjs/STM/api.cjs.map +1 -1
- package/_cjs/STM/definition.cjs +9 -72
- package/_cjs/STM/definition.cjs.map +1 -1
- package/_cjs/STM/driver.cjs +12 -65
- package/_cjs/STM/driver.cjs.map +1 -1
- package/_cjs/STM/internal/CommitState.cjs +5 -32
- package/_cjs/STM/internal/CommitState.cjs.map +1 -1
- package/_cjs/STM/internal/Entry.cjs +0 -20
- package/_cjs/STM/internal/Entry.cjs.map +1 -1
- package/_cjs/STM/internal/Journal.cjs +50 -142
- package/_cjs/STM/internal/Journal.cjs.map +1 -1
- package/_cjs/STM/internal/TryCommit.cjs +2 -12
- package/_cjs/STM/internal/TryCommit.cjs.map +1 -1
- package/_cjs/STM/internal/Versioned.cjs +0 -3
- package/_cjs/STM/internal/Versioned.cjs.map +1 -1
- package/_cjs/STM.cjs +0 -10
- package/_cjs/STM.cjs.map +1 -1
- package/_cjs/Schedule/Decision.cjs +13 -37
- package/_cjs/Schedule/Decision.cjs.map +1 -1
- package/_cjs/Schedule/Driver.cjs +0 -5
- package/_cjs/Schedule/Driver.cjs.map +1 -1
- package/_cjs/Schedule/api/driver.cjs +6 -22
- package/_cjs/Schedule/api/driver.cjs.map +1 -1
- package/_cjs/Schedule/api.cjs +440 -492
- package/_cjs/Schedule/api.cjs.map +1 -1
- package/_cjs/Schedule/definition.cjs +0 -2
- package/_cjs/Schedule/definition.cjs.map +1 -1
- package/_cjs/Schedule.cjs +0 -8
- package/_cjs/Schedule.cjs.map +1 -1
- package/_cjs/Scope/Finalizer/definition.cjs +0 -6
- package/_cjs/Scope/Finalizer/definition.cjs.map +1 -1
- package/_cjs/Scope/Finalizer.cjs +0 -2
- package/_cjs/Scope/Finalizer.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs +13 -24
- package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/api.cjs +65 -79
- package/_cjs/Scope/ReleaseMap/api.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/constructors.cjs +1 -12
- package/_cjs/Scope/ReleaseMap/constructors.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/definition.cjs +0 -9
- package/_cjs/Scope/ReleaseMap/definition.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap.cjs +0 -6
- package/_cjs/Scope/ReleaseMap.cjs.map +1 -1
- package/_cjs/Scope/api.cjs +34 -69
- package/_cjs/Scope/api.cjs.map +1 -1
- package/_cjs/Scope/definition.cjs +0 -12
- package/_cjs/Scope/definition.cjs.map +1 -1
- package/_cjs/Scope.cjs +0 -4
- package/_cjs/Scope.cjs.map +1 -1
- package/_cjs/ScopedRef/api.cjs +7 -26
- package/_cjs/ScopedRef/api.cjs.map +1 -1
- package/_cjs/ScopedRef/definition.cjs +1 -5
- package/_cjs/ScopedRef/definition.cjs.map +1 -1
- package/_cjs/ScopedRef.cjs +0 -4
- package/_cjs/ScopedRef.cjs.map +1 -1
- package/_cjs/Sink/api.cjs +292 -484
- package/_cjs/Sink/api.cjs.map +1 -1
- package/_cjs/Sink/definition.cjs +0 -3
- package/_cjs/Sink/definition.cjs.map +1 -1
- package/_cjs/Sink.cjs +0 -4
- package/_cjs/Sink.cjs.map +1 -1
- package/_cjs/State/api.cjs +18 -32
- package/_cjs/State/api.cjs.map +1 -1
- package/_cjs/State/definition.cjs +2 -7
- package/_cjs/State/definition.cjs.map +1 -1
- package/_cjs/State/internal.cjs +0 -3
- package/_cjs/State/internal.cjs.map +1 -1
- package/_cjs/State.cjs +0 -4
- package/_cjs/State.cjs.map +1 -1
- package/_cjs/Stream/api/zipAllWith.cjs +16 -43
- package/_cjs/Stream/api/zipAllWith.cjs.map +1 -1
- package/_cjs/Stream/api/zipWith.cjs +6 -9
- package/_cjs/Stream/api/zipWith.cjs.map +1 -1
- package/_cjs/Stream/api/zipWithChunks.cjs +14 -32
- package/_cjs/Stream/api/zipWithChunks.cjs.map +1 -1
- package/_cjs/Stream/api.cjs +961 -1205
- package/_cjs/Stream/api.cjs.map +1 -1
- package/_cjs/Stream/definition.cjs +0 -8
- package/_cjs/Stream/definition.cjs.map +1 -1
- package/_cjs/Stream/internal/DebounceState.cjs +16 -44
- package/_cjs/Stream/internal/DebounceState.cjs.map +1 -1
- package/_cjs/Stream/internal/Handoff.cjs +34 -80
- package/_cjs/Stream/internal/Handoff.cjs.map +1 -1
- package/_cjs/Stream/internal/Pull.cjs +2 -25
- package/_cjs/Stream/internal/Pull.cjs.map +1 -1
- package/_cjs/Stream/internal/SinkEndReason.cjs +13 -28
- package/_cjs/Stream/internal/SinkEndReason.cjs.map +1 -1
- package/_cjs/Stream/internal/Take.cjs +32 -75
- package/_cjs/Stream/internal/Take.cjs.map +1 -1
- package/_cjs/Stream/internal/util.cjs +3 -13
- package/_cjs/Stream/internal/util.cjs.map +1 -1
- package/_cjs/Stream.cjs +0 -4
- package/_cjs/Stream.cjs.map +1 -1
- package/_cjs/{FiberState/definition.cjs → Subject/Atomic.cjs} +21 -36
- package/_cjs/Subject/Atomic.cjs.map +1 -0
- package/_cjs/{IO/api/withRuntimeConfig.cjs → Subject/api.cjs} +17 -14
- package/_cjs/Subject/api.cjs.map +1 -0
- package/_cjs/Subject/definition.cjs +11 -0
- package/_cjs/Subject/definition.cjs.map +1 -0
- package/_cjs/Subject.cjs +39 -0
- package/_cjs/Subject.cjs.map +1 -0
- package/_cjs/SubscriptionRef.cjs +54 -0
- package/_cjs/SubscriptionRef.cjs.map +1 -0
- package/_cjs/Supervisor/api.cjs +24 -37
- package/_cjs/Supervisor/api.cjs.map +1 -1
- package/_cjs/Supervisor/constructors.cjs +2 -26
- package/_cjs/Supervisor/constructors.cjs.map +1 -1
- package/_cjs/Supervisor/definition.cjs +6 -44
- package/_cjs/Supervisor/definition.cjs.map +1 -1
- package/_cjs/Supervisor.cjs +0 -6
- package/_cjs/Supervisor.cjs.map +1 -1
- package/_cjs/SupervisorPatch.cjs +25 -75
- package/_cjs/SupervisorPatch.cjs.map +1 -1
- package/_cjs/TExit/constructors.cjs +0 -12
- package/_cjs/TExit/constructors.cjs.map +1 -1
- package/_cjs/TExit/definition.cjs +14 -76
- package/_cjs/TExit/definition.cjs.map +1 -1
- package/_cjs/TExit.cjs +0 -4
- package/_cjs/TExit.cjs.map +1 -1
- package/_cjs/TFuture/api.cjs +21 -37
- package/_cjs/TFuture/api.cjs.map +1 -1
- package/_cjs/TFuture/constructors.cjs +1 -13
- package/_cjs/TFuture/constructors.cjs.map +1 -1
- package/_cjs/TFuture/definition.cjs +0 -4
- package/_cjs/TFuture/definition.cjs.map +1 -1
- package/_cjs/TFuture.cjs +0 -6
- package/_cjs/TFuture.cjs.map +1 -1
- package/_cjs/TReentrantLock/api.cjs +41 -111
- package/_cjs/TReentrantLock/api.cjs.map +1 -1
- package/_cjs/TReentrantLock/definition.cjs +7 -38
- package/_cjs/TReentrantLock/definition.cjs.map +1 -1
- package/_cjs/TReentrantLock.cjs +0 -4
- package/_cjs/TReentrantLock.cjs.map +1 -1
- package/_cjs/TRef/api.cjs +95 -296
- package/_cjs/TRef/api.cjs.map +1 -1
- package/_cjs/TRef/constructors.cjs +0 -19
- package/_cjs/TRef/constructors.cjs.map +1 -1
- package/_cjs/TRef/definition.cjs +84 -34
- package/_cjs/TRef/definition.cjs.map +1 -1
- package/_cjs/TRef/symbols.cjs +27 -0
- package/_cjs/TRef/symbols.cjs.map +1 -0
- package/_cjs/TRef.cjs +11 -6
- package/_cjs/TRef.cjs.map +1 -1
- package/_cjs/TSemaphore/api.cjs +30 -49
- package/_cjs/TSemaphore/api.cjs.map +1 -1
- package/_cjs/TSemaphore/constructors.cjs +13 -11
- package/_cjs/TSemaphore/constructors.cjs.map +1 -1
- package/_cjs/TSemaphore/definition.cjs +0 -4
- package/_cjs/TSemaphore/definition.cjs.map +1 -1
- package/_cjs/TSemaphore.cjs +0 -6
- package/_cjs/TSemaphore.cjs.map +1 -1
- package/_cjs/TxnId.cjs +0 -3
- package/_cjs/TxnId.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +19 -24
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +19 -24
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/filterIO.cjs +14 -19
- package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/findIO.cjs +18 -28
- package/_cjs/collection/immutable/Conc/findIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/mapIO.cjs +11 -14
- package/_cjs/collection/immutable/Conc/mapIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/takeWhileIO.cjs +29 -36
- package/_cjs/collection/immutable/Conc/takeWhileIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc.cjs +0 -12
- package/_cjs/collection/immutable/Conc.cjs.map +1 -1
- package/_cjs/data/Exit/foreachIO.cjs +6 -10
- package/_cjs/data/Exit/foreachIO.cjs.map +1 -1
- package/_cjs/internal/HashedPair.cjs +4 -15
- package/_cjs/internal/HashedPair.cjs.map +1 -1
- package/_cjs/internal/Hub.cjs +13 -175
- package/_cjs/internal/Hub.cjs.map +1 -1
- package/_cjs/internal/IsFatal.cjs +22 -62
- package/_cjs/internal/IsFatal.cjs.map +1 -1
- package/_cjs/internal/MutableQueue.cjs +11 -77
- package/_cjs/internal/MutableQueue.cjs.map +1 -1
- package/_cjs/internal/Scheduler.cjs +0 -18
- package/_cjs/internal/Scheduler.cjs.map +1 -1
- package/_cjs/internal/StackTraceBuilder.cjs +0 -9
- package/_cjs/internal/StackTraceBuilder.cjs.map +1 -1
- package/_mjs/Cached/api.mjs +6 -13
- package/_mjs/Cached/api.mjs.map +1 -1
- package/_mjs/Cached/definition.mjs +2 -4
- package/_mjs/Cached/definition.mjs.map +1 -1
- package/_mjs/Cached/internal.mjs +0 -1
- package/_mjs/Cached/internal.mjs.map +1 -1
- package/_mjs/Cached.mjs.map +1 -1
- package/_mjs/CancellerState.mjs +6 -15
- package/_mjs/CancellerState.mjs.map +1 -1
- package/_mjs/Channel/ChildExecutorDecision/api.mjs +18 -18
- package/_mjs/Channel/ChildExecutorDecision/api.mjs.map +1 -1
- package/_mjs/Channel/ChildExecutorDecision/definition.mjs +0 -2
- package/_mjs/Channel/ChildExecutorDecision/definition.mjs.map +1 -1
- package/_mjs/Channel/ChildExecutorDecision.mjs.map +1 -1
- package/_mjs/Channel/UpstreamPullRequest/api.mjs +14 -16
- package/_mjs/Channel/UpstreamPullRequest/api.mjs.map +1 -1
- package/_mjs/Channel/UpstreamPullRequest/definition.mjs +0 -2
- package/_mjs/Channel/UpstreamPullRequest/definition.mjs.map +1 -1
- package/_mjs/Channel/UpstreamPullRequest.mjs.map +1 -1
- package/_mjs/Channel/UpstreamPullStrategy/definition.mjs +0 -1
- package/_mjs/Channel/UpstreamPullStrategy/definition.mjs.map +1 -1
- package/_mjs/Channel/UpstreamPullStrategy.mjs.map +1 -1
- package/_mjs/Channel/api/interruptWhen.mjs +11 -10
- package/_mjs/Channel/api/interruptWhen.mjs.map +1 -1
- package/_mjs/Channel/api/mapOutConcurrentIO.mjs +34 -0
- package/_mjs/Channel/api/mapOutConcurrentIO.mjs.map +1 -0
- package/_mjs/Channel/api/mergeAll.mjs +5 -4
- package/_mjs/Channel/api/mergeAll.mjs.map +1 -1
- package/_mjs/Channel/api/mergeAllUnboundedWith.mjs +5 -4
- package/_mjs/Channel/api/mergeAllUnboundedWith.mjs.map +1 -1
- package/_mjs/Channel/api/mergeAllWith.mjs +39 -39
- package/_mjs/Channel/api/mergeAllWith.mjs.map +1 -1
- package/_mjs/Channel/api/mergeMap.mjs +5 -4
- package/_mjs/Channel/api/mergeMap.mjs.map +1 -1
- package/_mjs/Channel/api/mergeWith.mjs +34 -50
- package/_mjs/Channel/api/mergeWith.mjs.map +1 -1
- package/_mjs/Channel/api/run.mjs +1 -2
- package/_mjs/Channel/api/run.mjs.map +1 -1
- package/_mjs/Channel/api/runCollect.mjs +0 -1
- package/_mjs/Channel/api/runCollect.mjs.map +1 -1
- package/_mjs/Channel/api/runDrain.mjs +0 -1
- package/_mjs/Channel/api/runDrain.mjs.map +1 -1
- package/_mjs/Channel/api/runScoped.mjs +6 -21
- package/_mjs/Channel/api/runScoped.mjs.map +1 -1
- package/_mjs/Channel/api/toPull.mjs +7 -20
- package/_mjs/Channel/api/toPull.mjs.map +1 -1
- package/_mjs/Channel/api/zipConcurrent.mjs +32 -0
- package/_mjs/Channel/api/zipConcurrent.mjs.map +1 -0
- package/_mjs/Channel/api.mjs +201 -267
- package/_mjs/Channel/api.mjs.map +1 -1
- package/_mjs/Channel/core-api.mjs +28 -35
- package/_mjs/Channel/core-api.mjs.map +1 -1
- package/_mjs/Channel/definition.mjs +32 -67
- package/_mjs/Channel/definition.mjs.map +1 -1
- package/_mjs/Channel/internal/ChannelExecutor.mjs +161 -340
- package/_mjs/Channel/internal/ChannelExecutor.mjs.map +1 -1
- package/_mjs/Channel/internal/ChannelState.mjs +5 -20
- package/_mjs/Channel/internal/ChannelState.mjs.map +1 -1
- package/_mjs/Channel/internal/MergeDecision.mjs +5 -16
- package/_mjs/Channel/internal/MergeDecision.mjs.map +1 -1
- package/_mjs/Channel/internal/MergeState.mjs +6 -15
- package/_mjs/Channel/internal/MergeState.mjs.map +1 -1
- package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs +40 -103
- package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs.map +1 -1
- package/_mjs/Channel.mjs.map +1 -1
- package/_mjs/Clock/api.mjs +0 -2
- package/_mjs/Clock/api.mjs.map +1 -1
- package/_mjs/Clock/definition.mjs +0 -2
- package/_mjs/Clock/definition.mjs.map +1 -1
- package/_mjs/Clock/live.mjs +2 -6
- package/_mjs/Clock/live.mjs.map +1 -1
- package/_mjs/Clock.mjs.map +1 -1
- package/_mjs/Console/api.mjs +0 -2
- package/_mjs/Console/api.mjs.map +1 -1
- package/_mjs/Console/definition.mjs +0 -2
- package/_mjs/Console/definition.mjs.map +1 -1
- package/_mjs/Console/live.mjs +0 -4
- package/_mjs/Console/live.mjs.map +1 -1
- package/_mjs/Console.mjs.map +1 -1
- package/_mjs/CountdownLatch.mjs +39 -0
- package/_mjs/CountdownLatch.mjs.map +1 -0
- package/_mjs/Differ/api.mjs +5 -20
- package/_mjs/Differ/api.mjs.map +1 -1
- package/_mjs/Differ/definition.mjs +0 -2
- package/_mjs/Differ/definition.mjs.map +1 -1
- package/_mjs/Fiber/FiberMessage.mjs +56 -0
- package/_mjs/Fiber/FiberMessage.mjs.map +1 -0
- package/_mjs/Fiber/FiberRuntime.mjs +728 -0
- package/_mjs/Fiber/FiberRuntime.mjs.map +1 -0
- 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.map +1 -1
- package/_mjs/Fiber/api/collectAll.mjs +3 -4
- package/_mjs/Fiber/api/collectAll.mjs.map +1 -1
- package/_mjs/Fiber/api/fromIO.mjs +1 -2
- package/_mjs/Fiber/api/fromIO.mjs.map +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 +3 -4
- package/_mjs/Fiber/api/interrupt.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptAll.mjs +3 -6
- package/_mjs/Fiber/api/interruptAll.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptAs.mjs +13 -5
- package/_mjs/Fiber/api/interruptAs.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptFork.mjs +2 -5
- package/_mjs/Fiber/api/interruptFork.mjs.map +1 -1
- package/_mjs/Fiber/api/join.mjs +3 -3
- package/_mjs/Fiber/api/join.mjs.map +1 -1
- package/_mjs/Fiber/api/joinAll.mjs +1 -2
- package/_mjs/Fiber/api/joinAll.mjs.map +1 -1
- package/_mjs/Fiber/api/location.mjs +1 -3
- package/_mjs/Fiber/api/location.mjs.map +1 -1
- package/_mjs/Fiber/api/mapFiber.mjs +5 -4
- package/_mjs/Fiber/api/mapFiber.mjs.map +1 -1
- package/_mjs/Fiber/api/mapIO.mjs +11 -10
- package/_mjs/Fiber/api/mapIO.mjs.map +1 -1
- package/_mjs/Fiber/api/poll.mjs.map +1 -1
- package/_mjs/Fiber/api/zipWith.mjs +6 -5
- package/_mjs/Fiber/api/zipWith.mjs.map +1 -1
- package/_mjs/Fiber/constructors.mjs +0 -6
- package/_mjs/Fiber/constructors.mjs.map +1 -1
- package/_mjs/Fiber/definition.mjs +9 -5
- package/_mjs/Fiber/definition.mjs.map +1 -1
- package/_mjs/Fiber.mjs +3 -4
- package/_mjs/Fiber.mjs.map +1 -1
- package/_mjs/FiberDescriptor.mjs +1 -4
- package/_mjs/FiberDescriptor.mjs.map +1 -1
- package/_mjs/FiberRef/api/locallyScoped.mjs +5 -4
- package/_mjs/FiberRef/api/locallyScoped.mjs.map +1 -1
- package/_mjs/FiberRef/api/locallyScopedWith.mjs +5 -4
- package/_mjs/FiberRef/api/locallyScopedWith.mjs.map +1 -1
- package/_mjs/FiberRef/api.mjs +64 -66
- package/_mjs/FiberRef/api.mjs.map +1 -1
- package/_mjs/FiberRef/constructors.mjs +1 -4
- package/_mjs/FiberRef/constructors.mjs.map +1 -1
- package/_mjs/FiberRef/definition.mjs +5 -10
- package/_mjs/FiberRef/definition.mjs.map +1 -1
- package/_mjs/FiberRef/unsafe.mjs +17 -30
- package/_mjs/FiberRef/unsafe.mjs.map +1 -1
- package/_mjs/FiberRef.mjs +2 -2
- package/_mjs/FiberRef.mjs.map +1 -1
- package/_mjs/FiberRefs/api.mjs +70 -24
- package/_mjs/FiberRefs/api.mjs.map +1 -1
- package/_mjs/FiberRefs/definition.mjs +2 -13
- package/_mjs/FiberRefs/definition.mjs.map +1 -1
- package/_mjs/FiberRefs/join.mjs +51 -61
- package/_mjs/FiberRefs/join.mjs.map +1 -1
- package/_mjs/FiberRefs.mjs.map +1 -1
- package/_mjs/FiberScope/constructors.mjs +0 -2
- package/_mjs/FiberScope/constructors.mjs.map +1 -1
- package/_mjs/FiberScope/definition.mjs +15 -12
- package/_mjs/FiberScope/definition.mjs.map +1 -1
- package/_mjs/FiberScope.mjs.map +1 -1
- package/_mjs/FiberStatus/constructors.mjs +5 -15
- package/_mjs/FiberStatus/constructors.mjs.map +1 -1
- package/_mjs/FiberStatus/definition.mjs +14 -66
- package/_mjs/FiberStatus/definition.mjs.map +1 -1
- package/_mjs/FiberStatus.mjs.map +1 -1
- package/_mjs/Future/api.mjs +87 -110
- package/_mjs/Future/api.mjs.map +1 -1
- package/_mjs/Future/constructors.mjs +1 -5
- package/_mjs/Future/constructors.mjs.map +1 -1
- package/_mjs/Future/definition.mjs +3 -9
- package/_mjs/Future/definition.mjs.map +1 -1
- package/_mjs/Future.mjs.map +1 -1
- package/_mjs/Hub/api.mjs +98 -123
- package/_mjs/Hub/api.mjs.map +1 -1
- package/_mjs/Hub/definition.mjs +13 -3
- package/_mjs/Hub/definition.mjs.map +1 -1
- package/_mjs/Hub/internal.mjs +30 -90
- package/_mjs/Hub/internal.mjs.map +1 -1
- package/_mjs/Hub.mjs.map +1 -1
- package/_mjs/IO/api/acquireRelease.mjs +0 -1
- package/_mjs/IO/api/acquireRelease.mjs.map +1 -1
- package/_mjs/IO/api/acquireReleaseExit.mjs +1 -2
- package/_mjs/IO/api/acquireReleaseExit.mjs.map +1 -1
- package/_mjs/IO/api/acquireReleaseInterruptible.mjs +0 -1
- package/_mjs/IO/api/acquireReleaseInterruptible.mjs.map +1 -1
- package/_mjs/IO/api/acquireReleaseInterruptibleExit.mjs +2 -2
- package/_mjs/IO/api/acquireReleaseInterruptibleExit.mjs.map +1 -1
- package/_mjs/IO/api/addFinalizer.mjs +0 -1
- package/_mjs/IO/api/addFinalizer.mjs.map +1 -1
- package/_mjs/IO/api/addFinalizerExit.mjs +1 -2
- package/_mjs/IO/api/addFinalizerExit.mjs.map +1 -1
- package/_mjs/IO/api/asyncIO.mjs +8 -8
- package/_mjs/IO/api/asyncIO.mjs.map +1 -1
- package/_mjs/IO/api/asyncInterrupt.mjs +65 -0
- package/_mjs/IO/api/asyncInterrupt.mjs.map +1 -0
- package/_mjs/IO/api/bracket.mjs +2 -3
- 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/clockWith.mjs +2 -5
- package/_mjs/IO/api/clockWith.mjs.map +1 -1
- package/_mjs/IO/api/concurrency.mjs +8 -11
- package/_mjs/IO/api/concurrency.mjs.map +1 -1
- package/_mjs/IO/api/concurrentFinalizers.mjs +1 -2
- package/_mjs/IO/api/concurrentFinalizers.mjs.map +1 -1
- package/_mjs/IO/api/consoleWith.mjs +2 -5
- package/_mjs/IO/api/consoleWith.mjs.map +1 -1
- package/_mjs/IO/api/core-scope.mjs +56 -94
- package/_mjs/IO/api/core-scope.mjs.map +1 -1
- package/_mjs/IO/api/delay.mjs +12 -0
- package/_mjs/IO/api/delay.mjs.map +1 -0
- package/_mjs/IO/api/ensuringChildren.mjs +7 -5
- package/_mjs/IO/api/ensuringChildren.mjs.map +1 -1
- package/_mjs/IO/api/environment.mjs +29 -42
- package/_mjs/IO/api/environment.mjs.map +1 -1
- package/_mjs/IO/api/foreachConcurrent.mjs +104 -0
- package/_mjs/IO/api/foreachConcurrent.mjs.map +1 -0
- package/_mjs/IO/api/foreachExec.mjs +3 -4
- package/_mjs/IO/api/foreachExec.mjs.map +1 -1
- package/_mjs/IO/api/fork.mjs +64 -0
- package/_mjs/IO/api/fork.mjs.map +1 -0
- package/_mjs/IO/api/forkAll.mjs +3 -3
- package/_mjs/IO/api/forkAll.mjs.map +1 -1
- package/_mjs/IO/api/forkIn.mjs +7 -6
- package/_mjs/IO/api/forkIn.mjs.map +1 -1
- package/_mjs/IO/api/forkScoped.mjs +1 -2
- package/_mjs/IO/api/forkScoped.mjs.map +1 -1
- package/_mjs/IO/api/fulfill.mjs +7 -6
- package/_mjs/IO/api/fulfill.mjs.map +1 -1
- package/_mjs/IO/api/interrupt.mjs +45 -58
- package/_mjs/IO/api/interrupt.mjs.map +1 -1
- package/_mjs/IO/api/memoize.mjs +1 -2
- package/_mjs/IO/api/memoize.mjs.map +1 -1
- package/_mjs/IO/api/onExit.mjs +5 -4
- package/_mjs/IO/api/onExit.mjs.map +1 -1
- package/_mjs/IO/api/onTermination.mjs +5 -4
- package/_mjs/IO/api/onTermination.mjs.map +1 -1
- package/_mjs/IO/api/once.mjs +1 -2
- package/_mjs/IO/api/once.mjs.map +1 -1
- package/_mjs/IO/api/provideLayer.mjs +5 -4
- package/_mjs/IO/api/provideLayer.mjs.map +1 -1
- package/_mjs/IO/api/provideSomeLayer.mjs +5 -12
- package/_mjs/IO/api/provideSomeLayer.mjs.map +1 -1
- package/_mjs/IO/api/race.mjs +7 -7
- package/_mjs/IO/api/race.mjs.map +1 -1
- package/_mjs/IO/api/raceFirst.mjs +5 -4
- package/_mjs/IO/api/raceFirst.mjs.map +1 -1
- package/_mjs/IO/api/randomWith.mjs +1 -4
- package/_mjs/IO/api/randomWith.mjs.map +1 -1
- package/_mjs/IO/api/repeat.mjs +8 -13
- package/_mjs/IO/api/repeat.mjs.map +1 -1
- package/_mjs/IO/api/retry.mjs +12 -18
- package/_mjs/IO/api/retry.mjs.map +1 -1
- package/_mjs/IO/api/schedule.mjs +15 -15
- package/_mjs/IO/api/schedule.mjs.map +1 -1
- package/_mjs/IO/api/scope.mjs +0 -1
- package/_mjs/IO/api/scope.mjs.map +1 -1
- package/_mjs/IO/api/scopeWith.mjs +0 -1
- package/_mjs/IO/api/scopeWith.mjs.map +1 -1
- package/_mjs/IO/api/scoped.mjs +3 -6
- package/_mjs/IO/api/scoped.mjs.map +1 -1
- package/_mjs/IO/api/sequenceT.mjs +1 -2
- package/_mjs/IO/api/sequenceT.mjs.map +1 -1
- package/_mjs/IO/api/sleep.mjs +0 -1
- package/_mjs/IO/api/sleep.mjs.map +1 -1
- package/_mjs/IO/api/stateful.mjs +0 -1
- package/_mjs/IO/api/stateful.mjs.map +1 -1
- package/_mjs/IO/api/supervised.mjs +5 -9
- package/_mjs/IO/api/supervised.mjs.map +1 -1
- package/_mjs/IO/api/timeout.mjs +10 -9
- package/_mjs/IO/api/timeout.mjs.map +1 -1
- package/_mjs/IO/api/withChildren.mjs +2 -4
- package/_mjs/IO/api/withChildren.mjs.map +1 -1
- package/_mjs/IO/api/withEarlyRelease.mjs +1 -2
- package/_mjs/IO/api/withEarlyRelease.mjs.map +1 -1
- package/_mjs/IO/api/withFinalizer.mjs +5 -4
- package/_mjs/IO/api/withFinalizer.mjs.map +1 -1
- package/_mjs/IO/api/withFinalizerExit.mjs +5 -4
- package/_mjs/IO/api/withFinalizerExit.mjs.map +1 -1
- package/_mjs/IO/api/zipConcurrent.mjs +41 -0
- package/_mjs/IO/api/zipConcurrent.mjs.map +1 -0
- package/_mjs/IO/api.mjs +545 -797
- package/_mjs/IO/api.mjs.map +1 -1
- package/_mjs/IO/definition.mjs +107 -150
- package/_mjs/IO/definition.mjs.map +1 -1
- package/_mjs/IO/runtime.mjs +51 -86
- package/_mjs/IO/runtime.mjs.map +1 -1
- package/_mjs/IO.mjs +7 -5
- package/_mjs/IO.mjs.map +1 -1
- package/_mjs/IOEnv/definition.mjs +1 -2
- package/_mjs/IOEnv/definition.mjs.map +1 -1
- package/_mjs/IOEnv/live.mjs +1 -2
- package/_mjs/IOEnv/live.mjs.map +1 -1
- package/_mjs/IOEnv/services.mjs +0 -1
- package/_mjs/IOEnv/services.mjs.map +1 -1
- package/_mjs/IOEnv.mjs.map +1 -1
- package/_mjs/InterruptStatus/constructors.mjs +0 -3
- package/_mjs/InterruptStatus/constructors.mjs.map +1 -1
- package/_mjs/InterruptStatus/definition.mjs +0 -3
- package/_mjs/InterruptStatus/definition.mjs.map +1 -1
- package/_mjs/InterruptStatus.mjs.map +1 -1
- package/_mjs/Layer/MemoMap.mjs +54 -82
- package/_mjs/Layer/MemoMap.mjs.map +1 -1
- package/_mjs/Layer/api.mjs +93 -130
- package/_mjs/Layer/api.mjs.map +1 -1
- package/_mjs/Layer/definition.mjs +15 -34
- package/_mjs/Layer/definition.mjs.map +1 -1
- package/_mjs/Layer.mjs.map +1 -1
- package/_mjs/LogLevel.mjs +24 -29
- package/_mjs/LogLevel.mjs.map +1 -1
- package/_mjs/LogSpan.mjs +16 -18
- package/_mjs/LogSpan.mjs.map +1 -1
- package/_mjs/Logger/api.mjs +16 -14
- package/_mjs/Logger/api.mjs.map +1 -1
- package/_mjs/Logger/constructors.mjs +3 -11
- package/_mjs/Logger/constructors.mjs.map +1 -1
- package/_mjs/Logger/definition.mjs +0 -1
- package/_mjs/Logger/definition.mjs.map +1 -1
- package/_mjs/Logger.mjs.map +1 -1
- package/_mjs/Push/api.mjs +417 -0
- package/_mjs/Push/api.mjs.map +1 -0
- package/_mjs/Push/definition.mjs +33 -0
- package/_mjs/Push/definition.mjs.map +1 -0
- package/_mjs/Push/internal.mjs +26 -0
- package/_mjs/Push/internal.mjs.map +1 -0
- package/_mjs/Push.mjs +5 -0
- package/_mjs/Push.mjs.map +1 -0
- package/_mjs/Queue/api/dimapIO.mjs +101 -42
- package/_mjs/Queue/api/dimapIO.mjs.map +1 -1
- package/_mjs/Queue/api/filterInputIO.mjs +59 -24
- package/_mjs/Queue/api/filterInputIO.mjs.map +1 -1
- package/_mjs/Queue/api/filterOutputIO.mjs +70 -32
- package/_mjs/Queue/api/filterOutputIO.mjs.map +1 -1
- package/_mjs/Queue/api/operations.mjs +18 -22
- package/_mjs/Queue/api/operations.mjs.map +1 -1
- package/_mjs/Queue/api/poll.mjs +1 -2
- package/_mjs/Queue/api/poll.mjs.map +1 -1
- package/_mjs/Queue/api/takeBetween.mjs +23 -27
- package/_mjs/Queue/api/takeBetween.mjs.map +1 -1
- package/_mjs/Queue/api/zipWithIO.mjs +30 -33
- package/_mjs/Queue/api/zipWithIO.mjs.map +1 -1
- package/_mjs/Queue/api.mjs.map +1 -1
- package/_mjs/Queue/constructors.mjs +5 -9
- package/_mjs/Queue/constructors.mjs.map +1 -1
- package/_mjs/Queue/definition.mjs +14 -7
- package/_mjs/Queue/definition.mjs.map +1 -1
- package/_mjs/Queue/internal.mjs +57 -93
- package/_mjs/Queue/internal.mjs.map +1 -1
- package/_mjs/Queue/strategy.mjs +28 -55
- package/_mjs/Queue/strategy.mjs.map +1 -1
- package/_mjs/Queue.mjs.map +1 -1
- package/_mjs/Random/api.mjs +0 -8
- package/_mjs/Random/api.mjs.map +1 -1
- package/_mjs/Random/definition.mjs +0 -2
- package/_mjs/Random/definition.mjs.map +1 -1
- package/_mjs/Random/live.mjs +2 -9
- package/_mjs/Random/live.mjs.map +1 -1
- package/_mjs/Random.mjs.map +1 -1
- package/_mjs/Ref/Atomic.mjs +49 -3
- package/_mjs/Ref/Atomic.mjs.map +1 -1
- package/_mjs/Ref/Derived.mjs +11 -9
- package/_mjs/Ref/Derived.mjs.map +1 -1
- package/_mjs/Ref/DerivedAll.mjs +15 -11
- package/_mjs/Ref/DerivedAll.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/api.mjs +82 -68
- package/_mjs/Ref/Synchronized/api.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/constructors.mjs +1 -2
- package/_mjs/Ref/Synchronized/constructors.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/definition.mjs +16 -28
- package/_mjs/Ref/Synchronized/definition.mjs.map +1 -1
- package/_mjs/Ref/Synchronized.mjs +5 -0
- package/_mjs/Ref/Synchronized.mjs.map +1 -0
- package/_mjs/Ref/api/collect.mjs +6 -5
- package/_mjs/Ref/api/collect.mjs.map +1 -1
- package/_mjs/Ref/api/dimap.mjs +45 -41
- package/_mjs/Ref/api/dimap.mjs.map +1 -1
- package/_mjs/Ref/api/filter.mjs +12 -10
- package/_mjs/Ref/api/filter.mjs.map +1 -1
- package/_mjs/Ref/api/get.mjs +0 -1
- package/_mjs/Ref/api/get.mjs.map +1 -1
- package/_mjs/Ref/api/match.mjs +7 -7
- package/_mjs/Ref/api/match.mjs.map +1 -1
- package/_mjs/Ref/api/matchAll.mjs +5 -5
- package/_mjs/Ref/api/matchAll.mjs.map +1 -1
- package/_mjs/Ref/api/modify.mjs +63 -143
- package/_mjs/Ref/api/modify.mjs.map +1 -1
- package/_mjs/Ref/api/set.mjs +7 -6
- package/_mjs/Ref/api/set.mjs.map +1 -1
- package/_mjs/Ref/api.mjs +5 -7
- package/_mjs/Ref/api.mjs.map +1 -1
- package/_mjs/Ref/constructors.mjs +2 -3
- package/_mjs/Ref/constructors.mjs.map +1 -1
- package/_mjs/Ref/definition.mjs +10 -3
- package/_mjs/Ref/definition.mjs.map +1 -1
- package/_mjs/Ref/symbols.mjs +25 -0
- package/_mjs/Ref/symbols.mjs.map +1 -0
- package/_mjs/Ref.mjs +4 -2
- package/_mjs/Ref.mjs.map +1 -1
- package/_mjs/RefSubject/Atomic.mjs +100 -0
- package/_mjs/RefSubject/Atomic.mjs.map +1 -0
- package/_mjs/RefSubject/Synchronized/api.mjs +15 -0
- package/_mjs/RefSubject/Synchronized/api.mjs.map +1 -0
- package/_mjs/RefSubject/Synchronized/definition.mjs +45 -0
- package/_mjs/RefSubject/Synchronized/definition.mjs.map +1 -0
- package/_mjs/RefSubject/api.mjs +220 -0
- package/_mjs/RefSubject/api.mjs.map +1 -0
- package/_mjs/RefSubject/definition.mjs +11 -0
- package/_mjs/RefSubject/definition.mjs.map +1 -0
- package/_mjs/RefSubject.mjs +5 -0
- package/_mjs/RefSubject.mjs.map +1 -0
- package/_mjs/Reloadable/api.mjs +3 -12
- package/_mjs/Reloadable/api.mjs.map +1 -1
- package/_mjs/Reloadable/constructors.mjs +14 -26
- package/_mjs/Reloadable/constructors.mjs.map +1 -1
- package/_mjs/Reloadable/definition.mjs +0 -6
- package/_mjs/Reloadable/definition.mjs.map +1 -1
- package/_mjs/Reloadable.mjs.map +1 -1
- package/_mjs/RuntimeConfig.mjs +0 -31
- package/_mjs/RuntimeConfig.mjs.map +1 -1
- package/_mjs/RuntimeFlag.mjs +2 -0
- package/_mjs/RuntimeFlag.mjs.map +1 -0
- package/_mjs/RuntimeFlags/Patch.mjs +58 -0
- package/_mjs/RuntimeFlags/Patch.mjs.map +1 -0
- package/_mjs/RuntimeFlags/RuntimeFlags.mjs +82 -0
- package/_mjs/RuntimeFlags/RuntimeFlags.mjs.map +1 -0
- package/_mjs/RuntimeFlags.mjs +4 -0
- package/_mjs/RuntimeFlags.mjs.map +1 -0
- package/_mjs/STM/api/core-api.mjs +29 -27
- package/_mjs/STM/api/core-api.mjs.map +1 -1
- package/_mjs/STM/api/core-constructors.mjs +0 -8
- package/_mjs/STM/api/core-constructors.mjs.map +1 -1
- package/_mjs/STM/api.mjs +182 -212
- package/_mjs/STM/api.mjs.map +1 -1
- package/_mjs/STM/definition.mjs +14 -36
- package/_mjs/STM/definition.mjs.map +1 -1
- package/_mjs/STM/driver.mjs +12 -54
- package/_mjs/STM/driver.mjs.map +1 -1
- package/_mjs/STM/internal/CommitState.mjs +5 -25
- package/_mjs/STM/internal/CommitState.mjs.map +1 -1
- package/_mjs/STM/internal/Entry.mjs +0 -12
- package/_mjs/STM/internal/Entry.mjs.map +1 -1
- package/_mjs/STM/internal/Journal.mjs +50 -128
- package/_mjs/STM/internal/Journal.mjs.map +1 -1
- package/_mjs/STM/internal/TryCommit.mjs +3 -8
- package/_mjs/STM/internal/TryCommit.mjs.map +1 -1
- package/_mjs/STM/internal/Versioned.mjs +0 -1
- package/_mjs/STM/internal/Versioned.mjs.map +1 -1
- package/_mjs/STM.mjs +2 -2
- package/_mjs/STM.mjs.map +1 -1
- package/_mjs/Schedule/Decision.mjs +14 -25
- package/_mjs/Schedule/Decision.mjs.map +1 -1
- package/_mjs/Schedule/Driver.mjs +0 -2
- package/_mjs/Schedule/Driver.mjs.map +1 -1
- package/_mjs/Schedule/api/driver.mjs +6 -8
- package/_mjs/Schedule/api/driver.mjs.map +1 -1
- package/_mjs/Schedule/api.mjs +379 -374
- package/_mjs/Schedule/api.mjs.map +1 -1
- package/_mjs/Schedule/definition.mjs.map +1 -1
- package/_mjs/Schedule.mjs.map +1 -1
- package/_mjs/Scope/Finalizer/definition.mjs +0 -1
- package/_mjs/Scope/Finalizer/definition.mjs.map +1 -1
- package/_mjs/Scope/Finalizer.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs +12 -12
- package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/api.mjs +59 -60
- package/_mjs/Scope/ReleaseMap/api.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/constructors.mjs +1 -4
- package/_mjs/Scope/ReleaseMap/constructors.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/definition.mjs +0 -2
- package/_mjs/Scope/ReleaseMap/definition.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap.mjs.map +1 -1
- package/_mjs/Scope/api.mjs +28 -45
- package/_mjs/Scope/api.mjs.map +1 -1
- package/_mjs/Scope/definition.mjs +0 -4
- package/_mjs/Scope/definition.mjs.map +1 -1
- package/_mjs/Scope.mjs.map +1 -1
- package/_mjs/ScopedRef/api.mjs +7 -11
- package/_mjs/ScopedRef/api.mjs.map +1 -1
- package/_mjs/ScopedRef/definition.mjs +1 -3
- package/_mjs/ScopedRef/definition.mjs.map +1 -1
- package/_mjs/ScopedRef.mjs.map +1 -1
- package/_mjs/Sink/api.mjs +282 -383
- package/_mjs/Sink/api.mjs.map +1 -1
- package/_mjs/Sink/definition.mjs +0 -1
- package/_mjs/Sink/definition.mjs.map +1 -1
- package/_mjs/Sink.mjs.map +1 -1
- package/_mjs/State/api.mjs +16 -19
- package/_mjs/State/api.mjs.map +1 -1
- package/_mjs/State/definition.mjs +2 -4
- package/_mjs/State/definition.mjs.map +1 -1
- package/_mjs/State/internal.mjs +0 -1
- package/_mjs/State/internal.mjs.map +1 -1
- package/_mjs/State.mjs.map +1 -1
- package/_mjs/Stream/api/zipAllWith.mjs +15 -30
- package/_mjs/Stream/api/zipAllWith.mjs.map +1 -1
- package/_mjs/Stream/api/zipWith.mjs +5 -4
- package/_mjs/Stream/api/zipWith.mjs.map +1 -1
- package/_mjs/Stream/api/zipWithChunks.mjs +13 -23
- package/_mjs/Stream/api/zipWithChunks.mjs.map +1 -1
- package/_mjs/Stream/api.mjs +827 -936
- package/_mjs/Stream/api.mjs.map +1 -1
- package/_mjs/Stream/definition.mjs +0 -4
- package/_mjs/Stream/definition.mjs.map +1 -1
- package/_mjs/Stream/internal/DebounceState.mjs +18 -34
- package/_mjs/Stream/internal/DebounceState.mjs.map +1 -1
- package/_mjs/Stream/internal/Handoff.mjs +33 -51
- package/_mjs/Stream/internal/Handoff.mjs.map +1 -1
- package/_mjs/Stream/internal/Pull.mjs +2 -9
- package/_mjs/Stream/internal/Pull.mjs.map +1 -1
- package/_mjs/Stream/internal/SinkEndReason.mjs +13 -22
- package/_mjs/Stream/internal/SinkEndReason.mjs.map +1 -1
- package/_mjs/Stream/internal/Take.mjs +28 -42
- package/_mjs/Stream/internal/Take.mjs.map +1 -1
- package/_mjs/Stream/internal/util.mjs +3 -6
- package/_mjs/Stream/internal/util.mjs.map +1 -1
- package/_mjs/Stream.mjs.map +1 -1
- package/_mjs/Subject/Atomic.mjs +22 -0
- package/_mjs/Subject/Atomic.mjs.map +1 -0
- package/_mjs/Subject/api.mjs +18 -0
- package/_mjs/Subject/api.mjs.map +1 -0
- package/_mjs/Subject/definition.mjs +3 -0
- package/_mjs/Subject/definition.mjs.map +1 -0
- package/_mjs/Subject.mjs +5 -0
- package/_mjs/Subject.mjs.map +1 -0
- package/_mjs/SubscriptionRef.mjs +41 -0
- package/_mjs/SubscriptionRef.mjs.map +1 -0
- package/_mjs/Supervisor/api.mjs +22 -29
- package/_mjs/Supervisor/api.mjs.map +1 -1
- package/_mjs/Supervisor/constructors.mjs +2 -14
- package/_mjs/Supervisor/constructors.mjs.map +1 -1
- package/_mjs/Supervisor/definition.mjs +6 -32
- package/_mjs/Supervisor/definition.mjs.map +1 -1
- package/_mjs/Supervisor.mjs.map +1 -1
- package/_mjs/SupervisorPatch.mjs +28 -55
- package/_mjs/SupervisorPatch.mjs.map +1 -1
- package/_mjs/TExit/constructors.mjs +0 -6
- package/_mjs/TExit/constructors.mjs.map +1 -1
- package/_mjs/TExit/definition.mjs +14 -57
- package/_mjs/TExit/definition.mjs.map +1 -1
- package/_mjs/TExit.mjs.map +1 -1
- package/_mjs/TFuture/api.mjs +17 -17
- package/_mjs/TFuture/api.mjs.map +1 -1
- package/_mjs/TFuture/constructors.mjs +1 -4
- package/_mjs/TFuture/constructors.mjs.map +1 -1
- package/_mjs/TFuture/definition.mjs.map +1 -1
- package/_mjs/TFuture.mjs.map +1 -1
- package/_mjs/TReentrantLock/api.mjs +41 -85
- package/_mjs/TReentrantLock/api.mjs.map +1 -1
- package/_mjs/TReentrantLock/definition.mjs +7 -26
- package/_mjs/TReentrantLock/definition.mjs.map +1 -1
- package/_mjs/TReentrantLock.mjs.map +1 -1
- package/_mjs/TRef/api.mjs +79 -257
- package/_mjs/TRef/api.mjs.map +1 -1
- package/_mjs/TRef/constructors.mjs +0 -7
- package/_mjs/TRef/constructors.mjs.map +1 -1
- package/_mjs/TRef/definition.mjs +84 -19
- package/_mjs/TRef/definition.mjs.map +1 -1
- package/_mjs/TRef/symbols.mjs +17 -0
- package/_mjs/TRef/symbols.mjs.map +1 -0
- package/_mjs/TRef.mjs +1 -0
- package/_mjs/TRef.mjs.map +1 -1
- package/_mjs/TSemaphore/api.mjs +26 -32
- package/_mjs/TSemaphore/api.mjs.map +1 -1
- package/_mjs/TSemaphore/constructors.mjs +10 -4
- package/_mjs/TSemaphore/constructors.mjs.map +1 -1
- package/_mjs/TSemaphore/definition.mjs.map +1 -1
- package/_mjs/TSemaphore.mjs.map +1 -1
- package/_mjs/TxnId.mjs +0 -1
- package/_mjs/TxnId.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/dropUntilIO.mjs +19 -20
- package/_mjs/collection/immutable/Conc/dropUntilIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/dropWhileIO.mjs +19 -20
- package/_mjs/collection/immutable/Conc/dropWhileIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/filterIO.mjs +14 -15
- package/_mjs/collection/immutable/Conc/filterIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/findIO.mjs +17 -22
- package/_mjs/collection/immutable/Conc/findIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/mapIO.mjs +10 -9
- package/_mjs/collection/immutable/Conc/mapIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/takeWhileIO.mjs +28 -30
- package/_mjs/collection/immutable/Conc/takeWhileIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc.mjs.map +1 -1
- package/_mjs/data/Exit/foreachIO.mjs +5 -4
- package/_mjs/data/Exit/foreachIO.mjs.map +1 -1
- package/_mjs/internal/HashedPair.mjs +4 -7
- package/_mjs/internal/HashedPair.mjs.map +1 -1
- package/_mjs/internal/Hub.mjs +13 -158
- package/_mjs/internal/Hub.mjs.map +1 -1
- package/_mjs/internal/IsFatal.mjs +24 -51
- package/_mjs/internal/IsFatal.mjs.map +1 -1
- package/_mjs/internal/MutableQueue.mjs +10 -57
- package/_mjs/internal/MutableQueue.mjs.map +1 -1
- package/_mjs/internal/Scheduler.mjs +0 -11
- package/_mjs/internal/Scheduler.mjs.map +1 -1
- package/_mjs/internal/StackTraceBuilder.mjs +0 -3
- package/_mjs/internal/StackTraceBuilder.mjs.map +1 -1
- package/_src/Cached/api.ts +2 -2
- package/_src/Channel/ChildExecutorDecision/api.ts +14 -17
- package/_src/Channel/UpstreamPullRequest/api.ts +11 -13
- package/_src/Channel/api/interruptWhen.ts +18 -17
- package/_src/Channel/api/mapOutConcurrentIO.ts +66 -0
- package/_src/Channel/api/mergeAll.ts +15 -16
- package/_src/Channel/api/mergeAllUnboundedWith.ts +15 -27
- package/_src/Channel/api/mergeAllWith.ts +114 -126
- package/_src/Channel/api/mergeMap.ts +8 -18
- package/_src/Channel/api/mergeWith.ts +154 -158
- package/_src/Channel/api/toPull.ts +1 -1
- package/_src/Channel/api/zipConcurrent.ts +68 -0
- package/_src/Channel/api.ts +354 -414
- package/_src/Channel/core-api.ts +75 -122
- package/_src/Channel/definition.ts +49 -7
- package/_src/Channel/internal/ChannelExecutor.ts +12 -16
- package/_src/Channel/internal/SingleProducerAsyncInput.ts +2 -4
- package/_src/CountdownLatch.ts +39 -0
- package/_src/Fiber/FiberMessage.ts +78 -0
- package/_src/Fiber/FiberRuntime.ts +822 -0
- package/_src/Fiber/api/awaitAll.ts +1 -1
- package/_src/Fiber/api/collectAll.ts +2 -2
- package/_src/Fiber/api/inheritRefs.ts +1 -1
- package/_src/Fiber/api/interrupt.ts +1 -2
- package/_src/Fiber/api/interruptAll.ts +1 -2
- package/_src/Fiber/api/interruptAs.ts +9 -2
- package/_src/Fiber/api/interruptFork.ts +1 -1
- package/_src/Fiber/api/location.ts +2 -2
- package/_src/Fiber/api/mapFiber.ts +5 -7
- package/_src/Fiber/api/mapIO.ts +21 -21
- package/_src/Fiber/api/zipWith.ts +14 -17
- package/_src/Fiber/definition.ts +17 -16
- package/_src/Fiber.ts +2 -4
- package/_src/FiberDescriptor.ts +1 -8
- package/_src/FiberRef/api/locallyScoped.ts +8 -6
- package/_src/FiberRef/api/locallyScopedWith.ts +5 -7
- package/_src/FiberRef/api.ts +59 -52
- package/_src/FiberRef/unsafe.ts +6 -1
- package/_src/FiberRef.ts +0 -1
- package/_src/FiberRefs/api.ts +69 -14
- package/_src/FiberRefs/definition.ts +15 -7
- package/_src/FiberRefs/join.ts +39 -48
- package/_src/FiberScope/constructors.ts +2 -2
- package/_src/FiberScope/definition.ts +21 -9
- package/_src/FiberStatus/constructors.ts +6 -18
- package/_src/FiberStatus/definition.ts +13 -54
- package/_src/Future/api.ts +67 -53
- package/_src/Hub/api.ts +84 -96
- package/_src/Hub/definition.ts +22 -7
- package/_src/Hub/internal.ts +8 -8
- package/_src/IO/api/acquireRelease.ts +1 -1
- package/_src/IO/api/acquireReleaseExit.ts +1 -1
- package/_src/IO/api/asyncInterrupt.ts +77 -0
- package/_src/IO/api/bracket.ts +1 -1
- package/_src/IO/api/bracketExit.ts +1 -1
- package/_src/IO/api/clockWith.ts +0 -1
- package/_src/IO/api/concurrency.ts +5 -7
- package/_src/IO/api/consoleWith.ts +0 -2
- package/_src/IO/api/core-scope.ts +74 -90
- package/_src/IO/api/delay.ts +8 -0
- package/_src/IO/api/ensuringChildren.ts +8 -7
- package/_src/IO/api/environment.ts +24 -42
- package/_src/IO/api/{foreachC.ts → foreachConcurrent.ts} +30 -18
- package/_src/IO/api/foreachExec.ts +3 -3
- package/_src/IO/api/fork.ts +83 -0
- package/_src/IO/api/forkIn.ts +7 -9
- package/_src/IO/api/fulfill.ts +5 -3
- package/_src/IO/api/interrupt.ts +49 -32
- package/_src/IO/api/onExit.ts +8 -10
- package/_src/IO/api/onTermination.ts +12 -14
- package/_src/IO/api/provideLayer.ts +8 -10
- package/_src/IO/api/provideSomeLayer.ts +5 -14
- package/_src/IO/api/race.ts +19 -21
- package/_src/IO/api/raceFirst.ts +5 -7
- package/_src/IO/api/repeat.ts +3 -5
- package/_src/IO/api/retry.ts +19 -21
- package/_src/IO/api/schedule.ts +20 -21
- package/_src/IO/api/scoped.ts +2 -2
- package/_src/IO/api/sequenceT.ts +7 -1
- package/_src/IO/api/stateful.ts +0 -2
- package/_src/IO/api/supervised.ts +4 -8
- package/_src/IO/api/timeout.ts +10 -16
- package/_src/IO/api/withChildren.ts +2 -4
- package/_src/IO/api/withFinalizer.ts +5 -7
- package/_src/IO/api/withFinalizerExit.ts +6 -5
- package/_src/IO/api/zipConcurrent.ts +69 -0
- package/_src/IO/api.ts +576 -782
- package/_src/IO/definition.ts +150 -137
- package/_src/IO/runtime.ts +53 -64
- package/_src/IO.ts +5 -3
- package/_src/Layer/MemoMap.ts +62 -64
- package/_src/Layer/api.ts +95 -104
- package/_src/Layer/definition.ts +0 -1
- package/_src/LogLevel.ts +24 -16
- package/_src/LogSpan.ts +16 -16
- package/_src/Logger/api.ts +18 -17
- package/_src/Logger/constructors.ts +9 -15
- package/_src/Push/api.ts +702 -0
- package/_src/Push/definition.ts +42 -0
- package/_src/Push/internal.ts +39 -0
- package/_src/Push.ts +5 -0
- package/_src/Queue/api/dimapIO.ts +124 -47
- package/_src/Queue/api/filterInputIO.ts +69 -24
- package/_src/Queue/api/filterOutputIO.ts +77 -17
- package/_src/Queue/api/operations.ts +33 -31
- package/_src/Queue/api/poll.ts +3 -1
- package/_src/Queue/api/takeBetween.ts +29 -30
- package/_src/Queue/api/zipWithIO.ts +47 -36
- package/_src/Queue/constructors.ts +5 -5
- package/_src/Queue/definition.ts +129 -8
- package/_src/Queue/internal.ts +24 -38
- package/_src/Queue/strategy.ts +12 -26
- package/_src/Ref/Atomic.ts +70 -4
- package/_src/Ref/Derived.ts +22 -1
- package/_src/Ref/DerivedAll.ts +26 -2
- package/_src/Ref/Synchronized/api.ts +129 -130
- package/_src/Ref/Synchronized/constructors.ts +1 -1
- package/_src/Ref/Synchronized/definition.ts +21 -14
- package/_src/Ref/Synchronized.ts +5 -0
- package/_src/Ref/api/collect.ts +6 -8
- package/_src/Ref/api/dimap.ts +51 -64
- package/_src/Ref/api/filter.ts +12 -16
- package/_src/Ref/api/get.ts +2 -5
- package/_src/Ref/api/match.ts +8 -7
- package/_src/Ref/api/matchAll.ts +6 -5
- package/_src/Ref/api/modify.ts +61 -165
- package/_src/Ref/api/set.ts +7 -9
- package/_src/Ref/constructors.ts +3 -1
- package/_src/Ref/definition.ts +56 -23
- package/_src/Ref/symbols.ts +29 -0
- package/_src/Ref.ts +2 -0
- package/_src/RefSubject/Atomic.ts +120 -0
- package/_src/RefSubject/Synchronized/api.ts +14 -0
- package/_src/RefSubject/Synchronized/definition.ts +72 -0
- package/_src/RefSubject/api.ts +240 -0
- package/_src/RefSubject/definition.ts +62 -0
- package/_src/RefSubject.ts +5 -0
- package/_src/Reloadable/constructors.ts +2 -2
- package/_src/RuntimeConfig.ts +0 -31
- package/_src/RuntimeFlag.ts +10 -0
- package/_src/RuntimeFlags/Patch.ts +79 -0
- package/_src/RuntimeFlags/RuntimeFlags.ts +112 -0
- package/_src/RuntimeFlags.ts +4 -0
- package/_src/STM/api/core-api.ts +32 -35
- package/_src/STM/api.ts +211 -201
- package/_src/STM/internal/Entry.ts +0 -10
- package/_src/STM/internal/Journal.ts +24 -27
- package/_src/STM.ts +0 -1
- package/_src/Schedule/Decision.ts +10 -8
- package/_src/Schedule/api/driver.ts +2 -6
- package/_src/Schedule/api.ts +471 -474
- package/_src/Schedule/definition.ts +0 -1
- package/_src/Scope/ReleaseMap/api/releaseAll.ts +24 -26
- package/_src/Scope/ReleaseMap/api.ts +77 -74
- package/_src/Scope/ReleaseMap/constructors.ts +1 -1
- package/_src/Scope/api.ts +16 -18
- package/_src/ScopedRef/api.ts +0 -3
- package/_src/ScopedRef/definition.ts +1 -2
- package/_src/Sink/api.ts +326 -354
- package/_src/State/api.ts +12 -8
- package/_src/State/internal.ts +1 -1
- package/_src/Stream/api/zipAllWith.ts +7 -6
- package/_src/Stream/api/zipWith.ts +5 -8
- package/_src/Stream/api/zipWithChunks.ts +7 -6
- package/_src/Stream/api.ts +1086 -1203
- package/_src/Stream/definition.ts +0 -2
- package/_src/Stream/internal/DebounceState.ts +16 -17
- package/_src/Stream/internal/Handoff.ts +32 -36
- package/_src/Stream/internal/SinkEndReason.ts +13 -14
- package/_src/Stream/internal/Take.ts +21 -21
- package/_src/Stream/internal/util.ts +0 -2
- package/_src/Subject/Atomic.ts +28 -0
- package/_src/Subject/api.ts +18 -0
- package/_src/Subject/definition.ts +18 -0
- package/_src/Subject.ts +5 -0
- package/_src/SubscriptionRef.ts +58 -0
- package/_src/Supervisor/api.ts +20 -16
- package/_src/Supervisor/definition.ts +0 -1
- package/_src/SupervisorPatch.ts +10 -6
- package/_src/TExit/definition.ts +0 -8
- package/_src/TFuture/api.ts +23 -17
- package/_src/TFuture/definition.ts +2 -3
- package/_src/TReentrantLock/api.ts +18 -14
- package/_src/TReentrantLock/definition.ts +1 -8
- package/_src/TRef/api.ts +80 -250
- package/_src/TRef/constructors.ts +6 -6
- package/_src/TRef/definition.ts +161 -45
- package/_src/TRef/symbols.ts +19 -0
- package/_src/TRef.ts +1 -0
- package/_src/TSemaphore/api.ts +20 -19
- package/_src/TSemaphore/constructors.ts +7 -0
- package/_src/TSemaphore/definition.ts +1 -1
- package/_src/collection/immutable/Conc/dropUntilIO.ts +19 -21
- package/_src/collection/immutable/Conc/dropWhileIO.ts +21 -23
- package/_src/collection/immutable/Conc/filterIO.ts +15 -17
- package/_src/collection/immutable/Conc/findIO.ts +17 -19
- package/_src/collection/immutable/Conc/mapIO.ts +12 -10
- package/_src/collection/immutable/Conc/takeWhileIO.ts +27 -29
- package/_src/data/Exit/foreachIO.ts +8 -10
- package/_src/global.ts +11 -3
- package/_src/index.ts +10 -1
- package/_src/internal/Hub.ts +17 -27
- package/_src/internal/IsFatal.ts +14 -12
- package/_src/internal/MutableQueue.ts +8 -8
- package/_src/internal/StackTraceBuilder.ts +1 -2
- package/collection/immutable/Conc/dropUntilIO.d.ts +3 -3
- package/collection/immutable/Conc/dropWhileIO.d.ts +3 -3
- package/collection/immutable/Conc/filterIO.d.ts +3 -3
- package/collection/immutable/Conc/findIO.d.ts +2 -2
- package/collection/immutable/Conc/mapIO.d.ts +3 -3
- package/collection/immutable/Conc/takeWhileIO.d.ts +3 -3
- package/data/Exit/foreachIO.d.ts +3 -3
- package/global.d.ts +11 -3
- package/index.d.ts +10 -1
- package/internal/HashedPair.d.ts +2 -2
- package/internal/Hub.d.ts +2 -2
- package/internal/IsFatal.d.ts +3 -3
- package/internal/MutableQueue.d.ts +3 -3
- package/package.json +4 -4
- package/Channel/api/mapOutIOC.d.ts +0 -8
- package/Channel/api/zipC.d.ts +0 -16
- package/Fiber/FiberContext.d.ts +0 -153
- package/Fiber/api/evalOn.d.ts +0 -7
- package/Fiber/api/evalOnIO.d.ts +0 -9
- package/Fiber/api/interruptAsFork.d.ts +0 -8
- package/FiberState/api.d.ts +0 -7
- package/FiberState/constructors.d.ts +0 -22
- package/FiberState/definition.d.ts +0 -38
- package/FiberState.d.ts +0 -3
- package/IO/api/withRuntimeConfig.d.ts +0 -10
- package/IO/api/zipC.d.ts +0 -13
- package/Ref/Atomic/Atomic.d.ts +0 -18
- package/Ref/Atomic/api.d.ts +0 -53
- package/_cjs/Channel/api/mapOutIOC.cjs +0 -63
- package/_cjs/Channel/api/mapOutIOC.cjs.map +0 -1
- package/_cjs/Channel/api/zipC.cjs.map +0 -1
- package/_cjs/Fiber/FiberContext.cjs +0 -1088
- package/_cjs/Fiber/FiberContext.cjs.map +0 -1
- package/_cjs/Fiber/api/evalOn.cjs.map +0 -1
- package/_cjs/Fiber/api/evalOnIO.cjs +0 -31
- package/_cjs/Fiber/api/evalOnIO.cjs.map +0 -1
- package/_cjs/Fiber/api/interruptAsFork.cjs +0 -15
- package/_cjs/Fiber/api/interruptAsFork.cjs.map +0 -1
- package/_cjs/FiberState/api.cjs.map +0 -1
- package/_cjs/FiberState/constructors.cjs.map +0 -1
- package/_cjs/FiberState/definition.cjs.map +0 -1
- package/_cjs/FiberState.cjs.map +0 -1
- package/_cjs/IO/api/foreachC.cjs.map +0 -1
- package/_cjs/IO/api/withRuntimeConfig.cjs.map +0 -1
- package/_cjs/IO/api/zipC.cjs +0 -67
- package/_cjs/IO/api/zipC.cjs.map +0 -1
- package/_cjs/Ref/Atomic/Atomic.cjs +0 -64
- package/_cjs/Ref/Atomic/Atomic.cjs.map +0 -1
- package/_cjs/Ref/Atomic/api.cjs +0 -156
- package/_cjs/Ref/Atomic/api.cjs.map +0 -1
- package/_mjs/Channel/api/mapOutIOC.mjs +0 -32
- package/_mjs/Channel/api/mapOutIOC.mjs.map +0 -1
- package/_mjs/Channel/api/zipC.mjs +0 -30
- package/_mjs/Channel/api/zipC.mjs.map +0 -1
- package/_mjs/Fiber/FiberContext.mjs +0 -1013
- package/_mjs/Fiber/FiberContext.mjs.map +0 -1
- package/_mjs/Fiber/api/evalOn.mjs +0 -17
- package/_mjs/Fiber/api/evalOn.mjs.map +0 -1
- package/_mjs/Fiber/api/evalOnIO.mjs +0 -16
- package/_mjs/Fiber/api/evalOnIO.mjs.map +0 -1
- package/_mjs/Fiber/api/interruptAsFork.mjs +0 -8
- package/_mjs/Fiber/api/interruptAsFork.mjs.map +0 -1
- package/_mjs/FiberState/api.mjs +0 -15
- package/_mjs/FiberState/api.mjs.map +0 -1
- package/_mjs/FiberState/constructors.mjs +0 -26
- package/_mjs/FiberState/constructors.mjs.map +0 -1
- package/_mjs/FiberState/definition.mjs +0 -26
- package/_mjs/FiberState/definition.mjs.map +0 -1
- package/_mjs/FiberState.mjs +0 -5
- package/_mjs/FiberState.mjs.map +0 -1
- package/_mjs/IO/api/foreachC.mjs +0 -118
- package/_mjs/IO/api/foreachC.mjs.map +0 -1
- package/_mjs/IO/api/withRuntimeConfig.mjs +0 -13
- package/_mjs/IO/api/withRuntimeConfig.mjs.map +0 -1
- package/_mjs/IO/api/zipC.mjs +0 -39
- package/_mjs/IO/api/zipC.mjs.map +0 -1
- package/_mjs/Ref/Atomic/Atomic.mjs +0 -47
- package/_mjs/Ref/Atomic/Atomic.mjs.map +0 -1
- package/_mjs/Ref/Atomic/api.mjs +0 -127
- package/_mjs/Ref/Atomic/api.mjs.map +0 -1
- package/_src/Channel/api/mapOutIOC.ts +0 -63
- package/_src/Channel/api/zipC.ts +0 -104
- package/_src/Fiber/FiberContext.ts +0 -1019
- package/_src/Fiber/api/evalOn.ts +0 -17
- package/_src/Fiber/api/evalOnIO.ts +0 -19
- package/_src/Fiber/api/interruptAsFork.ts +0 -7
- package/_src/FiberState/api.ts +0 -12
- package/_src/FiberState/constructors.ts +0 -33
- package/_src/FiberState/definition.ts +0 -44
- package/_src/FiberState.ts +0 -5
- package/_src/IO/api/withRuntimeConfig.ts +0 -20
- package/_src/IO/api/zipC.ts +0 -74
- package/_src/Ref/Atomic/Atomic.ts +0 -56
- package/_src/Ref/Atomic/api.ts +0 -124
package/_mjs/IO/api.mjs
CHANGED
|
@@ -1,276 +1,233 @@
|
|
|
1
1
|
const fileName_1 = "(@fncts/io) src/IO/api.ts";
|
|
2
2
|
import * as tsplus_module_1 from "@fncts/base/data/FiberId/constructors";
|
|
3
|
-
import * as tsplus_module_2 from "@fncts/base/data/
|
|
4
|
-
import * as tsplus_module_3 from "@fncts/base/data/
|
|
5
|
-
import * as tsplus_module_4 from "@fncts/base/data/
|
|
6
|
-
import * as tsplus_module_5 from "@fncts/base/
|
|
7
|
-
import * as tsplus_module_6 from "@fncts/base/data/
|
|
8
|
-
import * as tsplus_module_7 from "@fncts/
|
|
3
|
+
import * as tsplus_module_2 from "@fncts/base/data/Cause/api";
|
|
4
|
+
import * as tsplus_module_3 from "@fncts/base/data/Maybe/constructors";
|
|
5
|
+
import * as tsplus_module_4 from "@fncts/base/data/Either/destructors";
|
|
6
|
+
import * as tsplus_module_5 from "@fncts/base/util/predicates";
|
|
7
|
+
import * as tsplus_module_6 from "@fncts/base/data/Maybe/api";
|
|
8
|
+
import * as tsplus_module_7 from "@fncts/io/RuntimeFlags/RuntimeFlags";
|
|
9
9
|
import * as tsplus_module_8 from "@fncts/io/InterruptStatus/constructors";
|
|
10
|
-
import * as tsplus_module_9 from "@fncts/base/data/
|
|
10
|
+
import * as tsplus_module_9 from "@fncts/base/data/Either/constructors";
|
|
11
11
|
import * as tsplus_module_10 from "@fncts/base/collection/immutable/Conc/api";
|
|
12
12
|
import * as tsplus_module_11 from "@fncts/base/collection/Iterable/api";
|
|
13
13
|
import * as tsplus_module_12 from "@fncts/base/collection/immutable/Conc/constructors";
|
|
14
14
|
import * as tsplus_module_13 from "@fncts/base/data/Maybe/definition";
|
|
15
15
|
import * as tsplus_module_14 from "@fncts/base/control/Eval/run";
|
|
16
16
|
import * as tsplus_module_15 from "@fncts/base/data/Exit/api";
|
|
17
|
-
import * as tsplus_module_16 from "@fncts/base/data/
|
|
18
|
-
import * as tsplus_module_17 from "@fncts/base/
|
|
19
|
-
import * as tsplus_module_18 from "@fncts/base/collection/immutable/
|
|
20
|
-
import * as tsplus_module_19 from "@fncts/base/collection/immutable/
|
|
21
|
-
import * as tsplus_module_20 from "@fncts/base/collection/immutable/ImmutableArray/
|
|
17
|
+
import * as tsplus_module_16 from "@fncts/base/data/Maybe/destructors";
|
|
18
|
+
import * as tsplus_module_17 from "@fncts/base/data/Trace/constructors";
|
|
19
|
+
import * as tsplus_module_18 from "@fncts/base/collection/immutable/Conc/api/empty";
|
|
20
|
+
import * as tsplus_module_19 from "@fncts/base/collection/immutable/List/api";
|
|
21
|
+
import * as tsplus_module_20 from "@fncts/base/collection/immutable/ImmutableArray/constructors";
|
|
22
|
+
import * as tsplus_module_21 from "@fncts/base/collection/immutable/ImmutableArray/api";
|
|
23
|
+
import * as tsplus_module_22 from "@fncts/base/data/Exit/constructors";
|
|
22
24
|
export const async = async_1;
|
|
23
|
-
export const
|
|
24
|
-
export const
|
|
25
|
-
export const apSecond_ = apSecond_1;
|
|
26
|
-
export const as_ = as_1;
|
|
25
|
+
export const zipRight = zipRight_1;
|
|
26
|
+
export const as = as_1;
|
|
27
27
|
export const asUnit = asUnit_1;
|
|
28
|
-
export const
|
|
29
|
-
export const
|
|
30
|
-
export const
|
|
31
|
-
export const
|
|
32
|
-
export const
|
|
28
|
+
export const catchTagWith = catchTagWith_1;
|
|
29
|
+
export const catchAll = catchAll_1;
|
|
30
|
+
export const catchAllCause = catchAllCause_1;
|
|
31
|
+
export const flatMap = flatMap_1;
|
|
32
|
+
export const collectIO = collectIO_1;
|
|
33
33
|
export const defer = defer_1;
|
|
34
|
-
export const deferWith = deferWith_1;
|
|
35
|
-
export const descriptorWith = descriptorWith_1;
|
|
36
34
|
export const either = either_1;
|
|
37
35
|
export const eventually = eventually_1;
|
|
38
36
|
export const fail = fail_1;
|
|
39
37
|
export const failNow = failNow_1;
|
|
38
|
+
export const refailCause = refailCause_1;
|
|
40
39
|
export const failCauseNow = failCauseNow_1;
|
|
41
40
|
export const failCause = failCause_1;
|
|
42
|
-
export const
|
|
43
|
-
export const
|
|
44
|
-
export const
|
|
45
|
-
export const
|
|
46
|
-
export const
|
|
47
|
-
export const
|
|
48
|
-
export const
|
|
41
|
+
export const filter = filter_1;
|
|
42
|
+
export const filterMapWithIndex = filterMapWithIndex_1;
|
|
43
|
+
export const filterOrElse = filterOrElse_1;
|
|
44
|
+
export const foldLeft = foldLeft_1;
|
|
45
|
+
export const foreach = foreach_1;
|
|
46
|
+
export const foreachWithIndexDiscard = foreachWithIndexDiscard_1;
|
|
47
|
+
export const foreachDiscard = foreachDiscard_1;
|
|
49
48
|
export const forever = forever_1;
|
|
50
49
|
export const fromPromiseCatch = fromPromiseCatch_1;
|
|
51
|
-
export const
|
|
50
|
+
export const getOrFailWith = getOrFailWith_1;
|
|
52
51
|
export const haltNow = haltNow_1;
|
|
53
|
-
export const
|
|
54
|
-
export const
|
|
55
|
-
export const
|
|
56
|
-
export const
|
|
57
|
-
export const
|
|
58
|
-
export const
|
|
59
|
-
export const
|
|
60
|
-
export const
|
|
61
|
-
export const
|
|
62
|
-
export const
|
|
63
|
-
export const
|
|
64
|
-
export const
|
|
65
|
-
export const
|
|
52
|
+
export const ifIO = ifIO_1;
|
|
53
|
+
export const iterate = iterate_1;
|
|
54
|
+
export const loop = loop_1;
|
|
55
|
+
export const map = map_1;
|
|
56
|
+
export const mapError = mapError_1;
|
|
57
|
+
export const mapErrorCause = mapErrorCause_1;
|
|
58
|
+
export const matchCauseIO = matchCauseIO_1;
|
|
59
|
+
export const matchIO = matchIO_1;
|
|
60
|
+
export const match = match_1;
|
|
61
|
+
export const orElse = orElse_1;
|
|
62
|
+
export const orHaltWith = orHaltWith_1;
|
|
63
|
+
export const refineOrHaltWith = refineOrHaltWith_1;
|
|
64
|
+
export const rejectIO = rejectIO_1;
|
|
66
65
|
export const repeatN_ = repeatN_1;
|
|
67
|
-
export const
|
|
68
|
-
export const
|
|
69
|
-
export const
|
|
70
|
-
export const
|
|
66
|
+
export const repeatUntilIO = repeatUntilIO_1;
|
|
67
|
+
export const repeatWhileIO = repeatWhileIO_1;
|
|
68
|
+
export const retryUntilIO = retryUntilIO_1;
|
|
69
|
+
export const retryWhileIO = retryWhileIO_1;
|
|
71
70
|
export const sandbox = sandbox_1;
|
|
72
71
|
export const succeedNow = succeedNow_1;
|
|
73
72
|
export const succeed = succeed_1;
|
|
74
|
-
export const
|
|
73
|
+
export const summarized = summarized_1;
|
|
75
74
|
export const swap = swap_1;
|
|
76
|
-
export const
|
|
75
|
+
export const swapWith = swapWith_1;
|
|
77
76
|
export const tryCatch = tryCatch_1;
|
|
78
|
-
export const
|
|
79
|
-
export const
|
|
77
|
+
export const tryOrElse = tryOrElse_1;
|
|
78
|
+
export const unrefineWith = unrefineWith_1;
|
|
80
79
|
export const unsandbox = unsandbox_1;
|
|
81
|
-
export const
|
|
82
|
-
export const
|
|
83
|
-
export const
|
|
80
|
+
export const whenIO = whenIO_1;
|
|
81
|
+
export const withFiberRuntime = withFiberRuntime_1;
|
|
82
|
+
export const stackTrace = stackTrace_1;
|
|
83
|
+
export const zipWith = zipWith_1;
|
|
84
84
|
export const gen = gen_1;
|
|
85
85
|
import { identity, pipe, tuple } from "@fncts/base/data/function";
|
|
86
|
+
import { Async, GenerateStackTrace, OnSuccess, OnSuccessAndFailure, Sync, UpdateRuntimeFlags, YieldNow } from "@fncts/io/IO/definition";
|
|
86
87
|
import { Stateful } from "@fncts/io/IO/definition";
|
|
87
|
-
import {
|
|
88
|
+
import { Fail, IOError, SucceedNow } from "@fncts/io/IO/definition";
|
|
88
89
|
/**
|
|
89
90
|
* Imports an asynchronous side-effect into a `IO`
|
|
90
91
|
*
|
|
91
92
|
* @tsplus static fncts.io.IOOps async
|
|
92
93
|
*/
|
|
93
|
-
|
|
94
94
|
function async_1(register, blockingOn = tsplus_module_1.none, __tsplusTrace) {
|
|
95
|
-
return
|
|
96
|
-
register(cb);
|
|
97
|
-
return tsplus_module_2.nothing();
|
|
98
|
-
}, blockingOn, __tsplusTrace);
|
|
99
|
-
}
|
|
100
|
-
/**
|
|
101
|
-
* Imports an asynchronous effect into a pure `IO`, possibly returning the value synchronously.
|
|
102
|
-
*
|
|
103
|
-
* If the register function returns a value synchronously, then the callback
|
|
104
|
-
* function must not be called. Otherwise the callback function must be called at most once.
|
|
105
|
-
*
|
|
106
|
-
* @tsplus static fncts.io.IOOps asyncMaybe
|
|
107
|
-
*/
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
function asyncMaybe_1(register, blockingOn = tsplus_module_1.none, __tsplusTrace) {
|
|
111
|
-
return asyncInterrupt_1(cb => tsplus_module_4.match_(register(cb), () => tsplus_module_3.left(unit_1), tsplus_module_3.right), blockingOn, __tsplusTrace);
|
|
112
|
-
}
|
|
113
|
-
/**
|
|
114
|
-
* Imports an asynchronous side-effect into an IO. The side-effect
|
|
115
|
-
* has the option of returning the value synchronously, which is useful in
|
|
116
|
-
* cases where it cannot be determined if the effect is synchronous or
|
|
117
|
-
* asynchronous until the side-effect is actually executed. The effect also
|
|
118
|
-
* has the option of returning a canceler, which will be used by the runtime
|
|
119
|
-
* to cancel the asynchronous effect if the fiber executing the effect is
|
|
120
|
-
* interrupted.
|
|
121
|
-
*
|
|
122
|
-
* If the register function returns a value synchronously, then the callback
|
|
123
|
-
* function must not be called. Otherwise the callback function must be called
|
|
124
|
-
* at most once.
|
|
125
|
-
*
|
|
126
|
-
* The list of fibers, that may complete the async callback, is used to
|
|
127
|
-
* provide better diagnostics.
|
|
128
|
-
*
|
|
129
|
-
* @tsplus static fncts.io.IOOps asyncInterrupt
|
|
130
|
-
*/
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
function asyncInterrupt_1(register, blockingOn = tsplus_module_1.none, __tsplusTrace) {
|
|
134
|
-
return new Async(register, blockingOn, __tsplusTrace);
|
|
95
|
+
return new Async(register, () => blockingOn, __tsplusTrace);
|
|
135
96
|
}
|
|
136
97
|
/**
|
|
137
98
|
* Attempts to convert defects into a failure, throwing away all information
|
|
138
99
|
* about the cause of the failure.
|
|
139
100
|
*
|
|
140
|
-
* @tsplus
|
|
101
|
+
* @tsplus pipeable fncts.io.IO absorbWith
|
|
141
102
|
*/
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
export function absorbWith_(ma, f, __tsplusTrace) {
|
|
145
|
-
return matchIO_1(sandbox_1(ma, __tsplusTrace), cause => failNow_1(tsplus_module_5.squashWith_(cause, f), __tsplusTrace), succeedNow_1, __tsplusTrace);
|
|
103
|
+
export function absorbWith(f, __tsplusTrace) {
|
|
104
|
+
return ma => matchIO_1(cause => failNow_1(tsplus_module_2.squashWith(f)(cause), __tsplusTrace), succeedNow_1, __tsplusTrace)(sandbox_1(ma, __tsplusTrace));
|
|
146
105
|
}
|
|
147
106
|
/**
|
|
148
|
-
* @tsplus
|
|
149
|
-
* @tsplus operator fncts.io.IO <
|
|
107
|
+
* @tsplus pipeable fncts.io.IO zipLeft
|
|
108
|
+
* @tsplus pipeable-operator fncts.io.IO <
|
|
150
109
|
*/
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
110
|
+
export function zipLeft(fb, __tsplusTrace) {
|
|
111
|
+
return self => {
|
|
112
|
+
return flatMap_1(a => map_1(() => a, __tsplusTrace)(fb), __tsplusTrace)(self);
|
|
113
|
+
};
|
|
154
114
|
}
|
|
155
115
|
/**
|
|
156
116
|
* Combine two effectful actions, keeping only the result of the second
|
|
157
117
|
*
|
|
158
|
-
* @tsplus
|
|
159
|
-
* @tsplus operator fncts.io.IO >
|
|
118
|
+
* @tsplus pipeable fncts.io.IO zipRight
|
|
119
|
+
* @tsplus pipeable-operator fncts.io.IO >
|
|
160
120
|
*/
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
121
|
+
function zipRight_1(fb, __tsplusTrace) {
|
|
122
|
+
return self => {
|
|
123
|
+
return flatMap_1(() => fb, __tsplusTrace)(self);
|
|
124
|
+
};
|
|
164
125
|
}
|
|
165
126
|
/**
|
|
166
|
-
* @tsplus
|
|
127
|
+
* @tsplus pipeable fncts.io.IO as
|
|
167
128
|
*/
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
129
|
+
function as_1(b, __tsplusTrace) {
|
|
130
|
+
return self => {
|
|
131
|
+
return map_1(() => b(), __tsplusTrace)(self);
|
|
132
|
+
};
|
|
172
133
|
}
|
|
173
134
|
/**
|
|
174
135
|
* Maps the success value of this effect to an optional value.
|
|
175
136
|
*
|
|
176
137
|
* @tsplus getter fncts.io.IO asJust
|
|
177
138
|
*/
|
|
178
|
-
|
|
179
|
-
|
|
180
139
|
export function asJust(ma, __tsplusTrace) {
|
|
181
|
-
return map_1(
|
|
140
|
+
return map_1(tsplus_module_3.just, __tsplusTrace)(ma);
|
|
182
141
|
}
|
|
183
142
|
/**
|
|
184
143
|
* Maps the error value of this IO to an optional value.
|
|
185
144
|
*
|
|
186
145
|
* @tsplus getter fncts.io.IO asJustError
|
|
187
146
|
*/
|
|
188
|
-
|
|
189
147
|
export function asJustError(ma, __tsplusTrace) {
|
|
190
|
-
return mapError_1(
|
|
148
|
+
return mapError_1(tsplus_module_3.just, __tsplusTrace)(ma);
|
|
191
149
|
}
|
|
192
150
|
/**
|
|
193
151
|
* @tsplus getter fncts.io.IO asUnit
|
|
194
152
|
*/
|
|
195
|
-
|
|
196
153
|
function asUnit_1(self, __tsplusTrace) {
|
|
197
|
-
return as_1(
|
|
154
|
+
return as_1(() => undefined, __tsplusTrace)(self);
|
|
198
155
|
}
|
|
199
156
|
/**
|
|
200
157
|
* Returns an IO whose failure and success channels have been mapped by
|
|
201
158
|
* the specified pair of functions, `f` and `g`.
|
|
202
159
|
*
|
|
203
|
-
* @tsplus
|
|
160
|
+
* @tsplus pipeable fncts.io.IO bimap
|
|
204
161
|
*/
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
|
|
208
|
-
|
|
162
|
+
export function bimap(f, g, __tsplusTrace) {
|
|
163
|
+
return self => {
|
|
164
|
+
return matchIO_1(e => failNow_1(f(e), __tsplusTrace), a => succeedNow_1(g(a), __tsplusTrace), __tsplusTrace)(self);
|
|
165
|
+
};
|
|
209
166
|
}
|
|
210
167
|
/**
|
|
211
168
|
* Returns an IO that effectfully "peeks" at the failure or success of
|
|
212
169
|
* this effect.
|
|
213
170
|
*
|
|
214
|
-
* @tsplus
|
|
171
|
+
* @tsplus pipeable fncts.io.IO bitap
|
|
215
172
|
*/
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
173
|
+
export function bitap(onFailure, onSuccess, __tsplusTrace) {
|
|
174
|
+
return self => {
|
|
175
|
+
return matchCauseIO_1(cause => tsplus_module_4.match(e => flatMap_1(() => failCauseNow_1(cause, __tsplusTrace), __tsplusTrace)(onFailure(e)), () => failCauseNow_1(cause, __tsplusTrace))(tsplus_module_2.failureOrCause(cause)), a => zipRight_1(succeedNow_1(a, __tsplusTrace), __tsplusTrace)(onSuccess(a)), __tsplusTrace)(self);
|
|
176
|
+
};
|
|
219
177
|
}
|
|
220
178
|
/**
|
|
221
179
|
* Recovers from the specified error
|
|
222
180
|
*
|
|
223
|
-
* @tsplus
|
|
181
|
+
* @tsplus pipeable fncts.io.IO catch
|
|
224
182
|
*/
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
}
|
|
183
|
+
function catchTagWith_1(tag, k, f, __tsplusTrace) {
|
|
184
|
+
return ma => {
|
|
185
|
+
return catchAll_1(e => {
|
|
186
|
+
if (tsplus_module_5.isObject(e) && tag in e && e[tag] === k) {
|
|
187
|
+
return f(e);
|
|
188
|
+
}
|
|
189
|
+
return failNow_1(e, __tsplusTrace);
|
|
190
|
+
}, __tsplusTrace)(ma);
|
|
191
|
+
};
|
|
234
192
|
}
|
|
235
193
|
/**
|
|
236
194
|
* Recovers from all errors
|
|
237
195
|
*
|
|
238
|
-
* @tsplus
|
|
196
|
+
* @tsplus pipeable fncts.io.IO catchAll
|
|
239
197
|
*/
|
|
240
|
-
|
|
241
|
-
|
|
242
|
-
|
|
243
|
-
|
|
198
|
+
function catchAll_1(f, __tsplusTrace) {
|
|
199
|
+
return ma => {
|
|
200
|
+
return matchIO_1(f, succeedNow_1, __tsplusTrace)(ma);
|
|
201
|
+
};
|
|
244
202
|
}
|
|
245
203
|
/**
|
|
246
204
|
*
|
|
247
205
|
* Recovers from all errors with provided cause.
|
|
248
206
|
*
|
|
249
|
-
* @tsplus
|
|
207
|
+
* @tsplus pipeable fncts.io.IO catchAllCause
|
|
250
208
|
*/
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
function catchAllCause_1(ma, f, __tsplusTrace) {
|
|
254
|
-
return matchCauseIO_1(ma, f, succeedNow_1, __tsplusTrace);
|
|
209
|
+
function catchAllCause_1(f, __tsplusTrace) {
|
|
210
|
+
return ma => matchCauseIO_1(f, succeedNow_1, __tsplusTrace)(ma);
|
|
255
211
|
}
|
|
256
212
|
/**
|
|
257
213
|
* Recovers from some or all of the error cases.
|
|
258
214
|
*
|
|
259
|
-
* @tsplus
|
|
215
|
+
* @tsplus pipeable fncts.io.IO catchJust
|
|
260
216
|
*/
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
217
|
+
export function catchJust(f, __tsplusTrace) {
|
|
218
|
+
return ma => {
|
|
219
|
+
return matchCauseIO_1(cause => tsplus_module_4.match(e => tsplus_module_6.getOrElse(() => failCauseNow_1(cause, __tsplusTrace))(f(e)), failCauseNow_1)(tsplus_module_2.failureOrCause(cause)), succeedNow_1, __tsplusTrace)(ma);
|
|
220
|
+
};
|
|
265
221
|
}
|
|
266
222
|
/**
|
|
267
223
|
* Recovers from some or all of the error cases with provided cause.
|
|
268
224
|
*
|
|
269
|
-
* @tsplus
|
|
225
|
+
* @tsplus pipeable fncts.io.IO catchJustCause
|
|
270
226
|
*/
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
227
|
+
export function catchJustCause(f, __tsplusTrace) {
|
|
228
|
+
return ma => {
|
|
229
|
+
return matchCauseIO_1(cause => tsplus_module_6.getOrElse(() => failCauseNow_1(cause, __tsplusTrace))(f(cause)), succeedNow_1, __tsplusTrace)(ma);
|
|
230
|
+
};
|
|
274
231
|
}
|
|
275
232
|
/**
|
|
276
233
|
* Recovers from some or all of the defects with provided partial function.
|
|
@@ -280,85 +237,87 @@ export function catchJustCause_(ma, f, __tsplusTrace) {
|
|
|
280
237
|
* system, to transmit information on a defect for diagnostic or explanatory
|
|
281
238
|
* purposes.
|
|
282
239
|
*
|
|
283
|
-
* @tsplus
|
|
240
|
+
* @tsplus pipeable fncts.io.IO catchJustDefect
|
|
284
241
|
*/
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
242
|
+
export function catchJustDefect(f, __tsplusTrace) {
|
|
243
|
+
return ma => {
|
|
244
|
+
return catchAll_1(a => a, __tsplusTrace)(unrefineWith_1(f, failNow_1, __tsplusTrace)(ma));
|
|
245
|
+
};
|
|
288
246
|
}
|
|
289
247
|
/**
|
|
290
248
|
* Recovers from the specified error
|
|
291
249
|
*
|
|
292
|
-
* @tsplus
|
|
250
|
+
* @tsplus pipeable IO catchTag
|
|
293
251
|
*/
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
252
|
+
export function catchTag(k, f, __tsplusTrace) {
|
|
253
|
+
return ma => {
|
|
254
|
+
return catchTagWith_1("_tag", k, f, __tsplusTrace)(ma);
|
|
255
|
+
};
|
|
297
256
|
}
|
|
298
257
|
/**
|
|
299
258
|
* @tsplus getter fncts.io.IO cause
|
|
300
259
|
*/
|
|
301
|
-
|
|
302
260
|
export function cause(ma, __tsplusTrace) {
|
|
303
|
-
return matchCauseIO_1(
|
|
261
|
+
return matchCauseIO_1(succeedNow_1, () => succeedNow_1(tsplus_module_2.empty(), __tsplusTrace), __tsplusTrace)(ma);
|
|
304
262
|
}
|
|
305
263
|
/**
|
|
306
|
-
* @tsplus
|
|
264
|
+
* @tsplus pipeable fncts.io.IO causeAsError
|
|
307
265
|
*/
|
|
308
|
-
|
|
309
|
-
|
|
310
|
-
|
|
266
|
+
export function causeAsError(__tsplusTrace) {
|
|
267
|
+
return ma => {
|
|
268
|
+
return matchCauseIO_1(failNow_1, succeedNow_1, __tsplusTrace)(ma);
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
/**
|
|
272
|
+
* Checks the interrupt status, and produces the IO returned by the
|
|
273
|
+
* specified callback.
|
|
274
|
+
*
|
|
275
|
+
* @tsplus static fncts.io.IOOps checkInterruptible
|
|
276
|
+
*/
|
|
277
|
+
export function checkInterruptible(f, __tsplusTrace) {
|
|
278
|
+
return withFiberRuntime_1((_, status) => f(tsplus_module_8.fromBoolean(tsplus_module_7.interruption(status.runtimeFlags))), __tsplusTrace);
|
|
311
279
|
}
|
|
312
280
|
/**
|
|
313
281
|
* Returns an IO that models the execution of this effect, followed by
|
|
314
282
|
* the passing of its value to the specified continuation function `f`,
|
|
315
283
|
* followed by the effect that it returns.
|
|
316
284
|
*
|
|
317
|
-
* @tsplus
|
|
285
|
+
* @tsplus pipeable fncts.io.IO flatMap
|
|
318
286
|
*/
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
287
|
+
function flatMap_1(f, __tsplusTrace) {
|
|
288
|
+
return ma => {
|
|
289
|
+
return new OnSuccess(ma, f, __tsplusTrace);
|
|
290
|
+
};
|
|
322
291
|
}
|
|
323
292
|
/**
|
|
324
|
-
* @tsplus
|
|
293
|
+
* @tsplus pipeable fncts.io.IO flatMapError
|
|
325
294
|
*/
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
295
|
+
export function flatMapError(f, __tsplusTrace) {
|
|
296
|
+
return ma => {
|
|
297
|
+
return swapWith_1(effect => flatMap_1(f, __tsplusTrace)(effect), __tsplusTrace)(ma);
|
|
298
|
+
};
|
|
330
299
|
}
|
|
331
300
|
/**
|
|
332
|
-
*
|
|
333
|
-
* specified callback.
|
|
334
|
-
*
|
|
335
|
-
* @tsplus static fncts.io.IOOps checkInterruptible
|
|
301
|
+
* @tsplus pipeable fncts.io.IO collect
|
|
336
302
|
*/
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
303
|
+
export function collect(f, pf, __tsplusTrace) {
|
|
304
|
+
return ma => {
|
|
305
|
+
return collectIO_1(f, a => tsplus_module_6.map(succeedNow_1)(pf(a)), __tsplusTrace)(ma);
|
|
306
|
+
};
|
|
340
307
|
}
|
|
341
308
|
/**
|
|
342
|
-
* @tsplus
|
|
309
|
+
* @tsplus pipeable fncts.io.IO collectIO
|
|
343
310
|
*/
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
}
|
|
348
|
-
/**
|
|
349
|
-
* @tsplus fluent fncts.io.IO collectIO
|
|
350
|
-
*/
|
|
351
|
-
|
|
352
|
-
function collectIO_1(ma, f, pf, __tsplusTrace) {
|
|
353
|
-
return flatMap_1(ma, a => tsplus_module_7.getOrElse_(pf(a), () => fail_1(f, __tsplusTrace)), __tsplusTrace);
|
|
311
|
+
function collectIO_1(f, pf, __tsplusTrace) {
|
|
312
|
+
return ma => {
|
|
313
|
+
return flatMap_1(a => tsplus_module_6.getOrElse(() => fail_1(f, __tsplusTrace))(pf(a)), __tsplusTrace)(ma);
|
|
314
|
+
};
|
|
354
315
|
}
|
|
355
316
|
/**
|
|
356
317
|
* @tsplus static fncts.io.IOOps condIO
|
|
357
318
|
*/
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
export function condIO_(b, onTrue, onFalse, __tsplusTrace) {
|
|
361
|
-
return b ? onTrue : flatMap_1(onFalse, failNow_1, __tsplusTrace);
|
|
319
|
+
export function condIO(b, onTrue, onFalse, __tsplusTrace) {
|
|
320
|
+
return b ? onTrue : flatMap_1(failNow_1, __tsplusTrace)(onFalse);
|
|
362
321
|
}
|
|
363
322
|
/**
|
|
364
323
|
* Returns a lazily constructed effect, whose construction may itself require
|
|
@@ -368,22 +327,8 @@ export function condIO_(b, onTrue, onFalse, __tsplusTrace) {
|
|
|
368
327
|
*
|
|
369
328
|
* @tsplus static fncts.io.IOOps defer
|
|
370
329
|
*/
|
|
371
|
-
|
|
372
330
|
function defer_1(io, __tsplusTrace) {
|
|
373
|
-
return
|
|
374
|
-
}
|
|
375
|
-
/**
|
|
376
|
-
* Returns a lazily constructed effect, whose construction may itself require
|
|
377
|
-
* effects. The effect must not throw any exceptions. When no environment is required (i.e., when R == unknown)
|
|
378
|
-
* it is conceptually equivalent to `flatten(effectTotal(io))`. If you wonder if the effect throws exceptions,
|
|
379
|
-
* do not use this method, use `IO.deferTryCatchWith`.
|
|
380
|
-
*
|
|
381
|
-
* @tsplus static fncts.io.IOOps deferWith
|
|
382
|
-
*/
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
function deferWith_1(io, __tsplusTrace) {
|
|
386
|
-
return new DeferWith(io, __tsplusTrace);
|
|
331
|
+
return flatMap_1(identity, __tsplusTrace)(succeed_1(io, __tsplusTrace));
|
|
387
332
|
}
|
|
388
333
|
/**
|
|
389
334
|
* Returns a lazily constructed effect, whose construction may itself require effects.
|
|
@@ -391,30 +336,12 @@ function deferWith_1(io, __tsplusTrace) {
|
|
|
391
336
|
*
|
|
392
337
|
* @tsplus static fncts.io.IOOps deferTry
|
|
393
338
|
*/
|
|
394
|
-
|
|
395
|
-
|
|
396
339
|
export function deferTry(io, __tsplusTrace) {
|
|
397
340
|
return defer_1(() => {
|
|
398
341
|
try {
|
|
399
342
|
return io();
|
|
400
343
|
} catch (u) {
|
|
401
|
-
throw new IOError(
|
|
402
|
-
}
|
|
403
|
-
}, __tsplusTrace);
|
|
404
|
-
}
|
|
405
|
-
/**
|
|
406
|
-
* Returns a lazily constructed effect, whose construction may itself require effects.
|
|
407
|
-
* When no environment is required (i.e., when R == unknown) it is conceptually equivalent to `flatten(effect(io))`.
|
|
408
|
-
*
|
|
409
|
-
* @tsplus static IOOps deferTryWith
|
|
410
|
-
*/
|
|
411
|
-
|
|
412
|
-
export function deferTryWith(io, __tsplusTrace) {
|
|
413
|
-
return deferWith_1((runtimeConfig, id) => {
|
|
414
|
-
try {
|
|
415
|
-
return io(runtimeConfig, id);
|
|
416
|
-
} catch (u) {
|
|
417
|
-
throw new IOError(tsplus_module_9.fail(u));
|
|
344
|
+
throw new IOError(tsplus_module_2.fail(u));
|
|
418
345
|
}
|
|
419
346
|
}, __tsplusTrace);
|
|
420
347
|
}
|
|
@@ -426,114 +353,68 @@ export function deferTryWith(io, __tsplusTrace) {
|
|
|
426
353
|
*
|
|
427
354
|
* @tsplus static IOOps deferTryCatch
|
|
428
355
|
*/
|
|
429
|
-
|
|
430
356
|
export function deferTryCatch(io, onThrow, __tsplusTrace) {
|
|
431
357
|
return defer_1(() => {
|
|
432
358
|
try {
|
|
433
359
|
return io();
|
|
434
360
|
} catch (u) {
|
|
435
|
-
throw new IOError(
|
|
436
|
-
}
|
|
437
|
-
}, __tsplusTrace);
|
|
438
|
-
}
|
|
439
|
-
/**
|
|
440
|
-
* Returns a lazily constructed effect, whose construction may itself require effects,
|
|
441
|
-
* translating any thrown exceptions into typed failed effects and mapping the error.
|
|
442
|
-
*
|
|
443
|
-
* When no environment is required (i.e., when R == unknown) it is conceptually equivalent to `flatten(effect(io))`.
|
|
444
|
-
*
|
|
445
|
-
* @tsplus static IOOps deferTryCatchWith
|
|
446
|
-
*/
|
|
447
|
-
|
|
448
|
-
export function deferTryCatchWith(io, onThrow, __tsplusTrace) {
|
|
449
|
-
return deferWith_1((runtimeConfig, id) => {
|
|
450
|
-
try {
|
|
451
|
-
return io(runtimeConfig, id);
|
|
452
|
-
} catch (u) {
|
|
453
|
-
throw new IOError(tsplus_module_9.fail(onThrow(u)));
|
|
361
|
+
throw new IOError(tsplus_module_2.fail(onThrow(u)));
|
|
454
362
|
}
|
|
455
363
|
}, __tsplusTrace);
|
|
456
364
|
}
|
|
457
|
-
/**
|
|
458
|
-
* @tsplus static fncts.io.IOOps descriptor
|
|
459
|
-
*/
|
|
460
|
-
|
|
461
|
-
export const descriptor = /*#__PURE__*/descriptorWith_1(succeedNow_1, fileName_1 + ":505:41");
|
|
462
|
-
/**
|
|
463
|
-
* Constructs an IO based on information about the current fiber, such as
|
|
464
|
-
* its identity.
|
|
465
|
-
*
|
|
466
|
-
* @tsplus static fncts.io.IOOps descriptorWith
|
|
467
|
-
*/
|
|
468
|
-
|
|
469
|
-
function descriptorWith_1(f, __tsplusTrace) {
|
|
470
|
-
return withFiberContext_1(fiber => f(fiber.unsafeGetDescriptor()), __tsplusTrace);
|
|
471
|
-
}
|
|
472
365
|
/**
|
|
473
366
|
* Folds an `IO` that may fail with `E` or succeed with `A` into one that never fails but succeeds with `Either<E, A>`
|
|
474
367
|
*
|
|
475
368
|
* @tsplus getter fncts.io.IO either
|
|
476
369
|
*/
|
|
477
|
-
|
|
478
|
-
|
|
479
370
|
function either_1(ma, __tsplusTrace) {
|
|
480
|
-
return match_1(
|
|
371
|
+
return match_1(tsplus_module_9.left, tsplus_module_9.right, __tsplusTrace)(ma);
|
|
481
372
|
}
|
|
482
373
|
/**
|
|
483
|
-
* @tsplus
|
|
374
|
+
* @tsplus pipeable fncts.io.IO errorAsCause
|
|
484
375
|
*/
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
fiber.unsafeAddFinalizer(finalizer);
|
|
490
|
-
return self;
|
|
491
|
-
}, __tsplusTrace);
|
|
492
|
-
}
|
|
493
|
-
/**
|
|
494
|
-
* @tsplus fluent fncts.io.IO errorAsCause
|
|
495
|
-
*/
|
|
496
|
-
|
|
497
|
-
export function errorAsCause(ma, __tsplusTrace) {
|
|
498
|
-
return matchIO_1(ma, failCauseNow_1, succeedNow_1, __tsplusTrace);
|
|
376
|
+
export function errorAsCause(__tsplusTrace) {
|
|
377
|
+
return ma => {
|
|
378
|
+
return matchIO_1(failCauseNow_1, succeedNow_1, __tsplusTrace)(ma);
|
|
379
|
+
};
|
|
499
380
|
}
|
|
500
381
|
/**
|
|
501
382
|
* @tsplus getter fncts.io.IO eventually
|
|
502
383
|
*/
|
|
503
|
-
|
|
504
384
|
function eventually_1(ma, __tsplusTrace) {
|
|
505
|
-
return orElse_1(
|
|
385
|
+
return orElse_1(() => eventually_1(ma, __tsplusTrace), __tsplusTrace)(ma);
|
|
506
386
|
}
|
|
507
387
|
/**
|
|
508
|
-
* @tsplus
|
|
388
|
+
* @tsplus pipeable fncts.io.IO extend
|
|
509
389
|
*/
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
|
|
513
|
-
|
|
390
|
+
export function extend(f, __tsplusTrace) {
|
|
391
|
+
return wa => {
|
|
392
|
+
return matchIO_1(failNow_1, _ => succeed_1(() => f(wa), __tsplusTrace), __tsplusTrace)(wa);
|
|
393
|
+
};
|
|
514
394
|
}
|
|
515
395
|
/**
|
|
516
396
|
* @tsplus static fncts.io.IOOps fail
|
|
517
397
|
*/
|
|
518
|
-
|
|
519
398
|
function fail_1(e, __tsplusTrace) {
|
|
520
|
-
return
|
|
399
|
+
return failCause_1(() => tsplus_module_2.fail(e()), __tsplusTrace);
|
|
521
400
|
}
|
|
522
401
|
/**
|
|
523
402
|
* @tsplus static fncts.io.IOOps failNow
|
|
524
403
|
*/
|
|
525
|
-
|
|
526
|
-
|
|
527
404
|
function failNow_1(e, __tsplusTrace) {
|
|
528
|
-
return
|
|
405
|
+
return failCause_1(() => tsplus_module_2.fail(e), __tsplusTrace);
|
|
406
|
+
}
|
|
407
|
+
/**
|
|
408
|
+
* @tsplus static fncts.io.IOOps refailCause
|
|
409
|
+
*/
|
|
410
|
+
function refailCause_1(cause, __tsplusTrace) {
|
|
411
|
+
return new Fail(() => cause, __tsplusTrace);
|
|
529
412
|
}
|
|
530
413
|
/**
|
|
531
414
|
* Creates a `IO` that has failed with the specified `Cause`
|
|
532
415
|
*
|
|
533
416
|
* @tsplus static fncts.io.IOOps failCauseNow
|
|
534
417
|
*/
|
|
535
|
-
|
|
536
|
-
|
|
537
418
|
function failCauseNow_1(cause, __tsplusTrace) {
|
|
538
419
|
return new Fail(() => cause, __tsplusTrace);
|
|
539
420
|
}
|
|
@@ -542,54 +423,45 @@ function failCauseNow_1(cause, __tsplusTrace) {
|
|
|
542
423
|
*
|
|
543
424
|
* @tsplus static fncts.io.IOOps failCause
|
|
544
425
|
*/
|
|
545
|
-
|
|
546
|
-
|
|
547
426
|
function failCause_1(cause, __tsplusTrace) {
|
|
548
|
-
return
|
|
427
|
+
return flatMap_1(trace => refailCause_1(tsplus_module_2.traced(cause(), trace), __tsplusTrace), __tsplusTrace)(stackTrace_1(__tsplusTrace));
|
|
549
428
|
}
|
|
550
429
|
/**
|
|
551
430
|
* Returns the `FiberId` of the `Fiber` on which this `IO` is running
|
|
552
431
|
*
|
|
553
432
|
* @tsplus static fncts.io.IOOps fiberId
|
|
554
433
|
*/
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
export const fiberId = /*#__PURE__*/descriptorWith_1(d => succeedNow_1(d.id, fileName_1 + ":598:89"), fileName_1 + ":598:68");
|
|
434
|
+
export const fiberId = /*#__PURE__*/withFiberRuntime_1(fiber => succeed_1(() => fiber.id, fileName_1 + ":491:92"), fileName_1 + ":491:70");
|
|
558
435
|
/**
|
|
559
436
|
* Filters the collection using the specified effectual predicate.
|
|
560
437
|
*
|
|
561
438
|
* @tsplus static fncts.io.IOOps filter
|
|
562
439
|
*/
|
|
563
|
-
|
|
564
440
|
function filter_1(as, f, __tsplusTrace) {
|
|
565
|
-
return map_1(
|
|
441
|
+
return map_1(b => b.result(), __tsplusTrace)(tsplus_module_11.foldLeft(succeedNow_1(tsplus_module_10.builder(), __tsplusTrace), (eff, a) => zipWith_1(f(a), (builder, p) => {
|
|
566
442
|
if (p) {
|
|
567
443
|
builder.append(a);
|
|
568
444
|
}
|
|
569
|
-
|
|
570
445
|
return builder;
|
|
571
|
-
}, __tsplusTrace))
|
|
446
|
+
}, __tsplusTrace)(eff))(as));
|
|
572
447
|
}
|
|
573
448
|
/**
|
|
574
449
|
* @tsplus static fncts.io.IOOps filterMap
|
|
575
450
|
*/
|
|
576
|
-
|
|
577
|
-
|
|
578
|
-
export function filterMap_(as, f, __tsplusTrace) {
|
|
451
|
+
export function filterMap(as, f, __tsplusTrace) {
|
|
579
452
|
return filterMapWithIndex_1(as, (_, a) => f(a), __tsplusTrace);
|
|
580
453
|
}
|
|
581
454
|
/**
|
|
582
455
|
* @tsplus static fncts.io.IOOps filterMapWithIndex
|
|
583
456
|
*/
|
|
584
|
-
|
|
585
457
|
function filterMapWithIndex_1(as, f, __tsplusTrace) {
|
|
586
458
|
return defer_1(() => {
|
|
587
459
|
const bs = [];
|
|
588
|
-
return as_1(foreachWithIndexDiscard_1(as, (i, a) => map_1(
|
|
460
|
+
return as_1(() => tsplus_module_12.from(bs), __tsplusTrace)(foreachWithIndexDiscard_1(as, (i, a) => map_1(b => {
|
|
589
461
|
if (tsplus_module_13.isJust(b)) {
|
|
590
462
|
bs.push(b.value);
|
|
591
463
|
}
|
|
592
|
-
}, __tsplusTrace),
|
|
464
|
+
}, __tsplusTrace)(f(i, a)), __tsplusTrace));
|
|
593
465
|
}, __tsplusTrace);
|
|
594
466
|
}
|
|
595
467
|
/**
|
|
@@ -598,18 +470,18 @@ function filterMapWithIndex_1(as, f, __tsplusTrace) {
|
|
|
598
470
|
*
|
|
599
471
|
* @tsplus static fncts.io.IOOps filterNot
|
|
600
472
|
*/
|
|
601
|
-
|
|
602
|
-
|
|
603
|
-
export function filterNot_(as, f, __tsplusTrace) {
|
|
604
|
-
return filter_1(as, a => map_1(f(a), b => !b, __tsplusTrace), __tsplusTrace);
|
|
473
|
+
export function filterNot(as, f, __tsplusTrace) {
|
|
474
|
+
return filter_1(as, a => map_1(b => !b, __tsplusTrace)(f(a)), __tsplusTrace);
|
|
605
475
|
}
|
|
606
|
-
|
|
607
|
-
|
|
608
|
-
|
|
476
|
+
function filterOrElse_1(predicate, or, __tsplusTrace) {
|
|
477
|
+
return fa => {
|
|
478
|
+
return flatMap_1(a => predicate(a) ? succeedNow_1(a, __tsplusTrace) : defer_1(() => or(a), __tsplusTrace), __tsplusTrace)(fa);
|
|
479
|
+
};
|
|
609
480
|
}
|
|
610
|
-
|
|
611
|
-
|
|
612
|
-
|
|
481
|
+
export function filterOrFail(predicate, failWith, __tsplusTrace) {
|
|
482
|
+
return fa => {
|
|
483
|
+
return filterOrElse_1(predicate, a => failNow_1(failWith(a), __tsplusTrace), __tsplusTrace)(fa);
|
|
484
|
+
};
|
|
613
485
|
}
|
|
614
486
|
/**
|
|
615
487
|
* Returns an `IO` that yields the value of the first
|
|
@@ -617,42 +489,36 @@ export function filterOrFail_(fa, predicate, failWith, __tsplusTrace) {
|
|
|
617
489
|
*
|
|
618
490
|
* @tsplus static fncts.io.IOOps firstSuccess
|
|
619
491
|
*/
|
|
620
|
-
|
|
621
492
|
export function firstSuccess(mas, __tsplusTrace) {
|
|
622
|
-
return mas.reduce((b, a) => orElse_1(
|
|
493
|
+
return mas.reduce((b, a) => orElse_1(() => a, __tsplusTrace)(b));
|
|
623
494
|
}
|
|
624
|
-
export function
|
|
625
|
-
return
|
|
495
|
+
export function filterOrHalt(predicate, haltWith, __tsplusTrace) {
|
|
496
|
+
return fa => {
|
|
497
|
+
return filterOrElse_1(predicate, a => haltNow_1(haltWith(a), __tsplusTrace), __tsplusTrace)(fa);
|
|
498
|
+
};
|
|
626
499
|
}
|
|
627
500
|
/**
|
|
628
501
|
* @tsplus getter fncts.io.IO flatten
|
|
629
502
|
*/
|
|
630
|
-
|
|
631
503
|
export function flatten(self, __tsplusTrace) {
|
|
632
|
-
return flatMap_1(
|
|
504
|
+
return flatMap_1(identity, __tsplusTrace)(self);
|
|
633
505
|
}
|
|
634
506
|
/**
|
|
635
507
|
* Folds an `Iterable<A>` using an effectful function f, working sequentially from left to right.
|
|
636
508
|
*
|
|
637
509
|
* @tsplus static fncts.io.IOOps foldLeft
|
|
638
510
|
*/
|
|
639
|
-
|
|
640
511
|
function foldLeft_1(as, b, f, __tsplusTrace) {
|
|
641
|
-
return tsplus_module_11.
|
|
512
|
+
return tsplus_module_11.foldLeft(succeedNow_1(b, __tsplusTrace), (acc, el) => flatMap_1(a => f(a, el), __tsplusTrace)(acc))(as);
|
|
642
513
|
}
|
|
643
514
|
/**
|
|
644
515
|
* Combines an array of `IO`s using a `Monoid`
|
|
645
516
|
*
|
|
646
517
|
* @tsplus static fncts.io.IOOps foldMap
|
|
647
518
|
*/
|
|
648
|
-
|
|
649
|
-
|
|
650
|
-
export function foldMap_(as, f,
|
|
651
|
-
/** @tsplus auto */
|
|
652
|
-
M) {
|
|
653
|
-
return foldLeft_1(as, M.nat, (m, a) => map_1(a, a => M.combine(m, f(a)), fileName_1 + ":787:48"), fileName_1 + ":787:21");
|
|
519
|
+
export function foldMap(as, f, /** @tsplus auto */M) {
|
|
520
|
+
return foldLeft_1(as, M.nat, (m, a) => map_1(a => M.combine(f(a))(m), fileName_1 + ":664:48")(a), fileName_1 + ":664:21");
|
|
654
521
|
}
|
|
655
|
-
|
|
656
522
|
function foldRightLoop(iterator, b, f, __tsplusTrace) {
|
|
657
523
|
const next = iterator.next();
|
|
658
524
|
return next.done ? b : f(next.value, foldRightLoop(iterator, b, f, __tsplusTrace));
|
|
@@ -662,15 +528,12 @@ function foldRightLoop(iterator, b, f, __tsplusTrace) {
|
|
|
662
528
|
*
|
|
663
529
|
* @tsplus static fncts.io.IOOps foldRight
|
|
664
530
|
*/
|
|
665
|
-
|
|
666
|
-
|
|
667
|
-
export function foldRight_(as, b, f, __tsplusTrace) {
|
|
531
|
+
export function foldRight(as, b, f, __tsplusTrace) {
|
|
668
532
|
return foldRightLoop(as[Symbol.iterator](), b, f, __tsplusTrace);
|
|
669
533
|
}
|
|
670
|
-
|
|
671
534
|
function foreachWithIndexDiscardLoop(iterator, f, i = 0, __tsplusTrace) {
|
|
672
535
|
const next = iterator.next();
|
|
673
|
-
return next.done ? unit_1 : flatMap_1(
|
|
536
|
+
return next.done ? unit_1 : flatMap_1(() => foreachWithIndexDiscardLoop(iterator, f, i + 1, __tsplusTrace), __tsplusTrace)(f(i, next.value));
|
|
674
537
|
}
|
|
675
538
|
/**
|
|
676
539
|
* Applies the function `f` to each element of the `Iterable<A>` and
|
|
@@ -681,15 +544,13 @@ function foreachWithIndexDiscardLoop(iterator, f, i = 0, __tsplusTrace) {
|
|
|
681
544
|
*
|
|
682
545
|
* @tsplus static fncts.io.IOOps foreach
|
|
683
546
|
*/
|
|
684
|
-
|
|
685
|
-
|
|
686
547
|
function foreach_1(as, f, __tsplusTrace) {
|
|
687
548
|
return defer_1(() => {
|
|
688
549
|
const acc = [];
|
|
689
|
-
return as_1(foreachWithIndexDiscard_1(as, (_, a) => flatMap_1(
|
|
550
|
+
return as_1(() => tsplus_module_12.from(acc), __tsplusTrace)(foreachWithIndexDiscard_1(as, (_, a) => flatMap_1(b => {
|
|
690
551
|
acc.push(b);
|
|
691
552
|
return unit_1;
|
|
692
|
-
}, __tsplusTrace)
|
|
553
|
+
}, __tsplusTrace)(f(a)), __tsplusTrace));
|
|
693
554
|
}, __tsplusTrace);
|
|
694
555
|
}
|
|
695
556
|
/**
|
|
@@ -701,21 +562,18 @@ function foreach_1(as, f, __tsplusTrace) {
|
|
|
701
562
|
*
|
|
702
563
|
* @tsplus static fncts.io.IOOps foreachWithIndex
|
|
703
564
|
*/
|
|
704
|
-
|
|
705
|
-
|
|
706
|
-
export function foreachWithIndex_(as, f, __tsplusTrace) {
|
|
565
|
+
export function foreachWithIndex(as, f, __tsplusTrace) {
|
|
707
566
|
return defer_1(() => {
|
|
708
567
|
const acc = [];
|
|
709
|
-
return as_1(foreachWithIndexDiscard_1(as, (i, a) => flatMap_1(
|
|
568
|
+
return as_1(() => tsplus_module_12.from(acc), __tsplusTrace)(foreachWithIndexDiscard_1(as, (i, a) => flatMap_1(b => {
|
|
710
569
|
acc.push(b);
|
|
711
570
|
return unit_1;
|
|
712
|
-
}, __tsplusTrace),
|
|
571
|
+
}, __tsplusTrace)(f(i, a)), __tsplusTrace));
|
|
713
572
|
}, __tsplusTrace);
|
|
714
573
|
}
|
|
715
574
|
/**
|
|
716
575
|
* @tsplus static fncts.io.IOOps foreachWithIndexDiscard
|
|
717
576
|
*/
|
|
718
|
-
|
|
719
577
|
function foreachWithIndexDiscard_1(as, f, __tsplusTrace) {
|
|
720
578
|
return defer_1(() => foreachWithIndexDiscardLoop(as[Symbol.iterator](), f), __tsplusTrace);
|
|
721
579
|
}
|
|
@@ -725,8 +583,6 @@ function foreachWithIndexDiscard_1(as, f, __tsplusTrace) {
|
|
|
725
583
|
*
|
|
726
584
|
* @tsplus static fncts.io.IOOps foreachDiscard
|
|
727
585
|
*/
|
|
728
|
-
|
|
729
|
-
|
|
730
586
|
function foreachDiscard_1(as, f, __tsplusTrace) {
|
|
731
587
|
return defer_1(() => foreachWithIndexDiscardLoop(as[Symbol.iterator](), (_, a) => f(a)), __tsplusTrace);
|
|
732
588
|
}
|
|
@@ -735,64 +591,32 @@ function foreachDiscard_1(as, f, __tsplusTrace) {
|
|
|
735
591
|
*
|
|
736
592
|
* @tsplus getter fncts.io.IO forever
|
|
737
593
|
*/
|
|
738
|
-
|
|
739
|
-
|
|
740
594
|
function forever_1(ma, __tsplusTrace) {
|
|
741
|
-
return flatMap_1(
|
|
742
|
-
}
|
|
743
|
-
/**
|
|
744
|
-
* Returns an IO that forks this IO into its own separate fiber,
|
|
745
|
-
* returning the fiber immediately, without waiting for it to begin executing
|
|
746
|
-
* the IO.
|
|
747
|
-
*
|
|
748
|
-
* You can use the `fork` method whenever you want to execute an IO in a
|
|
749
|
-
* new fiber, concurrently and without "blocking" the fiber executing other
|
|
750
|
-
* IOs. Using fibers can be tricky, so instead of using this method
|
|
751
|
-
* directly, consider other higher-level methods, such as `raceWith`,
|
|
752
|
-
* `zipPar`, and so forth.
|
|
753
|
-
*
|
|
754
|
-
* The fiber returned by this method has methods interrupt the fiber and to
|
|
755
|
-
* wait for it to finish executing the IO. See `Fiber` for more
|
|
756
|
-
* information.
|
|
757
|
-
*
|
|
758
|
-
* Whenever you use this method to launch a new fiber, the new fiber is
|
|
759
|
-
* attached to the parent fiber's scope. This means when the parent fiber
|
|
760
|
-
* terminates, the child fiber will be terminated as well, ensuring that no
|
|
761
|
-
* fibers leak. This behavior is called "None supervision", and if this
|
|
762
|
-
* behavior is not desired, you may use the `forkDaemon` or `forkIn`
|
|
763
|
-
* methods.
|
|
764
|
-
*
|
|
765
|
-
* @tsplus getter fncts.io.IO fork
|
|
766
|
-
*/
|
|
767
|
-
|
|
768
|
-
|
|
769
|
-
export function fork(ma, __tsplusTrace) {
|
|
770
|
-
return new Fork(ma, tsplus_module_2.nothing(), __tsplusTrace);
|
|
595
|
+
return flatMap_1(() => forever_1(ma, __tsplusTrace), __tsplusTrace)(zipRight_1(yieldNow_1, __tsplusTrace)(ma));
|
|
771
596
|
}
|
|
772
597
|
/**
|
|
773
598
|
* Lifts an `Either` into an `IO`
|
|
774
599
|
*
|
|
775
600
|
* @tsplus static fncts.io.IOOps fromEither
|
|
776
601
|
*/
|
|
777
|
-
|
|
778
602
|
export function fromEither(either, __tsplusTrace) {
|
|
779
|
-
return flatMap_1(
|
|
603
|
+
return flatMap_1(ea => tsplus_module_4.match(failNow_1, succeedNow_1)(ea), __tsplusTrace)(succeed_1(either, __tsplusTrace));
|
|
780
604
|
}
|
|
781
605
|
/**
|
|
782
606
|
* Lifts an `Either` into an `IO`
|
|
783
607
|
*
|
|
784
608
|
* @tsplus static fncts.io.IOOps fromEitherNow
|
|
609
|
+
* @tsplus getter fncts.Either toIO
|
|
785
610
|
*/
|
|
786
|
-
|
|
787
611
|
export function fromEitherNow(either, __tsplusTrace) {
|
|
788
|
-
return
|
|
612
|
+
return tsplus_module_4.match(failNow_1, succeedNow_1)(either);
|
|
789
613
|
}
|
|
790
614
|
/**
|
|
791
615
|
* Lifts an `Eval` into an `IO`
|
|
792
616
|
*
|
|
793
617
|
* @tsplus static fncts.io.IOOps fromEval
|
|
618
|
+
* @tsplus getter fncts.Eval toIO
|
|
794
619
|
*/
|
|
795
|
-
|
|
796
620
|
export function fromEval(computation, __tsplusTrace) {
|
|
797
621
|
return succeed_1(() => tsplus_module_14.run(computation), __tsplusTrace);
|
|
798
622
|
}
|
|
@@ -801,18 +625,17 @@ export function fromEval(computation, __tsplusTrace) {
|
|
|
801
625
|
*
|
|
802
626
|
* @tsplus static fncts.io.IOOps fromExit
|
|
803
627
|
*/
|
|
804
|
-
|
|
805
628
|
export function fromExit(exit, __tsplusTrace) {
|
|
806
|
-
return defer_1(() => tsplus_module_15.
|
|
629
|
+
return defer_1(() => tsplus_module_15.match(failCauseNow_1, succeedNow_1)(exit()), __tsplusTrace);
|
|
807
630
|
}
|
|
808
631
|
/**
|
|
809
632
|
* Creates a `IO` from an exit value
|
|
810
633
|
*
|
|
811
634
|
* @tsplus static fncts.io.IOOps fromExitNow
|
|
635
|
+
* @tsplus getter fncts.Exit toIO
|
|
812
636
|
*/
|
|
813
|
-
|
|
814
637
|
export function fromExitNow(exit, __tsplusTrace) {
|
|
815
|
-
return tsplus_module_15.
|
|
638
|
+
return tsplus_module_15.match(failCauseNow_1, succeedNow_1)(exit);
|
|
816
639
|
}
|
|
817
640
|
/**
|
|
818
641
|
* Lifts a `Maybe` into an `IO` but preserves the error as a `Maybe` in the error channel, making it easier to compose
|
|
@@ -820,16 +643,15 @@ export function fromExitNow(exit, __tsplusTrace) {
|
|
|
820
643
|
*
|
|
821
644
|
* @tsplus static fncts.io.IOOps fromMaybe
|
|
822
645
|
*/
|
|
823
|
-
|
|
824
646
|
export function fromMaybe(maybe, __tsplusTrace) {
|
|
825
|
-
return flatMap_1(
|
|
647
|
+
return flatMap_1(m => tsplus_module_16.match(() => failNow_1(tsplus_module_3.nothing(), __tsplusTrace), succeedNow_1)(m), __tsplusTrace)(succeed_1(maybe, __tsplusTrace));
|
|
826
648
|
}
|
|
827
649
|
/**
|
|
828
650
|
* @tsplus static fncts.io.IOOps fromMaybeNow
|
|
651
|
+
* @tsplus getter fncts.Maybe toIO
|
|
829
652
|
*/
|
|
830
|
-
|
|
831
653
|
export function fromMaybeNow(maybe, __tsplusTrace) {
|
|
832
|
-
return
|
|
654
|
+
return tsplus_module_16.match(() => failNow_1(tsplus_module_3.nothing(), __tsplusTrace), succeedNow_1)(maybe);
|
|
833
655
|
}
|
|
834
656
|
/**
|
|
835
657
|
* Create an IO that when executed will construct `promise` and wait for its result,
|
|
@@ -837,7 +659,6 @@ export function fromMaybeNow(maybe, __tsplusTrace) {
|
|
|
837
659
|
*
|
|
838
660
|
* @tsplus static fncts.io.IOOps fromPromiseCatch
|
|
839
661
|
*/
|
|
840
|
-
|
|
841
662
|
function fromPromiseCatch_1(promise, onReject, __tsplusTrace) {
|
|
842
663
|
return async_1(k => {
|
|
843
664
|
promise().then(a => k(succeedNow_1(a, __tsplusTrace))).catch(e => k(failNow_1(onReject(e), __tsplusTrace)));
|
|
@@ -849,8 +670,6 @@ function fromPromiseCatch_1(promise, onReject, __tsplusTrace) {
|
|
|
849
670
|
*
|
|
850
671
|
* @tsplus static fncts.io.IOOps fromPromise
|
|
851
672
|
*/
|
|
852
|
-
|
|
853
|
-
|
|
854
673
|
export function fromPromise(promise, __tsplusTrace) {
|
|
855
674
|
return fromPromiseCatch_1(promise, identity, __tsplusTrace);
|
|
856
675
|
}
|
|
@@ -859,7 +678,6 @@ export function fromPromise(promise, __tsplusTrace) {
|
|
|
859
678
|
*
|
|
860
679
|
* @tsplus static fncts.io.IOOps fromPromiseHalt
|
|
861
680
|
*/
|
|
862
|
-
|
|
863
681
|
export function fromPromiseHalt(promise, __tsplusTrace) {
|
|
864
682
|
return async_1(k => {
|
|
865
683
|
promise().then(a => k(succeedNow_1(a, __tsplusTrace))).catch(e => k(haltNow_1(e, __tsplusTrace)));
|
|
@@ -870,44 +688,42 @@ export function fromPromiseHalt(promise, __tsplusTrace) {
|
|
|
870
688
|
*
|
|
871
689
|
* @tsplus getter fncts.io.IO get
|
|
872
690
|
*/
|
|
873
|
-
|
|
874
691
|
export function get(ma, __tsplusTrace) {
|
|
875
|
-
return matchCauseIO_1(
|
|
692
|
+
return matchCauseIO_1(cause => failCauseNow_1(tsplus_module_2.map(tsplus_module_3.just)(cause), __tsplusTrace), ma => tsplus_module_16.match(() => failNow_1(tsplus_module_3.nothing(), __tsplusTrace), succeedNow_1)(ma), __tsplusTrace)(ma);
|
|
876
693
|
}
|
|
877
694
|
/**
|
|
878
695
|
* Extracts the optional value, or returns the given 'orElse'.
|
|
879
696
|
*
|
|
880
|
-
* @tsplus
|
|
697
|
+
* @tsplus pipeable fncts.io.IO getOrElse
|
|
881
698
|
*/
|
|
882
|
-
|
|
883
|
-
|
|
884
|
-
|
|
699
|
+
export function getOrElse(orElse, __tsplusTrace) {
|
|
700
|
+
return ma => {
|
|
701
|
+
return map_1(ma => tsplus_module_6.getOrElse(orElse)(ma), __tsplusTrace)(ma);
|
|
702
|
+
};
|
|
885
703
|
}
|
|
886
704
|
/**
|
|
887
705
|
* Extracts the optional value, or executes the effect 'orElse'.
|
|
888
706
|
*
|
|
889
|
-
* @tsplus
|
|
707
|
+
* @tsplus pipeable fncts.io.IO getOrElseIO
|
|
890
708
|
*/
|
|
891
|
-
|
|
892
|
-
|
|
893
|
-
|
|
709
|
+
export function getOrElseIO(orElse, __tsplusTrace) {
|
|
710
|
+
return ma => {
|
|
711
|
+
return flatMap_1(mab => tsplus_module_6.getOrElse(orElse)(tsplus_module_6.map(succeedNow_1)(mab)), __tsplusTrace)(ma);
|
|
712
|
+
};
|
|
894
713
|
}
|
|
895
714
|
/**
|
|
896
715
|
* Lifts a Maybe into an IO. If the option is `Nothing`, fail with `onNothing`.
|
|
897
716
|
*
|
|
898
717
|
* @tsplus static fncts.io.IOOps getOrFailWith
|
|
899
718
|
*/
|
|
900
|
-
|
|
901
719
|
function getOrFailWith_1(maybe, onNothing, __tsplusTrace) {
|
|
902
|
-
return defer_1(() =>
|
|
720
|
+
return defer_1(() => tsplus_module_16.match(() => fail_1(onNothing, __tsplusTrace), succeedNow_1)(maybe), __tsplusTrace);
|
|
903
721
|
}
|
|
904
722
|
/**
|
|
905
723
|
* Lifts a Maybe into a IO, if the Maybe is `Nothing` it fails with Unit.
|
|
906
724
|
*
|
|
907
725
|
* @tsplus static fncts.io.IOOps getOrFailUnit
|
|
908
726
|
*/
|
|
909
|
-
|
|
910
|
-
|
|
911
727
|
export function getOrFailUnit(option, __tsplusTrace) {
|
|
912
728
|
return getOrFailWith_1(option, () => undefined, __tsplusTrace);
|
|
913
729
|
}
|
|
@@ -918,9 +734,8 @@ export function getOrFailUnit(option, __tsplusTrace) {
|
|
|
918
734
|
*
|
|
919
735
|
* @tsplus static fncts.io.IOOps halt
|
|
920
736
|
*/
|
|
921
|
-
|
|
922
737
|
export function halt(e, __tsplusTrace) {
|
|
923
|
-
return failCause_1(() =>
|
|
738
|
+
return failCause_1(() => tsplus_module_2.halt(e(), tsplus_module_17.none), __tsplusTrace);
|
|
924
739
|
}
|
|
925
740
|
/**
|
|
926
741
|
* Creates an `IO` that halts with the specified defect
|
|
@@ -929,50 +744,44 @@ export function halt(e, __tsplusTrace) {
|
|
|
929
744
|
*
|
|
930
745
|
* @tsplus static fncts.io.IOOps haltNow
|
|
931
746
|
*/
|
|
932
|
-
|
|
933
747
|
function haltNow_1(e, __tsplusTrace) {
|
|
934
|
-
return failCauseNow_1(
|
|
748
|
+
return failCauseNow_1(tsplus_module_2.halt(e, tsplus_module_17.none), __tsplusTrace);
|
|
935
749
|
}
|
|
936
750
|
/**
|
|
937
|
-
* @tsplus
|
|
751
|
+
* @tsplus pipeable fncts.io.IO ifIO
|
|
938
752
|
*/
|
|
939
|
-
|
|
940
|
-
|
|
941
|
-
|
|
942
|
-
|
|
753
|
+
function ifIO_1(onFalse, onTrue, __tsplusTrace) {
|
|
754
|
+
return self => {
|
|
755
|
+
return flatMap_1(b => b ? onTrue() : onFalse(), __tsplusTrace)(self);
|
|
756
|
+
};
|
|
943
757
|
}
|
|
944
758
|
/**
|
|
945
759
|
* @tsplus static fncts.io.IOOps if
|
|
946
760
|
*/
|
|
947
|
-
|
|
948
|
-
|
|
949
|
-
export function if_(b, onTrue, onFalse, __tsplusTrace) {
|
|
950
|
-
return ifIO_1(succeedNow_1(b, __tsplusTrace), onTrue, onFalse, __tsplusTrace);
|
|
761
|
+
export function cond(b, onTrue, onFalse, __tsplusTrace) {
|
|
762
|
+
return ifIO_1(onTrue, onFalse, __tsplusTrace)(succeedNow_1(b, __tsplusTrace));
|
|
951
763
|
}
|
|
952
764
|
/**
|
|
953
765
|
* @tsplus getter fncts.io.IO ignore
|
|
954
766
|
*/
|
|
955
|
-
|
|
956
767
|
export function ignore(fa, __tsplusTrace) {
|
|
957
|
-
return match_1(
|
|
768
|
+
return match_1(() => undefined, () => undefined, __tsplusTrace)(fa);
|
|
958
769
|
}
|
|
959
770
|
/**
|
|
960
771
|
* Folds a `IO` to a boolean describing whether or not it is a failure
|
|
961
772
|
*
|
|
962
773
|
* @tsplus getter fncts.io.IO isFailure
|
|
963
774
|
*/
|
|
964
|
-
|
|
965
775
|
export function isFailure(ma, __tsplusTrace) {
|
|
966
|
-
return match_1(
|
|
776
|
+
return match_1(() => true, () => false, __tsplusTrace)(ma);
|
|
967
777
|
}
|
|
968
778
|
/**
|
|
969
779
|
* Folds a `IO` to a boolean describing whether or not it is a success
|
|
970
780
|
*
|
|
971
781
|
* @tsplus getter fncts.io.IO isSuccess
|
|
972
782
|
*/
|
|
973
|
-
|
|
974
783
|
export function isSuccess(ma, __tsplusTrace) {
|
|
975
|
-
return match_1(
|
|
784
|
+
return match_1(() => false, () => true, __tsplusTrace)(ma);
|
|
976
785
|
}
|
|
977
786
|
/**
|
|
978
787
|
* Iterates with the specified effectual function. The moral equivalent of:
|
|
@@ -989,26 +798,25 @@ export function isSuccess(ma, __tsplusTrace) {
|
|
|
989
798
|
*
|
|
990
799
|
* @tsplus static fncts.io.IOOps iterate
|
|
991
800
|
*/
|
|
992
|
-
|
|
993
801
|
function iterate_1(initial, cont, body, __tsplusTrace) {
|
|
994
|
-
return cont(initial) ? flatMap_1(
|
|
802
|
+
return cont(initial) ? flatMap_1(a => iterate_1(a, cont, body, __tsplusTrace), __tsplusTrace)(body(initial)) : succeedNow_1(initial, __tsplusTrace);
|
|
995
803
|
}
|
|
996
804
|
/**
|
|
997
805
|
* Returns an IO with the value on the left part.
|
|
998
806
|
*
|
|
999
807
|
* @tsplus static fncts.io.IOOps left
|
|
1000
808
|
*/
|
|
1001
|
-
|
|
1002
|
-
|
|
1003
809
|
export function left(a, __tsplusTrace) {
|
|
1004
|
-
return flatMap_1(
|
|
810
|
+
return flatMap_1(a => succeedNow_1(tsplus_module_9.left(a), __tsplusTrace), __tsplusTrace)(succeed_1(a, __tsplusTrace));
|
|
1005
811
|
}
|
|
1006
812
|
/**
|
|
1007
813
|
* @tsplus static fncts.io.IOOps log
|
|
1008
814
|
*/
|
|
1009
|
-
|
|
1010
815
|
export function log(message, __tsplusTrace) {
|
|
1011
|
-
return
|
|
816
|
+
return withFiberRuntime_1(fiber => {
|
|
817
|
+
fiber.log(message, tsplus_module_2.empty(), tsplus_module_3.nothing(), __tsplusTrace);
|
|
818
|
+
return unit_1;
|
|
819
|
+
}, __tsplusTrace);
|
|
1012
820
|
}
|
|
1013
821
|
/**
|
|
1014
822
|
* Loops with the specified effectual function, collecting the results into a
|
|
@@ -1028,12 +836,11 @@ export function log(message, __tsplusTrace) {
|
|
|
1028
836
|
*
|
|
1029
837
|
* @tsplus static fncts.io.IOOps loop
|
|
1030
838
|
*/
|
|
1031
|
-
|
|
1032
839
|
function loop_1(initial, cont, inc, body, __tsplusTrace) {
|
|
1033
840
|
if (cont(initial)) {
|
|
1034
|
-
return flatMap_1(
|
|
841
|
+
return flatMap_1(a => map_1(as => tsplus_module_10.prepend(a)(as), __tsplusTrace)(loop_1(inc(initial), cont, inc, body, __tsplusTrace)), __tsplusTrace)(body(initial));
|
|
1035
842
|
} else {
|
|
1036
|
-
return succeedNow_1(
|
|
843
|
+
return succeedNow_1(tsplus_module_18.empty(), __tsplusTrace);
|
|
1037
844
|
}
|
|
1038
845
|
}
|
|
1039
846
|
/**
|
|
@@ -1051,11 +858,9 @@ function loop_1(initial, cont, inc, body, __tsplusTrace) {
|
|
|
1051
858
|
*
|
|
1052
859
|
* @tsplus static fncts.io.IOOps loopUnit
|
|
1053
860
|
*/
|
|
1054
|
-
|
|
1055
|
-
|
|
1056
|
-
export function loopUnit_(initial, cont, inc, body, __tsplusTrace) {
|
|
861
|
+
export function loopUnit(initial, cont, inc, body, __tsplusTrace) {
|
|
1057
862
|
if (cont(initial)) {
|
|
1058
|
-
return asUnit_1(flatMap_1(
|
|
863
|
+
return asUnit_1(flatMap_1(() => loop_1(inc(initial), cont, inc, body, __tsplusTrace), __tsplusTrace)(body(initial)), __tsplusTrace);
|
|
1059
864
|
} else {
|
|
1060
865
|
return unit_1;
|
|
1061
866
|
}
|
|
@@ -1063,11 +868,12 @@ export function loopUnit_(initial, cont, inc, body, __tsplusTrace) {
|
|
|
1063
868
|
/**
|
|
1064
869
|
* Returns an `IO` whose success is mapped by the specified function `f`.
|
|
1065
870
|
*
|
|
1066
|
-
* @tsplus
|
|
871
|
+
* @tsplus pipeable fncts.io.IO map
|
|
1067
872
|
*/
|
|
1068
|
-
|
|
1069
|
-
|
|
1070
|
-
|
|
873
|
+
function map_1(f, __tsplusTrace) {
|
|
874
|
+
return fa => {
|
|
875
|
+
return flatMap_1(a => succeedNow_1(f(a), __tsplusTrace), __tsplusTrace)(fa);
|
|
876
|
+
};
|
|
1071
877
|
}
|
|
1072
878
|
/**
|
|
1073
879
|
* Map covariantly over the first argument.
|
|
@@ -1076,126 +882,108 @@ function map_1(fa, f, __tsplusTrace) {
|
|
|
1076
882
|
* function. This can be used to lift a "smaller" error into a "larger"
|
|
1077
883
|
* error.
|
|
1078
884
|
*
|
|
1079
|
-
* @tsplus
|
|
885
|
+
* @tsplus pipeable fncts.io.IO mapError
|
|
1080
886
|
*/
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
|
|
1084
|
-
|
|
887
|
+
function mapError_1(f, __tsplusTrace) {
|
|
888
|
+
return fea => {
|
|
889
|
+
return matchCauseIO_1(cause => failCauseNow_1(tsplus_module_2.map(f)(cause), __tsplusTrace), succeedNow_1, __tsplusTrace)(fea);
|
|
890
|
+
};
|
|
1085
891
|
}
|
|
1086
892
|
/**
|
|
1087
893
|
* @tsplus static fncts.io.IOOps mapTryCatch
|
|
1088
894
|
*/
|
|
1089
|
-
|
|
1090
|
-
|
|
1091
|
-
export function mapTryCatch_(io, f, onThrow, __tsplusTrace) {
|
|
1092
|
-
return flatMap_1(io, a => tryCatch_1(() => f(a), onThrow, __tsplusTrace), __tsplusTrace);
|
|
895
|
+
export function mapTryCatch(io, f, onThrow, __tsplusTrace) {
|
|
896
|
+
return flatMap_1(a => tryCatch_1(() => f(a), onThrow, __tsplusTrace), __tsplusTrace)(io);
|
|
1093
897
|
}
|
|
1094
898
|
/**
|
|
1095
899
|
* Returns an IO with its full cause of failure mapped using
|
|
1096
900
|
* the specified function. This can be used to transform errors
|
|
1097
901
|
* while preserving the original structure of Cause.
|
|
1098
902
|
*
|
|
1099
|
-
* @tsplus
|
|
903
|
+
* @tsplus pipeable fncts.io.IO mapErrorCause
|
|
1100
904
|
*/
|
|
1101
|
-
|
|
1102
|
-
|
|
1103
|
-
|
|
905
|
+
function mapErrorCause_1(f, __tsplusTrace) {
|
|
906
|
+
return ma => {
|
|
907
|
+
return matchCauseIO_1(cause => failCauseNow_1(f(cause), __tsplusTrace), succeedNow_1, __tsplusTrace)(ma);
|
|
908
|
+
};
|
|
1104
909
|
}
|
|
1105
910
|
/**
|
|
1106
911
|
* A more powerful version of `match_` that allows recovering from any kind of failure except interruptions.
|
|
1107
912
|
*
|
|
1108
|
-
* @tsplus
|
|
913
|
+
* @tsplus pipeable fncts.io.IO matchCause
|
|
1109
914
|
*/
|
|
1110
|
-
|
|
1111
|
-
|
|
1112
|
-
|
|
1113
|
-
|
|
915
|
+
export function matchCause(onFailure, onSuccess, __tsplusTrace) {
|
|
916
|
+
return self => {
|
|
917
|
+
return matchCauseIO_1(cause => succeedNow_1(onFailure(cause), __tsplusTrace), a => succeedNow_1(onSuccess(a), __tsplusTrace), __tsplusTrace)(self);
|
|
918
|
+
};
|
|
1114
919
|
}
|
|
1115
920
|
/**
|
|
1116
921
|
* A more powerful version of `matchIO` that allows recovering from any kind of failure except interruptions.
|
|
1117
922
|
*
|
|
1118
|
-
* @tsplus
|
|
923
|
+
* @tsplus pipeable fncts.io.IO matchCauseIO
|
|
1119
924
|
*/
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
925
|
+
function matchCauseIO_1(onFailure, onSuccess, __tsplusTrace) {
|
|
926
|
+
return self => {
|
|
927
|
+
return new OnSuccessAndFailure(self, onFailure, onSuccess, __tsplusTrace);
|
|
928
|
+
};
|
|
1123
929
|
}
|
|
1124
930
|
/**
|
|
1125
|
-
* @tsplus
|
|
931
|
+
* @tsplus pipeable fncts.io.IO matchIO
|
|
1126
932
|
*/
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
|
|
1130
|
-
|
|
933
|
+
function matchIO_1(onFailure, onSuccess, __tsplusTrace) {
|
|
934
|
+
return self => {
|
|
935
|
+
return matchCauseIO_1(cause => tsplus_module_4.match(onFailure, failCauseNow_1)(tsplus_module_2.failureOrCause(cause)), onSuccess, __tsplusTrace)(self);
|
|
936
|
+
};
|
|
1131
937
|
}
|
|
1132
938
|
/**
|
|
1133
939
|
* Folds over the failure value or the success value to yield an IO that
|
|
1134
940
|
* does not fail, but succeeds with the value returned by the left or right
|
|
1135
941
|
* function passed to `match_`.
|
|
1136
942
|
*
|
|
1137
|
-
* @tsplus
|
|
943
|
+
* @tsplus pipeable fncts.io.IO match
|
|
1138
944
|
*/
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
945
|
+
function match_1(onFailure, onSuccess, __tsplusTrace) {
|
|
946
|
+
return self => {
|
|
947
|
+
return matchIO_1(e => succeedNow_1(onFailure(e), __tsplusTrace), a => succeedNow_1(onSuccess(a), __tsplusTrace), __tsplusTrace)(self);
|
|
948
|
+
};
|
|
1143
949
|
}
|
|
1144
950
|
/**
|
|
1145
951
|
* A version of `matchIO` that gives you the (optional) trace of the error.
|
|
1146
952
|
*
|
|
1147
|
-
* @tsplus
|
|
953
|
+
* @tsplus pipeable fncts.io.IO matchTraceIO
|
|
1148
954
|
*/
|
|
1149
|
-
|
|
1150
|
-
|
|
1151
|
-
|
|
1152
|
-
|
|
955
|
+
export function matchTraceIO(onFailure, onSuccess, __tsplusTrace) {
|
|
956
|
+
return ma => {
|
|
957
|
+
return matchCauseIO_1(cause => tsplus_module_4.match(([e, trace]) => onFailure(e, trace), failCauseNow_1)(tsplus_module_2.failureTraceOrCause(cause)), onSuccess, __tsplusTrace)(ma);
|
|
958
|
+
};
|
|
1153
959
|
}
|
|
1154
960
|
/**
|
|
1155
961
|
* @tsplus getter fncts.io.IO maybe
|
|
1156
962
|
*/
|
|
1157
|
-
|
|
1158
963
|
export function maybe(io, __tsplusTrace) {
|
|
1159
|
-
return match_1(
|
|
964
|
+
return match_1(() => tsplus_module_3.nothing(), tsplus_module_3.just, __tsplusTrace)(io);
|
|
1160
965
|
}
|
|
1161
966
|
/**
|
|
1162
967
|
* @tsplus getter fncts.io.IO merge
|
|
1163
968
|
*/
|
|
1164
|
-
|
|
1165
969
|
export function merge(io, __tsplusTrace) {
|
|
1166
|
-
return matchIO_1(
|
|
970
|
+
return matchIO_1(succeedNow_1, succeedNow_1, __tsplusTrace)(io);
|
|
1167
971
|
}
|
|
1168
972
|
/**
|
|
1169
973
|
* Merges an `Iterable<IO>` to a single IO, working sequentially.
|
|
1170
974
|
*
|
|
1171
975
|
* @tsplus static fncts.io.IOOps mergeAll
|
|
1172
976
|
*/
|
|
1173
|
-
|
|
1174
|
-
|
|
1175
|
-
return tsplus_module_11.foldLeft_(fas, succeed_1(() => b, __tsplusTrace), (b, a) => zipWith_1(b, a, f, __tsplusTrace));
|
|
977
|
+
export function mergeAll(fas, b, f, __tsplusTrace) {
|
|
978
|
+
return tsplus_module_11.foldLeft(succeed_1(() => b, __tsplusTrace), (b, a) => zipWith_1(a, f, __tsplusTrace)(b))(fas);
|
|
1176
979
|
}
|
|
1177
|
-
/**
|
|
1178
|
-
* Returns a `IO` that will never produce anything. The moral equivalent of
|
|
1179
|
-
* `while(true) {}`, only without the wasted CPU cycles.
|
|
1180
|
-
*
|
|
1181
|
-
* @tsplus static fncts.io.IOOps never
|
|
1182
|
-
*/
|
|
1183
|
-
|
|
1184
|
-
export const never = /*#__PURE__*/defer_1(() => asyncInterrupt_1(() => {
|
|
1185
|
-
const interval = setInterval(() => {//
|
|
1186
|
-
}, 60000);
|
|
1187
|
-
return tsplus_module_3.left(succeed_1(() => {
|
|
1188
|
-
clearInterval(interval);
|
|
1189
|
-
}, fileName_1 + ":1443:17"));
|
|
1190
|
-
}), fileName_1 + ":1437:39");
|
|
1191
980
|
/**
|
|
1192
981
|
* Converts an option on errors into an option on values.
|
|
1193
982
|
*
|
|
1194
983
|
* @tsplus getter fncts.io.IO optional
|
|
1195
984
|
*/
|
|
1196
|
-
|
|
1197
985
|
export function optional(ma, __tsplusTrace) {
|
|
1198
|
-
return matchIO_1(
|
|
986
|
+
return matchIO_1(me => tsplus_module_16.match(() => succeedNow_1(tsplus_module_3.nothing(), __tsplusTrace), failNow_1)(me), a => succeedNow_1(tsplus_module_3.just(a), __tsplusTrace), __tsplusTrace)(ma);
|
|
1199
987
|
}
|
|
1200
988
|
/**
|
|
1201
989
|
* Returns the logical disjunction of the `Boolean` value returned by this
|
|
@@ -1203,86 +991,90 @@ export function optional(ma, __tsplusTrace) {
|
|
|
1203
991
|
* operator has "short circuiting" behavior so if the value returned by this
|
|
1204
992
|
* effect is true the specified effect will not be evaluated.
|
|
1205
993
|
*
|
|
1206
|
-
* @tsplus
|
|
994
|
+
* @tsplus pipeable fncts.io.IO or
|
|
995
|
+
* @tsplus pipeable-operator fncts.io.IO ||
|
|
1207
996
|
*/
|
|
1208
|
-
|
|
1209
|
-
|
|
1210
|
-
|
|
997
|
+
export function or(mb, __tsplusTrace) {
|
|
998
|
+
return ma => {
|
|
999
|
+
return flatMap_1(b => b ? succeedNow_1(true, __tsplusTrace) : mb, __tsplusTrace)(ma);
|
|
1000
|
+
};
|
|
1211
1001
|
}
|
|
1212
1002
|
/**
|
|
1213
|
-
* @tsplus
|
|
1003
|
+
* @tsplus pipeable fncts.io.IO orElse
|
|
1214
1004
|
*/
|
|
1215
|
-
|
|
1216
|
-
|
|
1217
|
-
|
|
1005
|
+
function orElse_1(that, __tsplusTrace) {
|
|
1006
|
+
return ma => {
|
|
1007
|
+
return tryOrElse_1(that, succeedNow_1, __tsplusTrace)(ma);
|
|
1008
|
+
};
|
|
1218
1009
|
}
|
|
1219
1010
|
/**
|
|
1220
|
-
* @tsplus
|
|
1011
|
+
* @tsplus pipeable fncts.io.IO orElseEither
|
|
1221
1012
|
*/
|
|
1222
|
-
|
|
1223
|
-
|
|
1224
|
-
|
|
1225
|
-
|
|
1013
|
+
export function orElseEither(that, __tsplusTrace) {
|
|
1014
|
+
return self => {
|
|
1015
|
+
return tryOrElse_1(() => map_1(tsplus_module_9.right, __tsplusTrace)(that()), a => succeedNow_1(tsplus_module_9.left(a), __tsplusTrace), __tsplusTrace)(self);
|
|
1016
|
+
};
|
|
1226
1017
|
}
|
|
1227
1018
|
/**
|
|
1228
|
-
* @tsplus
|
|
1019
|
+
* @tsplus pipeable fncts.io.IO orElseFail
|
|
1229
1020
|
*/
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1021
|
+
export function orElseFail(e, __tsplusTrace) {
|
|
1022
|
+
return ma => {
|
|
1023
|
+
return orElse_1(() => fail_1(e, __tsplusTrace), __tsplusTrace)(ma);
|
|
1024
|
+
};
|
|
1233
1025
|
}
|
|
1234
1026
|
/**
|
|
1235
|
-
* @tsplus
|
|
1027
|
+
* @tsplus pipeable fncts.io.IO orElseMaybe
|
|
1236
1028
|
*/
|
|
1237
|
-
|
|
1238
|
-
|
|
1239
|
-
|
|
1029
|
+
export function orElseMaybe(that, __tsplusTrace) {
|
|
1030
|
+
return ma => {
|
|
1031
|
+
return catchAll_1(me => tsplus_module_16.match(that, e => fail_1(() => tsplus_module_3.just(e), __tsplusTrace))(me), __tsplusTrace)(ma);
|
|
1032
|
+
};
|
|
1240
1033
|
}
|
|
1241
1034
|
/**
|
|
1242
|
-
* @tsplus
|
|
1035
|
+
* @tsplus pipeable fncts.io.IO orElseSucceed
|
|
1243
1036
|
*/
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1037
|
+
export function orElseSucceed(a, __tsplusTrace) {
|
|
1038
|
+
return ma => {
|
|
1039
|
+
return orElse_1(() => succeed_1(a, __tsplusTrace), __tsplusTrace)(ma);
|
|
1040
|
+
};
|
|
1247
1041
|
}
|
|
1248
1042
|
/**
|
|
1249
1043
|
* @tsplus getter fncts.io.IO orHalt
|
|
1250
1044
|
*/
|
|
1251
|
-
|
|
1252
1045
|
export function orHalt(ma, __tsplusTrace) {
|
|
1253
|
-
return orHaltWith_1(
|
|
1046
|
+
return orHaltWith_1(identity, __tsplusTrace)(ma);
|
|
1254
1047
|
}
|
|
1255
1048
|
/**
|
|
1256
1049
|
* @tsplus getter fncts.io.IO orHaltKeep
|
|
1257
1050
|
*/
|
|
1258
|
-
|
|
1259
1051
|
export function orHaltKeep(ma, __tsplusTrace) {
|
|
1260
|
-
return matchCauseIO_1(
|
|
1052
|
+
return matchCauseIO_1(cause => failCauseNow_1(tsplus_module_2.flatMap(tsplus_module_2.halt)(cause), __tsplusTrace), succeedNow_1, __tsplusTrace)(ma);
|
|
1261
1053
|
}
|
|
1262
1054
|
/**
|
|
1263
|
-
* @tsplus
|
|
1055
|
+
* @tsplus pipeable fncts.io.IO orHaltWith
|
|
1264
1056
|
*/
|
|
1265
|
-
|
|
1266
|
-
|
|
1267
|
-
|
|
1057
|
+
function orHaltWith_1(f, __tsplusTrace) {
|
|
1058
|
+
return ma => {
|
|
1059
|
+
return matchIO_1(e => haltNow_1(f(e), __tsplusTrace), succeedNow_1, __tsplusTrace)(ma);
|
|
1060
|
+
};
|
|
1268
1061
|
}
|
|
1269
1062
|
/**
|
|
1270
1063
|
* Exposes all parallel errors in a single call
|
|
1271
1064
|
*
|
|
1272
|
-
* @tsplus
|
|
1273
|
-
*/
|
|
1274
|
-
|
|
1275
|
-
|
|
1276
|
-
|
|
1277
|
-
|
|
1278
|
-
|
|
1279
|
-
|
|
1280
|
-
|
|
1281
|
-
|
|
1282
|
-
|
|
1283
|
-
|
|
1284
|
-
|
|
1285
|
-
}, succeedNow_1, __tsplusTrace);
|
|
1065
|
+
* @tsplus pipeable fncts.io.IO concurrentErrors
|
|
1066
|
+
*/
|
|
1067
|
+
export function concurrentErrors(__tsplusTrace) {
|
|
1068
|
+
return io => {
|
|
1069
|
+
return matchCauseIO_1(cause => {
|
|
1070
|
+
const f = tsplus_module_2.failures(cause);
|
|
1071
|
+
if (tsplus_module_19.length(f) === 0) {
|
|
1072
|
+
return failCauseNow_1(cause, __tsplusTrace);
|
|
1073
|
+
} else {
|
|
1074
|
+
return failNow_1(f, __tsplusTrace);
|
|
1075
|
+
}
|
|
1076
|
+
}, succeedNow_1, __tsplusTrace)(io);
|
|
1077
|
+
};
|
|
1286
1078
|
}
|
|
1287
1079
|
/**
|
|
1288
1080
|
* Feeds elements of type `A` to a function `f` that returns an IO.
|
|
@@ -1290,113 +1082,118 @@ export function parallelErrors(io, __tsplusTrace) {
|
|
|
1290
1082
|
*
|
|
1291
1083
|
* @tsplus static fncts.io.IOOps partition
|
|
1292
1084
|
*/
|
|
1293
|
-
|
|
1294
|
-
|
|
1295
|
-
return map_1(foreach_1(as, a => either_1(f(a), __tsplusTrace), __tsplusTrace), c => tsplus_module_10.separate(c), __tsplusTrace);
|
|
1085
|
+
export function partition(as, f, __tsplusTrace) {
|
|
1086
|
+
return map_1(c => tsplus_module_10.separate(c), __tsplusTrace)(foreach_1(as, a => either_1(f(a), __tsplusTrace), __tsplusTrace));
|
|
1296
1087
|
}
|
|
1297
1088
|
/**
|
|
1298
1089
|
* Keeps some of the errors, and terminates the fiber with the rest
|
|
1299
1090
|
*
|
|
1300
|
-
* @tsplus
|
|
1091
|
+
* @tsplus pipeable fncts.io.IO refineOrHalt
|
|
1301
1092
|
*/
|
|
1302
|
-
|
|
1303
|
-
|
|
1304
|
-
|
|
1093
|
+
export function refineOrHalt(pf, __tsplusTrace) {
|
|
1094
|
+
return fa => {
|
|
1095
|
+
return refineOrHaltWith_1(pf, identity, __tsplusTrace)(fa);
|
|
1096
|
+
};
|
|
1305
1097
|
}
|
|
1306
1098
|
/**
|
|
1307
1099
|
* Keeps some of the errors, and terminates the fiber with the rest, using
|
|
1308
1100
|
* the specified function to convert the `E` into a `Throwable`.
|
|
1309
1101
|
*
|
|
1310
|
-
* @tsplus
|
|
1102
|
+
* @tsplus pipeable fncts.io.IO refineOrHaltWith
|
|
1311
1103
|
*/
|
|
1312
|
-
|
|
1313
|
-
|
|
1314
|
-
|
|
1104
|
+
function refineOrHaltWith_1(pf, f, __tsplusTrace) {
|
|
1105
|
+
return fa => {
|
|
1106
|
+
return catchAll_1(e => tsplus_module_16.match(() => haltNow_1(f(e), __tsplusTrace), failNow_1)(pf(e)), __tsplusTrace)(fa);
|
|
1107
|
+
};
|
|
1315
1108
|
}
|
|
1316
1109
|
/**
|
|
1317
1110
|
* Fail with the returned value if the partial function `pf` matches, otherwise
|
|
1318
1111
|
* continue with the held value.
|
|
1319
1112
|
*
|
|
1320
|
-
* @tsplus
|
|
1113
|
+
* @tsplus pipeable fncts.io.IO reject
|
|
1321
1114
|
*/
|
|
1322
|
-
|
|
1323
|
-
|
|
1324
|
-
|
|
1325
|
-
|
|
1115
|
+
export function reject(pf, __tsplusTrace) {
|
|
1116
|
+
return fa => {
|
|
1117
|
+
return rejectIO_1(a => tsplus_module_6.map(failNow_1)(pf(a)), __tsplusTrace)(fa);
|
|
1118
|
+
};
|
|
1326
1119
|
}
|
|
1327
1120
|
/**
|
|
1328
1121
|
* Continue with the returned computation if the partial function `pf` matches,
|
|
1329
1122
|
* translating the successful match into a failure, otherwise continue with
|
|
1330
1123
|
* the held value.
|
|
1331
1124
|
*
|
|
1332
|
-
* @tsplus
|
|
1125
|
+
* @tsplus pipeable fncts.io.IO rejectIO
|
|
1333
1126
|
*/
|
|
1334
|
-
|
|
1335
|
-
|
|
1336
|
-
|
|
1127
|
+
function rejectIO_1(pf, __tsplusTrace) {
|
|
1128
|
+
return fa => {
|
|
1129
|
+
return flatMap_1(a => tsplus_module_16.match(() => succeedNow_1(a, __tsplusTrace), io => flatMap_1(failNow_1, __tsplusTrace)(io))(pf(a)), __tsplusTrace)(fa);
|
|
1130
|
+
};
|
|
1337
1131
|
}
|
|
1338
1132
|
/**
|
|
1339
1133
|
* Repeats this effect the specified number of times.
|
|
1340
1134
|
*
|
|
1341
|
-
* @tsplus
|
|
1135
|
+
* @tsplus pipeable fncts.io.IO repeatN
|
|
1342
1136
|
*/
|
|
1343
|
-
|
|
1344
|
-
|
|
1345
|
-
|
|
1346
|
-
|
|
1137
|
+
function repeatN_1(n, __tsplusTrace) {
|
|
1138
|
+
return ma => {
|
|
1139
|
+
return flatMap_1(a => n <= 0 ? succeed_1(() => a, __tsplusTrace) : repeatN_1(n - 1, __tsplusTrace)(ma), __tsplusTrace)(ma);
|
|
1140
|
+
};
|
|
1347
1141
|
}
|
|
1348
1142
|
/**
|
|
1349
1143
|
* Repeats this effect until its result satisfies the specified predicate.
|
|
1350
1144
|
*
|
|
1351
|
-
* @tsplus
|
|
1145
|
+
* @tsplus pipeable fncts.io.IO repeatUntil
|
|
1352
1146
|
*/
|
|
1353
|
-
|
|
1354
|
-
|
|
1355
|
-
|
|
1356
|
-
|
|
1147
|
+
export function repeatUntil(f, __tsplusTrace) {
|
|
1148
|
+
return ma => {
|
|
1149
|
+
return repeatUntilIO_1(a => succeedNow_1(f(a), __tsplusTrace), __tsplusTrace)(ma);
|
|
1150
|
+
};
|
|
1357
1151
|
}
|
|
1358
1152
|
/**
|
|
1359
1153
|
* Repeats this effect until its error satisfies the specified effectful predicate.
|
|
1360
1154
|
*
|
|
1361
|
-
* @tsplus
|
|
1155
|
+
* @tsplus pipeable fncts.io.IO repeatUntilIO
|
|
1362
1156
|
*/
|
|
1363
|
-
|
|
1364
|
-
|
|
1365
|
-
|
|
1157
|
+
function repeatUntilIO_1(f, __tsplusTrace) {
|
|
1158
|
+
return ma => {
|
|
1159
|
+
return flatMap_1(a => flatMap_1(b => b ? succeed_1(() => a, __tsplusTrace) : repeatUntilIO_1(f, __tsplusTrace)(ma), __tsplusTrace)(f(a)), __tsplusTrace)(ma);
|
|
1160
|
+
};
|
|
1366
1161
|
}
|
|
1367
1162
|
/**
|
|
1368
1163
|
* Repeats this effect while its error satisfies the specified predicate.
|
|
1369
1164
|
*
|
|
1370
|
-
* @tsplus
|
|
1165
|
+
* @tsplus pipeable fncts.io.IO repeatWhile
|
|
1371
1166
|
*/
|
|
1372
|
-
|
|
1373
|
-
|
|
1374
|
-
|
|
1375
|
-
|
|
1167
|
+
export function repeatWhile(f, __tsplusTrace) {
|
|
1168
|
+
return ma => {
|
|
1169
|
+
return repeatWhileIO_1(a => succeedNow_1(f(a), __tsplusTrace), __tsplusTrace)(ma);
|
|
1170
|
+
};
|
|
1376
1171
|
}
|
|
1377
1172
|
/**
|
|
1378
1173
|
* Repeats this effect while its error satisfies the specified effectful predicate.
|
|
1379
1174
|
*
|
|
1380
|
-
* @tsplus
|
|
1175
|
+
* @tsplus pipeable fncts.io.IO repeatWhileIO
|
|
1381
1176
|
*/
|
|
1382
|
-
|
|
1383
|
-
|
|
1384
|
-
|
|
1177
|
+
function repeatWhileIO_1(f, __tsplusTrace) {
|
|
1178
|
+
return ma => {
|
|
1179
|
+
return flatMap_1(a => flatMap_1(b => b ? repeatWhileIO_1(f, __tsplusTrace)(ma) : succeed_1(() => a, __tsplusTrace), __tsplusTrace)(f(a)), __tsplusTrace)(ma);
|
|
1180
|
+
};
|
|
1385
1181
|
}
|
|
1386
1182
|
/**
|
|
1387
|
-
* @tsplus
|
|
1183
|
+
* @tsplus pipeable fncts.io.IO replicate
|
|
1388
1184
|
*/
|
|
1389
|
-
|
|
1390
|
-
|
|
1391
|
-
|
|
1392
|
-
|
|
1185
|
+
export function replicate(n, __tsplusTrace) {
|
|
1186
|
+
return self => {
|
|
1187
|
+
return tsplus_module_21.map(() => self)(tsplus_module_20.range(0, n));
|
|
1188
|
+
};
|
|
1393
1189
|
}
|
|
1394
1190
|
/**
|
|
1395
|
-
* @tsplus
|
|
1191
|
+
* @tsplus pipeable fncts.io.IO require
|
|
1396
1192
|
*/
|
|
1397
|
-
|
|
1398
|
-
|
|
1399
|
-
|
|
1193
|
+
export function require(error, __tsplusTrace) {
|
|
1194
|
+
return ma => {
|
|
1195
|
+
return flatMap_1(ma => tsplus_module_16.match(() => fail_1(error, __tsplusTrace), succeedNow_1)(ma), __tsplusTrace)(ma);
|
|
1196
|
+
};
|
|
1400
1197
|
}
|
|
1401
1198
|
/**
|
|
1402
1199
|
* Returns an IO that semantically runs the IO on a fiber,
|
|
@@ -1404,100 +1201,82 @@ export function require_(ma, error, __tsplusTrace) {
|
|
|
1404
1201
|
*
|
|
1405
1202
|
* @tsplus getter fncts.io.IO result
|
|
1406
1203
|
*/
|
|
1407
|
-
|
|
1408
1204
|
export function result(ma, __tsplusTrace) {
|
|
1409
|
-
return matchCauseIO_1(
|
|
1205
|
+
return matchCauseIO_1(cause => succeedNow_1(tsplus_module_22.failCause(cause), __tsplusTrace), a => succeedNow_1(tsplus_module_22.succeed(a), __tsplusTrace), __tsplusTrace)(ma);
|
|
1410
1206
|
}
|
|
1411
1207
|
/**
|
|
1412
1208
|
* Recover from the unchecked failure of the `IO`. (opposite of `orHalt`)
|
|
1413
1209
|
*
|
|
1414
1210
|
* @trace call
|
|
1415
1211
|
*/
|
|
1416
|
-
|
|
1417
1212
|
export function resurrect(io, __tsplusTrace) {
|
|
1418
|
-
return unrefineWith_1(
|
|
1213
|
+
return unrefineWith_1(tsplus_module_3.just, identity, __tsplusTrace)(io);
|
|
1419
1214
|
}
|
|
1420
1215
|
/**
|
|
1421
1216
|
* Retries this effect until its error satisfies the specified predicate.
|
|
1422
1217
|
*
|
|
1423
|
-
* @tsplus
|
|
1218
|
+
* @tsplus pipeable fncts.io.IO retryUntil
|
|
1424
1219
|
*/
|
|
1425
|
-
|
|
1426
|
-
|
|
1427
|
-
|
|
1220
|
+
export function retryUntil(f, __tsplusTrace) {
|
|
1221
|
+
return fa => {
|
|
1222
|
+
return retryUntilIO_1(e => succeedNow_1(f(e), __tsplusTrace), __tsplusTrace)(fa);
|
|
1223
|
+
};
|
|
1428
1224
|
}
|
|
1429
1225
|
/**
|
|
1430
1226
|
* Retries this effect until its error satisfies the specified effectful predicate.
|
|
1431
1227
|
*
|
|
1432
|
-
* @tsplus
|
|
1228
|
+
* @tsplus pipeable fncts.io.IO retryUntilIO
|
|
1433
1229
|
*/
|
|
1434
|
-
|
|
1435
|
-
|
|
1436
|
-
|
|
1230
|
+
function retryUntilIO_1(f, __tsplusTrace) {
|
|
1231
|
+
return fa => {
|
|
1232
|
+
return catchAll_1(e => flatMap_1(b => b ? failNow_1(e, __tsplusTrace) : retryUntilIO_1(f, __tsplusTrace)(fa), __tsplusTrace)(f(e)), __tsplusTrace)(fa);
|
|
1233
|
+
};
|
|
1437
1234
|
}
|
|
1438
1235
|
/**
|
|
1439
1236
|
* Retries this effect while its error satisfies the specified predicate.
|
|
1440
1237
|
*
|
|
1441
|
-
* @tsplus
|
|
1238
|
+
* @tsplus pipeable fncts.io.IO retryWhile
|
|
1442
1239
|
*/
|
|
1443
|
-
|
|
1444
|
-
|
|
1445
|
-
|
|
1446
|
-
|
|
1240
|
+
export function retryWhile(f, __tsplusTrace) {
|
|
1241
|
+
return fa => {
|
|
1242
|
+
return retryWhileIO_1(e => succeedNow_1(f(e), __tsplusTrace), __tsplusTrace)(fa);
|
|
1243
|
+
};
|
|
1447
1244
|
}
|
|
1448
1245
|
/**
|
|
1449
1246
|
* Retries this effect while its error satisfies the specified effectful predicate.
|
|
1450
1247
|
*
|
|
1451
|
-
* @tsplus
|
|
1248
|
+
* @tsplus pipeable fncts.io.IO retryWhileIO
|
|
1452
1249
|
*/
|
|
1453
|
-
|
|
1454
|
-
|
|
1455
|
-
|
|
1250
|
+
function retryWhileIO_1(f, __tsplusTrace) {
|
|
1251
|
+
return fa => {
|
|
1252
|
+
return catchAll_1(e => flatMap_1(b => b ? retryWhileIO_1(f, __tsplusTrace)(fa) : fail_1(() => e, __tsplusTrace), __tsplusTrace)(f(e)), __tsplusTrace)(fa);
|
|
1253
|
+
};
|
|
1456
1254
|
}
|
|
1457
|
-
/**
|
|
1458
|
-
* Retrieves the runtimeConfig that this effect is running on.
|
|
1459
|
-
*
|
|
1460
|
-
* @tsplus static fncts.io.IOOps runtimeConfig
|
|
1461
|
-
*/
|
|
1462
|
-
|
|
1463
|
-
|
|
1464
|
-
export const runtimeConfig = /*#__PURE__*/deferWith_1(runtimeConfig => succeedNow_1(runtimeConfig, fileName_1 + ":1776:95"), fileName_1 + ":1776:62");
|
|
1465
1255
|
/**
|
|
1466
1256
|
* Exposes the full cause of failure of this effect.
|
|
1467
1257
|
*
|
|
1468
1258
|
* @tsplus getter fncts.io.IO sandbox
|
|
1469
1259
|
*/
|
|
1470
|
-
|
|
1471
1260
|
function sandbox_1(fa, __tsplusTrace) {
|
|
1472
|
-
return matchCauseIO_1(
|
|
1261
|
+
return matchCauseIO_1(failNow_1, succeedNow_1, __tsplusTrace)(fa);
|
|
1473
1262
|
}
|
|
1474
1263
|
/**
|
|
1475
|
-
* @tsplus
|
|
1264
|
+
* @tsplus pipeable fncts.io.IO sandboxWith
|
|
1476
1265
|
*/
|
|
1477
|
-
|
|
1478
|
-
|
|
1479
|
-
|
|
1480
|
-
|
|
1481
|
-
}
|
|
1482
|
-
/**
|
|
1483
|
-
* Sets the runtime configuration to the specified value.
|
|
1484
|
-
* @tsplus static fncts.io.IOOps setRuntimeConfig
|
|
1485
|
-
*/
|
|
1486
|
-
|
|
1487
|
-
export function setRuntimeConfig(runtimeConfig, __tsplusTrace) {
|
|
1488
|
-
return withFiberContext_1(fiber => succeed_1(() => fiber.runtimeConfig = runtimeConfig(), __tsplusTrace), __tsplusTrace);
|
|
1266
|
+
export function sandboxWith(f, __tsplusTrace) {
|
|
1267
|
+
return ma => {
|
|
1268
|
+
return unsandbox_1(f(sandbox_1(ma, __tsplusTrace)), __tsplusTrace);
|
|
1269
|
+
};
|
|
1489
1270
|
}
|
|
1490
1271
|
/**
|
|
1491
1272
|
* @tsplus static fncts.io.IOOps sequenceIterable
|
|
1492
1273
|
*/
|
|
1493
|
-
|
|
1494
1274
|
export function sequenceIterable(as, __tsplusTrace) {
|
|
1495
1275
|
return foreach_1(as, identity, __tsplusTrace);
|
|
1496
1276
|
}
|
|
1497
1277
|
/**
|
|
1498
1278
|
* @tsplus static fncts.io.IOOps sequenceIterableDiscard
|
|
1499
1279
|
*/
|
|
1500
|
-
|
|
1501
1280
|
export function sequenceIterableDiscard(as, __tsplusTrace) {
|
|
1502
1281
|
return foreachDiscard_1(as, identity, __tsplusTrace);
|
|
1503
1282
|
}
|
|
@@ -1506,7 +1285,6 @@ export function sequenceIterableDiscard(as, __tsplusTrace) {
|
|
|
1506
1285
|
*
|
|
1507
1286
|
* @tsplus static fncts.io.IOOps succeedNow
|
|
1508
1287
|
*/
|
|
1509
|
-
|
|
1510
1288
|
function succeedNow_1(value, __tsplusTrace) {
|
|
1511
1289
|
return new SucceedNow(value, __tsplusTrace);
|
|
1512
1290
|
}
|
|
@@ -1518,66 +1296,57 @@ function succeedNow_1(value, __tsplusTrace) {
|
|
|
1518
1296
|
* @tsplus static fncts.io.IOOps succeed
|
|
1519
1297
|
* @tsplus static fncts.io.IOOps __call
|
|
1520
1298
|
*/
|
|
1521
|
-
|
|
1522
|
-
|
|
1523
1299
|
function succeed_1(effect, __tsplusTrace) {
|
|
1524
|
-
return new
|
|
1300
|
+
return new Sync(effect, __tsplusTrace);
|
|
1525
1301
|
}
|
|
1526
1302
|
/**
|
|
1527
|
-
* @tsplus
|
|
1303
|
+
* @tsplus pipeable fncts.io.IO summarized
|
|
1528
1304
|
*/
|
|
1529
|
-
|
|
1530
|
-
|
|
1531
|
-
function
|
|
1532
|
-
|
|
1533
|
-
|
|
1534
|
-
|
|
1535
|
-
|
|
1536
|
-
|
|
1537
|
-
}
|
|
1305
|
+
function summarized_1(summary, f, __tsplusTrace) {
|
|
1306
|
+
return ma => {
|
|
1307
|
+
return gen_1(function* (_) {
|
|
1308
|
+
const start = yield* _(summary, __tsplusTrace);
|
|
1309
|
+
const value = yield* _(ma, __tsplusTrace);
|
|
1310
|
+
const end = yield* _(summary, __tsplusTrace);
|
|
1311
|
+
return tuple(f(start, end), value);
|
|
1312
|
+
}, __tsplusTrace);
|
|
1313
|
+
};
|
|
1538
1314
|
}
|
|
1539
1315
|
/**
|
|
1540
1316
|
* Swaps the positions of a Bifunctor's arguments
|
|
1541
1317
|
*
|
|
1542
1318
|
* @tsplus getter fncts.io.IO swap
|
|
1543
1319
|
*/
|
|
1544
|
-
|
|
1545
|
-
|
|
1546
1320
|
function swap_1(pab, __tsplusTrace) {
|
|
1547
|
-
return matchIO_1(
|
|
1321
|
+
return matchIO_1(succeedNow_1, failNow_1, __tsplusTrace)(pab);
|
|
1548
1322
|
}
|
|
1549
1323
|
/**
|
|
1550
1324
|
* Swaps the error/value parameters, applies the function `f` and flips the parameters back
|
|
1551
1325
|
*
|
|
1552
|
-
* @tsplus
|
|
1326
|
+
* @tsplus pipeable fncts.io.IO swapWith
|
|
1553
1327
|
*/
|
|
1554
|
-
|
|
1555
|
-
|
|
1556
|
-
function swapWith_1(fa, f, __tsplusTrace) {
|
|
1557
|
-
return swap_1(f(swap_1(fa, __tsplusTrace)), __tsplusTrace);
|
|
1328
|
+
function swapWith_1(f, __tsplusTrace) {
|
|
1329
|
+
return fa => swap_1(f(swap_1(fa, __tsplusTrace)), __tsplusTrace);
|
|
1558
1330
|
}
|
|
1559
1331
|
/**
|
|
1560
1332
|
* A more powerful variation of `timed` that allows specifying the clock.
|
|
1561
1333
|
*
|
|
1562
|
-
* @tsplus
|
|
1334
|
+
* @tsplus pipeable fncts.io.IO timedWith
|
|
1563
1335
|
*/
|
|
1564
|
-
|
|
1565
|
-
|
|
1566
|
-
export function timedWith_(ma, msTime, __tsplusTrace) {
|
|
1567
|
-
return summarized_1(ma, msTime, (start, end) => end - start, __tsplusTrace);
|
|
1336
|
+
export function timedWith(msTime, __tsplusTrace) {
|
|
1337
|
+
return ma => summarized_1(msTime, (start, end) => end - start, __tsplusTrace)(ma);
|
|
1568
1338
|
}
|
|
1569
1339
|
/**
|
|
1570
1340
|
* Creates a `IO` that has succeeded with a pure value
|
|
1571
1341
|
*
|
|
1572
1342
|
* @tsplus static fncts.io.IOOps tryCatch
|
|
1573
1343
|
*/
|
|
1574
|
-
|
|
1575
1344
|
function tryCatch_1(effect, onThrow, __tsplusTrace) {
|
|
1576
1345
|
return succeed_1(() => {
|
|
1577
1346
|
try {
|
|
1578
1347
|
return effect();
|
|
1579
1348
|
} catch (u) {
|
|
1580
|
-
throw new IOError(
|
|
1349
|
+
throw new IOError(tsplus_module_2.fail(onThrow(u)));
|
|
1581
1350
|
}
|
|
1582
1351
|
}, __tsplusTrace);
|
|
1583
1352
|
}
|
|
@@ -1586,10 +1355,8 @@ function tryCatch_1(effect, onThrow, __tsplusTrace) {
|
|
|
1586
1355
|
*
|
|
1587
1356
|
* @tsplus getter fncts.io.IO absolve
|
|
1588
1357
|
*/
|
|
1589
|
-
|
|
1590
|
-
|
|
1591
1358
|
export function absolve(ma, __tsplusTrace) {
|
|
1592
|
-
return flatMap_1(
|
|
1359
|
+
return flatMap_1(ea => tsplus_module_4.match(failNow_1, succeedNow_1)(ea), __tsplusTrace)(ma);
|
|
1593
1360
|
}
|
|
1594
1361
|
/**
|
|
1595
1362
|
* Composes computations in sequence, using the return value of one computation as input for the next
|
|
@@ -1597,83 +1364,82 @@ export function absolve(ma, __tsplusTrace) {
|
|
|
1597
1364
|
*
|
|
1598
1365
|
* Returns an IO that effectfully "peeks" at the success of this effect.
|
|
1599
1366
|
*
|
|
1600
|
-
* @tsplus
|
|
1367
|
+
* @tsplus pipeable fncts.io.IO tap
|
|
1601
1368
|
*/
|
|
1602
|
-
|
|
1603
|
-
|
|
1604
|
-
|
|
1369
|
+
export function tap(f, __tsplusTrace) {
|
|
1370
|
+
return self => {
|
|
1371
|
+
return flatMap_1(a => map_1(() => a, __tsplusTrace)(f(a)), __tsplusTrace)(self);
|
|
1372
|
+
};
|
|
1605
1373
|
}
|
|
1606
1374
|
/**
|
|
1607
1375
|
* Returns an IO that effectually "peeks" at the cause of the failure of
|
|
1608
1376
|
* this IO.
|
|
1609
1377
|
*
|
|
1610
|
-
* @tsplus
|
|
1378
|
+
* @tsplus pipeable fncts.io.IO tapCause
|
|
1611
1379
|
*/
|
|
1612
|
-
|
|
1613
|
-
|
|
1614
|
-
|
|
1380
|
+
export function tapCause(f, __tsplusTrace) {
|
|
1381
|
+
return ma => {
|
|
1382
|
+
return matchCauseIO_1(c => flatMap_1(() => failCauseNow_1(c, __tsplusTrace), __tsplusTrace)(f(c)), succeedNow_1, __tsplusTrace)(ma);
|
|
1383
|
+
};
|
|
1615
1384
|
}
|
|
1616
1385
|
/**
|
|
1617
1386
|
* Returns an IO that effectfully "peeks" at the failure of this effect.
|
|
1618
1387
|
*
|
|
1619
|
-
* @tsplus
|
|
1388
|
+
* @tsplus pipeable fncts.io.IO tapError
|
|
1620
1389
|
*/
|
|
1621
|
-
|
|
1622
|
-
|
|
1623
|
-
return matchCauseIO_1(self, cause => tsplus_module_6.match_(tsplus_module_5.failureOrCause(cause), e => flatMap_1(f(e), () => failCauseNow_1(cause, __tsplusTrace), __tsplusTrace), _ => failCauseNow_1(cause, __tsplusTrace)), succeedNow_1, __tsplusTrace);
|
|
1390
|
+
export function tapError(f, __tsplusTrace) {
|
|
1391
|
+
return self => matchCauseIO_1(cause => tsplus_module_4.match(e => flatMap_1(() => failCauseNow_1(cause, __tsplusTrace), __tsplusTrace)(f(e)), _ => failCauseNow_1(cause, __tsplusTrace))(tsplus_module_2.failureOrCause(cause)), succeedNow_1, __tsplusTrace)(self);
|
|
1624
1392
|
}
|
|
1625
1393
|
/**
|
|
1626
1394
|
* Returns an effect that effectually "peeks" at the cause of the failure of
|
|
1627
1395
|
* this effect.
|
|
1628
1396
|
*
|
|
1629
|
-
* @tsplus
|
|
1397
|
+
* @tsplus pipeable fncts.io.IO tapErrorCause
|
|
1630
1398
|
*/
|
|
1631
|
-
|
|
1632
|
-
|
|
1633
|
-
|
|
1399
|
+
export function tapErrorCause(f, __tsplusTrace) {
|
|
1400
|
+
return self => {
|
|
1401
|
+
return matchCauseIO_1(cause => zipRight_1(failCauseNow_1(cause, __tsplusTrace), __tsplusTrace)(f(cause)), succeedNow_1, __tsplusTrace)(self);
|
|
1402
|
+
};
|
|
1634
1403
|
}
|
|
1635
1404
|
/**
|
|
1636
|
-
* @tsplus
|
|
1405
|
+
* @tsplus pipeable fncts.io.IO tryOrElse
|
|
1637
1406
|
*/
|
|
1638
|
-
|
|
1639
|
-
|
|
1640
|
-
|
|
1407
|
+
function tryOrElse_1(that, onSuccess, __tsplusTrace) {
|
|
1408
|
+
return ma => {
|
|
1409
|
+
return matchCauseIO_1(cause => tsplus_module_16.match(that, failCauseNow_1)(tsplus_module_2.keepDefects(cause)), onSuccess, __tsplusTrace)(ma);
|
|
1410
|
+
};
|
|
1641
1411
|
}
|
|
1642
1412
|
/**
|
|
1643
1413
|
* @tsplus static fncts.io.IOOps unit
|
|
1644
1414
|
*/
|
|
1645
|
-
|
|
1646
|
-
|
|
1647
|
-
const unit_1 = /*#__PURE__*/succeedNow_1(undefined, fileName_1 + ":1988:45");
|
|
1415
|
+
const unit_1 = /*#__PURE__*/succeedNow_1(undefined, fileName_1 + ":1796:45");
|
|
1648
1416
|
export const unit = unit_1;
|
|
1649
1417
|
/**
|
|
1650
1418
|
* Converts an option on errors into an option on values.
|
|
1651
1419
|
*
|
|
1652
1420
|
* @tsplus getter fncts.io.IO unjust
|
|
1653
1421
|
*/
|
|
1654
|
-
|
|
1655
1422
|
export function unjust(self, __tsplusTrace) {
|
|
1656
|
-
return matchIO_1(
|
|
1423
|
+
return matchIO_1(e => tsplus_module_16.match(() => succeedNow_1(tsplus_module_3.nothing(), __tsplusTrace), failNow_1)(e), a => succeedNow_1(tsplus_module_3.just(a), __tsplusTrace), __tsplusTrace)(self);
|
|
1657
1424
|
}
|
|
1658
1425
|
/**
|
|
1659
1426
|
* Takes some fiber failures and converts them into errors, using the
|
|
1660
1427
|
* specified function to convert the `E` into an `E1 | E2`.
|
|
1661
1428
|
*
|
|
1662
|
-
* @tsplus
|
|
1429
|
+
* @tsplus pipeable fncts.io.IO unrefineWith
|
|
1663
1430
|
*/
|
|
1664
|
-
|
|
1665
|
-
|
|
1666
|
-
|
|
1431
|
+
function unrefineWith_1(pf, f, __tsplusTrace) {
|
|
1432
|
+
return fa => {
|
|
1433
|
+
return catchAllCause_1(cause => tsplus_module_16.match(() => failCauseNow_1(tsplus_module_2.map(f)(cause), __tsplusTrace), failNow_1)(tsplus_module_2.find(c => tsplus_module_2.isHalt(c) ? pf(c.value) : tsplus_module_3.nothing())(cause)), __tsplusTrace)(fa);
|
|
1434
|
+
};
|
|
1667
1435
|
}
|
|
1668
1436
|
/**
|
|
1669
1437
|
* The inverse operation `sandbox`
|
|
1670
1438
|
*
|
|
1671
1439
|
* @tsplus getter fncts.io.IO unsandbox
|
|
1672
1440
|
*/
|
|
1673
|
-
|
|
1674
|
-
|
|
1675
1441
|
function unsandbox_1(ma, __tsplusTrace) {
|
|
1676
|
-
return mapErrorCause_1(
|
|
1442
|
+
return mapErrorCause_1(cause => tsplus_module_2.flatten(cause), __tsplusTrace)(ma);
|
|
1677
1443
|
}
|
|
1678
1444
|
/**
|
|
1679
1445
|
* Updates the `FiberRef` values for the fiber running this effect using the
|
|
@@ -1681,42 +1447,51 @@ function unsandbox_1(ma, __tsplusTrace) {
|
|
|
1681
1447
|
*
|
|
1682
1448
|
* @tsplus static fncts.io.IOOps updateFiberRefs
|
|
1683
1449
|
*/
|
|
1684
|
-
|
|
1685
|
-
|
|
1686
1450
|
export function updateFiberRefs(f, __tsplusTrace) {
|
|
1687
|
-
return
|
|
1688
|
-
|
|
1689
|
-
|
|
1690
|
-
}, __tsplusTrace)
|
|
1691
|
-
}
|
|
1692
|
-
/**
|
|
1693
|
-
* @tsplus static fncts.io.IOOps withFiberContext
|
|
1694
|
-
*/
|
|
1695
|
-
|
|
1696
|
-
function withFiberContext_1(onState, __tsplusTrace) {
|
|
1697
|
-
return new Stateful(onState, __tsplusTrace);
|
|
1451
|
+
return withFiberRuntime_1(state => {
|
|
1452
|
+
state.setFiberRefs(f(state.id, state.getFiberRefs()));
|
|
1453
|
+
return unit_1;
|
|
1454
|
+
}, __tsplusTrace);
|
|
1698
1455
|
}
|
|
1699
1456
|
/**
|
|
1700
1457
|
* @tsplus fluent fncts.io.IO __call
|
|
1701
1458
|
*/
|
|
1702
|
-
|
|
1703
|
-
|
|
1704
1459
|
export const via = pipe;
|
|
1705
1460
|
/**
|
|
1706
|
-
* @tsplus
|
|
1461
|
+
* @tsplus pipeable fncts.io.IO when
|
|
1707
1462
|
*/
|
|
1708
|
-
|
|
1709
|
-
|
|
1710
|
-
|
|
1463
|
+
export function when(b, __tsplusTrace) {
|
|
1464
|
+
return ma => {
|
|
1465
|
+
return whenIO_1(succeed_1(b, __tsplusTrace), __tsplusTrace)(ma);
|
|
1466
|
+
};
|
|
1711
1467
|
}
|
|
1712
1468
|
/**
|
|
1713
1469
|
* The moral equivalent of `if (p) exp` when `p` has side-effects
|
|
1714
1470
|
*
|
|
1715
|
-
* @tsplus
|
|
1471
|
+
* @tsplus pipeable fncts.io.IO whenIO
|
|
1472
|
+
*/
|
|
1473
|
+
function whenIO_1(mb, __tsplusTrace) {
|
|
1474
|
+
return ma => {
|
|
1475
|
+
return flatMap_1(b => b ? asUnit_1(ma, __tsplusTrace) : unit_1, __tsplusTrace)(mb);
|
|
1476
|
+
};
|
|
1477
|
+
}
|
|
1478
|
+
/**
|
|
1479
|
+
* @tsplus static fncts.io.IOOps withFiberRuntime
|
|
1480
|
+
*/
|
|
1481
|
+
function withFiberRuntime_1(onState, __tsplusTrace) {
|
|
1482
|
+
return new Stateful(onState, __tsplusTrace);
|
|
1483
|
+
}
|
|
1484
|
+
/**
|
|
1485
|
+
* @tsplus static fncts.io.IOOps updateRuntimeFlags
|
|
1486
|
+
*/
|
|
1487
|
+
export function updateRuntimeFlags(patch, __tsplusTrace) {
|
|
1488
|
+
return new UpdateRuntimeFlags(patch, __tsplusTrace);
|
|
1489
|
+
}
|
|
1490
|
+
/**
|
|
1491
|
+
* @tsplus static fncts.io.IOOps stackTrace
|
|
1716
1492
|
*/
|
|
1717
|
-
|
|
1718
|
-
|
|
1719
|
-
return flatMap_1(mb, b => b ? asUnit_1(ma, __tsplusTrace) : unit_1, __tsplusTrace);
|
|
1493
|
+
function stackTrace_1(__tsplusTrace) {
|
|
1494
|
+
return new GenerateStackTrace(__tsplusTrace);
|
|
1720
1495
|
}
|
|
1721
1496
|
/**
|
|
1722
1497
|
* Returns an effect that yields to the runtime system, starting on a fresh
|
|
@@ -1725,60 +1500,39 @@ function whenIO_1(ma, mb, __tsplusTrace) {
|
|
|
1725
1500
|
*
|
|
1726
1501
|
* @tsplus static fncts.io.IOOps yieldNow
|
|
1727
1502
|
*/
|
|
1728
|
-
|
|
1729
|
-
|
|
1730
|
-
const yieldNow_1 = /*#__PURE__*/new Yield();
|
|
1503
|
+
const yieldNow_1 = /*#__PURE__*/new YieldNow();
|
|
1731
1504
|
export const yieldNow = yieldNow_1;
|
|
1732
1505
|
/**
|
|
1733
|
-
* @tsplus
|
|
1506
|
+
* @tsplus pipeable fncts.io.IO zip
|
|
1734
1507
|
*/
|
|
1735
|
-
|
|
1736
|
-
|
|
1737
|
-
|
|
1508
|
+
export function zip(that, __tsplusTrace) {
|
|
1509
|
+
return self => {
|
|
1510
|
+
return zipWith_1(that, tuple, __tsplusTrace)(self);
|
|
1511
|
+
};
|
|
1738
1512
|
}
|
|
1739
1513
|
/**
|
|
1740
|
-
* @tsplus
|
|
1514
|
+
* @tsplus pipeable fncts.io.IO zipWith
|
|
1741
1515
|
*/
|
|
1742
|
-
|
|
1743
|
-
|
|
1744
|
-
|
|
1516
|
+
function zipWith_1(that, f, __tsplusTrace) {
|
|
1517
|
+
return self => {
|
|
1518
|
+
return flatMap_1(a => map_1(b => f(a, b), __tsplusTrace)(that), __tsplusTrace)(self);
|
|
1519
|
+
};
|
|
1745
1520
|
}
|
|
1746
|
-
|
|
1747
1521
|
export class GenIO {
|
|
1748
1522
|
constructor(effect, _trace) {
|
|
1749
1523
|
this.effect = effect;
|
|
1750
1524
|
this._trace = _trace;
|
|
1751
1525
|
}
|
|
1752
|
-
|
|
1753
1526
|
*[Symbol.iterator]() {
|
|
1754
1527
|
return yield this;
|
|
1755
1528
|
}
|
|
1756
|
-
|
|
1757
1529
|
}
|
|
1758
1530
|
/**
|
|
1759
1531
|
* @internal
|
|
1760
1532
|
*/
|
|
1761
|
-
|
|
1762
1533
|
export const __adapter = _ => {
|
|
1763
|
-
// if (Either.isEither(_)) {
|
|
1764
|
-
// return IO.fromEither(_);
|
|
1765
|
-
// }
|
|
1766
|
-
// if (Maybe.isMaybe(_)) {
|
|
1767
|
-
// return __
|
|
1768
|
-
// ? _._tag === "Nothing"
|
|
1769
|
-
// ? IO.failNow(__())
|
|
1770
|
-
// : IO.succeed(_.value)
|
|
1771
|
-
// : getOrFail(_);
|
|
1772
|
-
// }
|
|
1773
|
-
// if (isTag(_)) {
|
|
1774
|
-
// return service(_);
|
|
1775
|
-
// }
|
|
1776
|
-
// if (S.isSync(_)) {
|
|
1777
|
-
// return fromSync(_);
|
|
1778
|
-
// }
|
|
1779
1534
|
return _;
|
|
1780
1535
|
};
|
|
1781
|
-
|
|
1782
1536
|
const adapter = (_, __tsplusTrace) => {
|
|
1783
1537
|
return new GenIO(__adapter(_), __tsplusTrace);
|
|
1784
1538
|
};
|
|
@@ -1786,26 +1540,20 @@ const adapter = (_, __tsplusTrace) => {
|
|
|
1786
1540
|
* @tsplus static fncts.io.IOOps gen
|
|
1787
1541
|
* @gen
|
|
1788
1542
|
*/
|
|
1789
|
-
|
|
1790
|
-
|
|
1791
1543
|
function gen_1(f, __tsplusTrace) {
|
|
1792
1544
|
return defer_1(() => {
|
|
1793
1545
|
const iterator = f(adapter);
|
|
1794
1546
|
const state = iterator.next();
|
|
1795
|
-
|
|
1796
1547
|
const run = state => {
|
|
1797
1548
|
if (state.done) {
|
|
1798
1549
|
return succeed_1(() => state.value, __tsplusTrace);
|
|
1799
1550
|
}
|
|
1800
|
-
|
|
1801
1551
|
const f = val => {
|
|
1802
1552
|
const next = iterator.next(val);
|
|
1803
1553
|
return run(next);
|
|
1804
1554
|
};
|
|
1805
|
-
|
|
1806
|
-
return flatMap_1(state.value.effect, f, __tsplusTrace);
|
|
1555
|
+
return flatMap_1(f, __tsplusTrace)(state.value.effect);
|
|
1807
1556
|
};
|
|
1808
|
-
|
|
1809
1557
|
return run(state);
|
|
1810
1558
|
}, __tsplusTrace);
|
|
1811
1559
|
}
|