@fncts/io 0.0.8 → 0.0.11
Sign up to get free protection for your applications and to get access to all the features.
- 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
|