@fncts/io 0.0.8 → 0.0.11
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/Channel/api.d.ts +27 -4
- package/Channel/internal/MergeDecision.d.ts +14 -0
- package/IO/api/onTermination.d.ts +9 -0
- package/IO.d.ts +1 -0
- package/STM/api.d.ts +7 -0
- package/Sink/api.d.ts +637 -8
- package/TReentrantLock/api.d.ts +97 -0
- package/TReentrantLock/definition.d.ts +65 -0
- package/TReentrantLock.d.ts +2 -0
- package/_cjs/Cached/api.cjs +5 -5
- package/_cjs/Cached/api.cjs.map +1 -1
- package/_cjs/Channel/api/mapOutIOC.cjs +9 -9
- package/_cjs/Channel/api/mapOutIOC.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAllWith.cjs +18 -18
- package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
- package/_cjs/Channel/api/mergeWith.cjs +5 -5
- package/_cjs/Channel/api/mergeWith.cjs.map +1 -1
- package/_cjs/Channel/api/run.cjs +3 -3
- package/_cjs/Channel/api/runCollect.cjs +3 -3
- package/_cjs/Channel/api/runDrain.cjs +3 -3
- package/_cjs/Channel/api.cjs +90 -35
- package/_cjs/Channel/api.cjs.map +1 -1
- package/_cjs/Channel/internal/ChannelExecutor.cjs +16 -16
- package/_cjs/Channel/internal/ChannelExecutor.cjs.map +1 -1
- package/_cjs/Channel/internal/MergeDecision.cjs +11 -2
- package/_cjs/Channel/internal/MergeDecision.cjs.map +1 -1
- package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs +20 -20
- package/_cjs/Channel/internal/SingleProducerAsyncInput.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/fromIO.cjs +1 -1
- package/_cjs/Fiber/api/fromIO.cjs.map +1 -1
- package/_cjs/Fiber/api/interruptFork.cjs +3 -3
- package/_cjs/Fiber/api/interruptFork.cjs.map +1 -1
- package/_cjs/Fiber/api/zipWith.cjs +1 -1
- package/_cjs/Fiber/api/zipWith.cjs.map +1 -1
- package/_cjs/FiberRef/api/locallyScoped.cjs +3 -3
- package/_cjs/FiberRef/api/locallyScoped.cjs.map +1 -1
- package/_cjs/FiberRef/constructors.cjs +1 -1
- package/_cjs/FiberRef/constructors.cjs.map +1 -1
- package/_cjs/Future/api.cjs +1 -1
- package/_cjs/Future/api.cjs.map +1 -1
- package/_cjs/Hub/internal.cjs +1 -1
- package/_cjs/Hub/internal.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/bracketExit.cjs +1 -1
- package/_cjs/IO/api/bracketExit.cjs.map +1 -1
- package/_cjs/IO/api/environment.cjs +5 -5
- package/_cjs/IO/api/environment.cjs.map +1 -1
- package/_cjs/IO/api/foreachC.cjs +3 -3
- 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 +1 -1
- package/_cjs/IO/api/forkIn.cjs.map +1 -1
- package/_cjs/IO/api/forkScoped.cjs +1 -1
- package/_cjs/IO/api/forkScoped.cjs.map +1 -1
- package/_cjs/IO/api/fulfill.cjs +1 -1
- package/_cjs/IO/api/fulfill.cjs.map +1 -1
- package/_cjs/IO/api/interrupt.cjs +4 -4
- package/_cjs/IO/api/interrupt.cjs.map +1 -1
- package/_cjs/IO/api/memoize.cjs +4 -4
- package/_cjs/IO/api/memoize.cjs.map +1 -1
- package/_cjs/IO/api/onTermination.cjs +28 -0
- package/_cjs/IO/api/onTermination.cjs.map +1 -0
- package/_cjs/IO/api/raceFirst.cjs +1 -1
- package/_cjs/IO/api/raceFirst.cjs.map +1 -1
- package/_cjs/IO/api/repeat.cjs +2 -2
- package/_cjs/IO/api/repeat.cjs.map +1 -1
- package/_cjs/IO/api/retry.cjs +2 -2
- package/_cjs/IO/api/retry.cjs.map +1 -1
- package/_cjs/IO/api/schedule.cjs +2 -2
- package/_cjs/IO/api/schedule.cjs.map +1 -1
- package/_cjs/IO/api/timeout.cjs +3 -3
- package/_cjs/IO/api/timeout.cjs.map +1 -1
- package/_cjs/IO/api/zipC.cjs +5 -5
- package/_cjs/IO/api/zipC.cjs.map +1 -1
- package/_cjs/IO/api.cjs +4 -4
- package/_cjs/IO/api.cjs.map +1 -1
- package/_cjs/IO.cjs +13 -0
- package/_cjs/IO.cjs.map +1 -1
- package/_cjs/Layer/MemoMap.cjs +24 -24
- package/_cjs/Layer/MemoMap.cjs.map +1 -1
- package/_cjs/Layer/api.cjs +4 -4
- package/_cjs/Layer/api.cjs.map +1 -1
- package/_cjs/Ref/DerivedAll.cjs +1 -1
- package/_cjs/Ref/DerivedAll.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/api.cjs +3 -3
- package/_cjs/Ref/Synchronized/api.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/constructors.cjs +3 -3
- package/_cjs/Ref/Synchronized/constructors.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/definition.cjs +3 -3
- package/_cjs/Ref/Synchronized/definition.cjs.map +1 -1
- package/_cjs/Ref/api/modify.cjs +10 -10
- package/_cjs/Ref/api/modify.cjs.map +1 -1
- package/_cjs/STM/api.cjs +15 -6
- package/_cjs/STM/api.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs +1 -1
- package/_cjs/Scope/ReleaseMap/api/releaseAll.cjs.map +1 -1
- package/_cjs/Scope/ReleaseMap/api.cjs +13 -13
- package/_cjs/Scope/ReleaseMap/api.cjs.map +1 -1
- package/_cjs/ScopedRef/api.cjs +1 -1
- package/_cjs/ScopedRef/api.cjs.map +1 -1
- package/_cjs/Sink/api.cjs +1475 -42
- package/_cjs/Sink/api.cjs.map +1 -1
- package/_cjs/Stream/api.cjs +42 -42
- package/_cjs/Stream/api.cjs.map +1 -1
- package/_cjs/TReentrantLock/api.cjs +297 -0
- package/_cjs/TReentrantLock/api.cjs.map +1 -0
- package/_cjs/TReentrantLock/definition.cjs +125 -0
- package/_cjs/TReentrantLock/definition.cjs.map +1 -0
- package/_cjs/TReentrantLock.cjs +32 -0
- package/_cjs/TReentrantLock.cjs.map +1 -0
- package/_cjs/TRef/api.cjs +7 -7
- package/_cjs/TRef/api.cjs.map +1 -1
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +38 -0
- package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -0
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +38 -0
- package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -0
- package/_cjs/collection/immutable/Conc/filterIO.cjs +35 -0
- package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -0
- package/_cjs/collection/immutable/Conc.cjs +13 -0
- package/_cjs/collection/immutable/Conc.cjs.map +1 -1
- package/_cjs/data/Exit/foreachIO.cjs +1 -1
- package/_cjs/data/Exit/foreachIO.cjs.map +1 -1
- package/_mjs/Cached/api.mjs +5 -5
- package/_mjs/Cached/api.mjs.map +1 -1
- package/_mjs/Channel/api/mapOutIOC.mjs +9 -9
- package/_mjs/Channel/api/mapOutIOC.mjs.map +1 -1
- package/_mjs/Channel/api/mergeAllWith.mjs +18 -18
- package/_mjs/Channel/api/mergeAllWith.mjs.map +1 -1
- package/_mjs/Channel/api/mergeWith.mjs +5 -5
- package/_mjs/Channel/api/mergeWith.mjs.map +1 -1
- package/_mjs/Channel/api/run.mjs +3 -3
- package/_mjs/Channel/api/runCollect.mjs +3 -3
- package/_mjs/Channel/api/runDrain.mjs +3 -3
- package/_mjs/Channel/api.mjs +78 -33
- package/_mjs/Channel/api.mjs.map +1 -1
- package/_mjs/Channel/internal/ChannelExecutor.mjs +16 -16
- package/_mjs/Channel/internal/ChannelExecutor.mjs.map +1 -1
- package/_mjs/Channel/internal/MergeDecision.mjs +7 -0
- package/_mjs/Channel/internal/MergeDecision.mjs.map +1 -1
- package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs +20 -20
- package/_mjs/Channel/internal/SingleProducerAsyncInput.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/fromIO.mjs +1 -1
- package/_mjs/Fiber/api/fromIO.mjs.map +1 -1
- package/_mjs/Fiber/api/interruptFork.mjs +3 -3
- package/_mjs/Fiber/api/interruptFork.mjs.map +1 -1
- package/_mjs/Fiber/api/zipWith.mjs +1 -1
- package/_mjs/Fiber/api/zipWith.mjs.map +1 -1
- package/_mjs/FiberRef/api/locallyScoped.mjs +3 -3
- package/_mjs/FiberRef/api/locallyScoped.mjs.map +1 -1
- package/_mjs/FiberRef/constructors.mjs +1 -1
- package/_mjs/FiberRef/constructors.mjs.map +1 -1
- package/_mjs/Future/api.mjs +1 -1
- package/_mjs/Future/api.mjs.map +1 -1
- package/_mjs/Hub/internal.mjs +1 -1
- package/_mjs/Hub/internal.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/bracketExit.mjs +1 -1
- package/_mjs/IO/api/bracketExit.mjs.map +1 -1
- package/_mjs/IO/api/environment.mjs +5 -5
- package/_mjs/IO/api/environment.mjs.map +1 -1
- package/_mjs/IO/api/foreachC.mjs +3 -3
- package/_mjs/IO/api/foreachC.mjs.map +1 -1
- package/_mjs/IO/api/foreachExec.mjs +3 -3
- 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 +1 -1
- package/_mjs/IO/api/forkIn.mjs.map +1 -1
- package/_mjs/IO/api/forkScoped.mjs +1 -1
- package/_mjs/IO/api/forkScoped.mjs.map +1 -1
- package/_mjs/IO/api/fulfill.mjs +1 -1
- package/_mjs/IO/api/fulfill.mjs.map +1 -1
- package/_mjs/IO/api/interrupt.mjs +4 -4
- package/_mjs/IO/api/interrupt.mjs.map +1 -1
- package/_mjs/IO/api/memoize.mjs +4 -4
- package/_mjs/IO/api/memoize.mjs.map +1 -1
- package/_mjs/IO/api/onTermination.mjs +13 -0
- package/_mjs/IO/api/onTermination.mjs.map +1 -0
- package/_mjs/IO/api/raceFirst.mjs +1 -1
- package/_mjs/IO/api/raceFirst.mjs.map +1 -1
- package/_mjs/IO/api/repeat.mjs +2 -2
- package/_mjs/IO/api/repeat.mjs.map +1 -1
- package/_mjs/IO/api/retry.mjs +2 -2
- package/_mjs/IO/api/retry.mjs.map +1 -1
- package/_mjs/IO/api/schedule.mjs +2 -2
- package/_mjs/IO/api/schedule.mjs.map +1 -1
- package/_mjs/IO/api/timeout.mjs +3 -3
- package/_mjs/IO/api/timeout.mjs.map +1 -1
- package/_mjs/IO/api/zipC.mjs +5 -5
- package/_mjs/IO/api/zipC.mjs.map +1 -1
- package/_mjs/IO/api.mjs +4 -4
- package/_mjs/IO/api.mjs.map +1 -1
- package/_mjs/IO.mjs +1 -0
- package/_mjs/IO.mjs.map +1 -1
- package/_mjs/Layer/MemoMap.mjs +24 -24
- package/_mjs/Layer/MemoMap.mjs.map +1 -1
- package/_mjs/Layer/api.mjs +4 -4
- package/_mjs/Layer/api.mjs.map +1 -1
- package/_mjs/Ref/DerivedAll.mjs +1 -1
- package/_mjs/Ref/DerivedAll.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/api.mjs +3 -3
- package/_mjs/Ref/Synchronized/api.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/constructors.mjs +3 -3
- package/_mjs/Ref/Synchronized/constructors.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/definition.mjs +3 -3
- package/_mjs/Ref/Synchronized/definition.mjs.map +1 -1
- package/_mjs/Ref/api/modify.mjs +10 -10
- package/_mjs/Ref/api/modify.mjs.map +1 -1
- package/_mjs/STM/api.mjs +13 -6
- package/_mjs/STM/api.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs +1 -1
- package/_mjs/Scope/ReleaseMap/api/releaseAll.mjs.map +1 -1
- package/_mjs/Scope/ReleaseMap/api.mjs +13 -13
- package/_mjs/Scope/ReleaseMap/api.mjs.map +1 -1
- package/_mjs/ScopedRef/api.mjs +1 -1
- package/_mjs/ScopedRef/api.mjs.map +1 -1
- package/_mjs/Sink/api.mjs +1287 -37
- package/_mjs/Sink/api.mjs.map +1 -1
- package/_mjs/Stream/api.mjs +42 -42
- package/_mjs/Stream/api.mjs.map +1 -1
- package/_mjs/TReentrantLock/api.mjs +243 -0
- package/_mjs/TReentrantLock/api.mjs.map +1 -0
- package/_mjs/TReentrantLock/definition.mjs +102 -0
- package/_mjs/TReentrantLock/definition.mjs.map +1 -0
- package/_mjs/TReentrantLock.mjs +4 -0
- package/_mjs/TReentrantLock.mjs.map +1 -0
- package/_mjs/TRef/api.mjs +7 -7
- package/_mjs/TRef/api.mjs.map +1 -1
- package/_mjs/collection/immutable/Conc/dropUntilIO.mjs +26 -0
- package/_mjs/collection/immutable/Conc/dropUntilIO.mjs.map +1 -0
- package/_mjs/collection/immutable/Conc/dropWhileIO.mjs +26 -0
- package/_mjs/collection/immutable/Conc/dropWhileIO.mjs.map +1 -0
- package/_mjs/collection/immutable/Conc/filterIO.mjs +22 -0
- package/_mjs/collection/immutable/Conc/filterIO.mjs.map +1 -0
- package/_mjs/collection/immutable/Conc.mjs +1 -0
- package/_mjs/collection/immutable/Conc.mjs.map +1 -1
- package/_mjs/data/Exit/foreachIO.mjs +1 -1
- package/_mjs/data/Exit/foreachIO.mjs.map +1 -1
- package/_src/Channel/api.ts +98 -11
- package/_src/Channel/internal/MergeDecision.ts +15 -0
- package/_src/IO/api/onTermination.ts +17 -0
- package/_src/IO/api.ts +1 -1
- package/_src/IO.ts +1 -0
- package/_src/STM/api.ts +9 -0
- package/_src/Sink/api.ts +1725 -36
- package/_src/TFuture/definition.ts +1 -1
- package/_src/TReentrantLock/api.ts +193 -0
- package/_src/TReentrantLock/definition.ts +86 -0
- package/_src/TReentrantLock.ts +4 -0
- package/_src/collection/immutable/Conc/dropUntilIO.ts +24 -0
- package/_src/collection/immutable/Conc/dropWhileIO.ts +26 -0
- package/_src/collection/immutable/Conc/filterIO.ts +16 -0
- package/_src/collection/immutable/Conc.ts +1 -0
- package/collection/immutable/Conc/dropUntilIO.d.ts +7 -0
- package/collection/immutable/Conc/dropWhileIO.d.ts +7 -0
- package/collection/immutable/Conc/filterIO.d.ts +7 -0
- package/collection/immutable/Conc.d.ts +1 -0
- package/package.json +3 -3
package/Channel/api.d.ts
CHANGED
|
@@ -12,6 +12,7 @@ import { Queue } from "@fncts/io/Queue/definition";
|
|
|
12
12
|
import { FiberId } from "@fncts/base/data/FiberId";
|
|
13
13
|
import { Has } from "@fncts/base/typeclass/Has";
|
|
14
14
|
import { Scope } from "@fncts/io/Scope/definition";
|
|
15
|
+
import { Hub } from "@fncts/io/Hub/definition";
|
|
15
16
|
import type { AsyncInputConsumer } from "@fncts/io/Channel/internal/AsyncInputConsumer";
|
|
16
17
|
import type { AsyncInputProducer } from "@fncts/io/Channel/internal/AsyncInputProducer";
|
|
17
18
|
import type { UpstreamPullRequest } from "@fncts/io/Channel/UpstreamPullRequest";
|
|
@@ -88,6 +89,11 @@ export declare function catchAll_<Env, Env1, InErr, InErr1, InElem, InElem1, InD
|
|
|
88
89
|
* @tsplus location "@fncts/io/Channel/api"
|
|
89
90
|
*/
|
|
90
91
|
export declare function catchAllCause_<Env, Env1, InErr, InErr1, InElem, InElem1, InDone, InDone1, OutErr, OutErr1, OutElem, OutElem1, OutDone, OutDone1>(self: Channel<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>, f: (cause: Cause<OutErr>) => Channel<Env1, InErr1, InElem1, InDone1, OutErr1, OutElem1, OutDone1>): Channel<Env & Env1, InErr & InErr1, InElem & InElem1, InDone & InDone1, OutErr1, OutElem | OutElem1, OutDone | OutDone1>;
|
|
92
|
+
/**
|
|
93
|
+
* @tsplus getter fncts.io.Channel collectElements
|
|
94
|
+
* @tsplus location "@fncts/io/Channel/api"
|
|
95
|
+
*/
|
|
96
|
+
export declare function collectElements<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>(self: Channel<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>): Channel<Env, InErr, InElem, InDone, OutErr, never, readonly [Conc<OutElem>, OutDone]>;
|
|
91
97
|
/**
|
|
92
98
|
* @tsplus getter fncts.io.Channel concatAll
|
|
93
99
|
* @tsplus location "@fncts/io/Channel/api"
|
|
@@ -246,7 +252,7 @@ export declare function fromQueue<Err, Elem, Done>(queue: Queue.Dequeue<Either<E
|
|
|
246
252
|
* @tsplus fluent fncts.io.Channel provideEnvironment
|
|
247
253
|
* @tsplus location "@fncts/io/Channel/api"
|
|
248
254
|
*/
|
|
249
|
-
export declare function provideEnvironment_<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>(self: Channel<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>, env: Environment<Env
|
|
255
|
+
export declare function provideEnvironment_<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>(self: Channel<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>, env: Lazy<Environment<Env>>): Channel<unknown, InErr, InElem, InDone, OutErr, OutElem, OutDone>;
|
|
250
256
|
/**
|
|
251
257
|
* @tsplus fluent fncts.io.Channel contramapEnvironment
|
|
252
258
|
* @tsplus location "@fncts/io/Channel/api"
|
|
@@ -318,6 +324,12 @@ export declare function mapOutIO_<Env, Env1, InErr, InElem, InDone, OutErr, OutE
|
|
|
318
324
|
* @tsplus location "@fncts/io/Channel/api"
|
|
319
325
|
*/
|
|
320
326
|
export declare function matchCauseChannel_<Env, Env1, Env2, InErr, InErr1, InErr2, InElem, InElem1, InElem2, InDone, InDone1, InDone2, OutErr, OutErr2, OutErr3, OutElem, OutElem1, OutElem2, OutDone, OutDone2, OutDone3>(channel: Channel<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>, onError: (c: Cause<OutErr>) => Channel<Env1, InErr1, InElem1, InDone1, OutErr2, OutElem1, OutDone2>, onSuccess: (o: OutDone) => Channel<Env2, InErr2, InElem2, InDone2, OutErr3, OutElem2, OutDone3>): Channel<Env & Env1 & Env2, InErr & InErr1 & InErr2, InElem & InElem1 & InElem2, InDone & InDone1 & InDone2, OutErr2 | OutErr3, OutElem | OutElem1 | OutElem2, OutDone2 | OutDone3>;
|
|
327
|
+
/**
|
|
328
|
+
* Fold the channel exposing success and full error cause
|
|
329
|
+
* @tsplus fluent fncts.io.Channel matchChannel
|
|
330
|
+
* @tsplus location "@fncts/io/Channel/api"
|
|
331
|
+
*/
|
|
332
|
+
export declare function matchChannel_<Env, Env1, Env2, InErr, InErr1, InErr2, InElem, InElem1, InElem2, InDone, InDone1, InDone2, OutErr, OutErr2, OutErr3, OutElem, OutElem1, OutElem2, OutDone, OutDone2, OutDone3>(channel: Channel<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>, onError: (e: OutErr) => Channel<Env1, InErr1, InElem1, InDone1, OutErr2, OutElem1, OutDone2>, onSuccess: (o: OutDone) => Channel<Env2, InErr2, InElem2, InDone2, OutErr3, OutElem2, OutDone3>): Channel<Env & Env1 & Env2, InErr & InErr1 & InErr2, InElem & InElem1 & InElem2, InDone & InDone1 & InDone2, OutErr2 | OutErr3, OutElem | OutElem1 | OutElem2, OutDone2 | OutDone3>;
|
|
321
333
|
export declare const never: Channel<unknown, unknown, unknown, unknown, never, never, never>;
|
|
322
334
|
/**
|
|
323
335
|
* Returns a new channel that will perform the operations of this one, until failure, and then
|
|
@@ -339,6 +351,7 @@ export declare function orHaltWith_<Env, InErr, InElem, InDone, OutErr, OutElem,
|
|
|
339
351
|
/**
|
|
340
352
|
* Pipe the output of a channel into the input of another
|
|
341
353
|
* @tsplus fluent fncts.io.Channel pipeTo
|
|
354
|
+
* @tsplus operator fncts.io.Channel >>>
|
|
342
355
|
* @tsplus location "@fncts/io/Channel/api"
|
|
343
356
|
*/
|
|
344
357
|
export declare function pipeTo_<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone, Env1, OutErr1, OutElem1, OutDone1>(left: Channel<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>, right: Channel<Env1, OutErr, OutElem, OutDone, OutErr1, OutElem1, OutDone1>): Channel<Env & Env1, InErr, InElem, InDone, OutErr1, OutElem1, OutDone1>;
|
|
@@ -376,10 +389,10 @@ export declare function readWith<Env, Env1, Env2, InErr, InElem, InDone, OutErr,
|
|
|
376
389
|
*/
|
|
377
390
|
export declare function repeated<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>(self: Channel<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>): Channel<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>;
|
|
378
391
|
/**
|
|
379
|
-
* @tsplus static fncts.io.
|
|
392
|
+
* @tsplus static fncts.io.ChannelOps toQueue
|
|
380
393
|
* @tsplus location "@fncts/io/Channel/api"
|
|
381
394
|
*/
|
|
382
|
-
export declare function toQueue<Err, Done, Elem>(queue: Queue.Enqueue<Either<Exit<Err, Done>, Elem
|
|
395
|
+
export declare function toQueue<Err, Done, Elem>(queue: Lazy<Queue.Enqueue<Either<Exit<Err, Done>, Elem>>>): Channel<unknown, Err, Elem, Done, never, never, unknown>;
|
|
383
396
|
/**
|
|
384
397
|
* Writes an output to the channel
|
|
385
398
|
* @tsplus static fncts.io.ChannelOps write
|
|
@@ -418,4 +431,14 @@ export declare function unwrap<R, E, Env, InErr, InElem, InDone, OutErr, OutElem
|
|
|
418
431
|
* @tsplus static fncts.io.ChannelOps unwrapScoped
|
|
419
432
|
* @tsplus location "@fncts/io/Channel/api"
|
|
420
433
|
*/
|
|
421
|
-
export declare function unwrapScoped<R, E, Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>(self: IO<R & Has<Scope>, E, Channel<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone
|
|
434
|
+
export declare function unwrapScoped<R, E, Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>(self: Lazy<IO<R & Has<Scope>, E, Channel<Env, InErr, InElem, InDone, OutErr, OutElem, OutDone>>>): Channel<R & Env, InErr, InElem, InDone, E | OutErr, OutElem, OutDone>;
|
|
435
|
+
/**
|
|
436
|
+
* @tsplus static fncts.io.ChannelOps fromHubScoped
|
|
437
|
+
* @tsplus location "@fncts/io/Channel/api"
|
|
438
|
+
*/
|
|
439
|
+
export declare function fromHubScoped<Err, Done, Elem>(hub: Lazy<Hub<Either<Exit<Err, Done>, Elem>>>): IO<Has<Scope>, never, Channel<unknown, unknown, unknown, unknown, Err, Elem, Done>>;
|
|
440
|
+
/**
|
|
441
|
+
* @tsplus static fncts.io.ChannelOps toHub
|
|
442
|
+
* @tsplus location "@fncts/io/Channel/api"
|
|
443
|
+
*/
|
|
444
|
+
export declare function toHub<Err, Done, Elem>(hub: Lazy<Hub<Either<Exit<Err, Done>, Elem>>>): Channel<unknown, Err, Elem, Done, never, never, unknown>;
|
|
@@ -18,6 +18,20 @@ export declare abstract class MergeDecision<R, E0, Z0, E, Z> {
|
|
|
18
18
|
readonly _E: () => E;
|
|
19
19
|
readonly _Z: () => Z;
|
|
20
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* @tsplus unify fncts.io.Channel.MergeDecision
|
|
23
|
+
*/
|
|
24
|
+
export declare function unifyMergeDecision<X extends MergeDecision<any, any, any, any, any>>(_: X): MergeDecision<[
|
|
25
|
+
X
|
|
26
|
+
] extends [MergeDecision<infer R, any, any, any, any>] ? R : never, [
|
|
27
|
+
X
|
|
28
|
+
] extends [MergeDecision<any, infer E0, any, any, any>] ? E0 : never, [
|
|
29
|
+
X
|
|
30
|
+
] extends [MergeDecision<any, any, infer Z0, any, any>] ? Z0 : never, [
|
|
31
|
+
X
|
|
32
|
+
] extends [MergeDecision<any, any, any, infer E, any>] ? E : never, [
|
|
33
|
+
X
|
|
34
|
+
] extends [MergeDecision<any, any, any, any, infer Z>] ? Z : never>;
|
|
21
35
|
/**
|
|
22
36
|
* @tsplus fluent fncts.io.Channel.MergeDecision concrete
|
|
23
37
|
* @tsplus macro remove
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { Lazy } from "@fncts/base/data/function";
|
|
2
|
+
import { IO, URIO } from "@fncts/io/IO/definition";
|
|
3
|
+
import { Cause } from "@fncts/base/data/Cause";
|
|
4
|
+
import { Exit } from "@fncts/base/data/Exit";
|
|
5
|
+
/**
|
|
6
|
+
* @tsplus fluent fncts.io.IO onTermination
|
|
7
|
+
* @tsplus location "@fncts/io/IO/api/onTermination"
|
|
8
|
+
*/
|
|
9
|
+
export declare function onTermination<R, E, A, R1>(self: Lazy<IO<R, E, A>>, cleanup: (cause: Cause<never>) => URIO<R1, any>, __tsPlusTrace?: string): IO<R & R1, E, A>;
|
package/IO.d.ts
CHANGED
|
@@ -27,6 +27,7 @@ export * from "./IO/api/interrupt.js";
|
|
|
27
27
|
export * from "./IO/api/memoize.js";
|
|
28
28
|
export * from "./IO/api/once.js";
|
|
29
29
|
export * from "./IO/api/onExit.js";
|
|
30
|
+
export * from "./IO/api/onTermination.js";
|
|
30
31
|
export * from "./IO/api/provideLayer.js";
|
|
31
32
|
export * from "./IO/api/provideSomeLayer.js";
|
|
32
33
|
export * from "./IO/api/race.js";
|
package/STM/api.d.ts
CHANGED
|
@@ -1,10 +1,12 @@
|
|
|
1
1
|
import { Lazy } from "@fncts/base/data/function";
|
|
2
2
|
import { Maybe } from "@fncts/base/data/Maybe";
|
|
3
3
|
import { Either } from "@fncts/base/data/Either";
|
|
4
|
+
import { FiberId } from "@fncts/base/data/FiberId";
|
|
4
5
|
import { IO } from "@fncts/io/IO/definition";
|
|
5
6
|
import { Environment } from "@fncts/base/data/Environment";
|
|
6
7
|
import { Refinement } from "@fncts/base/data/Refinement";
|
|
7
8
|
import { Predicate } from "@fncts/base/data/Predicate";
|
|
9
|
+
import type { Journal } from "./internal/Journal.js";
|
|
8
10
|
import { STM } from "./definition.js";
|
|
9
11
|
/**
|
|
10
12
|
* Maps the success value of this effect to the specified constant value.
|
|
@@ -31,6 +33,11 @@ export declare function asJustError<R, E, A>(stm: STM<R, E, A>): STM<R, Maybe<E>
|
|
|
31
33
|
* @tsplus location "@fncts/io/STM/api"
|
|
32
34
|
*/
|
|
33
35
|
export declare function absolve<R, E, E1, A>(z: STM<R, E, Either<E1, A>>): STM<R, E | E1, A>;
|
|
36
|
+
/**
|
|
37
|
+
* @tsplus static fncts.io.STMOps Effect
|
|
38
|
+
* @tsplus location "@fncts/io/STM/api"
|
|
39
|
+
*/
|
|
40
|
+
export declare function makeEffect<R, E, A>(f: (journal: Journal, fiberId: FiberId, r: R) => A): STM<R, E, A>;
|
|
34
41
|
/**
|
|
35
42
|
* Retrieves the environment inside an stm.
|
|
36
43
|
* @tsplus static fncts.io.STMOps environment
|