@fncts/io 0.0.20 → 0.0.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Cached/api.d.ts +2 -2
- package/Channel/ChildExecutorDecision/api.d.ts +2 -2
- package/Channel/UpstreamPullRequest/api.d.ts +2 -2
- package/Channel/api/interruptWhen.d.ts +5 -5
- package/Channel/api/mapOutIOC.d.ts +3 -3
- 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/zipC.d.ts +6 -6
- package/Channel/api.d.ts +64 -64
- package/Channel/core-api.d.ts +11 -11
- package/Channel/definition.d.ts +35 -21
- package/Fiber/api/evalOn.d.ts +3 -3
- package/Fiber/api/evalOnIO.d.ts +3 -3
- package/Fiber/api/interruptAs.d.ts +3 -3
- package/Fiber/api/interruptAsFork.d.ts +3 -3
- 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.d.ts +1 -0
- package/FiberRef/api/locallyScoped.d.ts +2 -2
- package/FiberRef/api/locallyScopedWith.d.ts +2 -2
- package/FiberRef/api.d.ts +18 -18
- package/FiberRefs/api.d.ts +2 -2
- package/FiberRefs/join.d.ts +3 -3
- package/Future/api.d.ts +21 -21
- package/Hub/constructors.d.ts +49 -0
- package/Hub/definition.d.ts +37 -81
- package/Hub/internal.d.ts +4 -11
- package/Hub.d.ts +1 -1
- package/IO/api/acquireRelease.d.ts +1 -1
- package/IO/api/acquireReleaseExit.d.ts +1 -1
- 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 +5 -5
- package/IO/api/ensuringChildren.d.ts +3 -3
- package/IO/api/environment.d.ts +11 -15
- package/IO/api/foreachC.d.ts +2 -2
- package/IO/api/foreachExec.d.ts +1 -1
- package/IO/api/forkIn.d.ts +3 -3
- package/IO/api/fulfill.d.ts +3 -3
- package/IO/api/interrupt.d.ts +6 -6
- 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 +3 -3
- 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/withRuntimeConfig.d.ts +3 -3
- package/IO/api/zipC.d.ts +4 -4
- package/IO/api.d.ts +179 -176
- package/IO/definition.d.ts +15 -9
- package/Layer/MemoMap.d.ts +4 -4
- 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/Queue/constructors.d.ts +2 -1
- package/Queue/definition.d.ts +91 -82
- package/Queue/internal.d.ts +7 -9
- package/Queue.d.ts +0 -2
- package/Ref/Atomic.d.ts +15 -2
- package/Ref/Synchronized.d.ts +72 -0
- package/Ref/constructors.d.ts +7 -0
- package/Ref/definition.d.ts +60 -58
- package/Ref.d.ts +1 -6
- 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 +94 -94
- package/Scope/ReleaseMap/api/releaseAll.d.ts +2 -2
- package/Scope/ReleaseMap/api.d.ts +10 -10
- package/Scope/api.d.ts +8 -8
- package/Sink/api.d.ts +68 -68
- 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 +216 -205
- package/Stream/internal/DebounceState.d.ts +3 -3
- package/Stream/internal/Handoff.d.ts +5 -5
- package/Stream/internal/Pull.d.ts +2 -2
- package/Stream/internal/SinkEndReason.d.ts +3 -3
- package/Stream/internal/Take.d.ts +8 -8
- package/SubscriptionRef.d.ts +29 -0
- package/Supervisor/api.d.ts +4 -4
- package/SupervisorPatch.d.ts +4 -4
- package/TFuture/api.d.ts +7 -7
- package/TReentrantLock/api.d.ts +4 -4
- package/TRef/api.d.ts +24 -24
- package/TSemaphore/api.d.ts +4 -4
- package/TSemaphore/constructors.d.ts +6 -0
- package/_cjs/Cached/api.cjs +9 -9
- package/_cjs/Cached/api.cjs.map +1 -1
- package/_cjs/Channel/ChildExecutorDecision/api.cjs +19 -17
- package/_cjs/Channel/ChildExecutorDecision/api.cjs.map +1 -1
- package/_cjs/Channel/UpstreamPullRequest/api.cjs +16 -14
- package/_cjs/Channel/UpstreamPullRequest/api.cjs.map +1 -1
- package/_cjs/Channel/api/interruptWhen.cjs +14 -10
- package/_cjs/Channel/api/interruptWhen.cjs.map +1 -1
- package/_cjs/Channel/api/mapOutIOC.cjs +25 -25
- package/_cjs/Channel/api/mapOutIOC.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAll.cjs +6 -4
- package/_cjs/Channel/api/mergeAll.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAllUnboundedWith.cjs +6 -4
- package/_cjs/Channel/api/mergeAllUnboundedWith.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAllWith.cjs +48 -52
- package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
- package/_cjs/Channel/api/mergeMap.cjs +6 -4
- package/_cjs/Channel/api/mergeMap.cjs.map +1 -1
- package/_cjs/Channel/api/mergeWith.cjs +48 -46
- package/_cjs/Channel/api/mergeWith.cjs.map +1 -1
- package/_cjs/Channel/api/run.cjs +1 -1
- package/_cjs/Channel/api/run.cjs.map +1 -1
- package/_cjs/Channel/api/runScoped.cjs +2 -2
- package/_cjs/Channel/api/runScoped.cjs.map +1 -1
- package/_cjs/Channel/api/toPull.cjs +3 -3
- package/_cjs/Channel/api/toPull.cjs.map +1 -1
- package/_cjs/Channel/api/zipC.cjs +20 -14
- package/_cjs/Channel/api/zipC.cjs.map +1 -1
- package/_cjs/Channel/api.cjs +264 -218
- package/_cjs/Channel/api.cjs.map +1 -1
- package/_cjs/Channel/core-api.cjs +34 -24
- package/_cjs/Channel/core-api.cjs.map +1 -1
- package/_cjs/Channel/definition.cjs +1 -1
- package/_cjs/Channel/definition.cjs.map +1 -1
- package/_cjs/Channel/internal/ChannelExecutor.cjs +83 -83
- package/_cjs/Channel/internal/ChannelExecutor.cjs.map +1 -1
- package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs +22 -24
- package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs.map +1 -1
- package/_cjs/Differ/api.cjs +5 -5
- package/_cjs/Differ/api.cjs.map +1 -1
- package/_cjs/Fiber/FiberContext.cjs +48 -48
- package/_cjs/Fiber/FiberContext.cjs.map +1 -1
- package/_cjs/Fiber/api/awaitAll.cjs +1 -1
- package/_cjs/Fiber/api/awaitAll.cjs.map +1 -1
- package/_cjs/Fiber/api/collectAll.cjs +1 -1
- package/_cjs/Fiber/api/collectAll.cjs.map +1 -1
- package/_cjs/Fiber/api/evalOn.cjs +12 -10
- package/_cjs/Fiber/api/evalOn.cjs.map +1 -1
- package/_cjs/Fiber/api/evalOnIO.cjs +6 -4
- package/_cjs/Fiber/api/evalOnIO.cjs.map +1 -1
- package/_cjs/Fiber/api/fromIO.cjs +1 -1
- package/_cjs/Fiber/api/fromIO.cjs.map +1 -1
- package/_cjs/Fiber/api/interrupt.cjs +1 -1
- package/_cjs/Fiber/api/interrupt.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptAll.cjs +2 -2
- package/_cjs/Fiber/api/interruptAll.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptAs.cjs +6 -4
- package/_cjs/Fiber/api/interruptAs.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptAsFork.cjs +6 -4
- package/_cjs/Fiber/api/interruptAsFork.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptFork.cjs +1 -1
- package/_cjs/Fiber/api/interruptFork.cjs.map +1 -1
- package/_cjs/Fiber/api/join.cjs +1 -1
- package/_cjs/Fiber/api/join.cjs.map +1 -1
- package/_cjs/Fiber/api/joinAll.cjs +1 -1
- package/_cjs/Fiber/api/joinAll.cjs.map +1 -1
- package/_cjs/Fiber/api/mapFiber.cjs +6 -4
- package/_cjs/Fiber/api/mapFiber.cjs.map +1 -1
- package/_cjs/Fiber/api/mapIO.cjs +14 -10
- package/_cjs/Fiber/api/mapIO.cjs.map +1 -1
- package/_cjs/Fiber/api/zipWith.cjs +6 -4
- package/_cjs/Fiber/api/zipWith.cjs.map +1 -1
- package/_cjs/Fiber/definition.cjs.map +1 -1
- package/_cjs/Fiber.cjs +13 -0
- package/_cjs/Fiber.cjs.map +1 -1
- package/_cjs/FiberRef/api/locallyScoped.cjs +6 -4
- package/_cjs/FiberRef/api/locallyScoped.cjs.map +1 -1
- package/_cjs/FiberRef/api/locallyScopedWith.cjs +5 -3
- package/_cjs/FiberRef/api/locallyScopedWith.cjs.map +1 -1
- package/_cjs/FiberRef/api.cjs +64 -47
- package/_cjs/FiberRef/api.cjs.map +1 -1
- package/_cjs/FiberRef/constructors.cjs +1 -1
- package/_cjs/FiberRef/constructors.cjs.map +1 -1
- package/_cjs/FiberRef.cjs.map +1 -1
- package/_cjs/FiberRefs/api.cjs +15 -13
- package/_cjs/FiberRefs/api.cjs.map +1 -1
- package/_cjs/FiberRefs/join.cjs +37 -35
- package/_cjs/FiberRefs/join.cjs.map +1 -1
- package/_cjs/FiberState/definition.cjs.map +1 -1
- package/_cjs/Future/api.cjs +97 -79
- package/_cjs/Future/api.cjs.map +1 -1
- package/_cjs/Future/constructors.cjs +1 -1
- package/_cjs/Future/constructors.cjs.map +1 -1
- package/_cjs/Hub/constructors.cjs +93 -0
- package/_cjs/Hub/constructors.cjs.map +1 -0
- package/_cjs/Hub/definition.cjs +104 -13
- package/_cjs/Hub/definition.cjs.map +1 -1
- package/_cjs/Hub/internal.cjs +104 -129
- package/_cjs/Hub/internal.cjs.map +1 -1
- package/_cjs/Hub.cjs +4 -4
- package/_cjs/IO/api/acquireReleaseExit.cjs +1 -1
- package/_cjs/IO/api/acquireReleaseExit.cjs.map +1 -1
- package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs +1 -1
- package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs.map +1 -1
- package/_cjs/IO/api/addFinalizerExit.cjs +1 -1
- package/_cjs/IO/api/addFinalizerExit.cjs.map +1 -1
- package/_cjs/IO/api/asyncIO.cjs +4 -4
- package/_cjs/IO/api/asyncIO.cjs.map +1 -1
- package/_cjs/IO/api/bracket.cjs +3 -3
- package/_cjs/IO/api/bracket.cjs.map +1 -1
- package/_cjs/IO/api/bracketExit.cjs +3 -3
- package/_cjs/IO/api/bracketExit.cjs.map +1 -1
- package/_cjs/IO/api/clockWith.cjs +2 -2
- package/_cjs/IO/api/clockWith.cjs.map +1 -1
- package/_cjs/IO/api/concurrency.cjs +9 -7
- package/_cjs/IO/api/concurrency.cjs.map +1 -1
- package/_cjs/IO/api/concurrentFinalizers.cjs +1 -1
- package/_cjs/IO/api/concurrentFinalizers.cjs.map +1 -1
- package/_cjs/IO/api/consoleWith.cjs +2 -2
- package/_cjs/IO/api/consoleWith.cjs.map +1 -1
- package/_cjs/IO/api/core-scope.cjs +45 -41
- package/_cjs/IO/api/core-scope.cjs.map +1 -1
- package/_cjs/IO/api/ensuringChildren.cjs +5 -3
- package/_cjs/IO/api/ensuringChildren.cjs.map +1 -1
- package/_cjs/IO/api/environment.cjs +35 -35
- package/_cjs/IO/api/environment.cjs.map +1 -1
- package/_cjs/IO/api/foreachC.cjs +19 -23
- package/_cjs/IO/api/foreachC.cjs.map +1 -1
- package/_cjs/IO/api/foreachExec.cjs +3 -3
- package/_cjs/IO/api/foreachExec.cjs.map +1 -1
- package/_cjs/IO/api/forkAll.cjs +1 -1
- package/_cjs/IO/api/forkAll.cjs.map +1 -1
- package/_cjs/IO/api/forkIn.cjs +8 -6
- package/_cjs/IO/api/forkIn.cjs.map +1 -1
- package/_cjs/IO/api/forkScoped.cjs +1 -1
- package/_cjs/IO/api/forkScoped.cjs.map +1 -1
- package/_cjs/IO/api/fulfill.cjs +8 -6
- package/_cjs/IO/api/fulfill.cjs.map +1 -1
- package/_cjs/IO/api/interrupt.cjs +36 -30
- package/_cjs/IO/api/interrupt.cjs.map +1 -1
- package/_cjs/IO/api/memoize.cjs +1 -1
- package/_cjs/IO/api/memoize.cjs.map +1 -1
- package/_cjs/IO/api/onExit.cjs +6 -4
- package/_cjs/IO/api/onExit.cjs.map +1 -1
- package/_cjs/IO/api/onTermination.cjs +5 -3
- package/_cjs/IO/api/onTermination.cjs.map +1 -1
- package/_cjs/IO/api/once.cjs +3 -5
- package/_cjs/IO/api/once.cjs.map +1 -1
- package/_cjs/IO/api/provideLayer.cjs +6 -4
- package/_cjs/IO/api/provideLayer.cjs.map +1 -1
- package/_cjs/IO/api/provideSomeLayer.cjs +5 -15
- package/_cjs/IO/api/provideSomeLayer.cjs.map +1 -1
- package/_cjs/IO/api/race.cjs +6 -4
- package/_cjs/IO/api/race.cjs.map +1 -1
- package/_cjs/IO/api/raceFirst.cjs +6 -4
- package/_cjs/IO/api/raceFirst.cjs.map +1 -1
- package/_cjs/IO/api/randomWith.cjs +1 -1
- package/_cjs/IO/api/randomWith.cjs.map +1 -1
- package/_cjs/IO/api/repeat.cjs +12 -12
- package/_cjs/IO/api/repeat.cjs.map +1 -1
- package/_cjs/IO/api/retry.cjs +14 -14
- package/_cjs/IO/api/retry.cjs.map +1 -1
- package/_cjs/IO/api/schedule.cjs +15 -11
- package/_cjs/IO/api/schedule.cjs.map +1 -1
- package/_cjs/IO/api/scoped.cjs +6 -6
- package/_cjs/IO/api/scoped.cjs.map +1 -1
- package/_cjs/IO/api/sequenceT.cjs +1 -1
- package/_cjs/IO/api/sequenceT.cjs.map +1 -1
- package/_cjs/IO/api/stateful.cjs.map +1 -1
- package/_cjs/IO/api/supervised.cjs +6 -4
- package/_cjs/IO/api/supervised.cjs.map +1 -1
- package/_cjs/IO/api/timeout.cjs +10 -6
- package/_cjs/IO/api/timeout.cjs.map +1 -1
- package/_cjs/IO/api/withChildren.cjs +1 -1
- package/_cjs/IO/api/withChildren.cjs.map +1 -1
- package/_cjs/IO/api/withEarlyRelease.cjs +1 -1
- package/_cjs/IO/api/withEarlyRelease.cjs.map +1 -1
- package/_cjs/IO/api/withFinalizer.cjs +6 -4
- package/_cjs/IO/api/withFinalizer.cjs.map +1 -1
- package/_cjs/IO/api/withFinalizerExit.cjs +6 -4
- package/_cjs/IO/api/withFinalizerExit.cjs.map +1 -1
- package/_cjs/IO/api/withRuntimeConfig.cjs +6 -4
- package/_cjs/IO/api/withRuntimeConfig.cjs.map +1 -1
- package/_cjs/IO/api/zipC.cjs +21 -17
- package/_cjs/IO/api/zipC.cjs.map +1 -1
- package/_cjs/IO/api.cjs +634 -509
- package/_cjs/IO/api.cjs.map +1 -1
- package/_cjs/IO/definition.cjs.map +1 -1
- package/_cjs/IO/runtime.cjs +7 -7
- package/_cjs/IO/runtime.cjs.map +1 -1
- package/_cjs/IO.cjs.map +1 -1
- package/_cjs/IOEnv/definition.cjs +1 -1
- package/_cjs/IOEnv/definition.cjs.map +1 -1
- package/_cjs/IOEnv/live.cjs +1 -1
- package/_cjs/IOEnv/live.cjs.map +1 -1
- package/_cjs/Layer/MemoMap.cjs +86 -92
- package/_cjs/Layer/MemoMap.cjs.map +1 -1
- package/_cjs/Layer/api.cjs +110 -81
- package/_cjs/Layer/api.cjs.map +1 -1
- package/_cjs/Layer/definition.cjs.map +1 -1
- package/_cjs/LogLevel.cjs +24 -16
- package/_cjs/LogLevel.cjs.map +1 -1
- package/_cjs/LogSpan.cjs +18 -16
- package/_cjs/LogSpan.cjs.map +1 -1
- package/_cjs/Logger/api.cjs +18 -14
- package/_cjs/Logger/api.cjs.map +1 -1
- package/_cjs/Logger/constructors.cjs +1 -1
- package/_cjs/Logger/constructors.cjs.map +1 -1
- package/_cjs/Queue/constructors.cjs +19 -5
- package/_cjs/Queue/constructors.cjs.map +1 -1
- package/_cjs/Queue/definition.cjs +191 -16
- package/_cjs/Queue/definition.cjs.map +1 -1
- package/_cjs/Queue/internal.cjs +27 -181
- package/_cjs/Queue/internal.cjs.map +1 -1
- package/_cjs/Queue/strategy.cjs +19 -19
- package/_cjs/Queue/strategy.cjs.map +1 -1
- package/_cjs/Queue.cjs +0 -26
- package/_cjs/Queue.cjs.map +1 -1
- package/_cjs/Random/live.cjs +2 -2
- package/_cjs/Random/live.cjs.map +1 -1
- package/_cjs/Ref/Atomic.cjs +47 -24
- package/_cjs/Ref/Atomic.cjs.map +1 -1
- package/_cjs/Ref/Synchronized.cjs +140 -0
- package/_cjs/Ref/Synchronized.cjs.map +1 -0
- package/_cjs/Ref/constructors.cjs +21 -2
- package/_cjs/Ref/constructors.cjs.map +1 -1
- package/_cjs/Ref/definition.cjs +105 -10
- package/_cjs/Ref/definition.cjs.map +1 -1
- package/_cjs/Ref.cjs +4 -69
- package/_cjs/Ref.cjs.map +1 -1
- package/_cjs/Reloadable/constructors.cjs +10 -10
- package/_cjs/Reloadable/constructors.cjs.map +1 -1
- package/_cjs/RuntimeConfig.cjs +2 -2
- package/_cjs/RuntimeConfig.cjs.map +1 -1
- package/_cjs/STM/api/core-api.cjs +36 -26
- package/_cjs/STM/api/core-api.cjs.map +1 -1
- package/_cjs/STM/api.cjs +217 -163
- package/_cjs/STM/api.cjs.map +1 -1
- package/_cjs/STM/driver.cjs +3 -3
- package/_cjs/STM/driver.cjs.map +1 -1
- package/_cjs/STM/internal/Entry.cjs.map +1 -1
- package/_cjs/STM/internal/Journal.cjs +33 -29
- package/_cjs/STM/internal/Journal.cjs.map +1 -1
- package/_cjs/STM.cjs.map +1 -1
- package/_cjs/Schedule/Decision.cjs +16 -14
- package/_cjs/Schedule/Decision.cjs.map +1 -1
- package/_cjs/Schedule/api/driver.cjs +16 -20
- package/_cjs/Schedule/api/driver.cjs.map +1 -1
- package/_cjs/Schedule/api.cjs +381 -290
- package/_cjs/Schedule/api.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs +14 -14
- package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/api.cjs +68 -61
- package/_cjs/Scope/ReleaseMap/api.cjs.map +1 -1
- package/_cjs/Scope/api.cjs +34 -27
- package/_cjs/Scope/api.cjs.map +1 -1
- package/_cjs/ScopedRef/api.cjs +9 -13
- package/_cjs/ScopedRef/api.cjs.map +1 -1
- package/_cjs/ScopedRef/definition.cjs +1 -1
- package/_cjs/ScopedRef/definition.cjs.map +1 -1
- package/_cjs/Sink/api.cjs +307 -249
- package/_cjs/Sink/api.cjs.map +1 -1
- package/_cjs/State/api.cjs +18 -14
- package/_cjs/State/api.cjs.map +1 -1
- package/_cjs/Stream/api/zipAllWith.cjs +15 -13
- package/_cjs/Stream/api/zipAllWith.cjs.map +1 -1
- package/_cjs/Stream/api/zipWith.cjs +6 -4
- package/_cjs/Stream/api/zipWith.cjs.map +1 -1
- package/_cjs/Stream/api/zipWithChunks.cjs +13 -11
- package/_cjs/Stream/api/zipWithChunks.cjs.map +1 -1
- package/_cjs/Stream/api.cjs +992 -788
- package/_cjs/Stream/api.cjs.map +1 -1
- package/_cjs/Stream/definition.cjs.map +1 -1
- package/_cjs/Stream/internal/DebounceState.cjs +21 -19
- package/_cjs/Stream/internal/DebounceState.cjs.map +1 -1
- package/_cjs/Stream/internal/Handoff.cjs +35 -33
- package/_cjs/Stream/internal/Handoff.cjs.map +1 -1
- package/_cjs/Stream/internal/Pull.cjs +9 -11
- package/_cjs/Stream/internal/Pull.cjs.map +1 -1
- package/_cjs/Stream/internal/SinkEndReason.cjs +16 -14
- package/_cjs/Stream/internal/SinkEndReason.cjs.map +1 -1
- package/_cjs/Stream/internal/Take.cjs +32 -24
- package/_cjs/Stream/internal/Take.cjs.map +1 -1
- package/_cjs/Stream/internal/util.cjs +3 -3
- package/_cjs/Stream/internal/util.cjs.map +1 -1
- package/_cjs/SubscriptionRef.cjs +68 -0
- package/_cjs/SubscriptionRef.cjs.map +1 -0
- package/_cjs/Supervisor/api.cjs +24 -20
- package/_cjs/Supervisor/api.cjs.map +1 -1
- package/_cjs/Supervisor/constructors.cjs +2 -2
- package/_cjs/Supervisor/constructors.cjs.map +1 -1
- package/_cjs/Supervisor/definition.cjs +1 -1
- package/_cjs/Supervisor/definition.cjs.map +1 -1
- package/_cjs/SupervisorPatch.cjs +15 -11
- package/_cjs/SupervisorPatch.cjs.map +1 -1
- package/_cjs/TExit/definition.cjs.map +1 -1
- package/_cjs/TFuture/api.cjs +21 -15
- package/_cjs/TFuture/api.cjs.map +1 -1
- package/_cjs/TFuture/constructors.cjs +1 -1
- package/_cjs/TFuture/constructors.cjs.map +1 -1
- package/_cjs/TFuture/definition.cjs.map +1 -1
- package/_cjs/TReentrantLock/api.cjs +32 -28
- package/_cjs/TReentrantLock/api.cjs.map +1 -1
- package/_cjs/TReentrantLock/definition.cjs +4 -4
- package/_cjs/TReentrantLock/definition.cjs.map +1 -1
- package/_cjs/TRef/api.cjs +233 -209
- package/_cjs/TRef/api.cjs.map +1 -1
- package/_cjs/TRef/definition.cjs +4 -4
- package/_cjs/TRef/definition.cjs.map +1 -1
- package/_cjs/TSemaphore/api.cjs +27 -23
- package/_cjs/TSemaphore/api.cjs.map +1 -1
- package/_cjs/TSemaphore/constructors.cjs +18 -3
- package/_cjs/TSemaphore/constructors.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +21 -19
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +21 -19
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/filterIO.cjs +16 -14
- package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/findIO.cjs +19 -17
- package/_cjs/collection/immutable/Conc/findIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/mapIO.cjs +11 -9
- package/_cjs/collection/immutable/Conc/mapIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/takeWhileIO.cjs +31 -29
- package/_cjs/collection/immutable/Conc/takeWhileIO.cjs.map +1 -1
- package/_cjs/data/Exit/foreachIO.cjs +6 -4
- package/_cjs/data/Exit/foreachIO.cjs.map +1 -1
- package/_cjs/internal/Hub.cjs +13 -11
- package/_cjs/internal/Hub.cjs.map +1 -1
- package/_cjs/internal/IsFatal.cjs +18 -16
- package/_cjs/internal/IsFatal.cjs.map +1 -1
- package/_cjs/internal/MutableQueue.cjs +11 -9
- package/_cjs/internal/MutableQueue.cjs.map +1 -1
- package/_cjs/internal/StackTraceBuilder.cjs.map +1 -1
- package/_mjs/Cached/api.mjs +6 -6
- package/_mjs/Cached/api.mjs.map +1 -1
- package/_mjs/Channel/ChildExecutorDecision/api.mjs +18 -16
- package/_mjs/Channel/ChildExecutorDecision/api.mjs.map +1 -1
- package/_mjs/Channel/UpstreamPullRequest/api.mjs +14 -12
- package/_mjs/Channel/UpstreamPullRequest/api.mjs.map +1 -1
- package/_mjs/Channel/api/interruptWhen.mjs +11 -7
- package/_mjs/Channel/api/interruptWhen.mjs.map +1 -1
- package/_mjs/Channel/api/mapOutIOC.mjs +24 -23
- package/_mjs/Channel/api/mapOutIOC.mjs.map +1 -1
- package/_mjs/Channel/api/mergeAll.mjs +5 -3
- package/_mjs/Channel/api/mergeAll.mjs.map +1 -1
- package/_mjs/Channel/api/mergeAllUnboundedWith.mjs +5 -3
- package/_mjs/Channel/api/mergeAllUnboundedWith.mjs.map +1 -1
- package/_mjs/Channel/api/mergeAllWith.mjs +45 -46
- package/_mjs/Channel/api/mergeAllWith.mjs.map +1 -1
- package/_mjs/Channel/api/mergeMap.mjs +5 -3
- package/_mjs/Channel/api/mergeMap.mjs.map +1 -1
- package/_mjs/Channel/api/mergeWith.mjs +46 -44
- package/_mjs/Channel/api/mergeWith.mjs.map +1 -1
- package/_mjs/Channel/api/run.mjs +1 -1
- package/_mjs/Channel/api/run.mjs.map +1 -1
- package/_mjs/Channel/api/runScoped.mjs +2 -2
- package/_mjs/Channel/api/runScoped.mjs.map +1 -1
- package/_mjs/Channel/api/toPull.mjs +3 -3
- package/_mjs/Channel/api/toPull.mjs.map +1 -1
- package/_mjs/Channel/api/zipC.mjs +16 -10
- package/_mjs/Channel/api/zipC.mjs.map +1 -1
- package/_mjs/Channel/api.mjs +224 -173
- package/_mjs/Channel/api.mjs.map +1 -1
- package/_mjs/Channel/core-api.mjs +28 -18
- package/_mjs/Channel/core-api.mjs.map +1 -1
- package/_mjs/Channel/definition.mjs +1 -1
- package/_mjs/Channel/definition.mjs.map +1 -1
- package/_mjs/Channel/internal/ChannelExecutor.mjs +83 -83
- package/_mjs/Channel/internal/ChannelExecutor.mjs.map +1 -1
- package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs +22 -23
- package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs.map +1 -1
- package/_mjs/Differ/api.mjs +5 -5
- package/_mjs/Differ/api.mjs.map +1 -1
- package/_mjs/Fiber/FiberContext.mjs +48 -48
- package/_mjs/Fiber/FiberContext.mjs.map +1 -1
- package/_mjs/Fiber/api/awaitAll.mjs +1 -1
- package/_mjs/Fiber/api/awaitAll.mjs.map +1 -1
- package/_mjs/Fiber/api/collectAll.mjs +1 -1
- package/_mjs/Fiber/api/collectAll.mjs.map +1 -1
- package/_mjs/Fiber/api/evalOn.mjs +11 -9
- package/_mjs/Fiber/api/evalOn.mjs.map +1 -1
- package/_mjs/Fiber/api/evalOnIO.mjs +5 -3
- package/_mjs/Fiber/api/evalOnIO.mjs.map +1 -1
- package/_mjs/Fiber/api/fromIO.mjs +1 -1
- package/_mjs/Fiber/api/fromIO.mjs.map +1 -1
- package/_mjs/Fiber/api/interrupt.mjs +1 -1
- package/_mjs/Fiber/api/interrupt.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptAll.mjs +2 -2
- package/_mjs/Fiber/api/interruptAll.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptAs.mjs +6 -4
- package/_mjs/Fiber/api/interruptAs.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptAsFork.mjs +6 -4
- package/_mjs/Fiber/api/interruptAsFork.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptFork.mjs +1 -1
- package/_mjs/Fiber/api/interruptFork.mjs.map +1 -1
- package/_mjs/Fiber/api/join.mjs +1 -1
- package/_mjs/Fiber/api/join.mjs.map +1 -1
- package/_mjs/Fiber/api/joinAll.mjs +1 -1
- package/_mjs/Fiber/api/joinAll.mjs.map +1 -1
- package/_mjs/Fiber/api/mapFiber.mjs +5 -3
- package/_mjs/Fiber/api/mapFiber.mjs.map +1 -1
- package/_mjs/Fiber/api/mapIO.mjs +11 -7
- package/_mjs/Fiber/api/mapIO.mjs.map +1 -1
- package/_mjs/Fiber/api/zipWith.mjs +5 -3
- package/_mjs/Fiber/api/zipWith.mjs.map +1 -1
- package/_mjs/Fiber/definition.mjs.map +1 -1
- package/_mjs/Fiber.mjs +1 -0
- package/_mjs/Fiber.mjs.map +1 -1
- package/_mjs/FiberRef/api/locallyScoped.mjs +5 -3
- package/_mjs/FiberRef/api/locallyScoped.mjs.map +1 -1
- package/_mjs/FiberRef/api/locallyScopedWith.mjs +5 -3
- package/_mjs/FiberRef/api/locallyScopedWith.mjs.map +1 -1
- package/_mjs/FiberRef/api.mjs +52 -36
- package/_mjs/FiberRef/api.mjs.map +1 -1
- package/_mjs/FiberRef/constructors.mjs +1 -1
- package/_mjs/FiberRef/constructors.mjs.map +1 -1
- package/_mjs/FiberRef.mjs.map +1 -1
- package/_mjs/FiberRefs/api.mjs +14 -12
- package/_mjs/FiberRefs/api.mjs.map +1 -1
- package/_mjs/FiberRefs/join.mjs +35 -33
- package/_mjs/FiberRefs/join.mjs.map +1 -1
- package/_mjs/FiberState/definition.mjs.map +1 -1
- package/_mjs/Future/api.mjs +84 -66
- package/_mjs/Future/api.mjs.map +1 -1
- package/_mjs/Future/constructors.mjs +1 -1
- package/_mjs/Future/constructors.mjs.map +1 -1
- package/_mjs/Hub/constructors.mjs +66 -0
- package/_mjs/Hub/constructors.mjs.map +1 -0
- package/_mjs/Hub/definition.mjs +88 -9
- package/_mjs/Hub/definition.mjs.map +1 -1
- package/_mjs/Hub/internal.mjs +105 -122
- package/_mjs/Hub/internal.mjs.map +1 -1
- package/_mjs/Hub.mjs +1 -1
- package/_mjs/Hub.mjs.map +1 -1
- package/_mjs/IO/api/acquireReleaseExit.mjs +1 -1
- package/_mjs/IO/api/acquireReleaseExit.mjs.map +1 -1
- package/_mjs/IO/api/acquireReleaseInterruptibleExit.mjs +1 -1
- package/_mjs/IO/api/acquireReleaseInterruptibleExit.mjs.map +1 -1
- package/_mjs/IO/api/addFinalizerExit.mjs +1 -1
- package/_mjs/IO/api/addFinalizerExit.mjs.map +1 -1
- package/_mjs/IO/api/asyncIO.mjs +4 -4
- package/_mjs/IO/api/asyncIO.mjs.map +1 -1
- package/_mjs/IO/api/bracket.mjs +2 -2
- package/_mjs/IO/api/bracket.mjs.map +1 -1
- package/_mjs/IO/api/bracketExit.mjs +2 -2
- package/_mjs/IO/api/bracketExit.mjs.map +1 -1
- package/_mjs/IO/api/clockWith.mjs +2 -2
- package/_mjs/IO/api/clockWith.mjs.map +1 -1
- package/_mjs/IO/api/concurrency.mjs +8 -6
- package/_mjs/IO/api/concurrency.mjs.map +1 -1
- package/_mjs/IO/api/concurrentFinalizers.mjs +1 -1
- package/_mjs/IO/api/concurrentFinalizers.mjs.map +1 -1
- package/_mjs/IO/api/consoleWith.mjs +2 -2
- package/_mjs/IO/api/consoleWith.mjs.map +1 -1
- package/_mjs/IO/api/core-scope.mjs +40 -36
- package/_mjs/IO/api/core-scope.mjs.map +1 -1
- package/_mjs/IO/api/ensuringChildren.mjs +5 -3
- package/_mjs/IO/api/ensuringChildren.mjs.map +1 -1
- package/_mjs/IO/api/environment.mjs +29 -27
- package/_mjs/IO/api/environment.mjs.map +1 -1
- package/_mjs/IO/api/foreachC.mjs +17 -19
- package/_mjs/IO/api/foreachC.mjs.map +1 -1
- package/_mjs/IO/api/foreachExec.mjs +2 -2
- package/_mjs/IO/api/foreachExec.mjs.map +1 -1
- package/_mjs/IO/api/forkAll.mjs +1 -1
- package/_mjs/IO/api/forkAll.mjs.map +1 -1
- package/_mjs/IO/api/forkIn.mjs +7 -5
- package/_mjs/IO/api/forkIn.mjs.map +1 -1
- package/_mjs/IO/api/forkScoped.mjs +1 -1
- package/_mjs/IO/api/forkScoped.mjs.map +1 -1
- package/_mjs/IO/api/fulfill.mjs +7 -5
- package/_mjs/IO/api/fulfill.mjs.map +1 -1
- package/_mjs/IO/api/interrupt.mjs +34 -28
- package/_mjs/IO/api/interrupt.mjs.map +1 -1
- package/_mjs/IO/api/memoize.mjs +1 -1
- package/_mjs/IO/api/memoize.mjs.map +1 -1
- package/_mjs/IO/api/onExit.mjs +5 -3
- package/_mjs/IO/api/onExit.mjs.map +1 -1
- package/_mjs/IO/api/onTermination.mjs +5 -3
- package/_mjs/IO/api/onTermination.mjs.map +1 -1
- package/_mjs/IO/api/once.mjs +3 -4
- package/_mjs/IO/api/once.mjs.map +1 -1
- package/_mjs/IO/api/provideLayer.mjs +5 -3
- package/_mjs/IO/api/provideLayer.mjs.map +1 -1
- package/_mjs/IO/api/provideSomeLayer.mjs +5 -11
- package/_mjs/IO/api/provideSomeLayer.mjs.map +1 -1
- package/_mjs/IO/api/race.mjs +5 -3
- package/_mjs/IO/api/race.mjs.map +1 -1
- package/_mjs/IO/api/raceFirst.mjs +5 -3
- package/_mjs/IO/api/raceFirst.mjs.map +1 -1
- package/_mjs/IO/api/randomWith.mjs +1 -1
- package/_mjs/IO/api/randomWith.mjs.map +1 -1
- package/_mjs/IO/api/repeat.mjs +8 -8
- package/_mjs/IO/api/repeat.mjs.map +1 -1
- package/_mjs/IO/api/retry.mjs +12 -12
- package/_mjs/IO/api/retry.mjs.map +1 -1
- package/_mjs/IO/api/schedule.mjs +15 -11
- package/_mjs/IO/api/schedule.mjs.map +1 -1
- package/_mjs/IO/api/scoped.mjs +3 -3
- package/_mjs/IO/api/scoped.mjs.map +1 -1
- package/_mjs/IO/api/sequenceT.mjs +1 -1
- package/_mjs/IO/api/sequenceT.mjs.map +1 -1
- package/_mjs/IO/api/stateful.mjs.map +1 -1
- package/_mjs/IO/api/supervised.mjs +5 -3
- package/_mjs/IO/api/supervised.mjs.map +1 -1
- package/_mjs/IO/api/timeout.mjs +10 -6
- package/_mjs/IO/api/timeout.mjs.map +1 -1
- package/_mjs/IO/api/withChildren.mjs +1 -1
- package/_mjs/IO/api/withChildren.mjs.map +1 -1
- package/_mjs/IO/api/withEarlyRelease.mjs +1 -1
- package/_mjs/IO/api/withEarlyRelease.mjs.map +1 -1
- package/_mjs/IO/api/withFinalizer.mjs +5 -3
- package/_mjs/IO/api/withFinalizer.mjs.map +1 -1
- package/_mjs/IO/api/withFinalizerExit.mjs +5 -3
- package/_mjs/IO/api/withFinalizerExit.mjs.map +1 -1
- package/_mjs/IO/api/withRuntimeConfig.mjs +5 -3
- package/_mjs/IO/api/withRuntimeConfig.mjs.map +1 -1
- package/_mjs/IO/api/zipC.mjs +18 -14
- package/_mjs/IO/api/zipC.mjs.map +1 -1
- package/_mjs/IO/api.mjs +511 -387
- package/_mjs/IO/api.mjs.map +1 -1
- package/_mjs/IO/definition.mjs.map +1 -1
- package/_mjs/IO/runtime.mjs +7 -7
- package/_mjs/IO/runtime.mjs.map +1 -1
- package/_mjs/IO.mjs.map +1 -1
- package/_mjs/IOEnv/definition.mjs +1 -1
- package/_mjs/IOEnv/definition.mjs.map +1 -1
- package/_mjs/IOEnv/live.mjs +1 -1
- package/_mjs/IOEnv/live.mjs.map +1 -1
- package/_mjs/Layer/MemoMap.mjs +86 -87
- package/_mjs/Layer/MemoMap.mjs.map +1 -1
- package/_mjs/Layer/api.mjs +91 -63
- package/_mjs/Layer/api.mjs.map +1 -1
- package/_mjs/Layer/definition.mjs.map +1 -1
- package/_mjs/LogLevel.mjs +24 -16
- package/_mjs/LogLevel.mjs.map +1 -1
- package/_mjs/LogSpan.mjs +16 -14
- package/_mjs/LogSpan.mjs.map +1 -1
- package/_mjs/Logger/api.mjs +16 -12
- package/_mjs/Logger/api.mjs.map +1 -1
- package/_mjs/Logger/constructors.mjs +1 -1
- package/_mjs/Logger/constructors.mjs.map +1 -1
- package/_mjs/Queue/constructors.mjs +16 -5
- package/_mjs/Queue/constructors.mjs.map +1 -1
- package/_mjs/Queue/definition.mjs +174 -12
- package/_mjs/Queue/definition.mjs.map +1 -1
- package/_mjs/Queue/internal.mjs +21 -170
- package/_mjs/Queue/internal.mjs.map +1 -1
- package/_mjs/Queue/strategy.mjs +20 -23
- package/_mjs/Queue/strategy.mjs.map +1 -1
- package/_mjs/Queue.mjs +1 -3
- package/_mjs/Queue.mjs.map +1 -1
- package/_mjs/Random/live.mjs +2 -2
- package/_mjs/Random/live.mjs.map +1 -1
- package/_mjs/Ref/Atomic.mjs +39 -3
- package/_mjs/Ref/Atomic.mjs.map +1 -1
- package/_mjs/Ref/Synchronized.mjs +123 -0
- package/_mjs/Ref/Synchronized.mjs.map +1 -0
- package/_mjs/Ref/constructors.mjs +15 -1
- package/_mjs/Ref/constructors.mjs.map +1 -1
- package/_mjs/Ref/definition.mjs +96 -4
- package/_mjs/Ref/definition.mjs.map +1 -1
- package/_mjs/Ref.mjs +1 -8
- package/_mjs/Ref.mjs.map +1 -1
- package/_mjs/Reloadable/constructors.mjs +10 -10
- package/_mjs/Reloadable/constructors.mjs.map +1 -1
- package/_mjs/RuntimeConfig.mjs +2 -2
- package/_mjs/RuntimeConfig.mjs.map +1 -1
- package/_mjs/STM/api/core-api.mjs +29 -19
- package/_mjs/STM/api/core-api.mjs.map +1 -1
- package/_mjs/STM/api.mjs +180 -127
- package/_mjs/STM/api.mjs.map +1 -1
- package/_mjs/STM/driver.mjs +3 -3
- package/_mjs/STM/driver.mjs.map +1 -1
- package/_mjs/STM/internal/Entry.mjs.map +1 -1
- package/_mjs/STM/internal/Journal.mjs +33 -29
- package/_mjs/STM/internal/Journal.mjs.map +1 -1
- package/_mjs/STM.mjs.map +1 -1
- package/_mjs/Schedule/Decision.mjs +14 -12
- package/_mjs/Schedule/Decision.mjs.map +1 -1
- package/_mjs/Schedule/api/driver.mjs +15 -17
- package/_mjs/Schedule/api/driver.mjs.map +1 -1
- package/_mjs/Schedule/api.mjs +326 -234
- package/_mjs/Schedule/api.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs +12 -11
- package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/api.mjs +60 -51
- package/_mjs/Scope/ReleaseMap/api.mjs.map +1 -1
- package/_mjs/Scope/api.mjs +28 -22
- package/_mjs/Scope/api.mjs.map +1 -1
- package/_mjs/ScopedRef/api.mjs +9 -11
- package/_mjs/ScopedRef/api.mjs.map +1 -1
- package/_mjs/ScopedRef/definition.mjs +1 -1
- package/_mjs/ScopedRef/definition.mjs.map +1 -1
- package/_mjs/Sink/api.mjs +301 -240
- package/_mjs/Sink/api.mjs.map +1 -1
- package/_mjs/State/api.mjs +16 -12
- package/_mjs/State/api.mjs.map +1 -1
- package/_mjs/Stream/api/zipAllWith.mjs +14 -12
- package/_mjs/Stream/api/zipAllWith.mjs.map +1 -1
- package/_mjs/Stream/api/zipWith.mjs +5 -3
- package/_mjs/Stream/api/zipWith.mjs.map +1 -1
- package/_mjs/Stream/api/zipWithChunks.mjs +12 -10
- package/_mjs/Stream/api/zipWithChunks.mjs.map +1 -1
- package/_mjs/Stream/api.mjs +856 -653
- package/_mjs/Stream/api.mjs.map +1 -1
- package/_mjs/Stream/definition.mjs.map +1 -1
- package/_mjs/Stream/internal/DebounceState.mjs +18 -16
- package/_mjs/Stream/internal/DebounceState.mjs.map +1 -1
- package/_mjs/Stream/internal/Handoff.mjs +35 -32
- package/_mjs/Stream/internal/Handoff.mjs.map +1 -1
- package/_mjs/Stream/internal/Pull.mjs +9 -10
- package/_mjs/Stream/internal/Pull.mjs.map +1 -1
- package/_mjs/Stream/internal/SinkEndReason.mjs +14 -12
- package/_mjs/Stream/internal/SinkEndReason.mjs.map +1 -1
- package/_mjs/Stream/internal/Take.mjs +28 -20
- package/_mjs/Stream/internal/Take.mjs.map +1 -1
- package/_mjs/Stream/internal/util.mjs +3 -3
- package/_mjs/Stream/internal/util.mjs.map +1 -1
- package/_mjs/SubscriptionRef.mjs +45 -0
- package/_mjs/SubscriptionRef.mjs.map +1 -0
- package/_mjs/Supervisor/api.mjs +22 -18
- package/_mjs/Supervisor/api.mjs.map +1 -1
- package/_mjs/Supervisor/constructors.mjs +2 -2
- package/_mjs/Supervisor/constructors.mjs.map +1 -1
- package/_mjs/Supervisor/definition.mjs +1 -1
- package/_mjs/Supervisor/definition.mjs.map +1 -1
- package/_mjs/SupervisorPatch.mjs +15 -11
- package/_mjs/SupervisorPatch.mjs.map +1 -1
- package/_mjs/TExit/definition.mjs.map +1 -1
- package/_mjs/TFuture/api.mjs +17 -11
- package/_mjs/TFuture/api.mjs.map +1 -1
- package/_mjs/TFuture/constructors.mjs +1 -1
- package/_mjs/TFuture/constructors.mjs.map +1 -1
- package/_mjs/TFuture/definition.mjs.map +1 -1
- package/_mjs/TReentrantLock/api.mjs +32 -28
- package/_mjs/TReentrantLock/api.mjs.map +1 -1
- package/_mjs/TReentrantLock/definition.mjs +4 -4
- package/_mjs/TReentrantLock/definition.mjs.map +1 -1
- package/_mjs/TRef/api.mjs +218 -194
- package/_mjs/TRef/api.mjs.map +1 -1
- package/_mjs/TRef/definition.mjs +4 -4
- package/_mjs/TRef/definition.mjs.map +1 -1
- package/_mjs/TSemaphore/api.mjs +23 -19
- package/_mjs/TSemaphore/api.mjs.map +1 -1
- package/_mjs/TSemaphore/constructors.mjs +12 -2
- package/_mjs/TSemaphore/constructors.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/dropUntilIO.mjs +19 -17
- package/_mjs/collection/immutable/Conc/dropUntilIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/dropWhileIO.mjs +19 -17
- package/_mjs/collection/immutable/Conc/dropWhileIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/filterIO.mjs +14 -12
- package/_mjs/collection/immutable/Conc/filterIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/findIO.mjs +17 -15
- package/_mjs/collection/immutable/Conc/findIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/mapIO.mjs +10 -8
- package/_mjs/collection/immutable/Conc/mapIO.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/takeWhileIO.mjs +28 -26
- package/_mjs/collection/immutable/Conc/takeWhileIO.mjs.map +1 -1
- package/_mjs/data/Exit/foreachIO.mjs +5 -3
- package/_mjs/data/Exit/foreachIO.mjs.map +1 -1
- package/_mjs/internal/Hub.mjs +13 -11
- package/_mjs/internal/Hub.mjs.map +1 -1
- package/_mjs/internal/IsFatal.mjs +18 -16
- package/_mjs/internal/IsFatal.mjs.map +1 -1
- package/_mjs/internal/MutableQueue.mjs +10 -8
- package/_mjs/internal/MutableQueue.mjs.map +1 -1
- 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/mapOutIOC.ts +58 -58
- 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/zipC.ts +52 -88
- package/_src/Channel/api.ts +345 -405
- package/_src/Channel/core-api.ts +75 -122
- package/_src/Channel/definition.ts +49 -7
- package/_src/Channel/internal/ChannelExecutor.ts +1 -5
- package/_src/Channel/internal/SingleProducerAsyncInput.ts +1 -3
- package/_src/Fiber/FiberContext.ts +13 -33
- package/_src/Fiber/api/collectAll.ts +1 -2
- package/_src/Fiber/api/evalOn.ts +11 -14
- package/_src/Fiber/api/evalOnIO.ts +10 -13
- package/_src/Fiber/api/interruptAll.ts +1 -2
- package/_src/Fiber/api/interruptAs.ts +6 -4
- package/_src/Fiber/api/interruptAsFork.ts +6 -4
- package/_src/Fiber/api/interruptFork.ts +1 -1
- 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 +1 -15
- package/_src/Fiber.ts +1 -1
- package/_src/FiberRef/api/locallyScoped.ts +8 -6
- package/_src/FiberRef/api/locallyScopedWith.ts +5 -7
- package/_src/FiberRef/api.ts +50 -39
- package/_src/FiberRef.ts +0 -1
- package/_src/FiberRefs/api.ts +14 -12
- package/_src/FiberRefs/join.ts +37 -46
- package/_src/FiberState/definition.ts +1 -2
- package/_src/Future/api.ts +67 -53
- package/_src/Hub/constructors.ts +80 -0
- package/_src/Hub/definition.ts +95 -89
- package/_src/Hub/internal.ts +115 -165
- package/_src/Hub.ts +1 -1
- package/_src/IO/api/acquireRelease.ts +1 -1
- package/_src/IO/api/acquireReleaseExit.ts +1 -1
- 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 +36 -33
- package/_src/IO/api/ensuringChildren.ts +8 -7
- package/_src/IO/api/environment.ts +24 -42
- package/_src/IO/api/foreachC.ts +24 -12
- package/_src/IO/api/foreachExec.ts +1 -1
- package/_src/IO/api/forkIn.ts +7 -9
- package/_src/IO/api/fulfill.ts +5 -3
- package/_src/IO/api/interrupt.ts +37 -40
- 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 +5 -7
- package/_src/IO/api/timeout.ts +10 -16
- package/_src/IO/api/withFinalizer.ts +5 -7
- package/_src/IO/api/withFinalizerExit.ts +6 -5
- package/_src/IO/api/withRuntimeConfig.ts +12 -14
- package/_src/IO/api/zipC.ts +57 -62
- package/_src/IO/api.ts +512 -539
- package/_src/IO/definition.ts +21 -9
- package/_src/IO/runtime.ts +0 -12
- package/_src/IO.ts +0 -1
- package/_src/Layer/MemoMap.ts +61 -63
- 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/Queue/constructors.ts +22 -6
- package/_src/Queue/definition.ts +230 -81
- package/_src/Queue/internal.ts +9 -180
- package/_src/Queue/strategy.ts +9 -23
- package/_src/Queue.ts +1 -3
- package/_src/Ref/Atomic.ts +37 -4
- package/_src/Ref/Synchronized.ts +107 -0
- package/_src/Ref/constructors.ts +15 -0
- package/_src/Ref/definition.ts +86 -85
- package/_src/Ref.ts +1 -9
- package/_src/Reloadable/constructors.ts +2 -2
- package/_src/RuntimeConfig.ts +0 -2
- package/_src/STM/api/core-api.ts +32 -35
- package/_src/STM/api.ts +210 -200
- package/_src/STM/internal/Entry.ts +0 -10
- package/_src/STM/internal/Journal.ts +23 -26
- package/_src/STM.ts +0 -1
- package/_src/Schedule/Decision.ts +10 -8
- package/_src/Schedule/api/driver.ts +0 -4
- package/_src/Schedule/api.ts +419 -444
- package/_src/Schedule/definition.ts +0 -1
- package/_src/Scope/ReleaseMap/api/releaseAll.ts +23 -26
- package/_src/Scope/ReleaseMap/api.ts +77 -74
- 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 -357
- package/_src/State/api.ts +12 -8
- package/_src/State/internal.ts +1 -1
- package/_src/Stream/api/zipAllWith.ts +6 -5
- package/_src/Stream/api/zipWith.ts +5 -8
- package/_src/Stream/api/zipWithChunks.ts +6 -5
- package/_src/Stream/api.ts +1049 -1176
- package/_src/Stream/definition.ts +0 -2
- package/_src/Stream/internal/DebounceState.ts +16 -17
- package/_src/Stream/internal/Handoff.ts +31 -35
- package/_src/Stream/internal/Pull.ts +1 -2
- 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/SubscriptionRef.ts +44 -0
- package/_src/Supervisor/api.ts +18 -14
- 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 +0 -1
- package/_src/TReentrantLock/api.ts +14 -10
- package/_src/TReentrantLock/definition.ts +0 -7
- package/_src/TRef/api.ts +207 -209
- package/_src/TRef/definition.ts +0 -12
- package/_src/TSemaphore/api.ts +19 -18
- package/_src/TSemaphore/constructors.ts +7 -0
- 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 +7 -3
- package/_src/index.ts +3 -0
- 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 +7 -3
- package/index.d.ts +3 -0
- package/internal/Hub.d.ts +2 -2
- package/internal/IsFatal.d.ts +3 -3
- package/internal/MutableQueue.d.ts +3 -3
- package/package.json +3 -3
- package/Hub/api.d.ts +0 -190
- package/Queue/api/dimapIO.d.ts +0 -41
- package/Queue/api/filterInputIO.d.ts +0 -33
- package/Queue/api/filterOutputIO.d.ts +0 -31
- package/Queue/api/operations.d.ts +0 -82
- package/Queue/api/poll.d.ts +0 -9
- package/Queue/api/takeBetween.d.ts +0 -11
- package/Queue/api/zipWithIO.d.ts +0 -44
- package/Queue/api.d.ts +0 -7
- package/Ref/Atomic/Atomic.d.ts +0 -18
- package/Ref/Atomic/api.d.ts +0 -53
- package/Ref/Derived.d.ts +0 -14
- package/Ref/DerivedAll.d.ts +0 -14
- package/Ref/Synchronized/api.d.ts +0 -100
- package/Ref/Synchronized/constructors.d.ts +0 -8
- package/Ref/Synchronized/definition.d.ts +0 -42
- package/Ref/api/collect.d.ts +0 -11
- package/Ref/api/dimap.d.ts +0 -56
- package/Ref/api/filter.d.ts +0 -20
- package/Ref/api/get.d.ts +0 -9
- package/Ref/api/match.d.ts +0 -13
- package/Ref/api/matchAll.d.ts +0 -11
- package/Ref/api/modify.d.ts +0 -79
- package/Ref/api/set.d.ts +0 -10
- package/Ref/api.d.ts +0 -23
- package/_cjs/Hub/api.cjs +0 -456
- package/_cjs/Hub/api.cjs.map +0 -1
- package/_cjs/Queue/api/dimapIO.cjs +0 -120
- package/_cjs/Queue/api/dimapIO.cjs.map +0 -1
- package/_cjs/Queue/api/filterInputIO.cjs +0 -84
- package/_cjs/Queue/api/filterInputIO.cjs.map +0 -1
- package/_cjs/Queue/api/filterOutputIO.cjs +0 -89
- package/_cjs/Queue/api/filterOutputIO.cjs.map +0 -1
- package/_cjs/Queue/api/operations.cjs +0 -147
- package/_cjs/Queue/api/operations.cjs.map +0 -1
- package/_cjs/Queue/api/poll.cjs +0 -27
- package/_cjs/Queue/api/poll.cjs.map +0 -1
- package/_cjs/Queue/api/takeBetween.cjs +0 -57
- package/_cjs/Queue/api/takeBetween.cjs.map +0 -1
- package/_cjs/Queue/api/zipWithIO.cjs +0 -97
- package/_cjs/Queue/api/zipWithIO.cjs.map +0 -1
- package/_cjs/Queue/api.cjs +0 -97
- package/_cjs/Queue/api.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/_cjs/Ref/Derived.cjs +0 -55
- package/_cjs/Ref/Derived.cjs.map +0 -1
- package/_cjs/Ref/DerivedAll.cjs +0 -55
- package/_cjs/Ref/DerivedAll.cjs.map +0 -1
- package/_cjs/Ref/Synchronized/api.cjs +0 -196
- package/_cjs/Ref/Synchronized/api.cjs.map +0 -1
- package/_cjs/Ref/Synchronized/constructors.cjs +0 -32
- package/_cjs/Ref/Synchronized/constructors.cjs.map +0 -1
- package/_cjs/Ref/Synchronized/definition.cjs +0 -88
- package/_cjs/Ref/Synchronized/definition.cjs.map +0 -1
- package/_cjs/Ref/api/collect.cjs +0 -31
- package/_cjs/Ref/api/collect.cjs.map +0 -1
- package/_cjs/Ref/api/dimap.cjs +0 -110
- package/_cjs/Ref/api/dimap.cjs.map +0 -1
- package/_cjs/Ref/api/filter.cjs +0 -45
- package/_cjs/Ref/api/filter.cjs.map +0 -1
- package/_cjs/Ref/api/get.cjs +0 -20
- package/_cjs/Ref/api/get.cjs.map +0 -1
- package/_cjs/Ref/api/match.cjs +0 -26
- package/_cjs/Ref/api/match.cjs.map +0 -1
- package/_cjs/Ref/api/matchAll.cjs +0 -24
- package/_cjs/Ref/api/matchAll.cjs.map +0 -1
- package/_cjs/Ref/api/modify.cjs +0 -239
- package/_cjs/Ref/api/modify.cjs.map +0 -1
- package/_cjs/Ref/api/set.cjs +0 -21
- package/_cjs/Ref/api/set.cjs.map +0 -1
- package/_cjs/Ref/api.cjs +0 -158
- package/_cjs/Ref/api.cjs.map +0 -1
- package/_mjs/Hub/api.mjs +0 -384
- package/_mjs/Hub/api.mjs.map +0 -1
- package/_mjs/Queue/api/dimapIO.mjs +0 -97
- package/_mjs/Queue/api/dimapIO.mjs.map +0 -1
- package/_mjs/Queue/api/filterInputIO.mjs +0 -63
- package/_mjs/Queue/api/filterInputIO.mjs.map +0 -1
- package/_mjs/Queue/api/filterOutputIO.mjs +0 -68
- package/_mjs/Queue/api/filterOutputIO.mjs.map +0 -1
- package/_mjs/Queue/api/operations.mjs +0 -122
- package/_mjs/Queue/api/operations.mjs.map +0 -1
- package/_mjs/Queue/api/poll.mjs +0 -14
- package/_mjs/Queue/api/poll.mjs.map +0 -1
- package/_mjs/Queue/api/takeBetween.mjs +0 -43
- package/_mjs/Queue/api/takeBetween.mjs.map +0 -1
- package/_mjs/Queue/api/zipWithIO.mjs +0 -74
- package/_mjs/Queue/api/zipWithIO.mjs.map +0 -1
- package/_mjs/Queue/api.mjs +0 -9
- package/_mjs/Queue/api.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/_mjs/Ref/Derived.mjs +0 -35
- package/_mjs/Ref/Derived.mjs.map +0 -1
- package/_mjs/Ref/DerivedAll.mjs +0 -35
- package/_mjs/Ref/DerivedAll.mjs.map +0 -1
- package/_mjs/Ref/Synchronized/api.mjs +0 -154
- package/_mjs/Ref/Synchronized/api.mjs.map +0 -1
- package/_mjs/Ref/Synchronized/constructors.mjs +0 -15
- package/_mjs/Ref/Synchronized/constructors.mjs.map +0 -1
- package/_mjs/Ref/Synchronized/definition.mjs +0 -66
- package/_mjs/Ref/Synchronized/definition.mjs.map +0 -1
- package/_mjs/Ref/api/collect.mjs +0 -17
- package/_mjs/Ref/api/collect.mjs.map +0 -1
- package/_mjs/Ref/api/dimap.mjs +0 -84
- package/_mjs/Ref/api/dimap.mjs.map +0 -1
- package/_mjs/Ref/api/filter.mjs +0 -29
- package/_mjs/Ref/api/filter.mjs.map +0 -1
- package/_mjs/Ref/api/get.mjs +0 -13
- package/_mjs/Ref/api/get.mjs.map +0 -1
- package/_mjs/Ref/api/match.mjs +0 -18
- package/_mjs/Ref/api/match.mjs.map +0 -1
- package/_mjs/Ref/api/matchAll.mjs +0 -16
- package/_mjs/Ref/api/matchAll.mjs.map +0 -1
- package/_mjs/Ref/api/modify.mjs +0 -204
- package/_mjs/Ref/api/modify.mjs.map +0 -1
- package/_mjs/Ref/api/set.mjs +0 -14
- package/_mjs/Ref/api/set.mjs.map +0 -1
- package/_mjs/Ref/api.mjs +0 -34
- package/_mjs/Ref/api.mjs.map +0 -1
- package/_src/Hub/api.ts +0 -461
- package/_src/Queue/api/dimapIO.ts +0 -130
- package/_src/Queue/api/filterInputIO.ts +0 -75
- package/_src/Queue/api/filterOutputIO.ts +0 -76
- package/_src/Queue/api/operations.ts +0 -139
- package/_src/Queue/api/poll.ts +0 -14
- package/_src/Queue/api/takeBetween.ts +0 -45
- package/_src/Queue/api/zipWithIO.ts +0 -99
- package/_src/Queue/api.ts +0 -9
- package/_src/Ref/Atomic/Atomic.ts +0 -56
- package/_src/Ref/Atomic/api.ts +0 -124
- package/_src/Ref/Derived.ts +0 -71
- package/_src/Ref/DerivedAll.ts +0 -75
- package/_src/Ref/Synchronized/api.ts +0 -249
- package/_src/Ref/Synchronized/constructors.ts +0 -12
- package/_src/Ref/Synchronized/definition.ts +0 -126
- package/_src/Ref/api/collect.ts +0 -19
- package/_src/Ref/api/dimap.ts +0 -115
- package/_src/Ref/api/filter.ts +0 -35
- package/_src/Ref/api/get.ts +0 -17
- package/_src/Ref/api/match.ts +0 -24
- package/_src/Ref/api/matchAll.ts +0 -23
- package/_src/Ref/api/modify.ts +0 -237
- package/_src/Ref/api/set.ts +0 -19
- package/_src/Ref/api.ts +0 -39
package/_mjs/Sink/api.mjs
CHANGED
|
@@ -4,34 +4,31 @@ import * as tsplus_module_2 from "@fncts/base/collection/immutable/Conc/api";
|
|
|
4
4
|
import * as tsplus_module_3 from "@fncts/io/Sink/definition";
|
|
5
5
|
import * as tsplus_module_4 from "@fncts/io/Channel/api";
|
|
6
6
|
import * as tsplus_module_5 from "@fncts/io/Channel/core-api";
|
|
7
|
-
import * as tsplus_module_6 from "@fncts/io/Ref/
|
|
8
|
-
import * as tsplus_module_7 from "@fncts/io/
|
|
9
|
-
import * as tsplus_module_8 from "@fncts/io/
|
|
10
|
-
import * as tsplus_module_9 from "@fncts/io/
|
|
11
|
-
import * as tsplus_module_10 from "@fncts/io/collection/immutable/Conc/
|
|
12
|
-
import * as tsplus_module_11 from "@fncts/io/
|
|
13
|
-
import * as tsplus_module_12 from "@fncts/
|
|
14
|
-
import * as tsplus_module_13 from "@fncts/io/
|
|
15
|
-
import * as tsplus_module_14 from "@fncts/base/data/
|
|
16
|
-
import * as tsplus_module_15 from "@fncts/
|
|
17
|
-
import * as tsplus_module_16 from "@fncts/
|
|
18
|
-
import * as tsplus_module_17 from "@fncts/base/data/
|
|
19
|
-
import * as tsplus_module_18 from "@fncts/
|
|
20
|
-
import * as tsplus_module_19 from "@fncts/
|
|
21
|
-
import * as tsplus_module_20 from "@fncts/base/
|
|
22
|
-
import * as tsplus_module_21 from "@fncts/base/
|
|
23
|
-
import * as tsplus_module_22 from "@fncts/base/data/
|
|
24
|
-
import * as tsplus_module_23 from "@fncts/base/
|
|
25
|
-
import * as tsplus_module_24 from "@fncts/
|
|
26
|
-
import * as tsplus_module_25 from "@fncts/
|
|
27
|
-
import * as tsplus_module_26 from "@fncts/
|
|
28
|
-
import * as tsplus_module_27 from "@fncts/
|
|
29
|
-
import * as tsplus_module_28 from "@fncts/io/
|
|
30
|
-
import * as tsplus_module_29 from "@fncts/
|
|
31
|
-
import * as tsplus_module_30 from "@fncts/base/
|
|
32
|
-
import * as tsplus_module_31 from "@fncts/io/Clock/api";
|
|
33
|
-
import * as tsplus_module_32 from "@fncts/base/data/Duration/api";
|
|
34
|
-
import * as tsplus_module_33 from "@fncts/base/data/Exit/api";
|
|
7
|
+
import * as tsplus_module_6 from "@fncts/io/Ref/constructors";
|
|
8
|
+
import * as tsplus_module_7 from "@fncts/io/IO/api";
|
|
9
|
+
import * as tsplus_module_8 from "@fncts/io/collection/immutable/Conc/mapIO";
|
|
10
|
+
import * as tsplus_module_9 from "@fncts/io/collection/immutable/Conc/dropUntilIO";
|
|
11
|
+
import * as tsplus_module_10 from "@fncts/io/collection/immutable/Conc/dropWhileIO";
|
|
12
|
+
import * as tsplus_module_11 from "@fncts/io/IO/api/environment";
|
|
13
|
+
import * as tsplus_module_12 from "@fncts/base/data/function/api";
|
|
14
|
+
import * as tsplus_module_13 from "@fncts/io/collection/immutable/Conc/filterIO";
|
|
15
|
+
import * as tsplus_module_14 from "@fncts/base/data/Maybe/constructors";
|
|
16
|
+
import * as tsplus_module_15 from "@fncts/base/data/Either/destructors";
|
|
17
|
+
import * as tsplus_module_16 from "@fncts/io/IO/api/acquireRelease";
|
|
18
|
+
import * as tsplus_module_17 from "@fncts/base/data/Cause/api";
|
|
19
|
+
import * as tsplus_module_18 from "@fncts/base/data/Maybe/definition";
|
|
20
|
+
import * as tsplus_module_19 from "@fncts/base/data/Maybe/destructors";
|
|
21
|
+
import * as tsplus_module_20 from "@fncts/base/collection/immutable/Conc";
|
|
22
|
+
import * as tsplus_module_21 from "@fncts/base/collection/immutable/Conc/constructors";
|
|
23
|
+
import * as tsplus_module_22 from "@fncts/base/data/Either/api";
|
|
24
|
+
import * as tsplus_module_23 from "@fncts/base/data/Either/constructors";
|
|
25
|
+
import * as tsplus_module_24 from "@fncts/io/Channel/internal/MergeDecision";
|
|
26
|
+
import * as tsplus_module_25 from "@fncts/io/Channel/api/mergeWith";
|
|
27
|
+
import * as tsplus_module_26 from "@fncts/io/Hub/constructors";
|
|
28
|
+
import * as tsplus_module_27 from "@fncts/base/collection/Iterable/api";
|
|
29
|
+
import * as tsplus_module_28 from "@fncts/io/Clock/api";
|
|
30
|
+
import * as tsplus_module_29 from "@fncts/base/data/Duration/api";
|
|
31
|
+
import * as tsplus_module_30 from "@fncts/base/data/Exit/api";
|
|
35
32
|
export const collectAllWhileWith = collectAllWhileWith_1;
|
|
36
33
|
export const contramap = contramap_1;
|
|
37
34
|
export const contramapChunks = contramapChunks_1;
|
|
@@ -56,9 +53,9 @@ export const makeFoldLeft = makeFoldLeft_1;
|
|
|
56
53
|
export const makeFoldIO = makeFoldIO_1;
|
|
57
54
|
export const makeFoldWeightedDecompose = makeFoldWeightedDecompose_1;
|
|
58
55
|
export const makeFoldWeightedDecomposeIO = makeFoldWeightedDecomposeIO_1;
|
|
59
|
-
export const
|
|
60
|
-
export const
|
|
61
|
-
export const
|
|
56
|
+
export const map = map_1;
|
|
57
|
+
export const mapIO = mapIO_1;
|
|
58
|
+
export const matchSink = matchSink_1;
|
|
62
59
|
export const raceBoth = raceBoth_1;
|
|
63
60
|
export const raceWith = raceWith_1;
|
|
64
61
|
export const serviceWith = serviceWith_1;
|
|
@@ -71,84 +68,98 @@ import { AtomicReference } from "@fncts/base/internal/AtomicReference";
|
|
|
71
68
|
/**
|
|
72
69
|
* Like {@link zip}, but keeps only the result from this sink
|
|
73
70
|
*
|
|
74
|
-
* @tsplus
|
|
71
|
+
* @tsplus pipeable fncts.io.Sink apFirst
|
|
75
72
|
*/
|
|
76
73
|
|
|
77
|
-
export function apFirst(
|
|
78
|
-
return
|
|
74
|
+
export function apFirst(that, __tsplusTrace) {
|
|
75
|
+
return self => {
|
|
76
|
+
return zipWith_1(that, (z, _) => z, __tsplusTrace)(() => self);
|
|
77
|
+
};
|
|
79
78
|
}
|
|
80
79
|
/**
|
|
81
80
|
* Like {@link zipC}, but keeps only the result from this sink
|
|
82
81
|
*
|
|
83
|
-
* @tsplus
|
|
82
|
+
* @tsplus pipeable fncts.io.Sink apFirstC
|
|
84
83
|
*/
|
|
85
84
|
|
|
86
|
-
export function apFirstC(
|
|
87
|
-
return
|
|
85
|
+
export function apFirstC(that, __tsplusTrace) {
|
|
86
|
+
return self => {
|
|
87
|
+
return zipWithC_1(that, (z, _) => z, __tsplusTrace)(() => self);
|
|
88
|
+
};
|
|
88
89
|
}
|
|
89
90
|
/**
|
|
90
91
|
* Like {@link zip}, but keeps only the result from the `that` sink
|
|
91
92
|
*
|
|
92
|
-
* @tsplus
|
|
93
|
+
* @tsplus pipeable fncts.io.Sink apSecond
|
|
93
94
|
*/
|
|
94
95
|
|
|
95
|
-
export function apSecond(
|
|
96
|
-
return
|
|
96
|
+
export function apSecond(that, __tsplusTrace) {
|
|
97
|
+
return self => {
|
|
98
|
+
return zipWith_1(that, (_, z1) => z1, __tsplusTrace)(() => self);
|
|
99
|
+
};
|
|
97
100
|
}
|
|
98
101
|
/**
|
|
99
102
|
* Like {@link zipC}, but keeps only the result from the `that` sink
|
|
100
103
|
*
|
|
101
|
-
* @tsplus
|
|
104
|
+
* @tsplus pipeable fncts.io.Sink apSecondC
|
|
102
105
|
*/
|
|
103
106
|
|
|
104
|
-
export function apSecondC(
|
|
105
|
-
return
|
|
107
|
+
export function apSecondC(that, __tsplusTrace) {
|
|
108
|
+
return self => {
|
|
109
|
+
return zipWithC_1(that, (_, z1) => z1, __tsplusTrace)(() => self);
|
|
110
|
+
};
|
|
106
111
|
}
|
|
107
112
|
/**
|
|
108
113
|
* Replaces this sink's result with the provided value.
|
|
109
114
|
*
|
|
110
|
-
* @tsplus
|
|
115
|
+
* @tsplus pipeable fncts.io.Sink as
|
|
111
116
|
*/
|
|
112
117
|
|
|
113
|
-
export function as(
|
|
114
|
-
return
|
|
118
|
+
export function as(z, __tsplusTrace) {
|
|
119
|
+
return self => {
|
|
120
|
+
return map_1(() => z(), __tsplusTrace)(self);
|
|
121
|
+
};
|
|
115
122
|
}
|
|
116
123
|
/**
|
|
117
124
|
* Repeatedly runs the sink and accumulates its results into a chunk
|
|
118
125
|
*
|
|
119
|
-
* @tsplus
|
|
126
|
+
* @tsplus pipeable fncts.io.Sink collectAll
|
|
120
127
|
*/
|
|
121
128
|
|
|
122
|
-
export function collectAll(
|
|
123
|
-
return
|
|
129
|
+
export function collectAll(__tsplusTrace) {
|
|
130
|
+
return self => {
|
|
131
|
+
return collectAllWhileWith_1(() => tsplus_module_1.empty(), () => true, (s, z) => tsplus_module_2.append(z)(s), __tsplusTrace)(self);
|
|
132
|
+
};
|
|
124
133
|
}
|
|
125
134
|
/**
|
|
126
135
|
* Repeatedly runs the sink for as long as its results satisfy the predicate
|
|
127
136
|
* `p`. The sink's results will be accumulated using the stepping function
|
|
128
137
|
* `f`.
|
|
129
138
|
*
|
|
130
|
-
* @tsplus
|
|
139
|
+
* @tsplus pipeable fncts.io.Sink collectAllWhileWith
|
|
131
140
|
*/
|
|
132
141
|
|
|
133
|
-
function collectAllWhileWith_1(
|
|
134
|
-
return
|
|
135
|
-
|
|
142
|
+
function collectAllWhileWith_1(z, p, f, __tsplusTrace) {
|
|
143
|
+
return self => {
|
|
144
|
+
return new tsplus_module_3.Sink(tsplus_module_5.flatMap(([leftoversRef, upstreamDoneRef]) => {
|
|
145
|
+
const upstreamMarker = tsplus_module_4.readWith(inp => tsplus_module_5.apSecond(upstreamMarker)(tsplus_module_4.writeNow(inp)), tsplus_module_4.failNow, x => tsplus_module_4.as_(() => x)(tsplus_module_4.fromIO(() => upstreamDoneRef.set(true, __tsplusTrace))));
|
|
136
146
|
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
147
|
+
function loop(currentResult, __tsplusTrace) {
|
|
148
|
+
return tsplus_module_4.matchChannel(tsplus_module_4.failNow, ([leftovers, doneValue]) => {
|
|
149
|
+
if (p(doneValue)) {
|
|
150
|
+
return tsplus_module_5.apSecond(tsplus_module_5.flatMap(upstreamDone => {
|
|
151
|
+
const accumulatedResult = f(currentResult, doneValue);
|
|
152
|
+
if (upstreamDone) return tsplus_module_4.as_(() => accumulatedResult)(tsplus_module_4.writeNow(tsplus_module_2.flatten(leftovers)));else return loop(accumulatedResult, __tsplusTrace);
|
|
153
|
+
})(tsplus_module_4.fromIO(() => upstreamDoneRef.get)))(tsplus_module_4.fromIO(() => leftoversRef.set(tsplus_module_2.flatten(leftovers), __tsplusTrace)));
|
|
154
|
+
} else {
|
|
155
|
+
return tsplus_module_4.as_(() => currentResult)(tsplus_module_4.writeNow(tsplus_module_2.flatten(leftovers)));
|
|
156
|
+
}
|
|
157
|
+
})(tsplus_module_4.collectElements(self.channel));
|
|
158
|
+
}
|
|
149
159
|
|
|
150
|
-
|
|
151
|
-
|
|
160
|
+
return tsplus_module_4.pipeTo(loop(z(), __tsplusTrace))(tsplus_module_4.pipeTo(tsplus_module_4.bufferChunk(leftoversRef))(upstreamMarker));
|
|
161
|
+
})(tsplus_module_4.fromIO(() => tsplus_module_7.zip(tsplus_module_6.make(() => false, __tsplusTrace), __tsplusTrace)(tsplus_module_6.make(() => tsplus_module_1.empty(), __tsplusTrace)))));
|
|
162
|
+
};
|
|
152
163
|
}
|
|
153
164
|
/**
|
|
154
165
|
* Collects the leftovers from the stream when the sink succeeds and returns
|
|
@@ -159,90 +170,106 @@ function collectAllWhileWith_1(self, z, p, f, __tsplusTrace) {
|
|
|
159
170
|
|
|
160
171
|
|
|
161
172
|
export function collectLeftover(self, __tsplusTrace) {
|
|
162
|
-
return new tsplus_module_3.Sink(tsplus_module_5.
|
|
173
|
+
return new tsplus_module_3.Sink(tsplus_module_5.map(([chunks, z]) => [z, tsplus_module_2.flatten(chunks)])(tsplus_module_4.collectElements(self.channel)));
|
|
163
174
|
}
|
|
164
175
|
/**
|
|
165
176
|
* Transforms this sink's input elements.
|
|
166
177
|
*
|
|
167
|
-
* @tsplus
|
|
178
|
+
* @tsplus pipeable fncts.io.Sink contramap
|
|
168
179
|
*/
|
|
169
180
|
|
|
170
|
-
function contramap_1(
|
|
171
|
-
return
|
|
181
|
+
function contramap_1(f, __tsplusTrace) {
|
|
182
|
+
return self => {
|
|
183
|
+
return contramapChunks_1(chunk => tsplus_module_2.map(f)(chunk), __tsplusTrace)(self);
|
|
184
|
+
};
|
|
172
185
|
}
|
|
173
186
|
/**
|
|
174
187
|
* Transforms this sink's input chunks. `f` must preserve chunking-invariance
|
|
175
188
|
*
|
|
176
|
-
* @tsplus
|
|
189
|
+
* @tsplus pipeable fncts.io.Sink contramapChunks
|
|
177
190
|
*/
|
|
178
191
|
|
|
179
192
|
|
|
180
|
-
function contramapChunks_1(
|
|
181
|
-
|
|
182
|
-
|
|
193
|
+
function contramapChunks_1(f, __tsplusTrace) {
|
|
194
|
+
return self => {
|
|
195
|
+
const loop = tsplus_module_4.readWith(chunk => tsplus_module_5.apSecond(loop)(tsplus_module_4.writeNow(f(chunk))), tsplus_module_4.failNow, tsplus_module_5.succeedNow);
|
|
196
|
+
return new tsplus_module_3.Sink(tsplus_module_4.pipeTo(self.channel)(loop));
|
|
197
|
+
};
|
|
183
198
|
}
|
|
184
199
|
/**
|
|
185
200
|
* Effectfully transforms this sink's input chunks. `f` must preserve
|
|
186
201
|
* chunking-invariance
|
|
187
202
|
*
|
|
188
|
-
* @tsplus
|
|
203
|
+
* @tsplus pipeable fncts.io.Sink contramapChunksIO
|
|
189
204
|
*/
|
|
190
205
|
|
|
191
206
|
|
|
192
|
-
function contramapChunksIO_1(
|
|
193
|
-
|
|
194
|
-
|
|
207
|
+
function contramapChunksIO_1(f, __tsplusTrace) {
|
|
208
|
+
return self => {
|
|
209
|
+
const loop = tsplus_module_4.readWith(chunk => tsplus_module_5.apSecond(loop)(tsplus_module_5.flatMap(tsplus_module_4.writeNow)(tsplus_module_4.fromIO(() => f(chunk)))), tsplus_module_4.failNow, tsplus_module_5.succeedNow);
|
|
210
|
+
return new tsplus_module_3.Sink(tsplus_module_4.pipeToOrFail(self.channel)(loop));
|
|
211
|
+
};
|
|
195
212
|
}
|
|
196
213
|
/**
|
|
197
214
|
* Effectfully transforms this sink's input elements.
|
|
198
215
|
*
|
|
199
|
-
* @tsplus
|
|
216
|
+
* @tsplus pipeable fncts.io.Sink contramapIO
|
|
200
217
|
*/
|
|
201
218
|
|
|
202
219
|
|
|
203
|
-
function contramapIO_1(
|
|
204
|
-
return
|
|
220
|
+
function contramapIO_1(f, __tsplusTrace) {
|
|
221
|
+
return self => {
|
|
222
|
+
return contramapChunksIO_1(chunk => tsplus_module_8.mapIO(f, __tsplusTrace)(chunk), __tsplusTrace)(self);
|
|
223
|
+
};
|
|
205
224
|
}
|
|
206
225
|
/**
|
|
207
226
|
* Transforms both inputs and result of this sink using the provided
|
|
208
227
|
* functions.
|
|
209
228
|
*
|
|
210
|
-
* @tsplus
|
|
229
|
+
* @tsplus pipeable fncts.io.Sink dimap
|
|
211
230
|
*/
|
|
212
231
|
|
|
213
232
|
|
|
214
|
-
export function dimap(
|
|
215
|
-
return
|
|
233
|
+
export function dimap(f, g, __tsplusTrace) {
|
|
234
|
+
return self => {
|
|
235
|
+
return map_1(g, __tsplusTrace)(contramap_1(f, __tsplusTrace)(self));
|
|
236
|
+
};
|
|
216
237
|
}
|
|
217
238
|
/**
|
|
218
239
|
* Transforms both input chunks and result of this sink using the provided
|
|
219
240
|
* functions.
|
|
220
241
|
*
|
|
221
|
-
* @tsplus
|
|
242
|
+
* @tsplus pipeable fncts.io.Sink dimapChunks
|
|
222
243
|
*/
|
|
223
244
|
|
|
224
|
-
export function dimapChunks(
|
|
225
|
-
return
|
|
245
|
+
export function dimapChunks(f, g, __tsplusTrace) {
|
|
246
|
+
return self => {
|
|
247
|
+
return map_1(g, __tsplusTrace)(contramapChunks_1(f, __tsplusTrace)(self));
|
|
248
|
+
};
|
|
226
249
|
}
|
|
227
250
|
/**
|
|
228
251
|
* Effectfully transforms both input chunks and result of this sink using the
|
|
229
252
|
* provided functions. `f` and `g` must preserve chunking-invariance
|
|
230
253
|
*
|
|
231
|
-
* @tsplus
|
|
254
|
+
* @tsplus pipeable fncts.io.Sink dimapChunksIO
|
|
232
255
|
*/
|
|
233
256
|
|
|
234
|
-
export function dimapChunksIO(
|
|
235
|
-
return
|
|
257
|
+
export function dimapChunksIO(f, g, __tsplusTrace) {
|
|
258
|
+
return self => {
|
|
259
|
+
return mapIO_1(g, __tsplusTrace)(contramapChunksIO_1(f, __tsplusTrace)(self));
|
|
260
|
+
};
|
|
236
261
|
}
|
|
237
262
|
/**
|
|
238
263
|
* Effectfully transforms both inputs and result of this sink using the
|
|
239
264
|
* provided functions.
|
|
240
265
|
*
|
|
241
|
-
* @tsplus
|
|
266
|
+
* @tsplus pipeable fncts.io.Sink dimapIO
|
|
242
267
|
*/
|
|
243
268
|
|
|
244
|
-
export function dimapIO(
|
|
245
|
-
return
|
|
269
|
+
export function dimapIO(f, g, __tsplusTrace) {
|
|
270
|
+
return self => {
|
|
271
|
+
return mapIO_1(g, __tsplusTrace)(contramapIO_1(f, __tsplusTrace)(self));
|
|
272
|
+
};
|
|
246
273
|
}
|
|
247
274
|
/**
|
|
248
275
|
* Returns a lazily constructed sink that may require effects for its
|
|
@@ -271,13 +298,13 @@ export const drain = /*#__PURE__*/new tsplus_module_3.Sink(drainLoop);
|
|
|
271
298
|
|
|
272
299
|
export function makeDropUntil(p, __tsplusTrace) {
|
|
273
300
|
const loop = tsplus_module_4.readWith(inp => {
|
|
274
|
-
const leftover = tsplus_module_2.dropUntil(
|
|
301
|
+
const leftover = tsplus_module_2.dropUntil(p)(inp);
|
|
275
302
|
const more = tsplus_module_2.isEmpty(leftover);
|
|
276
303
|
|
|
277
304
|
if (more) {
|
|
278
305
|
return loop;
|
|
279
306
|
} else {
|
|
280
|
-
return tsplus_module_5.
|
|
307
|
+
return tsplus_module_5.apSecond(tsplus_module_4.id())(tsplus_module_4.writeNow(leftover));
|
|
281
308
|
}
|
|
282
309
|
}, tsplus_module_4.failNow, () => tsplus_module_4.unit);
|
|
283
310
|
return new tsplus_module_3.Sink(loop);
|
|
@@ -289,7 +316,7 @@ export function makeDropUntil(p, __tsplusTrace) {
|
|
|
289
316
|
*/
|
|
290
317
|
|
|
291
318
|
export function makeDropUntilIO(p, __tsplusTrace) {
|
|
292
|
-
const loop = tsplus_module_4.readWith(inp => tsplus_module_4.unwrap(() =>
|
|
319
|
+
const loop = tsplus_module_4.readWith(inp => tsplus_module_4.unwrap(() => tsplus_module_7.map(leftover => tsplus_module_2.isEmpty(leftover) ? loop : tsplus_module_5.apSecond(tsplus_module_4.id())(tsplus_module_4.writeNow(leftover)), __tsplusTrace)(tsplus_module_9.dropUntilIO(p, __tsplusTrace)(inp))), tsplus_module_4.failNow, () => tsplus_module_4.unit);
|
|
293
320
|
return new tsplus_module_3.Sink(loop);
|
|
294
321
|
}
|
|
295
322
|
/**
|
|
@@ -300,13 +327,13 @@ export function makeDropUntilIO(p, __tsplusTrace) {
|
|
|
300
327
|
|
|
301
328
|
export function makeDropWhile(predicate, __tsplusTrace) {
|
|
302
329
|
const loop = tsplus_module_4.readWith(inp => {
|
|
303
|
-
const leftover = tsplus_module_2.
|
|
330
|
+
const leftover = tsplus_module_2.dropWhile(predicate)(inp);
|
|
304
331
|
const more = tsplus_module_2.isEmpty(leftover);
|
|
305
332
|
|
|
306
333
|
if (more) {
|
|
307
334
|
return loop;
|
|
308
335
|
} else {
|
|
309
|
-
return tsplus_module_5.
|
|
336
|
+
return tsplus_module_5.apSecond(tsplus_module_4.id())(tsplus_module_4.writeNow(leftover));
|
|
310
337
|
}
|
|
311
338
|
}, tsplus_module_4.failNow, () => tsplus_module_4.unit);
|
|
312
339
|
return new tsplus_module_3.Sink(loop);
|
|
@@ -319,7 +346,7 @@ export function makeDropWhile(predicate, __tsplusTrace) {
|
|
|
319
346
|
*/
|
|
320
347
|
|
|
321
348
|
export function dropWhileIO(p, __tsplusTrace) {
|
|
322
|
-
const loop = tsplus_module_4.readWith(inp => tsplus_module_4.unwrap(() =>
|
|
349
|
+
const loop = tsplus_module_4.readWith(inp => tsplus_module_4.unwrap(() => tsplus_module_7.map(leftover => tsplus_module_2.isEmpty(leftover) ? loop : tsplus_module_5.apSecond(tsplus_module_4.id())(tsplus_module_4.writeNow(leftover)), __tsplusTrace)(tsplus_module_10.dropWhileIO(p, __tsplusTrace)(inp))), tsplus_module_4.failNow, () => tsplus_module_4.unit);
|
|
323
350
|
return new tsplus_module_3.Sink(loop);
|
|
324
351
|
}
|
|
325
352
|
/**
|
|
@@ -329,7 +356,7 @@ export function dropWhileIO(p, __tsplusTrace) {
|
|
|
329
356
|
*/
|
|
330
357
|
|
|
331
358
|
export function environment(__tsplusTrace) {
|
|
332
|
-
return fromIO_1(() =>
|
|
359
|
+
return fromIO_1(() => tsplus_module_11.environment(__tsplusTrace), __tsplusTrace);
|
|
333
360
|
}
|
|
334
361
|
/**
|
|
335
362
|
* Accesses the environment of the sink.
|
|
@@ -338,7 +365,7 @@ export function environment(__tsplusTrace) {
|
|
|
338
365
|
*/
|
|
339
366
|
|
|
340
367
|
export function environmentWith(f, __tsplusTrace) {
|
|
341
|
-
return fromIO_1(() =>
|
|
368
|
+
return fromIO_1(() => tsplus_module_11.environmentWith(f, __tsplusTrace), __tsplusTrace);
|
|
342
369
|
}
|
|
343
370
|
/**
|
|
344
371
|
* Accesses the environment of the sink in the context of an effect.
|
|
@@ -347,7 +374,7 @@ export function environmentWith(f, __tsplusTrace) {
|
|
|
347
374
|
*/
|
|
348
375
|
|
|
349
376
|
export function environmentWithIO(f, __tsplusTrace) {
|
|
350
|
-
return fromIO_1(() =>
|
|
377
|
+
return fromIO_1(() => tsplus_module_11.environmentWithIO(f, __tsplusTrace), __tsplusTrace);
|
|
351
378
|
}
|
|
352
379
|
/**
|
|
353
380
|
* Accesses the environment of the sink in the context of a sink.
|
|
@@ -356,7 +383,7 @@ export function environmentWithIO(f, __tsplusTrace) {
|
|
|
356
383
|
*/
|
|
357
384
|
|
|
358
385
|
export function environmentWithSink(f, __tsplusTrace) {
|
|
359
|
-
return new tsplus_module_3.Sink(tsplus_module_4.unwrap(() =>
|
|
386
|
+
return new tsplus_module_3.Sink(tsplus_module_4.unwrap(() => tsplus_module_11.environmentWith(tsplus_module_12.compose(s => s.channel)(f), __tsplusTrace)));
|
|
360
387
|
}
|
|
361
388
|
/**
|
|
362
389
|
* A sink that always fails with the specified error.
|
|
@@ -404,7 +431,7 @@ function failNow_1(e, __tsplusTrace) {
|
|
|
404
431
|
|
|
405
432
|
|
|
406
433
|
export function filterInput(self, p, __tsplusTrace) {
|
|
407
|
-
return contramapChunks_1(
|
|
434
|
+
return contramapChunks_1(chunk => tsplus_module_2.filter(p)(chunk), __tsplusTrace)(self);
|
|
408
435
|
}
|
|
409
436
|
/**
|
|
410
437
|
* Filters the sink's input with the given IO predicate
|
|
@@ -413,22 +440,24 @@ export function filterInput(self, p, __tsplusTrace) {
|
|
|
413
440
|
*/
|
|
414
441
|
|
|
415
442
|
export function filterInputIO(self, p, __tsplusTrace) {
|
|
416
|
-
return contramapChunksIO_1(
|
|
443
|
+
return contramapChunksIO_1(chunk => tsplus_module_13.filterIO(p, __tsplusTrace)(chunk), __tsplusTrace)(self);
|
|
417
444
|
}
|
|
418
445
|
/**
|
|
419
446
|
* Creates a sink that produces values until one verifies the predicate `f`.
|
|
420
447
|
*
|
|
421
|
-
* @tsplus
|
|
448
|
+
* @tsplus pipeable fncts.io.Sink findIO
|
|
422
449
|
*/
|
|
423
450
|
|
|
424
|
-
export function findIO(
|
|
425
|
-
return
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
451
|
+
export function findIO(f, __tsplusTrace) {
|
|
452
|
+
return self => {
|
|
453
|
+
return new tsplus_module_3.Sink(tsplus_module_5.flatMap(([leftoversRef, upstreamDoneRef]) => {
|
|
454
|
+
const upstreamMarker = tsplus_module_4.readWith(inp => tsplus_module_5.apSecond(upstreamMarker)(tsplus_module_4.writeNow(inp)), tsplus_module_4.failNow, x => tsplus_module_4.as_(() => x)(tsplus_module_4.fromIO(() => upstreamDoneRef.set(true, __tsplusTrace))));
|
|
455
|
+
const loop = tsplus_module_4.matchChannel(tsplus_module_4.failNow, ([leftovers, doneValue]) => tsplus_module_5.flatMap(satisfied => tsplus_module_5.apSecond(tsplus_module_5.flatMap(upstreamDone => {
|
|
456
|
+
if (satisfied) return tsplus_module_4.as_(() => tsplus_module_14.just(doneValue))(tsplus_module_4.writeNow(tsplus_module_2.flatten(leftovers)));else if (upstreamDone) return tsplus_module_4.as_(() => tsplus_module_14.nothing())(tsplus_module_4.writeNow(tsplus_module_2.flatten(leftovers)));else return loop;
|
|
457
|
+
})(tsplus_module_4.fromIO(() => upstreamDoneRef.get)))(tsplus_module_4.fromIO(() => leftoversRef.set(tsplus_module_2.flatten(leftovers), __tsplusTrace))))(tsplus_module_4.fromIO(() => f(doneValue))))(tsplus_module_4.collectElements(self.channel));
|
|
458
|
+
return tsplus_module_4.pipeTo(loop)(tsplus_module_4.pipeTo(tsplus_module_4.bufferChunk(leftoversRef))(upstreamMarker));
|
|
459
|
+
})(tsplus_module_4.fromIO(() => tsplus_module_7.zip(tsplus_module_6.make(() => false, __tsplusTrace), __tsplusTrace)(tsplus_module_6.make(() => tsplus_module_1.empty(), __tsplusTrace)))));
|
|
460
|
+
};
|
|
432
461
|
}
|
|
433
462
|
/**
|
|
434
463
|
* Runs this sink until it yields a result, then uses that result to create
|
|
@@ -437,11 +466,13 @@ export function findIO(self, f, __tsplusTrace) {
|
|
|
437
466
|
*
|
|
438
467
|
* This function essentially runs sinks in sequence.
|
|
439
468
|
*
|
|
440
|
-
* @tsplus
|
|
469
|
+
* @tsplus pipeable fncts.io.Sink flatMap
|
|
441
470
|
*/
|
|
442
471
|
|
|
443
|
-
function flatMap_1(
|
|
444
|
-
return
|
|
472
|
+
function flatMap_1(f, __tsplusTrace) {
|
|
473
|
+
return self => {
|
|
474
|
+
return matchSink_1(failNow_1, f, __tsplusTrace)(self);
|
|
475
|
+
};
|
|
445
476
|
}
|
|
446
477
|
/**
|
|
447
478
|
* Creates a sink from a {@link Channel}
|
|
@@ -461,11 +492,11 @@ export function fromChannel(channel, __tsplusTrace) {
|
|
|
461
492
|
*/
|
|
462
493
|
|
|
463
494
|
export function fromPush(push, __tsplusTrace) {
|
|
464
|
-
return new tsplus_module_3.Sink(tsplus_module_4.unwrapScoped(() =>
|
|
495
|
+
return new tsplus_module_3.Sink(tsplus_module_4.unwrapScoped(() => tsplus_module_7.map(fromPushPull, __tsplusTrace)(push)));
|
|
465
496
|
}
|
|
466
497
|
|
|
467
498
|
function fromPushPull(push, __tsplusTrace) {
|
|
468
|
-
return tsplus_module_4.readWith(inp => tsplus_module_4.
|
|
499
|
+
return tsplus_module_4.readWith(inp => tsplus_module_4.matchChannel(([r, leftovers]) => tsplus_module_15.match(e => tsplus_module_5.apSecond(tsplus_module_4.failNow(e))(tsplus_module_4.writeNow(leftovers)), z => tsplus_module_5.apSecond(tsplus_module_5.succeedNow(z))(tsplus_module_4.writeNow(leftovers)))(r), () => fromPushPull(push, __tsplusTrace))(tsplus_module_4.fromIO(() => push(tsplus_module_14.just(inp)))), tsplus_module_4.failNow, () => tsplus_module_4.matchChannel(([r, leftovers]) => tsplus_module_15.match(e => tsplus_module_5.apSecond(tsplus_module_4.failNow(e))(tsplus_module_4.writeNow(leftovers)), z => tsplus_module_5.apSecond(tsplus_module_5.succeedNow(z))(tsplus_module_4.writeNow(leftovers)))(r), () => tsplus_module_4.fromIO(() => tsplus_module_7.halt(() => new Error("empty sink"), __tsplusTrace)))(tsplus_module_4.fromIO(() => push(tsplus_module_14.nothing()))));
|
|
469
500
|
}
|
|
470
501
|
/**
|
|
471
502
|
* Create a sink which enqueues each element into the specified queue.
|
|
@@ -475,7 +506,7 @@ function fromPushPull(push, __tsplusTrace) {
|
|
|
475
506
|
|
|
476
507
|
|
|
477
508
|
function fromQueue_1(queue, __tsplusTrace) {
|
|
478
|
-
return unwrap_1(() =>
|
|
509
|
+
return unwrap_1(() => tsplus_module_7.map(queue => makeForeachChunk_1(inp => queue.offerAll(inp, __tsplusTrace), __tsplusTrace), __tsplusTrace)(tsplus_module_7.succeed(queue, __tsplusTrace)), __tsplusTrace);
|
|
479
510
|
}
|
|
480
511
|
/**
|
|
481
512
|
* Create a sink which enqueues each element into the specified queue. The
|
|
@@ -486,7 +517,7 @@ function fromQueue_1(queue, __tsplusTrace) {
|
|
|
486
517
|
|
|
487
518
|
|
|
488
519
|
function fromQueueWithShutdown_1(queue, __tsplusTrace) {
|
|
489
|
-
return unwrapScoped_1(() =>
|
|
520
|
+
return unwrapScoped_1(() => tsplus_module_7.map(queue => fromQueue_1(() => queue, __tsplusTrace), __tsplusTrace)(tsplus_module_16.acquireRelease(() => tsplus_module_7.succeed(queue, __tsplusTrace), queue => queue.shutdown, __tsplusTrace)), __tsplusTrace);
|
|
490
521
|
}
|
|
491
522
|
/**
|
|
492
523
|
* Create a sink which publishes each element to the specified hub.
|
|
@@ -525,7 +556,7 @@ function fromIO_1(b, __tsplusTrace) {
|
|
|
525
556
|
|
|
526
557
|
|
|
527
558
|
export function halt(defect, __tsplusTrace) {
|
|
528
|
-
return failCause_1(() =>
|
|
559
|
+
return failCause_1(() => tsplus_module_17.halt(defect()), __tsplusTrace);
|
|
529
560
|
}
|
|
530
561
|
/**
|
|
531
562
|
* Creates a sink halting with the specified unchecked value.
|
|
@@ -534,7 +565,7 @@ export function halt(defect, __tsplusTrace) {
|
|
|
534
565
|
*/
|
|
535
566
|
|
|
536
567
|
export function haltNow(defect, __tsplusTrace) {
|
|
537
|
-
return failCauseNow_1(
|
|
568
|
+
return failCauseNow_1(tsplus_module_17.halt(defect), __tsplusTrace);
|
|
538
569
|
}
|
|
539
570
|
/**
|
|
540
571
|
* Creates a sink containing the first value.
|
|
@@ -543,7 +574,7 @@ export function haltNow(defect, __tsplusTrace) {
|
|
|
543
574
|
*/
|
|
544
575
|
|
|
545
576
|
export function head(__tsplusTrace) {
|
|
546
|
-
return makeFold_1(() =>
|
|
577
|
+
return makeFold_1(() => tsplus_module_14.nothing(), elem => tsplus_module_18.isNothing(elem), (s, inp) => tsplus_module_19.match(() => tsplus_module_14.just(inp), () => s)(s), __tsplusTrace);
|
|
547
578
|
}
|
|
548
579
|
/**
|
|
549
580
|
* Drains the remaining elements from the stream after the sink finishes
|
|
@@ -562,7 +593,7 @@ function ignoreLeftover_1(self, __tsplusTrace) {
|
|
|
562
593
|
|
|
563
594
|
|
|
564
595
|
export function last(__tsplusTrace) {
|
|
565
|
-
return makeFoldLeft_1(() =>
|
|
596
|
+
return makeFoldLeft_1(() => tsplus_module_14.nothing(), (_, inp) => tsplus_module_14.just(inp), __tsplusTrace);
|
|
566
597
|
}
|
|
567
598
|
/**
|
|
568
599
|
* Creates a sink that does not consume any input but provides the given chunk
|
|
@@ -581,7 +612,7 @@ export function leftover(c, __tsplusTrace) {
|
|
|
581
612
|
*/
|
|
582
613
|
|
|
583
614
|
export function log(message, __tsplusTrace) {
|
|
584
|
-
return fromIO_1(() =>
|
|
615
|
+
return fromIO_1(() => tsplus_module_7.log(message, __tsplusTrace), __tsplusTrace);
|
|
585
616
|
}
|
|
586
617
|
/**
|
|
587
618
|
* A sink that collects all of its inputs into a chunk.
|
|
@@ -594,7 +625,7 @@ export function makeCollectAll(__tsplusTrace) {
|
|
|
594
625
|
}
|
|
595
626
|
|
|
596
627
|
function collectLoop(state, __tsplusTrace) {
|
|
597
|
-
return tsplus_module_4.readWithCause(inp => collectLoop(tsplus_module_2.
|
|
628
|
+
return tsplus_module_4.readWithCause(inp => collectLoop(tsplus_module_2.concat(inp)(state), __tsplusTrace), tsplus_module_5.failCauseNow, () => tsplus_module_5.endNow(state));
|
|
598
629
|
}
|
|
599
630
|
/**
|
|
600
631
|
* A sink that collects first `n` elements into a chunk. Note that the chunk
|
|
@@ -605,7 +636,7 @@ function collectLoop(state, __tsplusTrace) {
|
|
|
605
636
|
|
|
606
637
|
|
|
607
638
|
export function makeCollectAllN(n, __tsplusTrace) {
|
|
608
|
-
return flatMap_1(
|
|
639
|
+
return flatMap_1(builder => map_1(builder => builder.result(), __tsplusTrace)(makeFoldUntil_1(() => builder, n, (builder, inp) => builder.append(inp), __tsplusTrace)), __tsplusTrace)(fromIO_1(() => tsplus_module_7.succeed(() => new tsplus_module_20.ConcBuilder(), __tsplusTrace), __tsplusTrace));
|
|
609
640
|
}
|
|
610
641
|
/**
|
|
611
642
|
* A sink that executes the provided effectful function for every element fed to it.
|
|
@@ -614,7 +645,7 @@ export function makeCollectAllN(n, __tsplusTrace) {
|
|
|
614
645
|
*/
|
|
615
646
|
|
|
616
647
|
export function makeForeach(f, __tsplusTrace) {
|
|
617
|
-
return makeForeachWhile_1(inp =>
|
|
648
|
+
return makeForeachWhile_1(inp => tsplus_module_7.as(() => true, __tsplusTrace)(f(inp)), __tsplusTrace);
|
|
618
649
|
}
|
|
619
650
|
/**
|
|
620
651
|
* A sink that executes the provided effectful function for every chunk fed to
|
|
@@ -624,7 +655,7 @@ export function makeForeach(f, __tsplusTrace) {
|
|
|
624
655
|
*/
|
|
625
656
|
|
|
626
657
|
function makeForeachChunk_1(f, __tsplusTrace) {
|
|
627
|
-
const process = tsplus_module_4.readWithCause(inp => tsplus_module_5.
|
|
658
|
+
const process = tsplus_module_4.readWithCause(inp => tsplus_module_5.apSecond(process)(tsplus_module_4.fromIO(() => f(inp))), tsplus_module_5.failCauseNow, () => tsplus_module_4.unit);
|
|
628
659
|
return new tsplus_module_3.Sink(process);
|
|
629
660
|
}
|
|
630
661
|
/**
|
|
@@ -645,7 +676,7 @@ function foreachWhileLoop(f, chunk, idx, len, cont, __tsplusTrace) {
|
|
|
645
676
|
return cont;
|
|
646
677
|
}
|
|
647
678
|
|
|
648
|
-
return tsplus_module_4.
|
|
679
|
+
return tsplus_module_4.catchAll(e => tsplus_module_5.apSecond(tsplus_module_4.failNow(e))(tsplus_module_4.writeNow(tsplus_module_2.drop(idx)(chunk))))(tsplus_module_5.flatMap(b => b ? foreachWhileLoop(f, chunk, idx + 1, len, cont, __tsplusTrace) : tsplus_module_4.writeNow(tsplus_module_2.drop(idx)(chunk)))(tsplus_module_4.fromIO(() => f(tsplus_module_2.unsafeGet(idx)(chunk)))));
|
|
649
680
|
}
|
|
650
681
|
/**
|
|
651
682
|
* A sink that executes the provided effectful function for every chunk fed to
|
|
@@ -656,7 +687,7 @@ function foreachWhileLoop(f, chunk, idx, len, cont, __tsplusTrace) {
|
|
|
656
687
|
|
|
657
688
|
|
|
658
689
|
export function makeForeachChunkWhile(f, __tsplusTrace) {
|
|
659
|
-
const reader = tsplus_module_4.readWith(inp => tsplus_module_5.
|
|
690
|
+
const reader = tsplus_module_4.readWith(inp => tsplus_module_5.flatMap(cont => cont ? reader : tsplus_module_4.unit)(tsplus_module_4.fromIO(() => f(inp))), tsplus_module_4.failNow, () => tsplus_module_4.unit);
|
|
660
691
|
return new tsplus_module_3.Sink(reader);
|
|
661
692
|
}
|
|
662
693
|
/**
|
|
@@ -694,7 +725,7 @@ function foldChunkSplit(contFn, f, s, chunk, idx, len, __tsplusTrace) {
|
|
|
694
725
|
if (idx_1 === len_1) {
|
|
695
726
|
return [s_1, tsplus_module_1.empty()];
|
|
696
727
|
} else {
|
|
697
|
-
const s1 = f_1(s_1, tsplus_module_2.
|
|
728
|
+
const s1 = f_1(s_1, tsplus_module_2.unsafeGet(idx_1)(chunk_1));
|
|
698
729
|
|
|
699
730
|
if (contFn_1(s1)) {
|
|
700
731
|
contFn_2 = contFn_1;
|
|
@@ -713,7 +744,7 @@ function foldChunkSplit(contFn, f, s, chunk, idx, len, __tsplusTrace) {
|
|
|
713
744
|
__tsplusTrace_1 = __tsplusTrace_2;
|
|
714
745
|
continue;
|
|
715
746
|
} else {
|
|
716
|
-
return [s1, tsplus_module_2.
|
|
747
|
+
return [s1, tsplus_module_2.drop(idx_1 + 1)(chunk_1)];
|
|
717
748
|
}
|
|
718
749
|
}
|
|
719
750
|
}
|
|
@@ -727,7 +758,7 @@ function foldReader(s, contFn, f, __tsplusTrace) {
|
|
|
727
758
|
const [nextS, leftovers] = foldChunkSplit(contFn, f, s, inp, 0, inp.length, __tsplusTrace);
|
|
728
759
|
|
|
729
760
|
if (tsplus_module_2.isNonEmpty(leftovers)) {
|
|
730
|
-
return tsplus_module_4.as_(tsplus_module_4.writeNow(leftovers)
|
|
761
|
+
return tsplus_module_4.as_(() => nextS)(tsplus_module_4.writeNow(leftovers));
|
|
731
762
|
} else {
|
|
732
763
|
return foldReader(nextS, contFn, f, __tsplusTrace);
|
|
733
764
|
}
|
|
@@ -745,7 +776,7 @@ function foldReader(s, contFn, f, __tsplusTrace) {
|
|
|
745
776
|
|
|
746
777
|
|
|
747
778
|
function makeFoldUntil_1(z, max, f, __tsplusTrace) {
|
|
748
|
-
return unwrap_1(() =>
|
|
779
|
+
return unwrap_1(() => tsplus_module_7.map(max => map_1(([s]) => s, __tsplusTrace)(makeFold_1(() => [z(), 0], ([_, n]) => n < max, ([o, count], i) => [f(o, i), count + 1], __tsplusTrace)), __tsplusTrace)(tsplus_module_7.succeed(max, __tsplusTrace)), __tsplusTrace);
|
|
749
780
|
}
|
|
750
781
|
/**
|
|
751
782
|
* A sink that folds its input chunks with the provided function, termination
|
|
@@ -789,7 +820,7 @@ function foldChunksIOReader(s, contFn, f, __tsplusTrace) {
|
|
|
789
820
|
if (!contFn(s)) {
|
|
790
821
|
return tsplus_module_5.succeedNow(s);
|
|
791
822
|
} else {
|
|
792
|
-
return tsplus_module_4.readWith(inp => tsplus_module_5.
|
|
823
|
+
return tsplus_module_4.readWith(inp => tsplus_module_5.flatMap(s => foldChunksIOReader(s, contFn, f, __tsplusTrace))(tsplus_module_4.fromIO(() => f(s, inp))), err => tsplus_module_4.failNow(err), _ => tsplus_module_5.succeedNow(_));
|
|
793
824
|
}
|
|
794
825
|
}
|
|
795
826
|
/**
|
|
@@ -846,15 +877,15 @@ function makeFoldIO_1(z, contFn, f, __tsplusTrace) {
|
|
|
846
877
|
|
|
847
878
|
function foldChunkSplitIO(s, contFn, f, chunk, idx, len, __tsplusTrace) {
|
|
848
879
|
if (idx === len) {
|
|
849
|
-
return
|
|
880
|
+
return tsplus_module_7.succeedNow([s, tsplus_module_14.nothing()], __tsplusTrace);
|
|
850
881
|
} else {
|
|
851
|
-
return
|
|
882
|
+
return tsplus_module_7.flatMap(s1 => {
|
|
852
883
|
if (contFn(s1)) {
|
|
853
884
|
return foldChunkSplitIO(s1, contFn, f, chunk, idx + 1, len, __tsplusTrace);
|
|
854
885
|
} else {
|
|
855
|
-
return
|
|
886
|
+
return tsplus_module_7.succeedNow([s1, tsplus_module_14.just(tsplus_module_2.drop(idx + 1)(chunk))], __tsplusTrace);
|
|
856
887
|
}
|
|
857
|
-
}, __tsplusTrace);
|
|
888
|
+
}, __tsplusTrace)(f(s, tsplus_module_2.unsafeGet(idx)(chunk)));
|
|
858
889
|
}
|
|
859
890
|
}
|
|
860
891
|
|
|
@@ -862,7 +893,7 @@ function foldIOReader(s, contFn, f, __tsplusTrace) {
|
|
|
862
893
|
if (!contFn(s)) {
|
|
863
894
|
return tsplus_module_5.succeedNow(s);
|
|
864
895
|
} else {
|
|
865
|
-
return tsplus_module_4.readWith(inp => tsplus_module_5.
|
|
896
|
+
return tsplus_module_4.readWith(inp => tsplus_module_5.flatMap(([nextS, leftovers]) => tsplus_module_19.match(() => foldIOReader(nextS, contFn, f, __tsplusTrace), l => tsplus_module_4.as_(() => nextS)(tsplus_module_4.writeNow(l)))(leftovers))(tsplus_module_4.fromIO(() => foldChunkSplitIO(s, contFn, f, inp, 0, inp.length, __tsplusTrace))), err => tsplus_module_4.failNow(err), _ => tsplus_module_5.succeedNow(_));
|
|
866
897
|
}
|
|
867
898
|
}
|
|
868
899
|
/**
|
|
@@ -876,7 +907,7 @@ function foldIOReader(s, contFn, f, __tsplusTrace) {
|
|
|
876
907
|
|
|
877
908
|
|
|
878
909
|
export function makeFoldUntilIO(z, max, f, __tsplusTrace) {
|
|
879
|
-
return map_1(makeFoldIO_1(() => [z(), 0], ([_, n]) => n < max(), ([o, count], i) =>
|
|
910
|
+
return map_1(([s]) => s, __tsplusTrace)(makeFoldIO_1(() => [z(), 0], ([_, n]) => n < max(), ([o, count], i) => tsplus_module_7.map(s => [s, count + 1], __tsplusTrace)(f(o, i)), __tsplusTrace));
|
|
880
911
|
}
|
|
881
912
|
/**
|
|
882
913
|
* Creates a sink that folds elements of type `In` into a structure of type
|
|
@@ -907,7 +938,7 @@ function makeFoldWeightedDecompose_1(z, costFn, max, decompose, f, __tsplusTrace
|
|
|
907
938
|
if (idx === inp.length) {
|
|
908
939
|
return [s, cost, dirty, tsplus_module_1.empty()];
|
|
909
940
|
} else {
|
|
910
|
-
const elem = tsplus_module_2.
|
|
941
|
+
const elem = tsplus_module_2.unsafeGet(idx)(inp);
|
|
911
942
|
const total = cost + costFn(s, elem);
|
|
912
943
|
|
|
913
944
|
if (total <= max) {
|
|
@@ -916,11 +947,11 @@ function makeFoldWeightedDecompose_1(z, costFn, max, decompose, f, __tsplusTrace
|
|
|
916
947
|
const decomposed = decompose(elem);
|
|
917
948
|
|
|
918
949
|
if (decomposed.length <= 1 && !dirty) {
|
|
919
|
-
return [f(s, elem), total, true, tsplus_module_2.
|
|
950
|
+
return [f(s, elem), total, true, tsplus_module_2.drop(idx + 1)(inp)];
|
|
920
951
|
} else if (decomposed.length <= 1 && dirty) {
|
|
921
|
-
return [s, cost, dirty, tsplus_module_2.
|
|
952
|
+
return [s, cost, dirty, tsplus_module_2.drop(idx)(inp)];
|
|
922
953
|
} else {
|
|
923
|
-
return fold(tsplus_module_2.
|
|
954
|
+
return fold(tsplus_module_2.concat(tsplus_module_2.drop(idx + 1)(inp))(decomposed), s, max, dirty, cost, 0, __tsplusTrace);
|
|
924
955
|
}
|
|
925
956
|
}
|
|
926
957
|
}
|
|
@@ -931,7 +962,7 @@ function makeFoldWeightedDecompose_1(z, costFn, max, decompose, f, __tsplusTrace
|
|
|
931
962
|
const [nextS, nextCost, nextDirty, leftovers] = fold(inp, s, max, dirty, cost, 0, __tsplusTrace);
|
|
932
963
|
|
|
933
964
|
if (tsplus_module_2.isNonEmpty(leftovers)) {
|
|
934
|
-
return tsplus_module_5.
|
|
965
|
+
return tsplus_module_5.apSecond(tsplus_module_5.succeedNow(nextS))(tsplus_module_4.writeNow(leftovers));
|
|
935
966
|
} else if (cost > max) {
|
|
936
967
|
return tsplus_module_5.succeedNow(nextS);
|
|
937
968
|
} else {
|
|
@@ -963,37 +994,37 @@ function makeFoldWeightedDecomposeIO_1(z, costFn, max, decompose, f, __tsplusTra
|
|
|
963
994
|
return defer_1(() => {
|
|
964
995
|
function fold(inp, s, max, dirty, cost, idx, __tsplusTrace) {
|
|
965
996
|
if (idx === inp.length) {
|
|
966
|
-
return
|
|
997
|
+
return tsplus_module_7.succeedNow([s, cost, dirty, tsplus_module_1.empty()], __tsplusTrace);
|
|
967
998
|
} else {
|
|
968
|
-
const elem = tsplus_module_2.
|
|
969
|
-
return
|
|
999
|
+
const elem = tsplus_module_2.unsafeGet(idx)(inp);
|
|
1000
|
+
return tsplus_module_7.flatMap(total => {
|
|
970
1001
|
if (total <= max) {
|
|
971
|
-
return
|
|
1002
|
+
return tsplus_module_7.flatMap(s => fold(inp, s, max, true, total, idx + 1, __tsplusTrace), __tsplusTrace)(f(s, elem));
|
|
972
1003
|
} else {
|
|
973
|
-
return
|
|
1004
|
+
return tsplus_module_7.flatMap(decomposed => {
|
|
974
1005
|
if (decomposed.length <= 1 && !dirty) {
|
|
975
|
-
return
|
|
1006
|
+
return tsplus_module_7.map(s => [s, total, true, tsplus_module_2.drop(idx + 1)(inp)], __tsplusTrace)(f(s, elem));
|
|
976
1007
|
} else if (decomposed.length <= 1 && dirty) {
|
|
977
|
-
return
|
|
1008
|
+
return tsplus_module_7.succeedNow([s, cost, dirty, tsplus_module_2.drop(idx)(inp)], __tsplusTrace);
|
|
978
1009
|
} else {
|
|
979
|
-
return fold(tsplus_module_2.
|
|
1010
|
+
return fold(tsplus_module_2.concat(tsplus_module_2.drop(idx + 1)(inp))(decomposed), s, max, dirty, cost, 0, __tsplusTrace);
|
|
980
1011
|
}
|
|
981
|
-
}, __tsplusTrace);
|
|
1012
|
+
}, __tsplusTrace)(decompose(elem));
|
|
982
1013
|
}
|
|
983
|
-
}, __tsplusTrace);
|
|
1014
|
+
}, __tsplusTrace)(tsplus_module_7.map(_ => cost + _, __tsplusTrace)(costFn(s, elem)));
|
|
984
1015
|
}
|
|
985
1016
|
}
|
|
986
1017
|
|
|
987
1018
|
function go(s, cost, dirty, max, __tsplusTrace) {
|
|
988
|
-
return tsplus_module_4.readWith(inp => tsplus_module_5.
|
|
1019
|
+
return tsplus_module_4.readWith(inp => tsplus_module_5.flatMap(([nextS, nextCost, nextDirty, leftovers]) => {
|
|
989
1020
|
if (tsplus_module_2.isNonEmpty(leftovers)) {
|
|
990
|
-
return tsplus_module_5.
|
|
1021
|
+
return tsplus_module_5.apSecond(tsplus_module_5.succeedNow(nextS))(tsplus_module_4.writeNow(leftovers));
|
|
991
1022
|
} else if (cost > max) {
|
|
992
1023
|
return tsplus_module_5.succeedNow(nextS);
|
|
993
1024
|
} else {
|
|
994
1025
|
return go(nextS, nextCost, nextDirty, max, __tsplusTrace);
|
|
995
1026
|
}
|
|
996
|
-
}), err => tsplus_module_4.failNow(err), _ => tsplus_module_5.succeedNow(s));
|
|
1027
|
+
})(tsplus_module_4.fromIO(() => fold(inp, s, max, dirty, cost, 0, __tsplusTrace))), err => tsplus_module_4.failNow(err), _ => tsplus_module_5.succeedNow(s));
|
|
997
1028
|
}
|
|
998
1029
|
|
|
999
1030
|
return new tsplus_module_3.Sink(go(z(), 0, false, max(), __tsplusTrace));
|
|
@@ -1014,7 +1045,7 @@ function makeFoldWeightedDecomposeIO_1(z, costFn, max, decompose, f, __tsplusTra
|
|
|
1014
1045
|
|
|
1015
1046
|
|
|
1016
1047
|
export function makeFoldWeighted(z, costFn, max, f, __tsplusTrace) {
|
|
1017
|
-
return makeFoldWeightedDecompose_1(z, costFn, max,
|
|
1048
|
+
return makeFoldWeightedDecompose_1(z, costFn, max, tsplus_module_21.single, f, __tsplusTrace);
|
|
1018
1049
|
}
|
|
1019
1050
|
/**
|
|
1020
1051
|
* Creates a sink that effectfully folds elements of type `In` into a
|
|
@@ -1030,35 +1061,41 @@ export function makeFoldWeighted(z, costFn, max, f, __tsplusTrace) {
|
|
|
1030
1061
|
*/
|
|
1031
1062
|
|
|
1032
1063
|
export function makeFoldWeightedIO(z, costFn, max, f, __tsplusTrace) {
|
|
1033
|
-
return makeFoldWeightedDecomposeIO_1(z, costFn, max, inp =>
|
|
1064
|
+
return makeFoldWeightedDecomposeIO_1(z, costFn, max, inp => tsplus_module_7.succeedNow(tsplus_module_21.single(inp), __tsplusTrace), f, __tsplusTrace);
|
|
1034
1065
|
}
|
|
1035
1066
|
/**
|
|
1036
1067
|
* Transforms this sink's result.
|
|
1037
1068
|
*
|
|
1038
|
-
* @tsplus
|
|
1069
|
+
* @tsplus pipeable fncts.io.Sink map
|
|
1039
1070
|
*/
|
|
1040
1071
|
|
|
1041
|
-
function map_1(
|
|
1042
|
-
return
|
|
1072
|
+
function map_1(f, __tsplusTrace) {
|
|
1073
|
+
return self => {
|
|
1074
|
+
return new tsplus_module_3.Sink(tsplus_module_5.map(f)(self.channel));
|
|
1075
|
+
};
|
|
1043
1076
|
}
|
|
1044
1077
|
/**
|
|
1045
1078
|
* Transforms the errors emitted by this sink using `f`.
|
|
1046
1079
|
*
|
|
1047
|
-
* @tsplus
|
|
1080
|
+
* @tsplus pipeable fncts.io.Sink mapError
|
|
1048
1081
|
*/
|
|
1049
1082
|
|
|
1050
1083
|
|
|
1051
|
-
export function
|
|
1052
|
-
return
|
|
1084
|
+
export function mapError(f, __tsplusTrace) {
|
|
1085
|
+
return self => {
|
|
1086
|
+
return new tsplus_module_3.Sink(tsplus_module_4.mapError(f)(self.channel));
|
|
1087
|
+
};
|
|
1053
1088
|
}
|
|
1054
1089
|
/**
|
|
1055
1090
|
* Effectfully transforms this sink's result.
|
|
1056
1091
|
*
|
|
1057
|
-
* @tsplus
|
|
1092
|
+
* @tsplus pipeable fncts.io.Sink mapIO
|
|
1058
1093
|
*/
|
|
1059
1094
|
|
|
1060
|
-
function mapIO_1(
|
|
1061
|
-
return
|
|
1095
|
+
function mapIO_1(f, __tsplusTrace) {
|
|
1096
|
+
return self => {
|
|
1097
|
+
return new tsplus_module_3.Sink(tsplus_module_4.mapIO(f)(self.channel));
|
|
1098
|
+
};
|
|
1062
1099
|
}
|
|
1063
1100
|
/**
|
|
1064
1101
|
* Runs this sink until it yields a result, then uses that result to create
|
|
@@ -1067,79 +1104,91 @@ function mapIO_1(self, f, __tsplusTrace) {
|
|
|
1067
1104
|
*
|
|
1068
1105
|
* This function essentially runs sinks in sequence.
|
|
1069
1106
|
*
|
|
1070
|
-
* @tsplus
|
|
1107
|
+
* @tsplus pipeable fncts.io.Sink matchSink
|
|
1071
1108
|
*/
|
|
1072
1109
|
|
|
1073
1110
|
|
|
1074
|
-
function matchSink_1(
|
|
1075
|
-
return
|
|
1076
|
-
|
|
1077
|
-
|
|
1078
|
-
|
|
1079
|
-
|
|
1080
|
-
|
|
1081
|
-
|
|
1111
|
+
function matchSink_1(onFailure, onSuccess, __tsplusTrace) {
|
|
1112
|
+
return self => {
|
|
1113
|
+
return new tsplus_module_3.Sink(tsplus_module_4.matchChannel(e => onFailure(e).channel, ([leftovers, z]) => tsplus_module_4.defer(() => {
|
|
1114
|
+
const leftoversRef = new AtomicReference(tsplus_module_2.filter(c => tsplus_module_2.isNonEmpty(c))(leftovers));
|
|
1115
|
+
const refReader = tsplus_module_5.flatMap(chunk => tsplus_module_4.writeChunk(chunk))(tsplus_module_5.succeed(() => leftoversRef.getAndSet(tsplus_module_1.empty())));
|
|
1116
|
+
const passthrough = tsplus_module_4.id();
|
|
1117
|
+
const continuationSink = tsplus_module_4.pipeTo(onSuccess(z).channel)(tsplus_module_5.apSecond(passthrough)(refReader));
|
|
1118
|
+
return tsplus_module_5.flatMap(([newLeftovers, z1]) => tsplus_module_5.apSecond(tsplus_module_4.as_(() => z1)(tsplus_module_4.writeChunk(newLeftovers)))(tsplus_module_5.flatMap(tsplus_module_4.writeChunk)(tsplus_module_5.succeed(() => leftoversRef.get))))(tsplus_module_4.doneCollect(continuationSink));
|
|
1119
|
+
}))(tsplus_module_4.doneCollect(self.channel)));
|
|
1120
|
+
};
|
|
1082
1121
|
}
|
|
1083
1122
|
/**
|
|
1084
1123
|
* Switch to another sink in case of failure
|
|
1085
1124
|
*
|
|
1086
|
-
* @tsplus
|
|
1125
|
+
* @tsplus pipeable fncts.io.Sink orElse
|
|
1087
1126
|
*/
|
|
1088
1127
|
|
|
1089
1128
|
|
|
1090
|
-
export function orElse(
|
|
1091
|
-
return
|
|
1129
|
+
export function orElse(that, __tsplusTrace) {
|
|
1130
|
+
return self => {
|
|
1131
|
+
return defer_1(() => new tsplus_module_3.Sink(tsplus_module_4.orElse(that().channel)(self.channel)), __tsplusTrace);
|
|
1132
|
+
};
|
|
1092
1133
|
}
|
|
1093
1134
|
/**
|
|
1094
1135
|
* Provides the sink with its required environment, which eliminates its
|
|
1095
1136
|
* dependency on `R`.
|
|
1096
1137
|
*
|
|
1097
|
-
* @tsplus
|
|
1138
|
+
* @tsplus pipeable fncts.io.Sink provideEnvironment
|
|
1098
1139
|
*/
|
|
1099
1140
|
|
|
1100
|
-
export function provideEnvironment(
|
|
1101
|
-
return
|
|
1141
|
+
export function provideEnvironment(r, __tsplusTrace) {
|
|
1142
|
+
return self => {
|
|
1143
|
+
return new tsplus_module_3.Sink(tsplus_module_4.provideEnvironment(r)(self.channel));
|
|
1144
|
+
};
|
|
1102
1145
|
}
|
|
1103
1146
|
/**
|
|
1104
1147
|
* Runs both sinks in parallel on the input, returning the result or the
|
|
1105
1148
|
* error from the one that finishes first.
|
|
1106
1149
|
*
|
|
1107
|
-
* @tsplus
|
|
1150
|
+
* @tsplus pipeable fncts.io.Sink race
|
|
1108
1151
|
*/
|
|
1109
1152
|
|
|
1110
|
-
export function race(
|
|
1111
|
-
return
|
|
1153
|
+
export function race(that, __tsplusTrace) {
|
|
1154
|
+
return self => {
|
|
1155
|
+
return map_1(result => tsplus_module_22.merge(result), __tsplusTrace)(raceBoth_1(that)(self));
|
|
1156
|
+
};
|
|
1112
1157
|
}
|
|
1113
1158
|
/**
|
|
1114
1159
|
* Runs both sinks in parallel on the input, returning the result or the error
|
|
1115
1160
|
* from the one that finishes first.
|
|
1116
1161
|
*
|
|
1117
|
-
* @tsplus
|
|
1162
|
+
* @tsplus pipeable fncts.io.Sink raceBoth
|
|
1118
1163
|
*/
|
|
1119
1164
|
|
|
1120
|
-
function raceBoth_1(
|
|
1121
|
-
return
|
|
1165
|
+
function raceBoth_1(that, capacity = () => 16, __tsplusTrace) {
|
|
1166
|
+
return self => {
|
|
1167
|
+
return raceWith_1(that, selfDone => tsplus_module_24.done(tsplus_module_7.map(tsplus_module_23.left, __tsplusTrace)(tsplus_module_7.fromExitNow(selfDone, __tsplusTrace))), thatDone => tsplus_module_24.done(tsplus_module_7.map(tsplus_module_23.right, __tsplusTrace)(tsplus_module_7.fromExitNow(thatDone, __tsplusTrace))), capacity, __tsplusTrace)(self);
|
|
1168
|
+
};
|
|
1122
1169
|
}
|
|
1123
1170
|
/**
|
|
1124
1171
|
* Runs both sinks in parallel on the input, using the specified merge
|
|
1125
1172
|
* function as soon as one result or the other has been computed.
|
|
1126
1173
|
*
|
|
1127
|
-
* @tsplus
|
|
1174
|
+
* @tsplus pipeable fncts.io.Sink raceWith
|
|
1128
1175
|
*/
|
|
1129
1176
|
|
|
1130
1177
|
|
|
1131
|
-
function raceWith_1(
|
|
1132
|
-
|
|
1133
|
-
const
|
|
1134
|
-
|
|
1135
|
-
|
|
1136
|
-
|
|
1137
|
-
|
|
1138
|
-
|
|
1139
|
-
|
|
1140
|
-
|
|
1141
|
-
|
|
1142
|
-
|
|
1178
|
+
function raceWith_1(that, leftDone, rightDone, capacity = () => 16, __tsplusTrace) {
|
|
1179
|
+
return self => {
|
|
1180
|
+
const scoped = tsplus_module_7.defer(() => {
|
|
1181
|
+
const that0 = that();
|
|
1182
|
+
const capacity0 = capacity();
|
|
1183
|
+
return tsplus_module_7.flatMap(hub => tsplus_module_7.flatMap(c1 => tsplus_module_7.map(c2 => {
|
|
1184
|
+
const reader = tsplus_module_4.toHub(() => hub);
|
|
1185
|
+
const writer = tsplus_module_25.mergeWith(tsplus_module_4.pipeTo(that0.channel)(c2), leftDone, rightDone)(tsplus_module_4.pipeTo(self.channel)(c1));
|
|
1186
|
+
const channel = tsplus_module_25.mergeWith(writer, () => tsplus_module_24.wait(tsplus_module_7.fromExitNow), done => tsplus_module_24.done(tsplus_module_7.fromExitNow(done, __tsplusTrace)))(reader);
|
|
1187
|
+
return new tsplus_module_3.Sink(channel);
|
|
1188
|
+
}, __tsplusTrace)(tsplus_module_4.fromHubScoped(() => hub)), __tsplusTrace)(tsplus_module_4.fromHubScoped(() => hub)), __tsplusTrace)(tsplus_module_26.makeBounded(capacity(), __tsplusTrace));
|
|
1189
|
+
}, __tsplusTrace);
|
|
1190
|
+
return unwrapScoped_1(() => scoped, __tsplusTrace);
|
|
1191
|
+
};
|
|
1143
1192
|
}
|
|
1144
1193
|
/**
|
|
1145
1194
|
* Accesses the specified service in the environment of the effect.
|
|
@@ -1152,7 +1201,7 @@ export function service(
|
|
|
1152
1201
|
/** @tsplus auto */
|
|
1153
1202
|
tag) {
|
|
1154
1203
|
const tag_1 = tag;
|
|
1155
|
-
return serviceWith_1(
|
|
1204
|
+
return serviceWith_1(tsplus_module_12.identity, tag_1);
|
|
1156
1205
|
}
|
|
1157
1206
|
/**
|
|
1158
1207
|
* Accesses the specified service in the environment of the sink.
|
|
@@ -1163,7 +1212,7 @@ tag) {
|
|
|
1163
1212
|
function serviceWith_1(f,
|
|
1164
1213
|
/** @tsplus auto */
|
|
1165
1214
|
tag) {
|
|
1166
|
-
return fromIO_1(() =>
|
|
1215
|
+
return fromIO_1(() => tsplus_module_11.serviceWith(f, tag, fileName_1 + ":1520:36"), fileName_1 + ":1520:21");
|
|
1167
1216
|
}
|
|
1168
1217
|
/**
|
|
1169
1218
|
* Accesses the specified service in the environment of the sink in the
|
|
@@ -1176,7 +1225,7 @@ tag) {
|
|
|
1176
1225
|
export function serviceWithIO(f,
|
|
1177
1226
|
/** @tsplus auto */
|
|
1178
1227
|
tag) {
|
|
1179
|
-
return fromIO_1(() =>
|
|
1228
|
+
return fromIO_1(() => tsplus_module_11.serviceWithIO(f, tag, fileName_1 + ":1533:38"), fileName_1 + ":1533:21");
|
|
1180
1229
|
}
|
|
1181
1230
|
/**
|
|
1182
1231
|
* Accesses the specified service in the environment of the sink in the
|
|
@@ -1188,18 +1237,20 @@ tag) {
|
|
|
1188
1237
|
export function serviceWithSink(f,
|
|
1189
1238
|
/** @tsplus auto */
|
|
1190
1239
|
tag) {
|
|
1191
|
-
return new tsplus_module_3.Sink(tsplus_module_4.unwrap(() =>
|
|
1240
|
+
return new tsplus_module_3.Sink(tsplus_module_4.unwrap(() => tsplus_module_11.serviceWith(tsplus_module_12.compose(s => s.channel)(f), tag, fileName_1 + ":1548:21")));
|
|
1192
1241
|
}
|
|
1193
1242
|
/**
|
|
1194
1243
|
* Splits the sink on the specified predicate, returning a new sink that
|
|
1195
1244
|
* consumes elements until an element after the first satisfies the specified
|
|
1196
1245
|
* predicate.
|
|
1197
1246
|
*
|
|
1198
|
-
* @tsplus
|
|
1247
|
+
* @tsplus pipeable fncts.io.Sink splitWhere
|
|
1199
1248
|
*/
|
|
1200
1249
|
|
|
1201
|
-
export function splitWhere(
|
|
1202
|
-
return
|
|
1250
|
+
export function splitWhere(p, __tsplusTrace) {
|
|
1251
|
+
return self => {
|
|
1252
|
+
return new tsplus_module_3.Sink(tsplus_module_5.flatMap(ref => tsplus_module_5.flatMap(([leftovers, z]) => tsplus_module_5.flatMap(leftover => tsplus_module_5.apSecond(tsplus_module_5.succeedNow(z))(tsplus_module_4.writeNow(tsplus_module_2.concat(tsplus_module_2.flatten(leftovers))(leftover))))(tsplus_module_4.fromIO(() => ref.get)))(tsplus_module_4.collectElements(tsplus_module_4.pipeToOrFail(self.channel)(splitter(p, false, ref, __tsplusTrace)))))(tsplus_module_4.fromIO(() => tsplus_module_6.make(() => tsplus_module_1.empty(), __tsplusTrace))));
|
|
1253
|
+
};
|
|
1203
1254
|
}
|
|
1204
1255
|
|
|
1205
1256
|
function splitter(p, written, leftovers, __tsplusTrace) {
|
|
@@ -1207,22 +1258,22 @@ function splitter(p, written, leftovers, __tsplusTrace) {
|
|
|
1207
1258
|
if (tsplus_module_2.isEmpty(inp)) {
|
|
1208
1259
|
return splitter(p, written, leftovers, __tsplusTrace);
|
|
1209
1260
|
} else if (written) {
|
|
1210
|
-
const index =
|
|
1261
|
+
const index = tsplus_module_27.findIndex(p)(inp);
|
|
1211
1262
|
|
|
1212
1263
|
if (index === -1) {
|
|
1213
|
-
return tsplus_module_5.
|
|
1264
|
+
return tsplus_module_5.apSecond(splitter(p, true, leftovers, __tsplusTrace))(tsplus_module_4.writeNow(inp));
|
|
1214
1265
|
} else {
|
|
1215
|
-
const [left, right] = tsplus_module_2.
|
|
1216
|
-
return tsplus_module_5.
|
|
1266
|
+
const [left, right] = tsplus_module_2.splitAt(index)(inp);
|
|
1267
|
+
return tsplus_module_5.apSecond(tsplus_module_4.fromIO(() => leftovers.set(right, __tsplusTrace)))(tsplus_module_4.writeNow(left));
|
|
1217
1268
|
}
|
|
1218
1269
|
} else {
|
|
1219
|
-
const index =
|
|
1270
|
+
const index = tsplus_module_27.findIndex(p)(inp);
|
|
1220
1271
|
|
|
1221
1272
|
if (index === -1) {
|
|
1222
|
-
return tsplus_module_5.
|
|
1273
|
+
return tsplus_module_5.apSecond(splitter(p, true, leftovers, __tsplusTrace))(tsplus_module_4.writeNow(inp));
|
|
1223
1274
|
} else {
|
|
1224
|
-
const [left, right] = tsplus_module_2.
|
|
1225
|
-
return tsplus_module_5.
|
|
1275
|
+
const [left, right] = tsplus_module_2.splitAt(Math.max(index, 1))(inp);
|
|
1276
|
+
return tsplus_module_5.apSecond(tsplus_module_4.fromIO(() => leftovers.set(right, __tsplusTrace)))(tsplus_module_4.writeNow(left));
|
|
1226
1277
|
}
|
|
1227
1278
|
}
|
|
1228
1279
|
}, tsplus_module_5.failCauseNow, tsplus_module_5.succeedNow);
|
|
@@ -1250,11 +1301,13 @@ export function succeedNow(z, __tsplusTrace) {
|
|
|
1250
1301
|
* Summarize a sink by running an effect when the sink starts and again when
|
|
1251
1302
|
* it completes
|
|
1252
1303
|
*
|
|
1253
|
-
* @tsplus
|
|
1304
|
+
* @tsplus pipeable fncts.io.Sink summarized
|
|
1254
1305
|
*/
|
|
1255
1306
|
|
|
1256
|
-
function summarized_1(
|
|
1257
|
-
return
|
|
1307
|
+
function summarized_1(summary, f, __tsplusTrace) {
|
|
1308
|
+
return self => {
|
|
1309
|
+
return new tsplus_module_3.Sink(tsplus_module_4.unwrap(() => tsplus_module_7.map(summary => tsplus_module_5.flatMap(start => tsplus_module_5.flatMap(done => tsplus_module_5.map(end => tsplus_module_12.tuple(done, f(start, end)))(tsplus_module_4.fromIO(() => summary)))(self.channel))(tsplus_module_4.fromIO(() => summary)), __tsplusTrace)(tsplus_module_7.succeed(summary, __tsplusTrace))));
|
|
1310
|
+
};
|
|
1258
1311
|
}
|
|
1259
1312
|
/**
|
|
1260
1313
|
* @tsplus getter fncts.io.Sink timed
|
|
@@ -1262,7 +1315,7 @@ function summarized_1(self, summary, f, __tsplusTrace) {
|
|
|
1262
1315
|
|
|
1263
1316
|
|
|
1264
1317
|
export function timed(self, __tsplusTrace) {
|
|
1265
|
-
return summarized_1(
|
|
1318
|
+
return summarized_1(() => tsplus_module_28.currentTime, (start, end) => tsplus_module_29.fromInterval(start, end), __tsplusTrace)(self);
|
|
1266
1319
|
}
|
|
1267
1320
|
/**
|
|
1268
1321
|
* Creates a sink produced from an effect.
|
|
@@ -1271,7 +1324,7 @@ export function timed(self, __tsplusTrace) {
|
|
|
1271
1324
|
*/
|
|
1272
1325
|
|
|
1273
1326
|
function unwrap_1(io, __tsplusTrace) {
|
|
1274
|
-
return new tsplus_module_3.Sink(tsplus_module_4.unwrap(() =>
|
|
1327
|
+
return new tsplus_module_3.Sink(tsplus_module_4.unwrap(() => tsplus_module_7.map(sink => sink.channel, __tsplusTrace)(io())));
|
|
1275
1328
|
}
|
|
1276
1329
|
/**
|
|
1277
1330
|
* Creates a sink produced from a scoped effect.
|
|
@@ -1281,50 +1334,58 @@ function unwrap_1(io, __tsplusTrace) {
|
|
|
1281
1334
|
|
|
1282
1335
|
|
|
1283
1336
|
function unwrapScoped_1(scoped, __tsplusTrace) {
|
|
1284
|
-
return new tsplus_module_3.Sink(tsplus_module_4.unwrapScoped(() =>
|
|
1337
|
+
return new tsplus_module_3.Sink(tsplus_module_4.unwrapScoped(() => tsplus_module_7.map(sink => sink.channel, __tsplusTrace)(scoped())));
|
|
1285
1338
|
}
|
|
1286
1339
|
/**
|
|
1287
1340
|
* Feeds inputs to this sink until it yields a result, then switches over to
|
|
1288
1341
|
* the provided sink until it yields a result, finally combining the two
|
|
1289
1342
|
* results into a tuple.
|
|
1290
1343
|
*
|
|
1291
|
-
* @tsplus
|
|
1344
|
+
* @tsplus pipeable fncts.io.Sink zip
|
|
1292
1345
|
*/
|
|
1293
1346
|
|
|
1294
1347
|
|
|
1295
|
-
export function zip(
|
|
1296
|
-
return
|
|
1348
|
+
export function zip(that, __tsplusTrace) {
|
|
1349
|
+
return self => {
|
|
1350
|
+
return zipWith_1(that, tsplus_module_12.tuple, __tsplusTrace)(() => self);
|
|
1351
|
+
};
|
|
1297
1352
|
}
|
|
1298
1353
|
/**
|
|
1299
1354
|
* Runs both sinks in parallel on the input and combines the results in a
|
|
1300
1355
|
* tuple.
|
|
1301
1356
|
*
|
|
1302
|
-
* @tsplus
|
|
1357
|
+
* @tsplus pipeable fncts.io.Sink zipC
|
|
1303
1358
|
*/
|
|
1304
1359
|
|
|
1305
|
-
export function zipC(
|
|
1306
|
-
return
|
|
1360
|
+
export function zipC(that, __tsplusTrace) {
|
|
1361
|
+
return self => {
|
|
1362
|
+
return zipWithC_1(that, tsplus_module_12.tuple, __tsplusTrace)(() => self);
|
|
1363
|
+
};
|
|
1307
1364
|
}
|
|
1308
1365
|
/**
|
|
1309
1366
|
* Feeds inputs to this sink until it yields a result, then switches over to
|
|
1310
1367
|
* the provided sink until it yields a result, finally combining the two
|
|
1311
1368
|
* results with `f`.
|
|
1312
1369
|
*
|
|
1313
|
-
* @tsplus
|
|
1370
|
+
* @tsplus pipeable fncts.io.Sink zipWith
|
|
1314
1371
|
*/
|
|
1315
1372
|
|
|
1316
|
-
function zipWith_1(
|
|
1317
|
-
return
|
|
1373
|
+
function zipWith_1(that, f, __tsplusTrace) {
|
|
1374
|
+
return self => {
|
|
1375
|
+
return defer_1(() => flatMap_1(z => map_1(z1 => f(z, z1), __tsplusTrace)(that()), __tsplusTrace)(self()), __tsplusTrace);
|
|
1376
|
+
};
|
|
1318
1377
|
}
|
|
1319
1378
|
/**
|
|
1320
1379
|
* Runs both sinks in parallel on the input and combines the results using the
|
|
1321
1380
|
* provided function.
|
|
1322
1381
|
*
|
|
1323
|
-
* @tsplus
|
|
1382
|
+
* @tsplus pipeable fncts.io.Sink zipWithC
|
|
1324
1383
|
*/
|
|
1325
1384
|
|
|
1326
1385
|
|
|
1327
|
-
function zipWithC_1(
|
|
1328
|
-
return
|
|
1386
|
+
function zipWithC_1(that, f, __tsplusTrace) {
|
|
1387
|
+
return self => {
|
|
1388
|
+
return defer_1(() => raceWith_1(() => that(), exit => tsplus_module_30.match(err => tsplus_module_24.done(tsplus_module_7.failCauseNow(err, __tsplusTrace)), lz => tsplus_module_24.wait(exit => tsplus_module_30.match(cause => tsplus_module_7.failCauseNow(cause, __tsplusTrace), rz => tsplus_module_7.succeedNow(f(lz, rz), __tsplusTrace))(exit)))(exit), exit => tsplus_module_30.match(err => tsplus_module_24.done(tsplus_module_7.failCauseNow(err, __tsplusTrace)), rz => tsplus_module_24.wait(exit => tsplus_module_30.match(cause => tsplus_module_7.failCauseNow(cause, __tsplusTrace), lz => tsplus_module_7.succeedNow(f(lz, rz), __tsplusTrace))(exit)))(exit))(self()), __tsplusTrace);
|
|
1389
|
+
};
|
|
1329
1390
|
}
|
|
1330
1391
|
//# sourceMappingURL=api.mjs.map
|