@fncts/io 0.0.48 → 0.0.50
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 +1 -1
- package/Channel/api.d.ts +80 -80
- package/Channel/core-api.d.ts +26 -26
- package/Console/definition.d.ts +1 -0
- package/CountdownLatch.d.ts +1 -0
- package/Fiber/FiberMessage.d.ts +6 -28
- package/Fiber/FiberRuntime.d.ts +108 -77
- package/Fiber/api/interruptAs.d.ts +2 -2
- package/Fiber/definition.d.ts +2 -0
- package/FiberScope/definition.d.ts +3 -0
- package/FiberSet.d.ts +2 -1
- package/Future/State.d.ts +59 -0
- package/Future/api.d.ts +8 -3
- package/Future/constructors.d.ts +1 -1
- package/Future/definition.d.ts +1 -17
- package/Future.d.ts +1 -0
- package/Hub/api.d.ts +15 -15
- package/IO/api/array.d.ts +22 -0
- package/IO/api/awaitAllChildren.d.ts +6 -0
- package/IO/api/cachedInvalidate.d.ts +15 -0
- package/IO/api/foreachExec.d.ts +18 -0
- package/IO/api/forkDaemon.d.ts +1 -1
- package/IO/api/onTermination.d.ts +1 -2
- package/IO/api/transplant.d.ts +11 -1
- package/IO/api.d.ts +247 -225
- package/IO/definition.d.ts +12 -25
- package/IO.d.ts +3 -1
- package/Push/Bounds.d.ts +4 -0
- package/Push/FlattenStrategy.d.ts +47 -0
- package/Push/IndexedBuffer.d.ts +19 -0
- package/Push/MergeStrategy.d.ts +19 -0
- package/Push/Operator/IOLoopOperator.d.ts +61 -0
- package/Push/Operator/IOOperator.d.ts +63 -0
- package/Push/Operator/LoopOperator.d.ts +50 -0
- package/Push/Operator/SyncOperator.d.ts +41 -0
- package/Push/Operator.d.ts +4 -0
- package/Push/Producer/IOProducer.d.ts +41 -0
- package/Push/Producer/SyncProducer.d.ts +61 -0
- package/Push/Producer.d.ts +1 -0
- package/Push/Sink.d.ts +65 -0
- package/Push/api.d.ts +78 -161
- package/Push/definition.d.ts +92 -19
- package/Push/internal.d.ts +3 -0
- package/Push.d.ts +6 -0
- package/Random/definition.d.ts +1 -0
- package/Ref/Synchronized/api.d.ts +1 -1
- package/Ref/Synchronized/definition.d.ts +32 -9
- package/Ref/definition.d.ts +12 -0
- package/Scope/api.d.ts +16 -1
- package/Semaphore/Reservation.d.ts +15 -0
- package/Semaphore/constructors.d.ts +13 -0
- package/Semaphore/definition.d.ts +29 -0
- package/Semaphore.d.ts +3 -40
- package/Sink/definition.d.ts +5 -6
- package/Stream/api.d.ts +164 -164
- package/Subject/Atomic.d.ts +19 -9
- package/Subject/DeferredRef.d.ts +17 -0
- package/Subject/Hold.d.ts +19 -0
- package/Subject/RefSubject/Atomic.d.ts +41 -0
- package/Subject/RefSubject/Derived.d.ts +43 -0
- package/Subject/RefSubject/RefSubject.d.ts +27 -0
- package/Subject/definition.d.ts +14 -2
- package/Subject.d.ts +2 -0
- package/SubscriptionRef.d.ts +0 -1
- package/_cjs/Cached/api.cjs +1 -2
- package/_cjs/Cached/api.cjs.map +1 -1
- package/_cjs/Cached/internal.cjs +1 -2
- package/_cjs/Cached/internal.cjs.map +1 -1
- package/_cjs/Channel/api/interruptWhen.cjs +1 -2
- package/_cjs/Channel/api/interruptWhen.cjs.map +1 -1
- package/_cjs/Channel/api/mapOutConcurrentIO.cjs +2 -3
- package/_cjs/Channel/api/mapOutConcurrentIO.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAll.cjs +1 -2
- package/_cjs/Channel/api/mergeAll.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAllUnboundedWith.cjs +1 -2
- package/_cjs/Channel/api/mergeAllUnboundedWith.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAllWith.cjs +2 -3
- package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
- package/_cjs/Channel/api/mergeMap.cjs +1 -2
- package/_cjs/Channel/api/mergeMap.cjs.map +1 -1
- package/_cjs/Channel/api/mergeWith.cjs +1 -2
- package/_cjs/Channel/api/mergeWith.cjs.map +1 -1
- package/_cjs/Channel/api/run.cjs +1 -2
- package/_cjs/Channel/api/run.cjs.map +1 -1
- package/_cjs/Channel/api/runCollect.cjs +1 -2
- package/_cjs/Channel/api/runCollect.cjs.map +1 -1
- package/_cjs/Channel/api/runDrain.cjs +1 -2
- package/_cjs/Channel/api/runDrain.cjs.map +1 -1
- package/_cjs/Channel/api/runScoped.cjs +3 -4
- package/_cjs/Channel/api/runScoped.cjs.map +1 -1
- package/_cjs/Channel/api/toPull.cjs +2 -3
- package/_cjs/Channel/api/toPull.cjs.map +1 -1
- package/_cjs/Channel/api/zipConcurrent.cjs +1 -2
- package/_cjs/Channel/api/zipConcurrent.cjs.map +1 -1
- package/_cjs/Channel/api.cjs +206 -207
- package/_cjs/Channel/api.cjs.map +1 -1
- package/_cjs/Channel/core-api.cjs +43 -42
- package/_cjs/Channel/core-api.cjs.map +1 -1
- package/_cjs/Channel/internal/ChannelExecutor.cjs +4 -5
- package/_cjs/Channel/internal/ChannelExecutor.cjs.map +1 -1
- package/_cjs/Channel/internal/ChannelState.cjs +1 -2
- package/_cjs/Channel/internal/ChannelState.cjs.map +1 -1
- package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs +1 -2
- package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs.map +1 -1
- package/_cjs/Clock/api.cjs +1 -2
- package/_cjs/Clock/api.cjs.map +1 -1
- package/_cjs/Clock/definition.cjs +1 -2
- package/_cjs/Clock/definition.cjs.map +1 -1
- package/_cjs/Clock/live.cjs +1 -2
- package/_cjs/Clock/live.cjs.map +1 -1
- package/_cjs/Console/api.cjs +1 -2
- package/_cjs/Console/api.cjs.map +1 -1
- package/_cjs/Console/definition.cjs +2 -2
- package/_cjs/Console/definition.cjs.map +1 -1
- package/_cjs/Console/live.cjs +1 -2
- package/_cjs/Console/live.cjs.map +1 -1
- package/_cjs/CountdownLatch.cjs +3 -3
- package/_cjs/CountdownLatch.cjs.map +1 -1
- package/_cjs/Differ/api.cjs +1 -2
- package/_cjs/Differ/api.cjs.map +1 -1
- package/_cjs/Fiber/FiberMessage.cjs +3 -24
- package/_cjs/Fiber/FiberMessage.cjs.map +1 -1
- package/_cjs/Fiber/FiberRuntime.cjs +879 -636
- package/_cjs/Fiber/FiberRuntime.cjs.map +1 -1
- package/_cjs/Fiber/api/awaitAll.cjs +1 -2
- package/_cjs/Fiber/api/awaitAll.cjs.map +1 -1
- package/_cjs/Fiber/api/collectAll.cjs +2 -3
- package/_cjs/Fiber/api/collectAll.cjs.map +1 -1
- package/_cjs/Fiber/api/fromIO.cjs +1 -2
- package/_cjs/Fiber/api/fromIO.cjs.map +1 -1
- package/_cjs/Fiber/api/interrupt.cjs +2 -3
- package/_cjs/Fiber/api/interrupt.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptAll.cjs +2 -3
- package/_cjs/Fiber/api/interruptAll.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptAs.cjs +5 -10
- package/_cjs/Fiber/api/interruptAs.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptFork.cjs +2 -3
- package/_cjs/Fiber/api/interruptFork.cjs.map +1 -1
- package/_cjs/Fiber/api/join.cjs +1 -2
- package/_cjs/Fiber/api/join.cjs.map +1 -1
- package/_cjs/Fiber/api/joinAll.cjs +1 -2
- package/_cjs/Fiber/api/joinAll.cjs.map +1 -1
- package/_cjs/Fiber/api/mapFiber.cjs +1 -2
- package/_cjs/Fiber/api/mapFiber.cjs.map +1 -1
- package/_cjs/Fiber/api/mapIO.cjs +2 -3
- package/_cjs/Fiber/api/mapIO.cjs.map +1 -1
- package/_cjs/Fiber/api/zipWith.cjs +2 -3
- package/_cjs/Fiber/api/zipWith.cjs.map +1 -1
- package/_cjs/Fiber/constructors.cjs +2 -3
- package/_cjs/Fiber/constructors.cjs.map +1 -1
- package/_cjs/Fiber/definition.cjs +6 -4
- package/_cjs/Fiber/definition.cjs.map +1 -1
- package/_cjs/FiberRef/api/locallyScoped.cjs +1 -2
- package/_cjs/FiberRef/api/locallyScoped.cjs.map +1 -1
- package/_cjs/FiberRef/api/locallyScopedWith.cjs +1 -2
- package/_cjs/FiberRef/api/locallyScopedWith.cjs.map +1 -1
- package/_cjs/FiberRef/constructors.cjs +1 -2
- package/_cjs/FiberRef/constructors.cjs.map +1 -1
- package/_cjs/FiberRef/definition.cjs +1 -2
- package/_cjs/FiberRef/definition.cjs.map +1 -1
- package/_cjs/FiberRef/operations.cjs +1 -2
- package/_cjs/FiberRef/operations.cjs.map +1 -1
- package/_cjs/FiberRef/unsafe.cjs +1 -2
- package/_cjs/FiberRef/unsafe.cjs.map +1 -1
- package/_cjs/FiberRefs/Patch.cjs +1 -2
- package/_cjs/FiberRefs/Patch.cjs.map +1 -1
- package/_cjs/FiberRefs/api.cjs +1 -2
- package/_cjs/FiberRefs/api.cjs.map +1 -1
- package/_cjs/FiberRefs/definition.cjs +1 -2
- package/_cjs/FiberRefs/definition.cjs.map +1 -1
- package/_cjs/FiberScope/definition.cjs +29 -6
- package/_cjs/FiberScope/definition.cjs.map +1 -1
- package/_cjs/FiberSet.cjs +16 -15
- package/_cjs/FiberSet.cjs.map +1 -1
- package/_cjs/FiberStatus/definition.cjs +1 -2
- package/_cjs/FiberStatus/definition.cjs.map +1 -1
- package/_cjs/Future/State.cjs +108 -0
- package/_cjs/Future/State.cjs.map +1 -0
- package/_cjs/Future/api.cjs +71 -64
- package/_cjs/Future/api.cjs.map +1 -1
- package/_cjs/Future/constructors.cjs +3 -4
- package/_cjs/Future/constructors.cjs.map +1 -1
- package/_cjs/Future/definition.cjs +1 -15
- package/_cjs/Future/definition.cjs.map +1 -1
- package/_cjs/Future.cjs +11 -0
- package/_cjs/Future.cjs.map +1 -1
- package/_cjs/Hub/api.cjs +56 -57
- package/_cjs/Hub/api.cjs.map +1 -1
- package/_cjs/Hub/internal.cjs +1 -2
- package/_cjs/Hub/internal.cjs.map +1 -1
- package/_cjs/IO/api/acquireRelease.cjs +1 -2
- package/_cjs/IO/api/acquireRelease.cjs.map +1 -1
- package/_cjs/IO/api/acquireReleaseExit.cjs +1 -2
- package/_cjs/IO/api/acquireReleaseExit.cjs.map +1 -1
- package/_cjs/IO/api/acquireReleaseInterruptible.cjs +1 -2
- package/_cjs/IO/api/acquireReleaseInterruptible.cjs.map +1 -1
- package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs +1 -2
- package/_cjs/IO/api/acquireReleaseInterruptibleExit.cjs.map +1 -1
- package/_cjs/IO/api/addFinalizer.cjs +1 -2
- package/_cjs/IO/api/addFinalizer.cjs.map +1 -1
- package/_cjs/IO/api/addFinalizerExit.cjs +1 -2
- package/_cjs/IO/api/addFinalizerExit.cjs.map +1 -1
- package/_cjs/IO/api/all.cjs +1 -2
- package/_cjs/IO/api/all.cjs.map +1 -1
- package/_cjs/IO/api/array.cjs +51 -0
- package/_cjs/IO/api/array.cjs.map +1 -0
- package/_cjs/IO/api/asyncIO.cjs +1 -2
- package/_cjs/IO/api/asyncIO.cjs.map +1 -1
- package/_cjs/IO/api/asyncInterrupt.cjs +1 -2
- package/_cjs/IO/api/asyncInterrupt.cjs.map +1 -1
- package/_cjs/IO/api/awaitAllChildren.cjs +17 -0
- package/_cjs/IO/api/awaitAllChildren.cjs.map +1 -0
- package/_cjs/IO/api/blocking.cjs +1 -2
- package/_cjs/IO/api/blocking.cjs.map +1 -1
- package/_cjs/IO/api/bracket.cjs +1 -2
- package/_cjs/IO/api/bracket.cjs.map +1 -1
- package/_cjs/IO/api/bracketExit.cjs +1 -2
- package/_cjs/IO/api/bracketExit.cjs.map +1 -1
- package/_cjs/IO/api/cachedInvalidate.cjs +47 -0
- package/_cjs/IO/api/cachedInvalidate.cjs.map +1 -0
- package/_cjs/IO/api/clockWith.cjs +1 -2
- package/_cjs/IO/api/clockWith.cjs.map +1 -1
- package/_cjs/IO/api/concurrency.cjs +1 -2
- package/_cjs/IO/api/concurrency.cjs.map +1 -1
- package/_cjs/IO/api/concurrentFinalizers.cjs +1 -2
- package/_cjs/IO/api/concurrentFinalizers.cjs.map +1 -1
- package/_cjs/IO/api/consoleWith.cjs +1 -2
- package/_cjs/IO/api/consoleWith.cjs.map +1 -1
- package/_cjs/IO/api/daemonChildren.cjs +1 -2
- package/_cjs/IO/api/daemonChildren.cjs.map +1 -1
- package/_cjs/IO/api/delay.cjs +1 -2
- package/_cjs/IO/api/delay.cjs.map +1 -1
- package/_cjs/IO/api/descriptor.cjs +1 -2
- package/_cjs/IO/api/descriptor.cjs.map +1 -1
- package/_cjs/IO/api/diffFiberRefs.cjs +1 -2
- package/_cjs/IO/api/diffFiberRefs.cjs.map +1 -1
- package/_cjs/IO/api/disconnect.cjs +2 -3
- package/_cjs/IO/api/disconnect.cjs.map +1 -1
- package/_cjs/IO/api/ensuringChildren.cjs +1 -2
- package/_cjs/IO/api/ensuringChildren.cjs.map +1 -1
- package/_cjs/IO/api/environment.cjs +1 -2
- package/_cjs/IO/api/environment.cjs.map +1 -1
- package/_cjs/IO/api/foreachConcurrent.cjs +36 -30
- package/_cjs/IO/api/foreachConcurrent.cjs.map +1 -1
- package/_cjs/IO/api/foreachExec.cjs +30 -6
- package/_cjs/IO/api/foreachExec.cjs.map +1 -1
- package/_cjs/IO/api/fork.cjs +2 -3
- package/_cjs/IO/api/fork.cjs.map +1 -1
- package/_cjs/IO/api/forkAll.cjs +1 -2
- package/_cjs/IO/api/forkAll.cjs.map +1 -1
- package/_cjs/IO/api/forkDaemon.cjs +5 -6
- package/_cjs/IO/api/forkDaemon.cjs.map +1 -1
- package/_cjs/IO/api/forkIn.cjs +1 -2
- package/_cjs/IO/api/forkIn.cjs.map +1 -1
- package/_cjs/IO/api/forkScoped.cjs +1 -2
- package/_cjs/IO/api/forkScoped.cjs.map +1 -1
- package/_cjs/IO/api/fulfill.cjs +1 -2
- package/_cjs/IO/api/fulfill.cjs.map +1 -1
- package/_cjs/IO/api/interrupt.cjs +4 -5
- package/_cjs/IO/api/interrupt.cjs.map +1 -1
- package/_cjs/IO/api/memoize.cjs +1 -2
- package/_cjs/IO/api/memoize.cjs.map +1 -1
- package/_cjs/IO/api/onTermination.cjs +2 -3
- package/_cjs/IO/api/onTermination.cjs.map +1 -1
- package/_cjs/IO/api/once.cjs +1 -2
- package/_cjs/IO/api/once.cjs.map +1 -1
- package/_cjs/IO/api/patchFiberRefs.cjs +1 -2
- package/_cjs/IO/api/patchFiberRefs.cjs.map +1 -1
- package/_cjs/IO/api/provideLayer.cjs +1 -2
- package/_cjs/IO/api/provideLayer.cjs.map +1 -1
- package/_cjs/IO/api/provideScope.cjs +1 -2
- package/_cjs/IO/api/provideScope.cjs.map +1 -1
- package/_cjs/IO/api/provideSomeLayer.cjs +1 -2
- package/_cjs/IO/api/provideSomeLayer.cjs.map +1 -1
- package/_cjs/IO/api/provideSomeRuntime.cjs +1 -2
- package/_cjs/IO/api/provideSomeRuntime.cjs.map +1 -1
- package/_cjs/IO/api/race.cjs +2 -3
- package/_cjs/IO/api/race.cjs.map +1 -1
- package/_cjs/IO/api/raceFirst.cjs +1 -2
- package/_cjs/IO/api/raceFirst.cjs.map +1 -1
- package/_cjs/IO/api/raceWith.cjs +1 -2
- package/_cjs/IO/api/raceWith.cjs.map +1 -1
- package/_cjs/IO/api/randomWith.cjs +1 -2
- package/_cjs/IO/api/randomWith.cjs.map +1 -1
- package/_cjs/IO/api/repeat.cjs +1 -2
- package/_cjs/IO/api/repeat.cjs.map +1 -1
- package/_cjs/IO/api/retry.cjs +1 -2
- package/_cjs/IO/api/retry.cjs.map +1 -1
- package/_cjs/IO/api/schedule.cjs +1 -2
- package/_cjs/IO/api/schedule.cjs.map +1 -1
- package/_cjs/IO/api/scope.cjs +1 -2
- package/_cjs/IO/api/scope.cjs.map +1 -1
- package/_cjs/IO/api/scopeWith.cjs +1 -2
- package/_cjs/IO/api/scopeWith.cjs.map +1 -1
- package/_cjs/IO/api/scoped.cjs +1 -2
- package/_cjs/IO/api/scoped.cjs.map +1 -1
- package/_cjs/IO/api/sleep.cjs +1 -2
- package/_cjs/IO/api/sleep.cjs.map +1 -1
- package/_cjs/IO/api/stateful.cjs +1 -2
- package/_cjs/IO/api/stateful.cjs.map +1 -1
- package/_cjs/IO/api/supervised.cjs +1 -2
- package/_cjs/IO/api/supervised.cjs.map +1 -1
- package/_cjs/IO/api/timeout.cjs +9 -11
- package/_cjs/IO/api/timeout.cjs.map +1 -1
- package/_cjs/IO/api/transplant.cjs +22 -7
- package/_cjs/IO/api/transplant.cjs.map +1 -1
- package/_cjs/IO/api/whenFiberRef.cjs +1 -2
- package/_cjs/IO/api/whenFiberRef.cjs.map +1 -1
- package/_cjs/IO/api/whenRef.cjs +1 -2
- package/_cjs/IO/api/whenRef.cjs.map +1 -1
- package/_cjs/IO/api/withChildren.cjs +1 -2
- package/_cjs/IO/api/withChildren.cjs.map +1 -1
- package/_cjs/IO/api/withEarlyRelease.cjs +1 -2
- package/_cjs/IO/api/withEarlyRelease.cjs.map +1 -1
- package/_cjs/IO/api/withFinalizer.cjs +1 -2
- package/_cjs/IO/api/withFinalizer.cjs.map +1 -1
- package/_cjs/IO/api/withFinalizerExit.cjs +1 -2
- package/_cjs/IO/api/withFinalizerExit.cjs.map +1 -1
- package/_cjs/IO/api/zipConcurrent.cjs +5 -6
- package/_cjs/IO/api/zipConcurrent.cjs.map +1 -1
- package/_cjs/IO/api.cjs +522 -473
- package/_cjs/IO/api.cjs.map +1 -1
- package/_cjs/IO/definition.cjs +2 -3
- package/_cjs/IO/definition.cjs.map +1 -1
- package/_cjs/IO/runtime.cjs +9 -10
- package/_cjs/IO/runtime.cjs.map +1 -1
- package/_cjs/IO.cjs +33 -11
- package/_cjs/IO.cjs.map +1 -1
- package/_cjs/IOEnv/definition.cjs +1 -2
- package/_cjs/IOEnv/definition.cjs.map +1 -1
- package/_cjs/IOEnv/live.cjs +1 -2
- package/_cjs/IOEnv/live.cjs.map +1 -1
- package/_cjs/IOEnv/services.cjs +1 -2
- package/_cjs/IOEnv/services.cjs.map +1 -1
- package/_cjs/Layer/MemoMap.cjs +1 -2
- package/_cjs/Layer/MemoMap.cjs.map +1 -1
- package/_cjs/Layer/api.cjs +1 -2
- package/_cjs/Layer/api.cjs.map +1 -1
- package/_cjs/Logger/api.cjs +1 -2
- package/_cjs/Logger/api.cjs.map +1 -1
- package/_cjs/Logger/constructors.cjs +1 -2
- package/_cjs/Logger/constructors.cjs.map +1 -1
- package/_cjs/MVar/api.cjs +1 -2
- package/_cjs/MVar/api.cjs.map +1 -1
- package/_cjs/Push/Bounds.cjs +2 -0
- package/_cjs/Push/Bounds.cjs.map +1 -0
- package/_cjs/Push/FlattenStrategy.cjs +95 -0
- package/_cjs/Push/FlattenStrategy.cjs.map +1 -0
- package/_cjs/Push/IndexedBuffer.cjs +70 -0
- package/_cjs/Push/IndexedBuffer.cjs.map +1 -0
- package/_cjs/Push/MergeStrategy.cjs +45 -0
- package/_cjs/Push/MergeStrategy.cjs.map +1 -0
- package/_cjs/Push/Operator/IOLoopOperator.cjs +225 -0
- package/_cjs/Push/Operator/IOLoopOperator.cjs.map +1 -0
- package/_cjs/Push/Operator/IOOperator.cjs +104 -0
- package/_cjs/Push/Operator/IOOperator.cjs.map +1 -0
- package/_cjs/Push/Operator/LoopOperator.cjs +165 -0
- package/_cjs/Push/Operator/LoopOperator.cjs.map +1 -0
- package/_cjs/Push/Operator/SyncOperator.cjs +78 -0
- package/_cjs/Push/Operator/SyncOperator.cjs.map +1 -0
- package/_cjs/Push/Operator.cjs +2 -0
- package/_cjs/Push/Operator.cjs.map +1 -0
- package/_cjs/Push/Producer/IOProducer.cjs +67 -0
- package/_cjs/Push/Producer/IOProducer.cjs.map +1 -0
- package/_cjs/Push/Producer/SyncProducer.cjs +107 -0
- package/_cjs/Push/Producer/SyncProducer.cjs.map +1 -0
- package/_cjs/Push/Producer.cjs +2 -0
- package/_cjs/Push/Producer.cjs.map +1 -0
- package/_cjs/Push/Sink.cjs +219 -0
- package/_cjs/Push/Sink.cjs.map +1 -0
- package/_cjs/Push/api.cjs +340 -385
- package/_cjs/Push/api.cjs.map +1 -1
- package/_cjs/Push/definition.cjs +79 -22
- package/_cjs/Push/definition.cjs.map +1 -1
- package/_cjs/Push/internal.cjs +32 -28
- package/_cjs/Push/internal.cjs.map +1 -1
- package/_cjs/Push.cjs +66 -0
- package/_cjs/Push.cjs.map +1 -1
- package/_cjs/Queue/api/dimapIO.cjs +1 -2
- package/_cjs/Queue/api/dimapIO.cjs.map +1 -1
- package/_cjs/Queue/api/filterInputIO.cjs +1 -2
- package/_cjs/Queue/api/filterInputIO.cjs.map +1 -1
- package/_cjs/Queue/api/filterOutputIO.cjs +1 -2
- package/_cjs/Queue/api/filterOutputIO.cjs.map +1 -1
- package/_cjs/Queue/api/poll.cjs +1 -2
- package/_cjs/Queue/api/poll.cjs.map +1 -1
- package/_cjs/Queue/api/takeBetween.cjs +1 -2
- package/_cjs/Queue/api/takeBetween.cjs.map +1 -1
- package/_cjs/Queue/api/takeN.cjs +1 -2
- package/_cjs/Queue/api/takeN.cjs.map +1 -1
- package/_cjs/Queue/api/zipWithIO.cjs +1 -2
- package/_cjs/Queue/api/zipWithIO.cjs.map +1 -1
- package/_cjs/Queue/constructors.cjs +1 -2
- package/_cjs/Queue/constructors.cjs.map +1 -1
- package/_cjs/Queue/internal.cjs +1 -2
- package/_cjs/Queue/internal.cjs.map +1 -1
- package/_cjs/Queue/strategy.cjs +1 -2
- package/_cjs/Queue/strategy.cjs.map +1 -1
- package/_cjs/Random/api.cjs +1 -2
- package/_cjs/Random/api.cjs.map +1 -1
- package/_cjs/Random/definition.cjs +2 -2
- package/_cjs/Random/definition.cjs.map +1 -1
- package/_cjs/Random/live.cjs +1 -2
- package/_cjs/Random/live.cjs.map +1 -1
- package/_cjs/Ref/Atomic.cjs +1 -2
- package/_cjs/Ref/Atomic.cjs.map +1 -1
- package/_cjs/Ref/Derived.cjs +1 -2
- package/_cjs/Ref/Derived.cjs.map +1 -1
- package/_cjs/Ref/DerivedAll.cjs +1 -2
- package/_cjs/Ref/DerivedAll.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/api.cjs +2 -3
- package/_cjs/Ref/Synchronized/api.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/constructors.cjs +2 -3
- package/_cjs/Ref/Synchronized/constructors.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/definition.cjs +13 -14
- package/_cjs/Ref/Synchronized/definition.cjs.map +1 -1
- package/_cjs/Ref/api/collect.cjs +1 -2
- package/_cjs/Ref/api/collect.cjs.map +1 -1
- package/_cjs/Ref/api/dimap.cjs +1 -2
- package/_cjs/Ref/api/dimap.cjs.map +1 -1
- package/_cjs/Ref/api/filter.cjs +1 -2
- package/_cjs/Ref/api/filter.cjs.map +1 -1
- package/_cjs/Ref/api/modify.cjs +1 -2
- package/_cjs/Ref/api/modify.cjs.map +1 -1
- package/_cjs/Ref/api.cjs +1 -2
- package/_cjs/Ref/api.cjs.map +1 -1
- package/_cjs/Ref/constructors.cjs +1 -2
- package/_cjs/Ref/constructors.cjs.map +1 -1
- package/_cjs/Ref/definition.cjs.map +1 -1
- package/_cjs/Reloadable/api.cjs +1 -2
- package/_cjs/Reloadable/api.cjs.map +1 -1
- package/_cjs/Reloadable/constructors.cjs +1 -2
- package/_cjs/Reloadable/constructors.cjs.map +1 -1
- package/_cjs/Reloadable/definition.cjs +1 -2
- package/_cjs/Reloadable/definition.cjs.map +1 -1
- package/_cjs/RuntimeFlags/Patch.cjs +1 -2
- package/_cjs/RuntimeFlags/Patch.cjs.map +1 -1
- package/_cjs/RuntimeFlags/RuntimeFlags.cjs +1 -2
- package/_cjs/RuntimeFlags/RuntimeFlags.cjs.map +1 -1
- package/_cjs/STM/api/atomically.cjs +1 -2
- package/_cjs/STM/api/atomically.cjs.map +1 -1
- package/_cjs/STM/api/core-api.cjs +1 -2
- package/_cjs/STM/api/core-api.cjs.map +1 -1
- package/_cjs/STM/api.cjs +1 -2
- package/_cjs/STM/api.cjs.map +1 -1
- package/_cjs/STM/definition.cjs +2 -3
- package/_cjs/STM/definition.cjs.map +1 -1
- package/_cjs/STM/driver.cjs +1 -2
- package/_cjs/STM/driver.cjs.map +1 -1
- package/_cjs/STM/internal/CommitState.cjs +1 -2
- package/_cjs/STM/internal/CommitState.cjs.map +1 -1
- package/_cjs/STM/internal/Journal.cjs +1 -2
- package/_cjs/STM/internal/Journal.cjs.map +1 -1
- package/_cjs/Schedule/Decision.cjs +1 -2
- package/_cjs/Schedule/Decision.cjs.map +1 -1
- package/_cjs/Schedule/api/driver.cjs +1 -2
- package/_cjs/Schedule/api/driver.cjs.map +1 -1
- package/_cjs/Schedule/api.cjs +1 -2
- package/_cjs/Schedule/api.cjs.map +1 -1
- package/_cjs/Scope/Finalizer/definition.cjs +1 -2
- package/_cjs/Scope/Finalizer/definition.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs +1 -2
- package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/api.cjs +1 -2
- package/_cjs/Scope/ReleaseMap/api.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/constructors.cjs +1 -2
- package/_cjs/Scope/ReleaseMap/constructors.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/definition.cjs +1 -2
- package/_cjs/Scope/ReleaseMap/definition.cjs.map +1 -1
- package/_cjs/Scope/api.cjs +29 -9
- package/_cjs/Scope/api.cjs.map +1 -1
- package/_cjs/Scope/definition.cjs +1 -2
- package/_cjs/Scope/definition.cjs.map +1 -1
- package/_cjs/ScopedRef/api.cjs +2 -3
- package/_cjs/ScopedRef/api.cjs.map +1 -1
- package/_cjs/Semaphore/Reservation.cjs +24 -0
- package/_cjs/Semaphore/Reservation.cjs.map +1 -0
- package/_cjs/Semaphore/constructors.cjs +25 -0
- package/_cjs/Semaphore/constructors.cjs.map +1 -0
- package/_cjs/Semaphore/definition.cjs +149 -0
- package/_cjs/Semaphore/definition.cjs.map +1 -0
- package/_cjs/Semaphore.cjs +31 -138
- package/_cjs/Semaphore.cjs.map +1 -1
- package/_cjs/Sink/api.cjs +1 -2
- package/_cjs/Sink/api.cjs.map +1 -1
- package/_cjs/Sink/definition.cjs +2 -3
- package/_cjs/Sink/definition.cjs.map +1 -1
- package/_cjs/State/api.cjs +1 -2
- package/_cjs/State/api.cjs.map +1 -1
- package/_cjs/Stream/api/zipAllWith.cjs +1 -2
- package/_cjs/Stream/api/zipAllWith.cjs.map +1 -1
- package/_cjs/Stream/api/zipWith.cjs +1 -2
- package/_cjs/Stream/api/zipWith.cjs.map +1 -1
- package/_cjs/Stream/api/zipWithChunks.cjs +1 -2
- package/_cjs/Stream/api/zipWithChunks.cjs.map +1 -1
- package/_cjs/Stream/api.cjs +702 -703
- package/_cjs/Stream/api.cjs.map +1 -1
- package/_cjs/Stream/definition.cjs.map +1 -1
- package/_cjs/Stream/internal/Handoff.cjs +1 -2
- package/_cjs/Stream/internal/Handoff.cjs.map +1 -1
- package/_cjs/Stream/internal/Pull.cjs +1 -2
- package/_cjs/Stream/internal/Pull.cjs.map +1 -1
- package/_cjs/Stream/internal/Take.cjs +1 -2
- package/_cjs/Stream/internal/Take.cjs.map +1 -1
- package/_cjs/Stream/internal/util.cjs +1 -2
- package/_cjs/Stream/internal/util.cjs.map +1 -1
- package/_cjs/Subject/Atomic.cjs +46 -12
- package/_cjs/Subject/Atomic.cjs.map +1 -1
- package/_cjs/Subject/DeferredRef.cjs +53 -0
- package/_cjs/Subject/DeferredRef.cjs.map +1 -0
- package/_cjs/Subject/Hold.cjs +41 -0
- package/_cjs/Subject/Hold.cjs.map +1 -0
- package/_cjs/Subject/RefSubject/Atomic.cjs +130 -0
- package/_cjs/Subject/RefSubject/Atomic.cjs.map +1 -0
- package/_cjs/Subject/RefSubject/Derived.cjs +98 -0
- package/_cjs/Subject/RefSubject/Derived.cjs.map +1 -0
- package/_cjs/Subject/RefSubject/RefSubject.cjs +19 -0
- package/_cjs/Subject/RefSubject/RefSubject.cjs.map +1 -0
- package/_cjs/Subject/api.cjs +1 -2
- package/_cjs/Subject/api.cjs.map +1 -1
- package/_cjs/Subject/definition.cjs +16 -1
- package/_cjs/Subject/definition.cjs.map +1 -1
- package/_cjs/Subject.cjs +22 -0
- package/_cjs/Subject.cjs.map +1 -1
- package/_cjs/SubscriptionRef.cjs +2 -4
- package/_cjs/SubscriptionRef.cjs.map +1 -1
- package/_cjs/Supervisor/api.cjs +1 -2
- package/_cjs/Supervisor/api.cjs.map +1 -1
- package/_cjs/Supervisor/constructors.cjs +1 -2
- package/_cjs/Supervisor/constructors.cjs.map +1 -1
- package/_cjs/Supervisor/definition.cjs +1 -2
- package/_cjs/Supervisor/definition.cjs.map +1 -1
- package/_cjs/SupervisorPatch.cjs +1 -2
- package/_cjs/SupervisorPatch.cjs.map +1 -1
- package/_cjs/TExit/definition.cjs +1 -2
- package/_cjs/TExit/definition.cjs.map +1 -1
- package/_cjs/TFuture/api.cjs +1 -2
- package/_cjs/TFuture/api.cjs.map +1 -1
- package/_cjs/TFuture/constructors.cjs +1 -2
- package/_cjs/TFuture/constructors.cjs.map +1 -1
- package/_cjs/TFuture/definition.cjs +1 -2
- package/_cjs/TFuture/definition.cjs.map +1 -1
- package/_cjs/TReentrantLock/api.cjs +1 -2
- package/_cjs/TReentrantLock/api.cjs.map +1 -1
- package/_cjs/TReentrantLock/definition.cjs +1 -2
- package/_cjs/TReentrantLock/definition.cjs.map +1 -1
- package/_cjs/TRef/api.cjs +1 -2
- package/_cjs/TRef/api.cjs.map +1 -1
- package/_cjs/TRef/constructors.cjs +1 -2
- package/_cjs/TRef/constructors.cjs.map +1 -1
- package/_cjs/TRef/definition.cjs +1 -2
- package/_cjs/TRef/definition.cjs.map +1 -1
- package/_cjs/TSemaphore/api.cjs +1 -2
- package/_cjs/TSemaphore/api.cjs.map +1 -1
- package/_cjs/TSemaphore/constructors.cjs +1 -2
- package/_cjs/TSemaphore/constructors.cjs.map +1 -1
- package/_cjs/TSemaphore/definition.cjs +1 -2
- package/_cjs/TSemaphore/definition.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +1 -2
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +1 -2
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/filterIO.cjs +1 -2
- package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/findIO.cjs +1 -2
- package/_cjs/collection/immutable/Conc/findIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/mapIO.cjs +1 -2
- package/_cjs/collection/immutable/Conc/mapIO.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/takeWhileIO.cjs +1 -2
- package/_cjs/collection/immutable/Conc/takeWhileIO.cjs.map +1 -1
- package/_cjs/data/Exit/foreachIO.cjs +1 -2
- package/_cjs/data/Exit/foreachIO.cjs.map +1 -1
- package/_cjs/internal/HashedPair.cjs +1 -2
- package/_cjs/internal/HashedPair.cjs.map +1 -1
- package/_cjs/internal/Hub.cjs +1 -2
- package/_cjs/internal/Hub.cjs.map +1 -1
- package/_cjs/internal/MutableQueue.cjs +1 -2
- package/_cjs/internal/MutableQueue.cjs.map +1 -1
- package/_cjs/internal/Scheduler.cjs +1 -2
- package/_cjs/internal/Scheduler.cjs.map +1 -1
- package/_cjs/internal/StackTraceBuilder.cjs +1 -2
- package/_cjs/internal/StackTraceBuilder.cjs.map +1 -1
- package/_mjs/Cached/api.mjs.map +1 -1
- package/_mjs/Channel/api/mapOutConcurrentIO.mjs +1 -1
- package/_mjs/Channel/api/mergeAllWith.mjs +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 +1 -1
- package/_mjs/Channel/api/toPull.mjs.map +1 -1
- package/_mjs/Channel/api.mjs +205 -205
- package/_mjs/Channel/api.mjs.map +1 -1
- package/_mjs/Channel/core-api.mjs +43 -42
- package/_mjs/Channel/core-api.mjs.map +1 -1
- package/_mjs/Channel/internal/ChannelExecutor.mjs +3 -3
- package/_mjs/Channel/internal/ChannelExecutor.mjs.map +1 -1
- package/_mjs/Console/definition.mjs +1 -0
- package/_mjs/Console/definition.mjs.map +1 -1
- package/_mjs/CountdownLatch.mjs +2 -1
- package/_mjs/CountdownLatch.mjs.map +1 -1
- package/_mjs/Fiber/FiberMessage.mjs +2 -20
- package/_mjs/Fiber/FiberMessage.mjs.map +1 -1
- package/_mjs/Fiber/FiberRuntime.mjs +877 -633
- package/_mjs/Fiber/FiberRuntime.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/interrupt.mjs +1 -1
- package/_mjs/Fiber/api/interrupt.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptAll.mjs +1 -1
- package/_mjs/Fiber/api/interruptAll.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptAs.mjs +4 -7
- package/_mjs/Fiber/api/interruptAs.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptFork.mjs +1 -1
- package/_mjs/Fiber/api/interruptFork.mjs.map +1 -1
- package/_mjs/Fiber/api/mapIO.mjs +1 -1
- package/_mjs/Fiber/api/mapIO.mjs.map +1 -1
- package/_mjs/Fiber/api/zipWith.mjs +1 -1
- package/_mjs/Fiber/api/zipWith.mjs.map +1 -1
- package/_mjs/Fiber/constructors.mjs +1 -1
- package/_mjs/Fiber/constructors.mjs.map +1 -1
- package/_mjs/Fiber/definition.mjs +5 -2
- package/_mjs/Fiber/definition.mjs.map +1 -1
- package/_mjs/FiberScope/definition.mjs +28 -4
- package/_mjs/FiberScope/definition.mjs.map +1 -1
- package/_mjs/FiberSet.mjs +14 -12
- package/_mjs/FiberSet.mjs.map +1 -1
- package/_mjs/Future/State.mjs +96 -0
- package/_mjs/Future/State.mjs.map +1 -0
- package/_mjs/Future/api.mjs +67 -61
- package/_mjs/Future/api.mjs.map +1 -1
- package/_mjs/Future/constructors.mjs +3 -3
- package/_mjs/Future/constructors.mjs.map +1 -1
- package/_mjs/Future/definition.mjs +0 -12
- package/_mjs/Future/definition.mjs.map +1 -1
- package/_mjs/Future.mjs +1 -0
- package/_mjs/Future.mjs.map +1 -1
- package/_mjs/Hub/api.mjs +55 -55
- package/_mjs/Hub/api.mjs.map +1 -1
- package/_mjs/IO/api/array.mjs +42 -0
- package/_mjs/IO/api/array.mjs.map +1 -0
- package/_mjs/IO/api/asyncInterrupt.mjs.map +1 -1
- package/_mjs/IO/api/awaitAllChildren.mjs +10 -0
- package/_mjs/IO/api/awaitAllChildren.mjs.map +1 -0
- package/_mjs/IO/api/cachedInvalidate.mjs +39 -0
- package/_mjs/IO/api/cachedInvalidate.mjs.map +1 -0
- package/_mjs/IO/api/disconnect.mjs +1 -1
- package/_mjs/IO/api/disconnect.mjs.map +1 -1
- package/_mjs/IO/api/foreachConcurrent.mjs +35 -28
- package/_mjs/IO/api/foreachConcurrent.mjs.map +1 -1
- package/_mjs/IO/api/foreachExec.mjs +27 -4
- package/_mjs/IO/api/foreachExec.mjs.map +1 -1
- package/_mjs/IO/api/fork.mjs +1 -1
- package/_mjs/IO/api/fork.mjs.map +1 -1
- package/_mjs/IO/api/forkDaemon.mjs +4 -4
- package/_mjs/IO/api/forkDaemon.mjs.map +1 -1
- package/_mjs/IO/api/interrupt.mjs +3 -3
- package/_mjs/IO/api/onTermination.mjs +1 -1
- package/_mjs/IO/api/onTermination.mjs.map +1 -1
- package/_mjs/IO/api/race.mjs +1 -1
- package/_mjs/IO/api/race.mjs.map +1 -1
- package/_mjs/IO/api/timeout.mjs +8 -9
- package/_mjs/IO/api/timeout.mjs.map +1 -1
- package/_mjs/IO/api/transplant.mjs +19 -5
- package/_mjs/IO/api/transplant.mjs.map +1 -1
- package/_mjs/IO/api/zipConcurrent.mjs +4 -4
- package/_mjs/IO/api/zipConcurrent.mjs.map +1 -1
- package/_mjs/IO/api.mjs +515 -468
- package/_mjs/IO/api.mjs.map +1 -1
- package/_mjs/IO/definition.mjs +1 -1
- package/_mjs/IO/definition.mjs.map +1 -1
- package/_mjs/IO/runtime.mjs +8 -8
- package/_mjs/IO/runtime.mjs.map +1 -1
- package/_mjs/IO.mjs +3 -1
- package/_mjs/IO.mjs.map +1 -1
- package/_mjs/IOEnv/definition.mjs.map +1 -1
- package/_mjs/Push/Bounds.mjs +2 -0
- package/_mjs/Push/Bounds.mjs.map +1 -0
- package/_mjs/Push/FlattenStrategy.mjs +86 -0
- package/_mjs/Push/FlattenStrategy.mjs.map +1 -0
- package/_mjs/Push/IndexedBuffer.mjs +61 -0
- package/_mjs/Push/IndexedBuffer.mjs.map +1 -0
- package/_mjs/Push/MergeStrategy.mjs +34 -0
- package/_mjs/Push/MergeStrategy.mjs.map +1 -0
- package/_mjs/Push/Operator/IOLoopOperator.mjs +208 -0
- package/_mjs/Push/Operator/IOLoopOperator.mjs.map +1 -0
- package/_mjs/Push/Operator/IOOperator.mjs +91 -0
- package/_mjs/Push/Operator/IOOperator.mjs.map +1 -0
- package/_mjs/Push/Operator/LoopOperator.mjs +151 -0
- package/_mjs/Push/Operator/LoopOperator.mjs.map +1 -0
- package/_mjs/Push/Operator/SyncOperator.mjs +67 -0
- package/_mjs/Push/Operator/SyncOperator.mjs.map +1 -0
- package/_mjs/Push/Operator.mjs +2 -0
- package/_mjs/Push/Operator.mjs.map +1 -0
- package/_mjs/Push/Producer/IOProducer.mjs +55 -0
- package/_mjs/Push/Producer/IOProducer.mjs.map +1 -0
- package/_mjs/Push/Producer/SyncProducer.mjs +90 -0
- package/_mjs/Push/Producer/SyncProducer.mjs.map +1 -0
- package/_mjs/Push/Producer.mjs +2 -0
- package/_mjs/Push/Producer.mjs.map +1 -0
- package/_mjs/Push/Sink.mjs +206 -0
- package/_mjs/Push/Sink.mjs.map +1 -0
- package/_mjs/Push/api.mjs +311 -344
- package/_mjs/Push/api.mjs.map +1 -1
- package/_mjs/Push/definition.mjs +73 -18
- package/_mjs/Push/definition.mjs.map +1 -1
- package/_mjs/Push/internal.mjs +30 -26
- package/_mjs/Push/internal.mjs.map +1 -1
- package/_mjs/Push.mjs +7 -1
- package/_mjs/Push.mjs.map +1 -1
- package/_mjs/Random/definition.mjs +1 -0
- package/_mjs/Random/definition.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/api.mjs +1 -1
- package/_mjs/Ref/Synchronized/api.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/constructors.mjs +1 -1
- package/_mjs/Ref/Synchronized/definition.mjs +12 -12
- package/_mjs/Ref/Synchronized/definition.mjs.map +1 -1
- package/_mjs/Ref/definition.mjs.map +1 -1
- package/_mjs/STM/definition.mjs +1 -1
- package/_mjs/Scope/api.mjs +22 -4
- package/_mjs/Scope/api.mjs.map +1 -1
- package/_mjs/ScopedRef/api.mjs +1 -1
- package/_mjs/ScopedRef/api.mjs.map +1 -1
- package/_mjs/Semaphore/Reservation.mjs +16 -0
- package/_mjs/Semaphore/Reservation.mjs.map +1 -0
- package/_mjs/Semaphore/constructors.mjs +17 -0
- package/_mjs/Semaphore/constructors.mjs.map +1 -0
- package/_mjs/Semaphore/definition.mjs +141 -0
- package/_mjs/Semaphore/definition.mjs.map +1 -0
- package/_mjs/Semaphore.mjs +4 -133
- package/_mjs/Semaphore.mjs.map +1 -1
- package/_mjs/Sink/definition.mjs +2 -3
- package/_mjs/Sink/definition.mjs.map +1 -1
- package/_mjs/Stream/api.mjs +701 -701
- package/_mjs/Stream/api.mjs.map +1 -1
- package/_mjs/Stream/definition.mjs.map +1 -1
- package/_mjs/Subject/Atomic.mjs +46 -10
- package/_mjs/Subject/Atomic.mjs.map +1 -1
- package/_mjs/Subject/DeferredRef.mjs +45 -0
- package/_mjs/Subject/DeferredRef.mjs.map +1 -0
- package/_mjs/Subject/Hold.mjs +33 -0
- package/_mjs/Subject/Hold.mjs.map +1 -0
- package/_mjs/Subject/RefSubject/Atomic.mjs +122 -0
- package/_mjs/Subject/RefSubject/Atomic.mjs.map +1 -0
- package/_mjs/Subject/RefSubject/Derived.mjs +90 -0
- package/_mjs/Subject/RefSubject/Derived.mjs.map +1 -0
- package/_mjs/Subject/RefSubject/RefSubject.mjs +12 -0
- package/_mjs/Subject/RefSubject/RefSubject.mjs.map +1 -0
- package/_mjs/Subject/definition.mjs +14 -0
- package/_mjs/Subject/definition.mjs.map +1 -1
- package/_mjs/Subject.mjs +2 -0
- package/_mjs/Subject.mjs.map +1 -1
- package/_mjs/SubscriptionRef.mjs +1 -2
- package/_mjs/SubscriptionRef.mjs.map +1 -1
- package/_src/Cached/api.ts +3 -3
- package/_src/Channel/api/toPull.ts +1 -1
- package/_src/Channel/api.ts +273 -272
- package/_src/Channel/core-api.ts +57 -55
- package/_src/Channel/internal/ChannelExecutor.ts +3 -3
- package/_src/Console/definition.ts +1 -0
- package/_src/CountdownLatch.ts +2 -0
- package/_src/Fiber/FiberMessage.ts +3 -28
- package/_src/Fiber/FiberRuntime.ts +988 -616
- package/_src/Fiber/api/interruptAs.ts +4 -3
- package/_src/Fiber/constructors.ts +1 -1
- package/_src/Fiber/definition.ts +4 -0
- package/_src/FiberScope/definition.ts +40 -2
- package/_src/FiberSet.ts +6 -2
- package/_src/Future/State.ts +128 -0
- package/_src/Future/api.ts +62 -51
- package/_src/Future/constructors.ts +4 -2
- package/_src/Future/definition.ts +2 -17
- package/_src/Future.ts +4 -3
- package/_src/Hub/api.ts +61 -61
- package/_src/IO/api/addFinalizerExit.ts +4 -4
- package/_src/IO/api/array.ts +49 -0
- package/_src/IO/api/asyncInterrupt.ts +1 -1
- package/_src/IO/api/awaitAllChildren.ts +6 -0
- package/_src/IO/api/cachedInvalidate.ts +42 -0
- package/_src/IO/api/foreachConcurrent.ts +39 -23
- package/_src/IO/api/foreachExec.ts +47 -0
- package/_src/IO/api/fork.ts +1 -1
- package/_src/IO/api/forkDaemon.ts +2 -2
- package/_src/IO/api/memoize.ts +3 -3
- package/_src/IO/api/onTermination.ts +2 -2
- package/_src/IO/api/transplant.ts +26 -3
- package/_src/IO/api/zipConcurrent.ts +2 -2
- package/_src/IO/api.ts +547 -525
- package/_src/IO/definition.ts +4 -28
- package/_src/IO/runtime.ts +0 -1
- package/_src/IO.ts +65 -63
- package/_src/IOEnv/definition.ts +1 -4
- package/_src/Push/Bounds.ts +4 -0
- package/_src/Push/FlattenStrategy.ts +137 -0
- package/_src/Push/IndexedBuffer.ts +79 -0
- package/_src/Push/MergeStrategy.ts +59 -0
- package/_src/Push/Operator/IOLoopOperator.ts +413 -0
- package/_src/Push/Operator/IOOperator.ts +173 -0
- package/_src/Push/Operator/LoopOperator.ts +242 -0
- package/_src/Push/Operator/SyncOperator.ts +107 -0
- package/_src/Push/Operator.ts +7 -0
- package/_src/Push/Producer/IOProducer.ts +83 -0
- package/_src/Push/Producer/SyncProducer.ts +105 -0
- package/_src/Push/Producer.ts +0 -0
- package/_src/Push/Sink.ts +302 -0
- package/_src/Push/api.ts +387 -513
- package/_src/Push/definition.ts +216 -23
- package/_src/Push/internal.ts +11 -0
- package/_src/Push.ts +7 -1
- package/_src/Random/definition.ts +1 -0
- package/_src/Ref/Synchronized/api.ts +2 -2
- package/_src/Ref/Synchronized/definition.ts +82 -38
- package/_src/Ref/definition.ts +26 -0
- package/_src/Scope/api.ts +22 -0
- package/_src/Semaphore/Reservation.ts +15 -0
- package/_src/Semaphore/constructors.ts +14 -0
- package/_src/Semaphore/definition.ts +180 -0
- package/_src/Semaphore.ts +5 -159
- package/_src/Sink/definition.ts +4 -5
- package/_src/Stream/api.ts +679 -679
- package/_src/Stream/definition.ts +0 -1
- package/_src/Subject/Atomic.ts +68 -11
- package/_src/Subject/DeferredRef.ts +44 -0
- package/_src/Subject/Hold.ts +48 -0
- package/_src/Subject/RefSubject/Atomic.ts +193 -0
- package/_src/Subject/RefSubject/Derived.ts +179 -0
- package/_src/Subject/RefSubject/RefSubject.ts +90 -0
- package/_src/Subject/definition.ts +21 -3
- package/_src/Subject.ts +5 -3
- package/_src/SubscriptionRef.ts +1 -1
- package/_src/index.ts +49 -50
- package/index.d.ts +0 -1
- package/package.json +4 -4
- package/IO/api/sequenceT.d.ts +0 -26
- package/RefSubject/Atomic.d.ts +0 -34
- package/RefSubject/Synchronized/api.d.ts +0 -9
- package/RefSubject/Synchronized/definition.d.ts +0 -39
- package/RefSubject/api.d.ts +0 -120
- package/RefSubject/definition.d.ts +0 -52
- package/RefSubject.d.ts +0 -3
- package/_cjs/IO/api/sequenceT.cjs +0 -18
- package/_cjs/IO/api/sequenceT.cjs.map +0 -1
- package/_cjs/RefSubject/Atomic.cjs +0 -108
- package/_cjs/RefSubject/Atomic.cjs.map +0 -1
- package/_cjs/RefSubject/Synchronized/api.cjs +0 -23
- package/_cjs/RefSubject/Synchronized/api.cjs.map +0 -1
- package/_cjs/RefSubject/Synchronized/definition.cjs +0 -56
- package/_cjs/RefSubject/Synchronized/definition.cjs.map +0 -1
- package/_cjs/RefSubject/api.cjs +0 -252
- package/_cjs/RefSubject/api.cjs.map +0 -1
- package/_cjs/RefSubject/definition.cjs +0 -26
- package/_cjs/RefSubject/definition.cjs.map +0 -1
- package/_cjs/RefSubject.cjs +0 -39
- package/_cjs/RefSubject.cjs.map +0 -1
- package/_mjs/IO/api/sequenceT.mjs +0 -10
- package/_mjs/IO/api/sequenceT.mjs.map +0 -1
- package/_mjs/RefSubject/Atomic.mjs +0 -99
- package/_mjs/RefSubject/Atomic.mjs.map +0 -1
- package/_mjs/RefSubject/Synchronized/api.mjs +0 -15
- package/_mjs/RefSubject/Synchronized/api.mjs.map +0 -1
- package/_mjs/RefSubject/Synchronized/definition.mjs +0 -47
- package/_mjs/RefSubject/Synchronized/definition.mjs.map +0 -1
- package/_mjs/RefSubject/api.mjs +0 -229
- package/_mjs/RefSubject/api.mjs.map +0 -1
- package/_mjs/RefSubject/definition.mjs +0 -19
- package/_mjs/RefSubject/definition.mjs.map +0 -1
- package/_mjs/RefSubject.mjs +0 -5
- package/_mjs/RefSubject.mjs.map +0 -1
- package/_src/IO/api/sequenceT.ts +0 -16
- package/_src/RefSubject/Atomic.ts +0 -129
- package/_src/RefSubject/Synchronized/api.ts +0 -14
- package/_src/RefSubject/Synchronized/definition.ts +0 -76
- package/_src/RefSubject/api.ts +0 -253
- package/_src/RefSubject/definition.ts +0 -70
- package/_src/RefSubject.ts +0 -5
package/IO/definition.d.ts
CHANGED
|
@@ -51,6 +51,7 @@ export declare namespace IO {
|
|
|
51
51
|
_A: () => infer A;
|
|
52
52
|
};
|
|
53
53
|
}] ? A : never;
|
|
54
|
+
type Concrete = Primitive;
|
|
54
55
|
}
|
|
55
56
|
declare module "@fncts/base/data/Either/definition" {
|
|
56
57
|
interface Either<E, A> extends IO<never, E, A> {
|
|
@@ -112,17 +113,14 @@ export declare const enum IOTag {
|
|
|
112
113
|
Async = 3,
|
|
113
114
|
OnSuccessAndFailure = 4,
|
|
114
115
|
OnSuccess = 5,
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
RevertFlags = 14,
|
|
124
|
-
UpdateTrace = 15,
|
|
125
|
-
External = 16
|
|
116
|
+
UpdateRuntimeFlags = 6,
|
|
117
|
+
UpdateRuntimeFlagsWithin = 7,
|
|
118
|
+
Stateful = 8,
|
|
119
|
+
WhileLoop = 9,
|
|
120
|
+
YieldNow = 10,
|
|
121
|
+
Commit = 11,
|
|
122
|
+
UpdateTrace = 12,
|
|
123
|
+
External = 13
|
|
126
124
|
}
|
|
127
125
|
export type IOOp<Tag extends string | number, Body = {}> = IO<never, never, never> & Body & {
|
|
128
126
|
readonly _ioOpCode: Tag;
|
|
@@ -142,7 +140,7 @@ export interface Sync<A = any> extends IOOp<IOTag.Sync, {
|
|
|
142
140
|
readonly trace: string | undefined;
|
|
143
141
|
}> {
|
|
144
142
|
}
|
|
145
|
-
export interface Async
|
|
143
|
+
export interface Async extends IOOp<IOTag.Async, {
|
|
146
144
|
readonly i0: (resume: (io: Primitive) => void) => void;
|
|
147
145
|
readonly i1: () => FiberId;
|
|
148
146
|
readonly trace: string | undefined;
|
|
@@ -155,19 +153,13 @@ export interface OnSuccessAndFailure extends IOOp<IOTag.OnSuccessAndFailure, {
|
|
|
155
153
|
readonly trace: string | undefined;
|
|
156
154
|
}> {
|
|
157
155
|
}
|
|
158
|
-
export interface OnFailure extends IOOp<IOTag.OnFailure, {
|
|
159
|
-
readonly i0: Primitive;
|
|
160
|
-
readonly i1: (cause: Cause<unknown>) => Primitive;
|
|
161
|
-
readonly trace: string | undefined;
|
|
162
|
-
}> {
|
|
163
|
-
}
|
|
164
156
|
export interface OnSuccess extends IOOp<IOTag.OnSuccess, {
|
|
165
157
|
readonly i0: Primitive;
|
|
166
158
|
readonly i1: (a: unknown) => Primitive;
|
|
167
159
|
readonly trace: string | undefined;
|
|
168
160
|
}> {
|
|
169
161
|
}
|
|
170
|
-
export interface
|
|
162
|
+
export interface Succeed extends IOOp<IOTag.SucceedNow, {
|
|
171
163
|
readonly i0: any;
|
|
172
164
|
readonly trace: string | undefined;
|
|
173
165
|
}> {
|
|
@@ -183,10 +175,6 @@ export interface UpdateRuntimeFlagsWithin extends IOOp<IOTag.UpdateRuntimeFlagsW
|
|
|
183
175
|
readonly trace: string | undefined;
|
|
184
176
|
}> {
|
|
185
177
|
}
|
|
186
|
-
export interface GenerateStackTrace extends IOOp<IOTag.GenerateStackTrace, {
|
|
187
|
-
readonly trace: string | undefined;
|
|
188
|
-
}> {
|
|
189
|
-
}
|
|
190
178
|
export interface Stateful extends IOOp<IOTag.Stateful, {
|
|
191
179
|
readonly i0: (fiber: FiberRuntime<any, any>, status: Running) => Primitive;
|
|
192
180
|
readonly trace: string | undefined;
|
|
@@ -208,14 +196,13 @@ export interface Fail extends IOOp<IOTag.Fail, {
|
|
|
208
196
|
readonly trace: string | undefined;
|
|
209
197
|
}> {
|
|
210
198
|
}
|
|
211
|
-
export type Primitive = OnSuccessAndFailure |
|
|
199
|
+
export type Primitive = OnSuccessAndFailure | OnSuccess | UpdateRuntimeFlagsWithin | Sync | Async | Succeed | UpdateRuntimeFlags | Stateful | WhileLoop | YieldNow | Fail | External<any, any, any> | STM<any, any, any> | Left<any> | Right<any> | Nothing | Just<any> | Failure<any> | Success<any> | Tag<any>;
|
|
212
200
|
/**
|
|
213
201
|
* @tsplus static fncts.io.IOOps concrete
|
|
214
202
|
* @tsplus macro identity
|
|
215
203
|
* @tsplus location "@fncts/io/IO/definition"
|
|
216
204
|
*/
|
|
217
205
|
export declare function concrete(io: IO<any, any, any>): Primitive;
|
|
218
|
-
export type EvaluationStep = OnSuccessAndFailure | OnFailure | OnSuccess;
|
|
219
206
|
export type Canceler<R> = URIO<R, void>;
|
|
220
207
|
export declare abstract class External<R, E, A> extends IOPrimitive implements IO<R, E, A> {
|
|
221
208
|
_ioOpCode: IOTag.External;
|
package/IO.d.ts
CHANGED
|
@@ -8,11 +8,14 @@ export * from "./IO/api/acquireReleaseInterruptibleExit.js";
|
|
|
8
8
|
export * from "./IO/api/addFinalizer.js";
|
|
9
9
|
export * from "./IO/api/addFinalizerExit.js";
|
|
10
10
|
export * from "./IO/api/all.js";
|
|
11
|
+
export * from "./IO/api/array.js";
|
|
11
12
|
export * from "./IO/api/asyncInterrupt.js";
|
|
12
13
|
export * from "./IO/api/asyncIO.js";
|
|
14
|
+
export * from "./IO/api/awaitAllChildren.js";
|
|
13
15
|
export * from "./IO/api/blocking.js";
|
|
14
16
|
export * from "./IO/api/bracket.js";
|
|
15
17
|
export * from "./IO/api/bracketExit.js";
|
|
18
|
+
export * from "./IO/api/cachedInvalidate.js";
|
|
16
19
|
export * from "./IO/api/clockWith.js";
|
|
17
20
|
export * from "./IO/api/concurrency.js";
|
|
18
21
|
export * from "./IO/api/concurrentFinalizers.js";
|
|
@@ -51,7 +54,6 @@ export * from "./IO/api/schedule.js";
|
|
|
51
54
|
export * from "./IO/api/scope.js";
|
|
52
55
|
export * from "./IO/api/scoped.js";
|
|
53
56
|
export * from "./IO/api/scopeWith.js";
|
|
54
|
-
export * from "./IO/api/sequenceT.js";
|
|
55
57
|
export * from "./IO/api/sleep.js";
|
|
56
58
|
export * from "./IO/api/stateful.js";
|
|
57
59
|
export * from "./IO/api/supervised.js";
|
package/Push/Bounds.d.ts
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { IO } from "@fncts/io/IO/definition";
|
|
2
|
+
import { Scope } from "@fncts/io/Scope/definition";
|
|
3
|
+
import { Fiber } from "@fncts/io/Fiber/definition";
|
|
4
|
+
import { ExecutionStrategy } from "@fncts/base/data/ExecutionStrategy";
|
|
5
|
+
import { Ref } from "@fncts/io/Ref/definition";
|
|
6
|
+
import { HashSet } from "@fncts/base/collection/immutable/HashSet/definition";
|
|
7
|
+
import { Semaphore } from "@fncts/io/Semaphore";
|
|
8
|
+
type Fork = <R>(io: IO<R, never, void>) => IO<R | Scope, never, void>;
|
|
9
|
+
/**
|
|
10
|
+
* @tsplus type fncts.io.Push.FlattenStrategy
|
|
11
|
+
* @tsplus companion fncts.io.Push.FlattenStrategyOps
|
|
12
|
+
*/
|
|
13
|
+
export declare abstract class FlattenStrategy {
|
|
14
|
+
abstract withFork<R>(f: (fork: Fork, scope: Scope) => IO<R, never, void>, executionStrategy: ExecutionStrategy): IO<R | Scope, never, void>;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* @tsplus static fncts.io.Push.FlattenStrategyOps Switch
|
|
18
|
+
* @tsplus location "@fncts/io/Push/FlattenStrategy"
|
|
19
|
+
*/
|
|
20
|
+
export declare const SwitchStrategy: {
|
|
21
|
+
withFork<R>(f: (fork: Fork, scope: Scope) => IO<R, never, void>, executionStrategy: ExecutionStrategy): IO<R | Scope, never, void>;
|
|
22
|
+
};
|
|
23
|
+
/**
|
|
24
|
+
* @tsplus static fncts.io.Push.FlattenStrategyOps Exhaust
|
|
25
|
+
* @tsplus location "@fncts/io/Push/FlattenStrategy"
|
|
26
|
+
*/
|
|
27
|
+
export declare const ExhaustStrategy: {
|
|
28
|
+
withFork<R>(f: (fork: Fork, scope: Scope) => IO<R, never, void>, executionStrategy: ExecutionStrategy): IO<R | Scope, never, void>;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* @tsplus static fncts.io.Push.FlattenStrategyOps Unbounded
|
|
32
|
+
* @tsplus location "@fncts/io/Push/FlattenStrategy"
|
|
33
|
+
*/
|
|
34
|
+
export declare const UnboundedStrategy: {
|
|
35
|
+
withFork<R>(f: (fork: Fork, scope: Scope) => IO<R, never, void>): IO<R | Scope, never, void>;
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* @tsplus static fncts.io.Push.FlattenStrategyOps Bounded
|
|
39
|
+
* @tsplus location "@fncts/io/Push/FlattenStrategy"
|
|
40
|
+
*/
|
|
41
|
+
export declare function makeBounded(capacity: number): BoundedStrategy;
|
|
42
|
+
declare class BoundedStrategy extends FlattenStrategy {
|
|
43
|
+
readonly capacity: number;
|
|
44
|
+
constructor(capacity: number);
|
|
45
|
+
withFork<R>(f: (fork: Fork, scope: Scope) => IO<R, never, void>, executionStrategy: ExecutionStrategy): IO<R | Scope, never, void>;
|
|
46
|
+
}
|
|
47
|
+
export {};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { Future } from "@fncts/io/Future";
|
|
2
|
+
import { UIO, IO } from "@fncts/io/IO/definition";
|
|
3
|
+
import { FiberId } from "@fncts/base/data/FiberId/definition";
|
|
4
|
+
import type { Push } from "./definition.js";
|
|
5
|
+
export declare class IndexedBuffer<R, E, A> {
|
|
6
|
+
ready: boolean;
|
|
7
|
+
readonly future: Future<never, void>;
|
|
8
|
+
readonly sink: Push.UnsafeSink<R, E, A>;
|
|
9
|
+
readonly onDone: UIO<void>;
|
|
10
|
+
constructor(ready: boolean, future: Future<never, void>, sink: Push.UnsafeSink<R, E, A>, onDone: UIO<void>);
|
|
11
|
+
buffer: Array<A>;
|
|
12
|
+
onSuccess(value: A): import("../IO.js").IO<R, never, void>;
|
|
13
|
+
get onEnd(): import("../IO.js").IO<R, never, void>;
|
|
14
|
+
}
|
|
15
|
+
export declare const withBuffers: <R, E, A>(size: number, sink: Push.UnsafeSink<R, E, A>, id: FiberId) => {
|
|
16
|
+
onSuccess: (index: number, value: A) => IO<R, never, void>;
|
|
17
|
+
onEnd: (index: number) => IO<R, never, void>;
|
|
18
|
+
buffers: Map<number, IndexedBuffer<R, E, A>>;
|
|
19
|
+
};
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { IO } from "@fncts/io/IO/definition";
|
|
2
|
+
import { ExecutionStrategy } from "@fncts/base/data/ExecutionStrategy";
|
|
3
|
+
import type { Push } from "./definition.js";
|
|
4
|
+
export declare abstract class MergeStrategy {
|
|
5
|
+
abstract runMerge<Ps extends ReadonlyArray<Push<any, any, any>>, R>(ps: Ps, sink: Push.UnsafeSink<R, any, any>): IO<R | Push.EnvironmentOf<Ps[number]>, never, void>;
|
|
6
|
+
}
|
|
7
|
+
export declare class Unordered extends MergeStrategy {
|
|
8
|
+
readonly executionStrategy: ExecutionStrategy;
|
|
9
|
+
constructor(executionStrategy: ExecutionStrategy);
|
|
10
|
+
runMerge<Ps extends ReadonlyArray<Push<any, any, any>>, R>(ps: Ps, sink: Push.UnsafeSink<R, any, any>): IO<R | Push.EnvironmentOf<Ps[number]>, never, void>;
|
|
11
|
+
}
|
|
12
|
+
export declare class Ordered extends MergeStrategy {
|
|
13
|
+
readonly executionStrategy: ExecutionStrategy;
|
|
14
|
+
constructor(executionStrategy: ExecutionStrategy);
|
|
15
|
+
runMerge<Ps extends ReadonlyArray<Push<any, any, any>>, R>(ps: Ps, sink: Push.UnsafeSink<R, any, any>): IO<R | Push.EnvironmentOf<Ps[number]>, never, void>;
|
|
16
|
+
}
|
|
17
|
+
export declare class Switch extends MergeStrategy {
|
|
18
|
+
runMerge<Ps extends ReadonlyArray<Push<any, any, any>>, R>(ps: Ps, sink: Push.UnsafeSink<R, any, any>): IO<R | Push.EnvironmentOf<Ps[number]>, never, void>;
|
|
19
|
+
}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { IO } from "@fncts/io/IO/definition";
|
|
2
|
+
import { Maybe } from "@fncts/base/data/Maybe/definition";
|
|
3
|
+
import type { IOOperator } from "./IOOperator.js";
|
|
4
|
+
import type { SyncLoopOperator } from "@fncts/io/Push/Operator/LoopOperator";
|
|
5
|
+
import type { SyncOperator } from "@fncts/io/Push/Operator/SyncOperator";
|
|
6
|
+
export declare const enum IOLoopOperatorTag {
|
|
7
|
+
LoopIO = "LoopIO",
|
|
8
|
+
FilterMapLoopIO = "FilterMapLoopIO"
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* @tsplus type fncts.io.Push.IOLoopOperator
|
|
12
|
+
*/
|
|
13
|
+
export type IOLoopOperator<B = any, A = any, R = any, E = any, C = any> = LoopIOOperator<B, A, R, E, C> | FilterMapLoopIOOperator<B, A, R, E, C>;
|
|
14
|
+
export interface LoopIOOperator<B, A, R, E, C> {
|
|
15
|
+
readonly _tag: IOLoopOperatorTag.LoopIO;
|
|
16
|
+
readonly seed: B;
|
|
17
|
+
readonly f: (acc: B, a: A) => IO<R, E, readonly [C, B]>;
|
|
18
|
+
}
|
|
19
|
+
export declare function LoopIOOperator<const B, A, R, E, C>(seed: B, f: (acc: B, a: A) => IO<R, E, readonly [C, B]>): LoopIOOperator<B, A, R, E, C>;
|
|
20
|
+
export interface FilterMapLoopIOOperator<B, A, R, E, C> {
|
|
21
|
+
readonly _tag: IOLoopOperatorTag.FilterMapLoopIO;
|
|
22
|
+
readonly seed: B;
|
|
23
|
+
readonly f: (acc: B, a: A) => IO<R, E, readonly [Maybe<C>, B]>;
|
|
24
|
+
}
|
|
25
|
+
export declare function FilterMapLoopIOOperator<const B, A, R, E, C>(seed: B, f: (acc: B, a: A) => IO<R, E, readonly [Maybe<C>, B]>): FilterMapLoopIOOperator<B, A, R, E, C>;
|
|
26
|
+
/**
|
|
27
|
+
* @tsplus pipeable fncts.io.Push.IOLoopOperator match
|
|
28
|
+
* @tsplus location "@fncts/io/Push/Operator/IOLoopOperator"
|
|
29
|
+
*/
|
|
30
|
+
export declare function match<B, A, R, E, C, D, F>(matchers: {
|
|
31
|
+
LoopIO: (op: LoopIOOperator<B, A, R, E, C>) => D;
|
|
32
|
+
FilterMapLoopIO: (op: FilterMapLoopIOOperator<B, A, R, E, C>) => F;
|
|
33
|
+
}): (self: IOLoopOperator<B, A, R, E, C>) => D | F;
|
|
34
|
+
/**
|
|
35
|
+
* @tsplus pipeable fncts.io.Push.IOLoopOperator fuse
|
|
36
|
+
* @tsplus location "@fncts/io/Push/Operator/IOLoopOperator"
|
|
37
|
+
*/
|
|
38
|
+
export declare function fuse<C, D, F, R2, E2>(that: IOLoopOperator<D, C, R2, E2, F>): <A, B, R1, E1>(self: IOLoopOperator<A, B, R1, E1, C>) => IOLoopOperator<readonly [A, D], B, R1 | R2, E1 | E2, F>;
|
|
39
|
+
/**
|
|
40
|
+
* @tsplus pipeable fncts.io.Push.IOLoopOperator after
|
|
41
|
+
* @tsplus location "@fncts/io/Push/Operator/IOLoopOperator"
|
|
42
|
+
*/
|
|
43
|
+
export declare function fuseSyncLoopOperatorBefore<A, B, C>(that: SyncLoopOperator<A, B, C>): <D, R, E, F>(self: IOLoopOperator<D, C, R, E, F>) => IOLoopOperator<readonly [A, D], B, R, E, F>;
|
|
44
|
+
/**
|
|
45
|
+
* @tsplus pipeable fncts.io.Push.IOLoopOperator before
|
|
46
|
+
* @tsplus location "@fncts/io/Push/Operator/IOLoopOperator"
|
|
47
|
+
*/
|
|
48
|
+
export declare function fuseSyncLoopOperatorAfter<D, C, F>(that: SyncLoopOperator<D, C, F>): <A, B, R, E>(self: IOLoopOperator<A, B, R, E, C>) => IOLoopOperator<readonly [A, D], B, R, E, F>;
|
|
49
|
+
/**
|
|
50
|
+
* @tsplus pipeable fncts.io.Push.IOLoopOperator after
|
|
51
|
+
* @tsplus location "@fncts/io/Push/Operator/IOLoopOperator"
|
|
52
|
+
*/
|
|
53
|
+
export declare function fuseSyncOperatorBefore(that: SyncOperator): (self: IOLoopOperator) => IOLoopOperator;
|
|
54
|
+
/**
|
|
55
|
+
* @tsplus pipeable fncts.io.Push.IOLoopOperator before
|
|
56
|
+
* @tsplus location "@fncts/io/Push/Operator/IOLoopOperator"
|
|
57
|
+
*/
|
|
58
|
+
export declare function fuseSyncOperatorAfter(that: SyncOperator): (self: IOLoopOperator) => IOLoopOperator;
|
|
59
|
+
export declare function fuseIOOperatorBefore(that: IOOperator): (self: IOLoopOperator) => IOLoopOperator;
|
|
60
|
+
export declare function fuseIOOperatorAfter(that: IOOperator): (self: IOLoopOperator) => LoopIOOperator<any, unknown, any, any, any> | FilterMapLoopIOOperator<any, unknown, any, any, any>;
|
|
61
|
+
export declare function liftLoopOperator(self: SyncLoopOperator): IOLoopOperator;
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { IO } from "@fncts/io/IO/definition";
|
|
2
|
+
import { Maybe } from "@fncts/base/data/Maybe/definition";
|
|
3
|
+
import type { SyncOperator } from "./SyncOperator.js";
|
|
4
|
+
export declare const enum IOOperatorTag {
|
|
5
|
+
MapIO = "MapIO",
|
|
6
|
+
TapIO = "TapIO",
|
|
7
|
+
FilterIO = "FilterIO",
|
|
8
|
+
FilterMapIO = "FilterMapIO"
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* @tsplus type fncts.io.Push.IOOperator
|
|
12
|
+
* @tsplus companion fncts.io.Push.IOOperatorOps
|
|
13
|
+
*/
|
|
14
|
+
export type IOOperator = MapIO<any, any, any, any> | TapIO<any, any, any, any> | FilterIO<any, any, any> | FilterMapIO<any, any, any, any>;
|
|
15
|
+
export interface MapIO<R, E, A, B> {
|
|
16
|
+
readonly _tag: IOOperatorTag.MapIO;
|
|
17
|
+
readonly f: (a: A) => IO<R, E, B>;
|
|
18
|
+
}
|
|
19
|
+
export declare function MapIO<R, E, A, B>(f: (a: A) => IO<R, E, B>): MapIO<R, E, A, B>;
|
|
20
|
+
export interface TapIO<R, E, A, B> {
|
|
21
|
+
readonly _tag: IOOperatorTag.TapIO;
|
|
22
|
+
readonly f: (a: A) => IO<R, E, B>;
|
|
23
|
+
}
|
|
24
|
+
export declare function TapIO<R, E, A, B>(f: (a: A) => IO<R, E, B>): TapIO<R, E, A, B>;
|
|
25
|
+
export interface FilterIO<R, E, A> {
|
|
26
|
+
readonly _tag: IOOperatorTag.FilterIO;
|
|
27
|
+
readonly f: (a: A) => IO<R, E, boolean>;
|
|
28
|
+
}
|
|
29
|
+
export declare function FilterIO<R, E, A>(f: (a: A) => IO<R, E, boolean>): FilterIO<R, E, A>;
|
|
30
|
+
export interface FilterMapIO<R, E, A, B> {
|
|
31
|
+
readonly _tag: IOOperatorTag.FilterMapIO;
|
|
32
|
+
readonly f: (a: A) => IO<R, E, Maybe<B>>;
|
|
33
|
+
}
|
|
34
|
+
export declare function FilterMapIO<R, E, A, B>(f: (a: A) => IO<R, E, Maybe<B>>): FilterMapIO<R, E, A, B>;
|
|
35
|
+
export type IOOperatorFusionMap = {
|
|
36
|
+
readonly [K in IOOperator["_tag"]]: {
|
|
37
|
+
readonly [K2 in IOOperator["_tag"]]: (op1: Extract<IOOperator, {
|
|
38
|
+
readonly _tag: K;
|
|
39
|
+
}>, op2: Extract<IOOperator, {
|
|
40
|
+
readonly _tag: K2;
|
|
41
|
+
}>) => IOOperator;
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* @tsplus pipeable fncts.io.Push.IOOperator fuse
|
|
46
|
+
* @tsplus location "@fncts/io/Push/Operator/IOOperator"
|
|
47
|
+
*/
|
|
48
|
+
export declare function fuse(that: IOOperator): (self: IOOperator) => IOOperator;
|
|
49
|
+
/**
|
|
50
|
+
* @tsplus static fncts.io.Push.IOOperatorOps fromSyncOperator
|
|
51
|
+
* @tsplus location "@fncts/io/Push/Operator/IOOperator"
|
|
52
|
+
*/
|
|
53
|
+
export declare function fromSyncOperator(op: SyncOperator): IOOperator;
|
|
54
|
+
/**
|
|
55
|
+
* @tsplus pipeable fncts.io.Push.IOOperator match
|
|
56
|
+
* @tsplus location "@fncts/io/Push/Operator/IOOperator"
|
|
57
|
+
*/
|
|
58
|
+
export declare function match<A, B, C, D>(cases: {
|
|
59
|
+
readonly MapIO: (f: MapIO<any, any, any, any>) => A;
|
|
60
|
+
readonly TapIO: (f: TapIO<any, any, any, any>) => B;
|
|
61
|
+
readonly FilterIO: (f: FilterIO<any, any, any>) => C;
|
|
62
|
+
readonly FilterMapIO: (f: FilterMapIO<any, any, any, any>) => D;
|
|
63
|
+
}): (self: IOOperator) => A | B | C | D;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import { Maybe } from "@fncts/base/data/Maybe/definition";
|
|
2
|
+
import { Either } from "@fncts/base/data/Either/definition";
|
|
3
|
+
import type { Bounds } from "../Bounds.js";
|
|
4
|
+
import type { SyncOperator } from "./SyncOperator.js";
|
|
5
|
+
export declare const enum SyncLoopOperatorTag {
|
|
6
|
+
Loop = "Loop",
|
|
7
|
+
FilterMapLoop = "FilterMapLoop"
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* @tsplus type fncts.io.Push.SyncLoopOperator
|
|
11
|
+
*/
|
|
12
|
+
export type SyncLoopOperator<B = any, A = any, C = any> = LoopOperator<B, A, C> | FilterMapLoopOperator<B, A, C>;
|
|
13
|
+
export interface LoopOperator<B, A, C> {
|
|
14
|
+
readonly _tag: SyncLoopOperatorTag.Loop;
|
|
15
|
+
readonly seed: B;
|
|
16
|
+
readonly f: (acc: B, a: A) => readonly [C, B];
|
|
17
|
+
}
|
|
18
|
+
export declare function LoopOperator<const B, A, C>(seed: B, f: (acc: B, a: A) => readonly [C, B]): LoopOperator<B, A, C>;
|
|
19
|
+
export interface FilterMapLoopOperator<B, A, C> {
|
|
20
|
+
readonly _tag: SyncLoopOperatorTag.FilterMapLoop;
|
|
21
|
+
readonly seed: B;
|
|
22
|
+
readonly f: (acc: B, a: A) => readonly [Maybe<C>, B];
|
|
23
|
+
}
|
|
24
|
+
export declare function FilterMapLoopOperator<const B, A, C>(seed: B, f: (acc: B, a: A) => readonly [Maybe<C>, B]): FilterMapLoopOperator<B, A, C>;
|
|
25
|
+
export declare const enum SliceOperatorTag {
|
|
26
|
+
SliceOperator = 0,
|
|
27
|
+
FilterMapSliceOperator = 1
|
|
28
|
+
}
|
|
29
|
+
export interface SliceOperator {
|
|
30
|
+
readonly _tag: SliceOperatorTag.SliceOperator;
|
|
31
|
+
readonly bounds: Bounds;
|
|
32
|
+
}
|
|
33
|
+
export declare function SliceOperator(bounds: Bounds): SliceOperator;
|
|
34
|
+
export interface FilterMapSliceOperator<A, B, C> {
|
|
35
|
+
readonly _tag: SliceOperatorTag.FilterMapSliceOperator;
|
|
36
|
+
readonly seed: B;
|
|
37
|
+
readonly f: (acc: B, a: A) => Either<readonly [Maybe<C>, B], Maybe<C>>;
|
|
38
|
+
}
|
|
39
|
+
export declare function FilterMapSliceOperator<const B, A, C>(seed: B, f: (acc: B, a: A) => Either<readonly [Maybe<C>, B], Maybe<C>>): FilterMapSliceOperator<A, B, C>;
|
|
40
|
+
/**
|
|
41
|
+
* @tsplus pipeable fncts.io.Push.SyncLoopOperator match
|
|
42
|
+
* @tsplus location "@fncts/io/Push/Operator/LoopOperator"
|
|
43
|
+
*/
|
|
44
|
+
export declare function matchSyncLoopOperator<A, B, C, D, E>(matchers: {
|
|
45
|
+
Loop: (op: LoopOperator<A, B, C>) => D;
|
|
46
|
+
FilterMapLoop: (op: FilterMapLoopOperator<A, B, C>) => E;
|
|
47
|
+
}): (self: SyncLoopOperator<A, B, C>) => D | E;
|
|
48
|
+
export declare function fuseSyncOperatorBefore(that: SyncOperator): (self: SyncLoopOperator) => SyncLoopOperator;
|
|
49
|
+
export declare function fuseSyncOperatorAfter(that: SyncOperator): (self: SyncLoopOperator) => SyncLoopOperator;
|
|
50
|
+
export declare function fuse<C, D, E>(that: SyncLoopOperator<D, C, E>): <A, B>(self: SyncLoopOperator<A, B, C>) => SyncLoopOperator<readonly [A, D], B, E>;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { Predicate } from "@fncts/base/data/Predicate/definition";
|
|
2
|
+
import { Maybe } from "@fncts/base/data/Maybe/definition";
|
|
3
|
+
export declare const enum SyncOperatorTag {
|
|
4
|
+
Map = "Map",
|
|
5
|
+
Filter = "Filter",
|
|
6
|
+
FilterMap = "FilterMap"
|
|
7
|
+
}
|
|
8
|
+
export interface Map<A, B> {
|
|
9
|
+
readonly _tag: SyncOperatorTag.Map;
|
|
10
|
+
readonly f: (a: A) => B;
|
|
11
|
+
}
|
|
12
|
+
export declare function Map<A, B>(f: (a: A) => B): Map<A, B>;
|
|
13
|
+
export interface Filter<A> {
|
|
14
|
+
readonly _tag: SyncOperatorTag.Filter;
|
|
15
|
+
readonly f: Predicate<A>;
|
|
16
|
+
}
|
|
17
|
+
export declare function Filter<A>(f: Predicate<A>): Filter<A>;
|
|
18
|
+
export interface FilterMap<A, B> {
|
|
19
|
+
readonly _tag: SyncOperatorTag.FilterMap;
|
|
20
|
+
readonly f: (a: A) => Maybe<B>;
|
|
21
|
+
}
|
|
22
|
+
export declare function FilterMap<A, B>(f: (a: A) => Maybe<B>): FilterMap<A, B>;
|
|
23
|
+
/**
|
|
24
|
+
* @tsplus type fncts.io.Push.SyncOperator
|
|
25
|
+
* @tsplus companion fncts.io.Push.SyncOperatorOps
|
|
26
|
+
*/
|
|
27
|
+
export type SyncOperator<A = any, B = any> = Map<A, B> | Filter<A> | FilterMap<A, B>;
|
|
28
|
+
/**
|
|
29
|
+
* @tsplus pipeable fncts.io.Push.SyncOperator fuse
|
|
30
|
+
* @tsplus location "@fncts/io/Push/Operator/SyncOperator"
|
|
31
|
+
*/
|
|
32
|
+
export declare function fuse(that: SyncOperator): (self: SyncOperator) => SyncOperator<any, any>;
|
|
33
|
+
/**
|
|
34
|
+
* @tsplus pipeable fncts.io.Push.SyncOperator match
|
|
35
|
+
* @tsplus location "@fncts/io/Push/Operator/SyncOperator"
|
|
36
|
+
*/
|
|
37
|
+
export declare function match<A, B, C, D, E>(cases: {
|
|
38
|
+
readonly Map: (f: Map<A, B>) => C;
|
|
39
|
+
readonly Filter: (f: Filter<A>) => D;
|
|
40
|
+
readonly FilterMap: (f: FilterMap<A, B>) => E;
|
|
41
|
+
}): (self: SyncOperator<A, B>) => C | D | E;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { IO } from "@fncts/io/IO/definition";
|
|
2
|
+
import { Schedule } from "@fncts/io/Schedule/definition";
|
|
3
|
+
import { Cause } from "@fncts/base/data/Cause/definition";
|
|
4
|
+
import type { Push } from "../definition.js";
|
|
5
|
+
export declare const enum IOProducerTag {
|
|
6
|
+
FromIO = 0,
|
|
7
|
+
FromScheduled = 1,
|
|
8
|
+
Scheduled = 2
|
|
9
|
+
}
|
|
10
|
+
export declare class FromIO<R, E, A> {
|
|
11
|
+
readonly source: IO<R, E, A>;
|
|
12
|
+
readonly _tag = IOProducerTag.FromIO;
|
|
13
|
+
constructor(source: IO<R, E, A>);
|
|
14
|
+
}
|
|
15
|
+
export declare class FromScheduled<R, E, I, R1, O> {
|
|
16
|
+
readonly input: IO<R, E, I>;
|
|
17
|
+
readonly schedule: Schedule<R1, I, O>;
|
|
18
|
+
readonly _tag = IOProducerTag.FromScheduled;
|
|
19
|
+
constructor(input: IO<R, E, I>, schedule: Schedule<R1, I, O>);
|
|
20
|
+
}
|
|
21
|
+
export declare class Scheduled<R, E, A, R1, O> {
|
|
22
|
+
readonly input: IO<R, E, A>;
|
|
23
|
+
readonly schedule: Schedule<R1, unknown, O>;
|
|
24
|
+
readonly _tag = IOProducerTag.Scheduled;
|
|
25
|
+
constructor(input: IO<R, E, A>, schedule: Schedule<R1, unknown, O>);
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* @tsplus type fncts.io.Push.IOProducer
|
|
29
|
+
* @tsplus companion fncts.io.Push.IOProducerOps
|
|
30
|
+
*/
|
|
31
|
+
export type IOProducer<R, E, A> = FromIO<R, E, A> | FromScheduled<R, E, any, any, A> | Scheduled<R, E, A, any, any>;
|
|
32
|
+
/**
|
|
33
|
+
* @tsplus fluent fncts.io.Push.IOProducer runSink
|
|
34
|
+
* @tsplus location "@fncts/io/Push/Producer/IOProducer"
|
|
35
|
+
*/
|
|
36
|
+
export declare function runSink<R, E, A, R1>(self: IOProducer<R, E, A>, sink: Push.UnsafeSink<R1, E, A>): IO<R | R1, never, unknown>;
|
|
37
|
+
/**
|
|
38
|
+
* @tsplus fluent fncts.io.Push.IOProducer runIO
|
|
39
|
+
* @tsplus location "@fncts/io/Push/Producer/IOProducer"
|
|
40
|
+
*/
|
|
41
|
+
export declare function runIO<R, E, A, R1, E1, A1>(self: IOProducer<R, E, A>, f: (a: A) => IO<R1, E1, A1>): IO<R | R1, E | E1, unknown>;
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Lazy } from "@fncts/base/data/function/definition";
|
|
2
|
+
import { UIO, IO } from "@fncts/io/IO/definition";
|
|
3
|
+
import { Maybe } from "@fncts/base/data/Maybe/definition";
|
|
4
|
+
import type { Push } from "@fncts/io/Push";
|
|
5
|
+
export declare const enum SyncProducerTag {
|
|
6
|
+
Success = 0,
|
|
7
|
+
FromSync = 1,
|
|
8
|
+
FromArray = 2,
|
|
9
|
+
FromIterable = 3
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* @tsplus type fncts.io.Push.SyncProducer
|
|
13
|
+
* @tsplus companion fncts.io.Push.SyncProducerOps
|
|
14
|
+
*/
|
|
15
|
+
export type SyncProducer<A> = Success<A> | FromSync<A> | FromArray<A> | FromIterable<A>;
|
|
16
|
+
export declare class Success<A> {
|
|
17
|
+
readonly source: A;
|
|
18
|
+
readonly _tag = SyncProducerTag.Success;
|
|
19
|
+
constructor(source: A);
|
|
20
|
+
}
|
|
21
|
+
export declare class FromSync<A> {
|
|
22
|
+
readonly f: Lazy<A>;
|
|
23
|
+
readonly _tag = SyncProducerTag.FromSync;
|
|
24
|
+
constructor(f: Lazy<A>);
|
|
25
|
+
}
|
|
26
|
+
export declare class FromArray<A> {
|
|
27
|
+
readonly array: ReadonlyArray<A>;
|
|
28
|
+
readonly _tag = SyncProducerTag.FromArray;
|
|
29
|
+
constructor(array: ReadonlyArray<A>);
|
|
30
|
+
}
|
|
31
|
+
export declare class FromIterable<A> {
|
|
32
|
+
readonly iterable: Iterable<A>;
|
|
33
|
+
readonly _tag = SyncProducerTag.FromIterable;
|
|
34
|
+
constructor(iterable: Iterable<A>);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* @tsplus static fncts.io.Push.SyncProducerOps Success
|
|
38
|
+
* @tsplus location "@fncts/io/Push/Producer/SyncProducer"
|
|
39
|
+
*/
|
|
40
|
+
export declare function success<A>(source: A): SyncProducer<A>;
|
|
41
|
+
/**
|
|
42
|
+
* @tsplus static fncts.io.Push.SyncProducerOps fromSync
|
|
43
|
+
* @tsplus location "@fncts/io/Push/Producer/SyncProducer"
|
|
44
|
+
*/
|
|
45
|
+
export declare function fromSync<A>(f: Lazy<A>): SyncProducer<A>;
|
|
46
|
+
/**
|
|
47
|
+
* @tsplus static fncts.io.Push.SyncProducerOps fromArray
|
|
48
|
+
* @tsplus location "@fncts/io/Push/Producer/SyncProducer"
|
|
49
|
+
*/
|
|
50
|
+
export declare function fromArray<A extends ReadonlyArray<any>>(array: A): SyncProducer<A[number]>;
|
|
51
|
+
/**
|
|
52
|
+
* @tsplus static fncts.io.Push.SyncProducerOps fromIterable
|
|
53
|
+
* @tsplus location "@fncts/io/Push/Producer/SyncProducer"
|
|
54
|
+
*/
|
|
55
|
+
export declare function fromIterable<A>(iterable: Iterable<A>): SyncProducer<A>;
|
|
56
|
+
export declare function syncOnce<A>(f: () => A): UIO<A>;
|
|
57
|
+
/**
|
|
58
|
+
* @tsplus fluent fncts.io.Push.SyncProducer runSink
|
|
59
|
+
* @tsplus location "@fncts/io/Push/Producer/SyncProducer"
|
|
60
|
+
*/
|
|
61
|
+
export declare function runSink<R, E, A>(self: SyncProducer<A>, sink: Push.UnsafeSink<R, E, A>): IO<R, never, unknown>;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/Push/Sink.d.ts
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
import { HKT } from "@fncts/typelevel/HKT";
|
|
2
|
+
import { Newtype, NewtypeIso } from "@fncts/base/data/Newtype";
|
|
3
|
+
import { URIO, UIO } from "@fncts/io/IO/definition";
|
|
4
|
+
import { Environment } from "@fncts/base/data/Environment/definition";
|
|
5
|
+
import { Predicate } from "@fncts/base/data/Predicate/definition";
|
|
6
|
+
import { Maybe } from "@fncts/base/data/Maybe/definition";
|
|
7
|
+
import type { Cause } from "@fncts/base/data/Cause";
|
|
8
|
+
import { IO } from "@fncts/io/IO";
|
|
9
|
+
interface SinkN extends HKT {
|
|
10
|
+
readonly type: Sink<this["I"], this["R"], this["E"], this["A"]>;
|
|
11
|
+
readonly variance: {
|
|
12
|
+
I: "+";
|
|
13
|
+
R: "+";
|
|
14
|
+
E: "-";
|
|
15
|
+
A: "-";
|
|
16
|
+
};
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* @tsplus type fncts.io.Push.Sink
|
|
20
|
+
*/
|
|
21
|
+
export interface Sink<Env, R, E, A> extends Newtype<{
|
|
22
|
+
readonly Sink: unique symbol;
|
|
23
|
+
}, URIO<Env, UnsafeSink<R, E, A>>> {
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* @tsplus type fncts.io.Push.SinkOps
|
|
27
|
+
*/
|
|
28
|
+
export interface SinkOps extends NewtypeIso<SinkN> {
|
|
29
|
+
}
|
|
30
|
+
export declare const Sink: SinkOps;
|
|
31
|
+
/**
|
|
32
|
+
* @tsplus type fncts.io.Push.Sink
|
|
33
|
+
* @tsplus companion fncts.io.Push.SinkOps
|
|
34
|
+
*/
|
|
35
|
+
export declare abstract class UnsafeSink<R, in E, in A> {
|
|
36
|
+
abstract onSuccess(value: A): IO<R, never, void>;
|
|
37
|
+
abstract onFailure(cause: Cause<E>): IO<R, never, void>;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* @tsplus static fncts.io.Push.SinkOps unsafeMake
|
|
41
|
+
* @tsplus location "@fncts/io/Push/Sink"
|
|
42
|
+
*/
|
|
43
|
+
export declare function unsafeMakeSink<R, E, A>(onSuccess: (value: A) => IO<R, never, unknown>, onFailure: (cause: Cause<E>) => IO<R, never, unknown>): UnsafeSink<R, E, A>;
|
|
44
|
+
/**
|
|
45
|
+
* @tsplus static fncts.io.Push.SinkOps __call
|
|
46
|
+
* @tsplus location "@fncts/io/Push/Sink"
|
|
47
|
+
*/
|
|
48
|
+
export declare function makeSink<R, E, A>(onSuccess: (value: A) => IO<R, never, unknown>, onFailure: (cause: Cause<E>) => IO<R, never, unknown>): Sink<never, R, E, A>;
|
|
49
|
+
export declare class WithEarlyExit<R, E, A> extends UnsafeSink<R, E, A> {
|
|
50
|
+
readonly onSuccess: (value: A) => IO<R, never, void>;
|
|
51
|
+
readonly onFailure: (cause: Cause<E>) => IO<R, never, void>;
|
|
52
|
+
readonly earlyExit: UIO<void>;
|
|
53
|
+
constructor(onSuccess: (value: A) => IO<R, never, void>, onFailure: (cause: Cause<E>) => IO<R, never, void>, earlyExit: UIO<void>);
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* @tsplus static fncts.io.Push.SinkOps withEarlyExit
|
|
57
|
+
* @tsplus location "@fncts/io/Push/Sink"
|
|
58
|
+
*/
|
|
59
|
+
export declare function withEarlyExit<R, E, A, R1, B>(sink: UnsafeSink<R, E, A>, f: (sink: WithEarlyExit<R, E, A>) => IO<R1, E, B>): IO<R | R1, never, void>;
|
|
60
|
+
/**
|
|
61
|
+
* @tsplus pipeable fncts.io.Push.Sink provideSomeEnvironment
|
|
62
|
+
* @tsplus location "@fncts/io/Push/Sink"
|
|
63
|
+
*/
|
|
64
|
+
export declare function provideSomeEnvironment<R1>(environment: Environment<R1>): <Env, R, E, A>(self: Sink<Env, R, E, A>) => Sink<Env, Exclude<R, R1>, E, A>;
|
|
65
|
+
export {};
|