@fncts/io 0.0.20 → 0.0.22
Sign up to get free protection for your applications and to get access to all the features.
- 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/_src/Sink/api.ts
CHANGED
@@ -5,82 +5,83 @@ import { MergeDecision } from "../Channel/internal/MergeDecision.js";
|
|
5
5
|
/**
|
6
6
|
* Like {@link zip}, but keeps only the result from this sink
|
7
7
|
*
|
8
|
-
* @tsplus
|
8
|
+
* @tsplus pipeable fncts.io.Sink zipLeft
|
9
9
|
*/
|
10
|
-
export function
|
11
|
-
self: Sink<R, E, In, L, Z>,
|
10
|
+
export function zipLeft<In, L, R1, E1, In1 extends In, L1 extends L, Z1>(
|
12
11
|
that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
|
13
12
|
__tsplusTrace?: string,
|
14
|
-
)
|
15
|
-
return
|
13
|
+
) {
|
14
|
+
return <R, E, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In & In1, L | L1, Z> => {
|
15
|
+
return self.zipWith(that, (z, _) => z);
|
16
|
+
};
|
16
17
|
}
|
17
18
|
|
18
19
|
/**
|
19
20
|
* Like {@link zipC}, but keeps only the result from this sink
|
20
21
|
*
|
21
|
-
* @tsplus
|
22
|
+
* @tsplus pipeable fncts.io.Sink zipLeftC
|
22
23
|
*/
|
23
|
-
export function
|
24
|
-
self: Sink<R, E, In, L, Z>,
|
24
|
+
export function zipLeftC<In, L, R1, E1, In1 extends In, L1 extends L, Z1>(
|
25
25
|
that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
|
26
26
|
__tsplusTrace?: string,
|
27
|
-
)
|
28
|
-
return
|
27
|
+
) {
|
28
|
+
return <R, E, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In & In1, L | L1, Z> => {
|
29
|
+
return self.zipWithC(that, (z, _) => z);
|
30
|
+
};
|
29
31
|
}
|
30
32
|
|
31
33
|
/**
|
32
34
|
* Like {@link zip}, but keeps only the result from the `that` sink
|
33
35
|
*
|
34
|
-
* @tsplus
|
36
|
+
* @tsplus pipeable fncts.io.Sink zipRight
|
35
37
|
*/
|
36
|
-
export function
|
37
|
-
self: Sink<R, E, In, L, Z>,
|
38
|
+
export function zipRight<In, L, R1, E1, In1 extends In, L1 extends L, Z1>(
|
38
39
|
that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
|
39
40
|
__tsplusTrace?: string,
|
40
|
-
)
|
41
|
-
return
|
41
|
+
) {
|
42
|
+
return <R, E, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In & In1, L | L1, Z1> => {
|
43
|
+
return self.zipWith(that, (_, z1) => z1);
|
44
|
+
};
|
42
45
|
}
|
43
46
|
|
44
47
|
/**
|
45
48
|
* Like {@link zipC}, but keeps only the result from the `that` sink
|
46
49
|
*
|
47
|
-
* @tsplus
|
50
|
+
* @tsplus pipeable fncts.io.Sink zipRightC
|
48
51
|
*/
|
49
|
-
export function
|
50
|
-
self: Sink<R, E, In, L, Z>,
|
52
|
+
export function zipRightC<In, L, R1, E1, In1 extends In, L1 extends L, Z1>(
|
51
53
|
that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
|
52
54
|
__tsplusTrace?: string,
|
53
|
-
)
|
54
|
-
return
|
55
|
+
) {
|
56
|
+
return <R, E, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In & In1, L | L1, Z1> => {
|
57
|
+
return self.zipWithC(that, (_, z1) => z1);
|
58
|
+
};
|
55
59
|
}
|
56
60
|
|
57
61
|
/**
|
58
62
|
* Replaces this sink's result with the provided value.
|
59
63
|
*
|
60
|
-
* @tsplus
|
64
|
+
* @tsplus pipeable fncts.io.Sink as
|
61
65
|
*/
|
62
|
-
export function as<
|
63
|
-
self: Sink<R, E, In, L, Z
|
64
|
-
|
65
|
-
|
66
|
-
): Sink<R, E, In, L, Z1> {
|
67
|
-
return self.map(() => z());
|
66
|
+
export function as<Z1>(z: Lazy<Z1>, __tsplusTrace?: string) {
|
67
|
+
return <R, E, In, L, Z>(self: Sink<R, E, In, L, Z>): Sink<R, E, In, L, Z1> => {
|
68
|
+
return self.map(() => z());
|
69
|
+
};
|
68
70
|
}
|
69
71
|
|
70
72
|
/**
|
71
73
|
* Repeatedly runs the sink and accumulates its results into a chunk
|
72
74
|
*
|
73
|
-
* @tsplus
|
75
|
+
* @tsplus pipeable fncts.io.Sink collectAll
|
74
76
|
*/
|
75
|
-
export function collectAll
|
76
|
-
self: Sink<R, E, In, L, Z
|
77
|
-
|
78
|
-
|
79
|
-
|
80
|
-
|
81
|
-
|
82
|
-
|
83
|
-
);
|
77
|
+
export function collectAll(__tsplusTrace?: string) {
|
78
|
+
return <R, E, In extends L, L, Z>(self: Sink<R, E, In, L, Z>): Sink<R, E, In, L, Conc<Z>> => {
|
79
|
+
return self.collectAllWhileWith(
|
80
|
+
Conc.empty<Z>(),
|
81
|
+
() => true,
|
82
|
+
(s, z) => s.append(z),
|
83
|
+
);
|
84
|
+
};
|
84
85
|
}
|
85
86
|
|
86
87
|
/**
|
@@ -88,43 +89,39 @@ export function collectAll<R, E, In extends L, L, Z>(
|
|
88
89
|
* `p`. The sink's results will be accumulated using the stepping function
|
89
90
|
* `f`.
|
90
91
|
*
|
91
|
-
* @tsplus
|
92
|
-
*/
|
93
|
-
export function collectAllWhileWith<
|
94
|
-
self: Sink<R, E, In, L, Z
|
95
|
-
|
96
|
-
|
97
|
-
|
98
|
-
|
99
|
-
)
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
|
109
|
-
|
110
|
-
|
111
|
-
|
112
|
-
|
113
|
-
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
);
|
119
|
-
} else {
|
120
|
-
return Channel.writeNow(leftovers.flatten).as(currentResult);
|
92
|
+
* @tsplus pipeable fncts.io.Sink collectAllWhileWith
|
93
|
+
*/
|
94
|
+
export function collectAllWhileWith<Z, S>(z: Lazy<S>, p: Predicate<Z>, f: (s: S, z: Z) => S, __tsplusTrace?: string) {
|
95
|
+
return <R, E, In extends L, L>(self: Sink<R, E, In, L, Z>): Sink<R, E, In, L, S> => {
|
96
|
+
return new Sink(
|
97
|
+
Channel.fromIO(Ref.make<Conc<In>>(Conc.empty()).zip(Ref.make(false))).flatMap(
|
98
|
+
([leftoversRef, upstreamDoneRef]) => {
|
99
|
+
const upstreamMarker: Channel<never, never, Conc<In>, unknown, never, Conc<In>, unknown> = Channel.readWith(
|
100
|
+
(inp) => Channel.writeNow(inp) > upstreamMarker,
|
101
|
+
Channel.failNow,
|
102
|
+
(x) => Channel.fromIO(upstreamDoneRef.set(true)).as(x),
|
103
|
+
);
|
104
|
+
function loop(currentResult: S, __tsplusTrace?: string): Channel<R, never, Conc<In>, unknown, E, Conc<L>, S> {
|
105
|
+
return self.channel.collectElements.matchChannel(Channel.failNow, ([leftovers, doneValue]) => {
|
106
|
+
if (p(doneValue)) {
|
107
|
+
return (
|
108
|
+
Channel.fromIO(leftoversRef.set(leftovers.flatten as Conc<In>)) >
|
109
|
+
Channel.fromIO(upstreamDoneRef.get).flatMap((upstreamDone) => {
|
110
|
+
const accumulatedResult = f(currentResult, doneValue);
|
111
|
+
if (upstreamDone) return Channel.writeNow(leftovers.flatten).as(accumulatedResult);
|
112
|
+
else return loop(accumulatedResult);
|
113
|
+
})
|
114
|
+
);
|
115
|
+
} else {
|
116
|
+
return Channel.writeNow(leftovers.flatten).as(currentResult);
|
117
|
+
}
|
118
|
+
});
|
121
119
|
}
|
122
|
-
|
123
|
-
|
124
|
-
|
125
|
-
|
126
|
-
|
127
|
-
);
|
120
|
+
return upstreamMarker.pipeTo(Channel.bufferChunk(leftoversRef)).pipeTo(loop(z()));
|
121
|
+
},
|
122
|
+
),
|
123
|
+
);
|
124
|
+
};
|
128
125
|
}
|
129
126
|
|
130
127
|
/**
|
@@ -143,124 +140,119 @@ export function collectLeftover<R, E, In, L, Z>(
|
|
143
140
|
/**
|
144
141
|
* Transforms this sink's input elements.
|
145
142
|
*
|
146
|
-
* @tsplus
|
143
|
+
* @tsplus pipeable fncts.io.Sink contramap
|
147
144
|
*/
|
148
|
-
export function contramap<
|
149
|
-
self: Sink<R, E, In, L, Z
|
150
|
-
|
151
|
-
|
152
|
-
): Sink<R, E, In1, L, Z> {
|
153
|
-
return self.contramapChunks((chunk) => chunk.map(f));
|
145
|
+
export function contramap<In, In1>(f: (inp: In1) => In, __tsplusTrace?: string) {
|
146
|
+
return <R, E, L, Z>(self: Sink<R, E, In, L, Z>): Sink<R, E, In1, L, Z> => {
|
147
|
+
return self.contramapChunks((chunk) => chunk.map(f));
|
148
|
+
};
|
154
149
|
}
|
155
150
|
|
156
151
|
/**
|
157
152
|
* Transforms this sink's input chunks. `f` must preserve chunking-invariance
|
158
153
|
*
|
159
|
-
* @tsplus
|
154
|
+
* @tsplus pipeable fncts.io.Sink contramapChunks
|
160
155
|
*/
|
161
|
-
export function contramapChunks<
|
162
|
-
self: Sink<R, E, In, L, Z
|
163
|
-
|
164
|
-
|
165
|
-
|
166
|
-
|
167
|
-
|
168
|
-
|
169
|
-
|
170
|
-
);
|
171
|
-
return new Sink(loop >>> self.channel);
|
156
|
+
export function contramapChunks<In, In1>(f: (chunk: Conc<In1>) => Conc<In>, __tsplusTrace?: string) {
|
157
|
+
return <R, E, L, Z>(self: Sink<R, E, In, L, Z>): Sink<R, E, In1, L, Z> => {
|
158
|
+
const loop: Channel<R, never, Conc<In1>, unknown, never, Conc<In>, unknown> = Channel.readWith(
|
159
|
+
(chunk) => Channel.writeNow(f(chunk)) > loop,
|
160
|
+
Channel.failNow,
|
161
|
+
Channel.succeedNow,
|
162
|
+
);
|
163
|
+
return new Sink(loop >>> self.channel);
|
164
|
+
};
|
172
165
|
}
|
173
166
|
|
174
167
|
/**
|
175
168
|
* Effectfully transforms this sink's input chunks. `f` must preserve
|
176
169
|
* chunking-invariance
|
177
170
|
*
|
178
|
-
* @tsplus
|
171
|
+
* @tsplus pipeable fncts.io.Sink contramapChunksIO
|
179
172
|
*/
|
180
|
-
export function contramapChunksIO<
|
181
|
-
self: Sink<R, E, In, L, Z>,
|
173
|
+
export function contramapChunksIO<In, R1, E1, In1>(
|
182
174
|
f: (chunk: Conc<In1>) => IO<R1, E1, Conc<In>>,
|
183
175
|
__tsplusTrace?: string,
|
184
|
-
)
|
185
|
-
|
186
|
-
|
187
|
-
|
188
|
-
|
189
|
-
|
190
|
-
|
176
|
+
) {
|
177
|
+
return <R, E, L, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In1, L, Z> => {
|
178
|
+
const loop: Channel<R | R1, never, Conc<In1>, unknown, E | E1, Conc<In>, unknown> = Channel.readWith(
|
179
|
+
(chunk) => Channel.fromIO(f(chunk)).flatMap(Channel.writeNow) > loop,
|
180
|
+
Channel.failNow,
|
181
|
+
Channel.succeedNow,
|
182
|
+
);
|
183
|
+
return new Sink(loop.pipeToOrFail(self.channel));
|
184
|
+
};
|
191
185
|
}
|
192
186
|
|
193
187
|
/**
|
194
188
|
* Effectfully transforms this sink's input elements.
|
195
189
|
*
|
196
|
-
* @tsplus
|
190
|
+
* @tsplus pipeable fncts.io.Sink contramapIO
|
197
191
|
*/
|
198
|
-
export function contramapIO<
|
199
|
-
self: Sink<R, E, In, L, Z
|
200
|
-
|
201
|
-
|
202
|
-
): Sink<R | R1, E | E1, In1, L, Z> {
|
203
|
-
return self.contramapChunksIO((chunk) => chunk.mapIO(f));
|
192
|
+
export function contramapIO<In, R1, E1, In1>(f: (inp: In1) => IO<R1, E1, In>, __tsplusTrace?: string) {
|
193
|
+
return <R, E, L, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In1, L, Z> => {
|
194
|
+
return self.contramapChunksIO((chunk) => chunk.mapIO(f));
|
195
|
+
};
|
204
196
|
}
|
205
197
|
|
206
198
|
/**
|
207
199
|
* Transforms both inputs and result of this sink using the provided
|
208
200
|
* functions.
|
209
201
|
*
|
210
|
-
* @tsplus
|
202
|
+
* @tsplus pipeable fncts.io.Sink dimap
|
211
203
|
*/
|
212
|
-
export function dimap<
|
213
|
-
self: Sink<R, E, In, L, Z
|
214
|
-
|
215
|
-
|
216
|
-
__tsplusTrace?: string,
|
217
|
-
): Sink<R, E, In1, L, Z1> {
|
218
|
-
return self.contramap(f).map(g);
|
204
|
+
export function dimap<In, Z, In1, Z1>(f: (inp: In1) => In, g: (z: Z) => Z1, __tsplusTrace?: string) {
|
205
|
+
return <R, E, L>(self: Sink<R, E, In, L, Z>): Sink<R, E, In1, L, Z1> => {
|
206
|
+
return self.contramap(f).map(g);
|
207
|
+
};
|
219
208
|
}
|
220
209
|
|
221
210
|
/**
|
222
211
|
* Transforms both input chunks and result of this sink using the provided
|
223
212
|
* functions.
|
224
213
|
*
|
225
|
-
* @tsplus
|
214
|
+
* @tsplus pipeable fncts.io.Sink dimapChunks
|
226
215
|
*/
|
227
|
-
export function dimapChunks<
|
228
|
-
self: Sink<R, E, In, L, Z>,
|
216
|
+
export function dimapChunks<In, Z, In1, Z1>(
|
229
217
|
f: (chunk: Conc<In1>) => Conc<In>,
|
230
218
|
g: (z: Z) => Z1,
|
231
219
|
__tsplusTrace?: string,
|
232
|
-
)
|
233
|
-
return self
|
220
|
+
) {
|
221
|
+
return <R, E, L>(self: Sink<R, E, In, L, Z>): Sink<R, E, In1, L, Z1> => {
|
222
|
+
return self.contramapChunks(f).map(g);
|
223
|
+
};
|
234
224
|
}
|
235
225
|
|
236
226
|
/**
|
237
227
|
* Effectfully transforms both input chunks and result of this sink using the
|
238
228
|
* provided functions. `f` and `g` must preserve chunking-invariance
|
239
229
|
*
|
240
|
-
* @tsplus
|
230
|
+
* @tsplus pipeable fncts.io.Sink dimapChunksIO
|
241
231
|
*/
|
242
|
-
export function dimapChunksIO<
|
243
|
-
self: Sink<R, E, In, L, Z>,
|
232
|
+
export function dimapChunksIO<In, Z, R1, E1, In1, R2, E2, Z1>(
|
244
233
|
f: (chunk: Conc<In1>) => IO<R1, E1, Conc<In>>,
|
245
234
|
g: (z: Z) => IO<R2, E2, Z1>,
|
246
235
|
__tsplusTrace?: string,
|
247
|
-
)
|
248
|
-
return self
|
236
|
+
) {
|
237
|
+
return <R, E, L>(self: Sink<R, E, In, L, Z>): Sink<R | R1 | R2, E | E1 | E2, In1, L, Z1> => {
|
238
|
+
return self.contramapChunksIO(f).mapIO(g);
|
239
|
+
};
|
249
240
|
}
|
250
241
|
|
251
242
|
/**
|
252
243
|
* Effectfully transforms both inputs and result of this sink using the
|
253
244
|
* provided functions.
|
254
245
|
*
|
255
|
-
* @tsplus
|
246
|
+
* @tsplus pipeable fncts.io.Sink dimapIO
|
256
247
|
*/
|
257
|
-
export function dimapIO<
|
258
|
-
self: Sink<R, E, In, L, Z>,
|
248
|
+
export function dimapIO<In, Z, R1, E1, In1, R2, E2, Z1>(
|
259
249
|
f: (inp: In1) => IO<R1, E1, In>,
|
260
250
|
g: (z: Z) => IO<R2, E2, Z1>,
|
261
251
|
__tsplusTrace?: string,
|
262
|
-
)
|
263
|
-
return self
|
252
|
+
) {
|
253
|
+
return <R, E, L>(self: Sink<R, E, In, L, Z>): Sink<R | R1 | R2, E | E1 | E2, In1, L, Z1> => {
|
254
|
+
return self.contramapIO(f).mapIO(g);
|
255
|
+
};
|
264
256
|
}
|
265
257
|
|
266
258
|
/**
|
@@ -346,7 +338,7 @@ export function makeDropWhile<Err, In>(
|
|
346
338
|
if (more) {
|
347
339
|
return loop;
|
348
340
|
} else {
|
349
|
-
return Channel.writeNow(leftover).
|
341
|
+
return Channel.writeNow(leftover).zipRight(Channel.id<never, Conc<In>, any>());
|
350
342
|
}
|
351
343
|
},
|
352
344
|
Channel.failNow,
|
@@ -488,44 +480,40 @@ export function filterInputIO<R, E, In, L, Z, R1, E1>(
|
|
488
480
|
/**
|
489
481
|
* Creates a sink that produces values until one verifies the predicate `f`.
|
490
482
|
*
|
491
|
-
* @tsplus
|
492
|
-
*/
|
493
|
-
export function findIO<
|
494
|
-
self: Sink<R, E, In, L, Z
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
|
500
|
-
|
501
|
-
|
502
|
-
Channel
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
|
518
|
-
|
519
|
-
|
520
|
-
|
521
|
-
|
522
|
-
|
523
|
-
|
524
|
-
|
525
|
-
|
526
|
-
return (upstreamMarker >>> Channel.bufferChunk(leftoversRef)) >>> loop;
|
527
|
-
}),
|
528
|
-
);
|
483
|
+
* @tsplus pipeable fncts.io.Sink findIO
|
484
|
+
*/
|
485
|
+
export function findIO<Z, R1, E1>(f: (z: Z) => IO<R1, E1, boolean>, __tsplusTrace?: string) {
|
486
|
+
return <R, E, In extends L, L>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In, L, Maybe<Z>> => {
|
487
|
+
return new Sink(
|
488
|
+
Channel.fromIO(Ref.make(Conc.empty<In>()).zip(Ref.make(false))).flatMap(([leftoversRef, upstreamDoneRef]) => {
|
489
|
+
const upstreamMarker: Channel<never, never, Conc<In>, unknown, never, Conc<In>, unknown> = Channel.readWith(
|
490
|
+
(inp) => Channel.writeNow(inp) > upstreamMarker,
|
491
|
+
Channel.failNow,
|
492
|
+
(x) => Channel.fromIO(upstreamDoneRef.set(true)).as(x),
|
493
|
+
);
|
494
|
+
const loop: Channel<
|
495
|
+
R | R1,
|
496
|
+
never,
|
497
|
+
Conc<In>,
|
498
|
+
unknown,
|
499
|
+
E | E1,
|
500
|
+
Conc<L>,
|
501
|
+
Maybe<Z>
|
502
|
+
> = self.channel.collectElements.matchChannel(Channel.failNow, ([leftovers, doneValue]) =>
|
503
|
+
Channel.fromIO(f(doneValue)).flatMap(
|
504
|
+
(satisfied) =>
|
505
|
+
Channel.fromIO(leftoversRef.set(leftovers.flatten as Conc<In>)) >
|
506
|
+
Channel.fromIO(upstreamDoneRef.get).flatMap((upstreamDone) => {
|
507
|
+
if (satisfied) return Channel.writeNow(leftovers.flatten).as(Just(doneValue));
|
508
|
+
else if (upstreamDone) return Channel.writeNow(leftovers.flatten).as(Nothing());
|
509
|
+
else return loop;
|
510
|
+
}),
|
511
|
+
),
|
512
|
+
);
|
513
|
+
return (upstreamMarker >>> Channel.bufferChunk(leftoversRef)) >>> loop;
|
514
|
+
}),
|
515
|
+
);
|
516
|
+
};
|
529
517
|
}
|
530
518
|
|
531
519
|
/**
|
@@ -535,14 +523,15 @@ export function findIO<R, E, In extends L, L, Z, R1, E1>(
|
|
535
523
|
*
|
536
524
|
* This function essentially runs sinks in sequence.
|
537
525
|
*
|
538
|
-
* @tsplus
|
526
|
+
* @tsplus pipeable fncts.io.Sink flatMap
|
539
527
|
*/
|
540
|
-
export function flatMap<
|
541
|
-
self: Sink<R, E, In, L, Z>,
|
528
|
+
export function flatMap<In, Z, R1, E1, In1 extends In, L1, Z1>(
|
542
529
|
f: (z: Z) => Sink<R1, E1, In1, L1, Z1>,
|
543
530
|
__tsplusTrace?: string,
|
544
|
-
)
|
545
|
-
return self
|
531
|
+
) {
|
532
|
+
return <R, E, L>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In1, L | L1, Z1> => {
|
533
|
+
return self.matchSink(Sink.failNow, f);
|
534
|
+
};
|
546
535
|
}
|
547
536
|
|
548
537
|
/**
|
@@ -793,7 +782,6 @@ export function makeForeachChunk<R, E, In>(
|
|
793
782
|
Channel.failCauseNow,
|
794
783
|
() => Channel.unit,
|
795
784
|
);
|
796
|
-
|
797
785
|
return new Sink(process);
|
798
786
|
}
|
799
787
|
|
@@ -828,7 +816,7 @@ function foreachWhileLoop<R, Err, In>(
|
|
828
816
|
}
|
829
817
|
return Channel.fromIO(f(chunk.unsafeGet(idx)))
|
830
818
|
.flatMap((b) => (b ? foreachWhileLoop(f, chunk, idx + 1, len, cont) : Channel.writeNow(chunk.drop(idx))))
|
831
|
-
.catchAll((e) => Channel.writeNow(chunk.drop(idx)).
|
819
|
+
.catchAll((e) => Channel.writeNow(chunk.drop(idx)).zipRight(Channel.failNow(e)));
|
832
820
|
}
|
833
821
|
|
834
822
|
/**
|
@@ -846,7 +834,6 @@ export function makeForeachChunkWhile<R, E, In>(
|
|
846
834
|
Channel.failNow,
|
847
835
|
() => Channel.unit,
|
848
836
|
);
|
849
|
-
|
850
837
|
return new Sink(reader);
|
851
838
|
}
|
852
839
|
|
@@ -1190,12 +1177,10 @@ export function makeFoldWeightedDecompose<In, S>(
|
|
1190
1177
|
} else {
|
1191
1178
|
const elem = inp[idx];
|
1192
1179
|
const total = cost + costFn(s, elem);
|
1193
|
-
|
1194
1180
|
if (total <= max) {
|
1195
1181
|
return fold(inp, f(s, elem), max, true, total, idx + 1);
|
1196
1182
|
} else {
|
1197
1183
|
const decomposed = decompose(elem);
|
1198
|
-
|
1199
1184
|
if (decomposed.length <= 1 && !dirty) {
|
1200
1185
|
return [f(s, elem), total, true, inp.drop(idx + 1)];
|
1201
1186
|
} else if (decomposed.length <= 1 && dirty) {
|
@@ -1216,7 +1201,6 @@ export function makeFoldWeightedDecompose<In, S>(
|
|
1216
1201
|
return Channel.readWith(
|
1217
1202
|
(inp: Conc<In>) => {
|
1218
1203
|
const [nextS, nextCost, nextDirty, leftovers] = fold(inp, s, max, dirty, cost, 0);
|
1219
|
-
|
1220
1204
|
if (leftovers.isNonEmpty) {
|
1221
1205
|
return Channel.writeNow(leftovers) > Channel.succeedNow(nextS);
|
1222
1206
|
} else if (cost > max) {
|
@@ -1229,7 +1213,6 @@ export function makeFoldWeightedDecompose<In, S>(
|
|
1229
1213
|
(_: any) => Channel.succeedNow(s),
|
1230
1214
|
);
|
1231
1215
|
}
|
1232
|
-
|
1233
1216
|
return new Sink(go(z(), 0, false, max()));
|
1234
1217
|
});
|
1235
1218
|
}
|
@@ -1311,7 +1294,6 @@ export function makeFoldWeightedDecomposeIO<R, E, In, S, R1, E1, R2, E2>(
|
|
1311
1294
|
(_: any) => Channel.succeedNow(s),
|
1312
1295
|
);
|
1313
1296
|
}
|
1314
|
-
|
1315
1297
|
return new Sink(go(z(), 0, false, max()));
|
1316
1298
|
});
|
1317
1299
|
}
|
@@ -1363,40 +1345,34 @@ export function makeFoldWeightedIO<R, E, In, S, R1, E1>(
|
|
1363
1345
|
/**
|
1364
1346
|
* Transforms this sink's result.
|
1365
1347
|
*
|
1366
|
-
* @tsplus
|
1348
|
+
* @tsplus pipeable fncts.io.Sink map
|
1367
1349
|
*/
|
1368
|
-
export function
|
1369
|
-
self: Sink<R, E, In, L, Z
|
1370
|
-
|
1371
|
-
|
1372
|
-
): Sink<R, E, In, L, Z1> {
|
1373
|
-
return new Sink(self.channel.map(f));
|
1350
|
+
export function map<Z, Z1>(f: (z: Z) => Z1, __tsplusTrace?: string) {
|
1351
|
+
return <R, E, In, L>(self: Sink<R, E, In, L, Z>): Sink<R, E, In, L, Z1> => {
|
1352
|
+
return new Sink(self.channel.map(f));
|
1353
|
+
};
|
1374
1354
|
}
|
1375
1355
|
|
1376
1356
|
/**
|
1377
1357
|
* Transforms the errors emitted by this sink using `f`.
|
1378
1358
|
*
|
1379
|
-
* @tsplus
|
1359
|
+
* @tsplus pipeable fncts.io.Sink mapError
|
1380
1360
|
*/
|
1381
|
-
export function
|
1382
|
-
self: Sink<R, E, In, L, Z
|
1383
|
-
|
1384
|
-
|
1385
|
-
): Sink<R, E1, In, L, Z> {
|
1386
|
-
return new Sink(self.channel.mapError(f));
|
1361
|
+
export function mapError<E, E1>(f: (e: E) => E1, __tsplusTrace?: string) {
|
1362
|
+
return <R, In, L, Z>(self: Sink<R, E, In, L, Z>): Sink<R, E1, In, L, Z> => {
|
1363
|
+
return new Sink(self.channel.mapError(f));
|
1364
|
+
};
|
1387
1365
|
}
|
1388
1366
|
|
1389
1367
|
/**
|
1390
1368
|
* Effectfully transforms this sink's result.
|
1391
1369
|
*
|
1392
|
-
* @tsplus
|
1370
|
+
* @tsplus pipeable fncts.io.Sink mapIO
|
1393
1371
|
*/
|
1394
|
-
export function
|
1395
|
-
self: Sink<R, E, In, L, Z
|
1396
|
-
|
1397
|
-
|
1398
|
-
): Sink<R | R1, E | E1, In, L, Z1> {
|
1399
|
-
return new Sink(self.channel.mapIO(f));
|
1372
|
+
export function mapIO<Z, R1, E1, Z1>(f: (z: Z) => IO<R1, E1, Z1>, __tsplusTrace?: string) {
|
1373
|
+
return <R, E, In, L>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In, L, Z1> => {
|
1374
|
+
return new Sink(self.channel.mapIO(f));
|
1375
|
+
};
|
1400
1376
|
}
|
1401
1377
|
|
1402
1378
|
/**
|
@@ -1406,127 +1382,124 @@ export function mapIO_<R, E, In, L, Z, R1, E1, Z1>(
|
|
1406
1382
|
*
|
1407
1383
|
* This function essentially runs sinks in sequence.
|
1408
1384
|
*
|
1409
|
-
* @tsplus
|
1385
|
+
* @tsplus pipeable fncts.io.Sink matchSink
|
1410
1386
|
*/
|
1411
|
-
export function
|
1412
|
-
self: Sink<R, E, In, L, Z>,
|
1387
|
+
export function matchSink<E, In, Z, R1, E1, In1 extends In, L1, Z1, R2, E2, In2 extends In, L2, Z2>(
|
1413
1388
|
onFailure: (e: E) => Sink<R1, E1, In1, L1, Z1>,
|
1414
1389
|
onSuccess: (z: Z) => Sink<R2, E2, In2, L2, Z2>,
|
1415
1390
|
__tsplusTrace?: string,
|
1416
|
-
)
|
1417
|
-
return
|
1418
|
-
|
1419
|
-
|
1420
|
-
|
1421
|
-
|
1422
|
-
|
1423
|
-
|
1424
|
-
Channel.
|
1425
|
-
|
1426
|
-
|
1427
|
-
|
1428
|
-
|
1429
|
-
(
|
1430
|
-
|
1431
|
-
|
1432
|
-
|
1433
|
-
|
1434
|
-
|
1391
|
+
) {
|
1392
|
+
return <R, L>(self: Sink<R, E, In, L, Z>): Sink<R | R1 | R2, E1 | E2, In1 & In2, L | L1 | L2, Z1 | Z2> => {
|
1393
|
+
return new Sink<R | R1 | R2, E1 | E2, In1 & In2, L | L1 | L2, Z1 | Z2>(
|
1394
|
+
self.channel.doneCollect.matchChannel(
|
1395
|
+
(e) => onFailure(e).channel,
|
1396
|
+
([leftovers, z]) =>
|
1397
|
+
Channel.defer(() => {
|
1398
|
+
const leftoversRef = new AtomicReference(leftovers.filter((c) => c.isNonEmpty));
|
1399
|
+
const refReader = Channel.succeed(leftoversRef.getAndSet(Conc.empty())).flatMap((chunk) =>
|
1400
|
+
Channel.writeChunk(chunk as unknown as Conc<Conc<In1 & In2>>),
|
1401
|
+
);
|
1402
|
+
const passthrough = Channel.id<never, Conc<In1 & In2>, unknown>();
|
1403
|
+
const continuationSink = (refReader > passthrough).pipeTo(onSuccess(z).channel);
|
1404
|
+
return continuationSink.doneCollect.flatMap(
|
1405
|
+
([newLeftovers, z1]) =>
|
1406
|
+
Channel.succeed(leftoversRef.get).flatMap(Channel.writeChunk) > Channel.writeChunk(newLeftovers).as(z1),
|
1407
|
+
);
|
1408
|
+
}),
|
1409
|
+
),
|
1410
|
+
);
|
1411
|
+
};
|
1435
1412
|
}
|
1436
1413
|
|
1437
1414
|
/**
|
1438
1415
|
* Switch to another sink in case of failure
|
1439
1416
|
*
|
1440
|
-
* @tsplus
|
1417
|
+
* @tsplus pipeable fncts.io.Sink orElse
|
1441
1418
|
*/
|
1442
|
-
export function orElse<
|
1443
|
-
self: Sink<R, E, In, L, Z
|
1444
|
-
|
1445
|
-
|
1446
|
-
): Sink<R | R1, E | E1, In & In1, L | L1, Z | Z1> {
|
1447
|
-
return Sink.defer(new Sink<R | R1, E | E1, In & In1, L | L1, Z | Z1>(self.channel.orElse(that().channel)));
|
1419
|
+
export function orElse<R1, E1, In1, L1, Z1>(that: Lazy<Sink<R1, E1, In1, L1, Z1>>, __tsplusTrace?: string) {
|
1420
|
+
return <R, E, In, L, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In & In1, L | L1, Z | Z1> => {
|
1421
|
+
return Sink.defer(new Sink<R | R1, E | E1, In & In1, L | L1, Z | Z1>(self.channel.orElse(that().channel)));
|
1422
|
+
};
|
1448
1423
|
}
|
1449
1424
|
|
1450
1425
|
/**
|
1451
1426
|
* Provides the sink with its required environment, which eliminates its
|
1452
1427
|
* dependency on `R`.
|
1453
1428
|
*
|
1454
|
-
* @tsplus
|
1429
|
+
* @tsplus pipeable fncts.io.Sink provideEnvironment
|
1455
1430
|
*/
|
1456
|
-
export function provideEnvironment<R
|
1457
|
-
self: Sink<R, E, In, L, Z
|
1458
|
-
|
1459
|
-
|
1460
|
-
): Sink<never, E, In, L, Z> {
|
1461
|
-
return new Sink(self.channel.provideEnvironment(r));
|
1431
|
+
export function provideEnvironment<R>(r: Lazy<Environment<R>>, __tsplusTrace?: string) {
|
1432
|
+
return <E, In, L, Z>(self: Sink<R, E, In, L, Z>): Sink<never, E, In, L, Z> => {
|
1433
|
+
return new Sink(self.channel.provideEnvironment(r));
|
1434
|
+
};
|
1462
1435
|
}
|
1463
1436
|
|
1464
1437
|
/**
|
1465
1438
|
* Runs both sinks in parallel on the input, returning the result or the
|
1466
1439
|
* error from the one that finishes first.
|
1467
1440
|
*
|
1468
|
-
* @tsplus
|
1441
|
+
* @tsplus pipeable fncts.io.Sink race
|
1469
1442
|
*/
|
1470
|
-
export function race<
|
1471
|
-
self: Sink<R, E, In, L, Z
|
1472
|
-
|
1473
|
-
|
1474
|
-
): Sink<R | R1, E | E1, In & In1, L | L1, Z | Z1> {
|
1475
|
-
return self.raceBoth(that).map((result) => result.value);
|
1443
|
+
export function race<R1, E1, In1, L1, Z1>(that: Lazy<Sink<R1, E1, In1, L1, Z1>>, __tsplusTrace?: string) {
|
1444
|
+
return <R, E, In, L, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In & In1, L | L1, Z | Z1> => {
|
1445
|
+
return self.raceBoth(that).map((result) => result.value);
|
1446
|
+
};
|
1476
1447
|
}
|
1477
1448
|
|
1478
1449
|
/**
|
1479
1450
|
* Runs both sinks in parallel on the input, returning the result or the error
|
1480
1451
|
* from the one that finishes first.
|
1481
1452
|
*
|
1482
|
-
* @tsplus
|
1453
|
+
* @tsplus pipeable fncts.io.Sink raceBoth
|
1483
1454
|
*/
|
1484
|
-
export function raceBoth<
|
1485
|
-
self: Sink<R, E, In, L, Z>,
|
1455
|
+
export function raceBoth<R1, E1, In1, L1, Z1>(
|
1486
1456
|
that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
|
1487
1457
|
capacity: Lazy<number> = () => 16,
|
1488
1458
|
__tsplusTrace?: string,
|
1489
|
-
)
|
1490
|
-
return self
|
1491
|
-
|
1492
|
-
|
1493
|
-
|
1494
|
-
|
1495
|
-
|
1459
|
+
) {
|
1460
|
+
return <R, E, In, L, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In & In1, L | L1, Either<Z, Z1>> => {
|
1461
|
+
return self.raceWith(
|
1462
|
+
that,
|
1463
|
+
(selfDone) => MergeDecision.Done(IO.fromExitNow(selfDone).map(Either.left)),
|
1464
|
+
(thatDone) => MergeDecision.Done(IO.fromExitNow(thatDone).map(Either.right)),
|
1465
|
+
capacity,
|
1466
|
+
);
|
1467
|
+
};
|
1496
1468
|
}
|
1497
1469
|
|
1498
1470
|
/**
|
1499
1471
|
* Runs both sinks in parallel on the input, using the specified merge
|
1500
1472
|
* function as soon as one result or the other has been computed.
|
1501
1473
|
*
|
1502
|
-
* @tsplus
|
1474
|
+
* @tsplus pipeable fncts.io.Sink raceWith
|
1503
1475
|
*/
|
1504
|
-
export function raceWith<R, E,
|
1505
|
-
self: Sink<R, E, In, L, Z>,
|
1476
|
+
export function raceWith<R, E, Z, R1, E1, In1, L1, Z1, E2, Z2, E3, Z3>(
|
1506
1477
|
that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
|
1507
1478
|
leftDone: (exit: Exit<E, Z>) => MergeDecision<R1, E1, Z1, E2, Z2>,
|
1508
1479
|
rightDone: (exit: Exit<E1, Z1>) => MergeDecision<R, E, Z, E3, Z3>,
|
1509
1480
|
capacity: Lazy<number> = () => 16,
|
1510
1481
|
__tsplusTrace?: string,
|
1511
|
-
)
|
1512
|
-
|
1513
|
-
const
|
1514
|
-
|
1515
|
-
|
1516
|
-
|
1517
|
-
|
1518
|
-
|
1519
|
-
|
1520
|
-
|
1521
|
-
|
1522
|
-
|
1523
|
-
|
1524
|
-
|
1525
|
-
|
1526
|
-
|
1482
|
+
) {
|
1483
|
+
return <In, L, R2, R3>(self: Sink<R, E, In, L, Z>): Sink<R | R1 | R2 | R3, E2 | E3, In & In1, L | L1, Z2 | Z3> => {
|
1484
|
+
const scoped = IO.defer(() => {
|
1485
|
+
const that0 = that();
|
1486
|
+
const capacity0 = capacity();
|
1487
|
+
return Do((_) => {
|
1488
|
+
const hub = _(Hub.makeBounded<Either<Exit<never, any>, Conc<In & In1>>>(capacity()));
|
1489
|
+
const c1 = _(Channel.fromHubScoped(hub));
|
1490
|
+
const c2 = _(Channel.fromHubScoped(hub));
|
1491
|
+
const reader = Channel.toHub(hub);
|
1492
|
+
const writer = c1.pipeTo(self.channel).mergeWith(c2.pipeTo(that0.channel), leftDone, rightDone);
|
1493
|
+
const channel = reader.mergeWith(
|
1494
|
+
writer,
|
1495
|
+
() => MergeDecision.Await(IO.fromExitNow),
|
1496
|
+
(done) => MergeDecision.Done(IO.fromExitNow(done)),
|
1497
|
+
);
|
1498
|
+
return new Sink<R | R1 | R2 | R3, E2 | E3, In & In1, L | L1, Z2 | Z3>(channel);
|
1499
|
+
});
|
1527
1500
|
});
|
1528
|
-
|
1529
|
-
|
1501
|
+
return Sink.unwrapScoped(scoped);
|
1502
|
+
};
|
1530
1503
|
}
|
1531
1504
|
|
1532
1505
|
/**
|
@@ -1588,24 +1561,22 @@ export function serviceWithSink<S, R, E, In, L, Z>(
|
|
1588
1561
|
* consumes elements until an element after the first satisfies the specified
|
1589
1562
|
* predicate.
|
1590
1563
|
*
|
1591
|
-
* @tsplus
|
1592
|
-
*/
|
1593
|
-
export function splitWhere<
|
1594
|
-
self: Sink<R, E, In, L, Z
|
1595
|
-
|
1596
|
-
|
1597
|
-
|
1598
|
-
|
1599
|
-
|
1600
|
-
|
1601
|
-
|
1602
|
-
|
1603
|
-
Channel.fromIO(ref.get).flatMap(
|
1604
|
-
(leftover) => Channel.writeNow(leftover.concat(leftovers.flatten)) > Channel.succeedNow(z),
|
1564
|
+
* @tsplus pipeable fncts.io.Sink splitWhere
|
1565
|
+
*/
|
1566
|
+
export function splitWhere<In>(p: Predicate<In>, __tsplusTrace?: string) {
|
1567
|
+
return <R, E, L extends In, Z>(self: Sink<R, E, In, L, Z>): Sink<R, E, In, In, Z> => {
|
1568
|
+
return new Sink(
|
1569
|
+
Channel.fromIO(Ref.make<Conc<In>>(Conc.empty())).flatMap((ref) =>
|
1570
|
+
splitter<R, E, In>(p, false, ref)
|
1571
|
+
.pipeToOrFail(self.channel)
|
1572
|
+
.collectElements.flatMap(([leftovers, z]) =>
|
1573
|
+
Channel.fromIO(ref.get).flatMap(
|
1574
|
+
(leftover) => Channel.writeNow(leftover.concat(leftovers.flatten)) > Channel.succeedNow(z),
|
1575
|
+
),
|
1605
1576
|
),
|
1606
|
-
|
1607
|
-
)
|
1608
|
-
|
1577
|
+
),
|
1578
|
+
);
|
1579
|
+
};
|
1609
1580
|
}
|
1610
1581
|
|
1611
1582
|
function splitter<R, E, In>(
|
@@ -1663,23 +1634,20 @@ export function succeedNow<Z>(z: Z, __tsplusTrace?: string): Sink<never, never,
|
|
1663
1634
|
* Summarize a sink by running an effect when the sink starts and again when
|
1664
1635
|
* it completes
|
1665
1636
|
*
|
1666
|
-
* @tsplus
|
1637
|
+
* @tsplus pipeable fncts.io.Sink summarized
|
1667
1638
|
*/
|
1668
|
-
export function summarized<
|
1669
|
-
self: Sink<R, E, In, L, Z
|
1670
|
-
|
1671
|
-
|
1672
|
-
|
1673
|
-
)
|
1674
|
-
|
1675
|
-
|
1676
|
-
IO.succeed(summary).map((summary) =>
|
1677
|
-
Channel.fromIO(summary).flatMap((start) =>
|
1678
|
-
self.channel.flatMap((done) => Channel.fromIO(summary).map((end) => Function.tuple(done, f(start, end)))),
|
1639
|
+
export function summarized<R1, E1, B, C>(summary: Lazy<IO<R1, E1, B>>, f: (b1: B, b2: B) => C, __tsplusTrace?: string) {
|
1640
|
+
return <R, E, In, L, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In, L, readonly [Z, C]> => {
|
1641
|
+
return new Sink(
|
1642
|
+
Channel.unwrap(
|
1643
|
+
IO.succeed(summary).map((summary) =>
|
1644
|
+
Channel.fromIO(summary).flatMap((start) =>
|
1645
|
+
self.channel.flatMap((done) => Channel.fromIO(summary).map((end) => Function.tuple(done, f(start, end)))),
|
1646
|
+
),
|
1679
1647
|
),
|
1680
1648
|
),
|
1681
|
-
)
|
1682
|
-
|
1649
|
+
);
|
1650
|
+
};
|
1683
1651
|
}
|
1684
1652
|
|
1685
1653
|
/**
|
@@ -1721,28 +1689,30 @@ export function unwrapScoped<R, E, R1, E1, In, L, Z>(
|
|
1721
1689
|
* the provided sink until it yields a result, finally combining the two
|
1722
1690
|
* results into a tuple.
|
1723
1691
|
*
|
1724
|
-
* @tsplus
|
1692
|
+
* @tsplus pipeable fncts.io.Sink zip
|
1725
1693
|
*/
|
1726
|
-
export function zip<
|
1727
|
-
self: Sink<R, E, In, L, Z>,
|
1694
|
+
export function zip<In, L, R1, E1, In1 extends In, L1 extends L, Z1>(
|
1728
1695
|
that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
|
1729
1696
|
__tsplusTrace?: string,
|
1730
|
-
)
|
1731
|
-
return self
|
1697
|
+
) {
|
1698
|
+
return <R, E, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In & In1, L | L1, readonly [Z, Z1]> => {
|
1699
|
+
return self.zipWith(that, Function.tuple);
|
1700
|
+
};
|
1732
1701
|
}
|
1733
1702
|
|
1734
1703
|
/**
|
1735
1704
|
* Runs both sinks in parallel on the input and combines the results in a
|
1736
1705
|
* tuple.
|
1737
1706
|
*
|
1738
|
-
* @tsplus
|
1707
|
+
* @tsplus pipeable fncts.io.Sink zipC
|
1739
1708
|
*/
|
1740
|
-
export function zipC<
|
1741
|
-
self: Sink<R, E, In, L, Z>,
|
1709
|
+
export function zipC<In, L, R1, E1, In1 extends In, L1 extends L, Z1>(
|
1742
1710
|
that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
|
1743
1711
|
__tsplusTrace?: string,
|
1744
|
-
)
|
1745
|
-
return self
|
1712
|
+
) {
|
1713
|
+
return <R, E, Z>(self: Sink<R, E, In, L, Z>): Sink<R | R1, E | E1, In & In1, L | L1, readonly [Z, Z1]> => {
|
1714
|
+
return self.zipWithC(that, Function.tuple);
|
1715
|
+
};
|
1746
1716
|
}
|
1747
1717
|
|
1748
1718
|
/**
|
@@ -1750,54 +1720,56 @@ export function zipC<R, E, In, L, Z, R1, E1, In1 extends In, L1 extends L, Z1>(
|
|
1750
1720
|
* the provided sink until it yields a result, finally combining the two
|
1751
1721
|
* results with `f`.
|
1752
1722
|
*
|
1753
|
-
* @tsplus
|
1723
|
+
* @tsplus pipeable fncts.io.Sink zipWith
|
1754
1724
|
*/
|
1755
|
-
export function zipWith<
|
1756
|
-
self: Lazy<Sink<R, E, In, L, Z>>,
|
1725
|
+
export function zipWith<In, L, Z, R1, E1, In1 extends In, L1 extends L, Z1, Z2>(
|
1757
1726
|
that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
|
1758
1727
|
f: (z: Z, z1: Z1) => Z2,
|
1759
1728
|
__tsplusTrace?: string,
|
1760
|
-
)
|
1761
|
-
return
|
1729
|
+
) {
|
1730
|
+
return <R, E>(self: Lazy<Sink<R, E, In, L, Z>>): Sink<R | R1, E | E1, In & In1, L | L1, Z2> => {
|
1731
|
+
return Sink.defer(self().flatMap((z) => that().map((z1) => f(z, z1))));
|
1732
|
+
};
|
1762
1733
|
}
|
1763
1734
|
|
1764
1735
|
/**
|
1765
1736
|
* Runs both sinks in parallel on the input and combines the results using the
|
1766
1737
|
* provided function.
|
1767
1738
|
*
|
1768
|
-
* @tsplus
|
1739
|
+
* @tsplus pipeable fncts.io.Sink zipWithC
|
1769
1740
|
*/
|
1770
|
-
export function zipWithC<
|
1771
|
-
self: Lazy<Sink<R, E, In, L, Z>>,
|
1741
|
+
export function zipWithC<Z, R1, E1, In1, L1, Z1, Z2>(
|
1772
1742
|
that: Lazy<Sink<R1, E1, In1, L1, Z1>>,
|
1773
1743
|
f: (z: Z, z1: Z1) => Z2,
|
1774
1744
|
__tsplusTrace?: string,
|
1775
|
-
)
|
1776
|
-
return Sink
|
1777
|
-
|
1778
|
-
|
1779
|
-
|
1780
|
-
exit
|
1781
|
-
|
1782
|
-
|
1783
|
-
|
1784
|
-
|
1785
|
-
|
1786
|
-
|
1745
|
+
) {
|
1746
|
+
return <R, E, In, L>(self: Lazy<Sink<R, E, In, L, Z>>): Sink<R | R1, E | E1, In & In1, L | L1, Z2> => {
|
1747
|
+
return Sink.defer(
|
1748
|
+
self().raceWith(
|
1749
|
+
that(),
|
1750
|
+
(exit) =>
|
1751
|
+
exit.match(
|
1752
|
+
(err) => MergeDecision.Done(IO.failCauseNow(err)),
|
1753
|
+
(lz) =>
|
1754
|
+
MergeDecision.Await((exit) =>
|
1755
|
+
exit.match(
|
1756
|
+
(cause) => IO.failCauseNow(cause),
|
1757
|
+
(rz) => IO.succeedNow(f(lz, rz)),
|
1758
|
+
),
|
1787
1759
|
),
|
1788
|
-
|
1789
|
-
)
|
1790
|
-
|
1791
|
-
|
1792
|
-
|
1793
|
-
|
1794
|
-
|
1795
|
-
|
1796
|
-
|
1797
|
-
|
1760
|
+
),
|
1761
|
+
(exit) =>
|
1762
|
+
exit.match(
|
1763
|
+
(err) => MergeDecision.Done(IO.failCauseNow(err)),
|
1764
|
+
(rz) =>
|
1765
|
+
MergeDecision.Await((exit) =>
|
1766
|
+
exit.match(
|
1767
|
+
(cause) => IO.failCauseNow(cause),
|
1768
|
+
(lz) => IO.succeedNow(f(lz, rz)),
|
1769
|
+
),
|
1798
1770
|
),
|
1799
|
-
|
1800
|
-
|
1801
|
-
)
|
1802
|
-
|
1771
|
+
),
|
1772
|
+
),
|
1773
|
+
);
|
1774
|
+
};
|
1803
1775
|
}
|