@fncts/io 0.0.9 → 0.0.12

Sign up to get free protection for your applications and to get access to all the features.
Files changed (105) hide show
  1. package/Channel/api.d.ts +27 -4
  2. package/Channel/internal/MergeDecision.d.ts +14 -0
  3. package/IO/runtime.d.ts +8 -1
  4. package/STM/api.d.ts +7 -0
  5. package/Sink/api.d.ts +637 -8
  6. package/TReentrantLock/api.d.ts +97 -0
  7. package/TReentrantLock/definition.d.ts +65 -0
  8. package/TReentrantLock.d.ts +2 -0
  9. package/_cjs/Cached/api.cjs +1 -1
  10. package/_cjs/Cached/api.cjs.map +1 -1
  11. package/_cjs/Channel/api/mapOutIOC.cjs +1 -1
  12. package/_cjs/Channel/api/mapOutIOC.cjs.map +1 -1
  13. package/_cjs/Channel/api/mergeAllWith.cjs +2 -2
  14. package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
  15. package/_cjs/Channel/api/mergeWith.cjs +1 -1
  16. package/_cjs/Channel/api/mergeWith.cjs.map +1 -1
  17. package/_cjs/Channel/api.cjs +87 -32
  18. package/_cjs/Channel/api.cjs.map +1 -1
  19. package/_cjs/Channel/internal/MergeDecision.cjs +11 -2
  20. package/_cjs/Channel/internal/MergeDecision.cjs.map +1 -1
  21. package/_cjs/IO/api/foreachC.cjs +2 -2
  22. package/_cjs/IO/api/foreachC.cjs.map +1 -1
  23. package/_cjs/IO/runtime.cjs +18 -7
  24. package/_cjs/IO/runtime.cjs.map +1 -1
  25. package/_cjs/STM/api.cjs +15 -6
  26. package/_cjs/STM/api.cjs.map +1 -1
  27. package/_cjs/Sink/api.cjs +1475 -42
  28. package/_cjs/Sink/api.cjs.map +1 -1
  29. package/_cjs/Stream/api.cjs +29 -29
  30. package/_cjs/Stream/api.cjs.map +1 -1
  31. package/_cjs/TReentrantLock/api.cjs +297 -0
  32. package/_cjs/TReentrantLock/api.cjs.map +1 -0
  33. package/_cjs/TReentrantLock/definition.cjs +125 -0
  34. package/_cjs/TReentrantLock/definition.cjs.map +1 -0
  35. package/_cjs/TReentrantLock.cjs +32 -0
  36. package/_cjs/TReentrantLock.cjs.map +1 -0
  37. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs +38 -0
  38. package/_cjs/collection/immutable/Conc/dropUntilIO.cjs.map +1 -0
  39. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs +38 -0
  40. package/_cjs/collection/immutable/Conc/dropWhileIO.cjs.map +1 -0
  41. package/_cjs/collection/immutable/Conc/filterIO.cjs +35 -0
  42. package/_cjs/collection/immutable/Conc/filterIO.cjs.map +1 -0
  43. package/_cjs/collection/immutable/Conc.cjs +13 -0
  44. package/_cjs/collection/immutable/Conc.cjs.map +1 -1
  45. package/_cjs/demo.cjs +15 -0
  46. package/_cjs/demo.cjs.map +1 -0
  47. package/_mjs/Cached/api.mjs +1 -1
  48. package/_mjs/Cached/api.mjs.map +1 -1
  49. package/_mjs/Channel/api/mapOutIOC.mjs +1 -1
  50. package/_mjs/Channel/api/mapOutIOC.mjs.map +1 -1
  51. package/_mjs/Channel/api/mergeAllWith.mjs +2 -2
  52. package/_mjs/Channel/api/mergeAllWith.mjs.map +1 -1
  53. package/_mjs/Channel/api/mergeWith.mjs +1 -1
  54. package/_mjs/Channel/api/mergeWith.mjs.map +1 -1
  55. package/_mjs/Channel/api.mjs +75 -30
  56. package/_mjs/Channel/api.mjs.map +1 -1
  57. package/_mjs/Channel/internal/MergeDecision.mjs +7 -0
  58. package/_mjs/Channel/internal/MergeDecision.mjs.map +1 -1
  59. package/_mjs/IO/api/foreachC.mjs +2 -2
  60. package/_mjs/IO/api/foreachC.mjs.map +1 -1
  61. package/_mjs/IO/runtime.mjs +15 -5
  62. package/_mjs/IO/runtime.mjs.map +1 -1
  63. package/_mjs/STM/api.mjs +13 -6
  64. package/_mjs/STM/api.mjs.map +1 -1
  65. package/_mjs/Sink/api.mjs +1287 -37
  66. package/_mjs/Sink/api.mjs.map +1 -1
  67. package/_mjs/Stream/api.mjs +29 -29
  68. package/_mjs/Stream/api.mjs.map +1 -1
  69. package/_mjs/TReentrantLock/api.mjs +243 -0
  70. package/_mjs/TReentrantLock/api.mjs.map +1 -0
  71. package/_mjs/TReentrantLock/definition.mjs +102 -0
  72. package/_mjs/TReentrantLock/definition.mjs.map +1 -0
  73. package/_mjs/TReentrantLock.mjs +4 -0
  74. package/_mjs/TReentrantLock.mjs.map +1 -0
  75. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs +26 -0
  76. package/_mjs/collection/immutable/Conc/dropUntilIO.mjs.map +1 -0
  77. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs +26 -0
  78. package/_mjs/collection/immutable/Conc/dropWhileIO.mjs.map +1 -0
  79. package/_mjs/collection/immutable/Conc/filterIO.mjs +22 -0
  80. package/_mjs/collection/immutable/Conc/filterIO.mjs.map +1 -0
  81. package/_mjs/collection/immutable/Conc.mjs +1 -0
  82. package/_mjs/collection/immutable/Conc.mjs.map +1 -1
  83. package/_mjs/demo.mjs +7 -0
  84. package/_mjs/demo.mjs.map +1 -0
  85. package/_src/Channel/api.ts +98 -11
  86. package/_src/Channel/internal/MergeDecision.ts +15 -0
  87. package/_src/IO/api.ts +1 -1
  88. package/_src/IO/runtime.ts +18 -11
  89. package/_src/STM/api.ts +9 -0
  90. package/_src/Sink/api.ts +1725 -36
  91. package/_src/TFuture/definition.ts +1 -1
  92. package/_src/TReentrantLock/api.ts +193 -0
  93. package/_src/TReentrantLock/definition.ts +86 -0
  94. package/_src/TReentrantLock.ts +4 -0
  95. package/_src/collection/immutable/Conc/dropUntilIO.ts +24 -0
  96. package/_src/collection/immutable/Conc/dropWhileIO.ts +26 -0
  97. package/_src/collection/immutable/Conc/filterIO.ts +16 -0
  98. package/_src/collection/immutable/Conc.ts +1 -0
  99. package/_src/demo.ts +6 -0
  100. package/collection/immutable/Conc/dropUntilIO.d.ts +7 -0
  101. package/collection/immutable/Conc/dropWhileIO.d.ts +7 -0
  102. package/collection/immutable/Conc/filterIO.d.ts +7 -0
  103. package/collection/immutable/Conc.d.ts +1 -0
  104. package/demo.d.ts +1 -0
  105. package/package.json +3 -3
@@ -0,0 +1,97 @@
1
+ import { FiberId } from "@fncts/base/data/FiberId";
2
+ import { USTM } from "@fncts/io/STM/definition";
3
+ import { IO } from "@fncts/io/IO/definition";
4
+ import { Has } from "@fncts/base/typeclass/Has";
5
+ import { Scope } from "@fncts/io/Scope/definition";
6
+ import { ReadLock, TReentrantLock } from "./definition.js";
7
+ /**
8
+ * @tsplus static fncts.io.TReentrantLock.ReadLockOps empty
9
+ * @tsplus location "@fncts/io/TReentrantLock/api"
10
+ */
11
+ export declare const emptyReadLock: ReadLock;
12
+ /**
13
+ * @tsplus static fncts.io.TReentrantLock.ReadLockOps __call
14
+ * @tsplus location "@fncts/io/TReentrantLock/api"
15
+ */
16
+ export declare function makeReadLock(fiberId: FiberId, count: number): ReadLock;
17
+ /**
18
+ * @tsplus static fncts.io.TReentrantLockOps make
19
+ * @tsplus static fncts.io.TReentrantLockOps __call
20
+ * @tsplus location "@fncts/io/TReentrantLock/api"
21
+ */
22
+ export declare function make(): USTM<TReentrantLock>;
23
+ /**
24
+ * @tsplus getter fncts.io.TReentrantLock acquireRead
25
+ * @tsplus location "@fncts/io/TReentrantLock/api"
26
+ */
27
+ export declare function acquireRead(self: TReentrantLock): USTM<number>;
28
+ /**
29
+ * @tsplus getter fncts.io.TReentrantLock acquireWrite
30
+ * @tsplus location "@fncts/io/TReentrantLock/api"
31
+ */
32
+ export declare function acquireWrite(self: TReentrantLock): USTM<number>;
33
+ /**
34
+ * @tsplus getter fncts.io.TReentrantLock releaseRead
35
+ * @tsplus location "@fncts/io/TReentrantLock/api"
36
+ */
37
+ export declare function releaseRead(self: TReentrantLock): USTM<number>;
38
+ /**
39
+ * @tsplus getter fncts.io.TReentrantLock releaseWrite
40
+ * @tsplus location "@fncts/io/TReentrantLock/api"
41
+ */
42
+ export declare function releaseWrite(self: TReentrantLock): USTM<number>;
43
+ /**
44
+ * @tsplus fluent fncts.io.TReentrantLock withReadLock
45
+ * @tsplus location "@fncts/io/TReentrantLock/api"
46
+ */
47
+ export declare function withReadLock<R, E, A>(self: TReentrantLock, io: IO<R, E, A>): IO<R, E, A>;
48
+ /**
49
+ * @tsplus fluent fncts.io.TReentrantLock withWriteLock
50
+ * @tsplus location "@fncts/io/TReentrantLock/api"
51
+ */
52
+ export declare function withWriteLock<R, E, A>(self: TReentrantLock, io: IO<R, E, A>): IO<R, E, A>;
53
+ /**
54
+ * @tsplus getter fncts.io.TReentrantLock readLock
55
+ * @tsplus location "@fncts/io/TReentrantLock/api"
56
+ */
57
+ export declare function readLock(self: TReentrantLock, __tsplusTrace?: string): IO<Has<Scope>, never, number>;
58
+ /**
59
+ * @tsplus getter fncts.io.TReentrantLock writeLock
60
+ * @tsplus location "@fncts/io/TReentrantLock/api"
61
+ */
62
+ export declare function writeLock(self: TReentrantLock, __tsplusTrace?: string): IO<Has<Scope>, never, number>;
63
+ /**
64
+ * @tsplus getter fncts.io.TReentrantLock readLocked
65
+ * @tsplus location "@fncts/io/TReentrantLock/api"
66
+ */
67
+ export declare function readLocked(self: TReentrantLock): USTM<boolean>;
68
+ /**
69
+ * @tsplus getter fncts.io.TReentrantLock writeLocked
70
+ * @tsplus location "@fncts/io/TReentrantLock/api"
71
+ */
72
+ export declare function writeLocked(self: TReentrantLock): USTM<boolean>;
73
+ /**
74
+ * @tsplus getter fncts.io.TReentrantLock locked
75
+ * @tsplus location "@fncts/io/TReentrantLock/api"
76
+ */
77
+ export declare function locked(self: TReentrantLock): USTM<boolean>;
78
+ /**
79
+ * @tsplus getter fncts.io.TReentrantLock fiberReadLocks
80
+ * @tsplus location "@fncts/io/TReentrantLock/api"
81
+ */
82
+ export declare function fiberReadLocks(self: TReentrantLock): USTM<number>;
83
+ /**
84
+ * @tsplus getter fncts.io.TReentrantLock fiberWriteLocks
85
+ * @tsplus location "@fncts/io/TReentrantLock/api"
86
+ */
87
+ export declare function fiberWriteLocks(self: TReentrantLock): USTM<number>;
88
+ /**
89
+ * @tsplus getter fncts.io.TReentrantLock writeLocks
90
+ * @tsplus location "@fncts/io/TReentrantLock/api"
91
+ */
92
+ export declare function writeLocks(self: TReentrantLock): USTM<number>;
93
+ /**
94
+ * @tsplus getter fncts.io.TReentrantLock readLocks
95
+ * @tsplus location "@fncts/io/TReentrantLock/api"
96
+ */
97
+ export declare function readLocks(self: TReentrantLock): USTM<number>;
@@ -0,0 +1,65 @@
1
+ import { UTRef } from "@fncts/io/TRef/definition";
2
+ import { FiberId } from "@fncts/base/data/FiberId";
3
+ import { HashMap } from "@fncts/base/collection/immutable/HashMap";
4
+ /**
5
+ * A `TReentrantLock` is a reentrant read/write lock. Multiple readers may all
6
+ * concurrently acquire read locks. Only one writer is allowed to acquire a
7
+ * write lock at any given time. Read locks may be upgraded into write locks. A
8
+ * fiber that has a write lock may acquire other write locks or read locks.
9
+ *
10
+ * The two primary methods of this structure are `readLock`, which acquires a
11
+ * read lock in a scoped context, and `writeLock`, which acquires a write lock
12
+ * in a scoped context.
13
+ *
14
+ * Although located in the STM package, there is no need for locks within STM
15
+ * transactions. However, this lock can be quite useful in effectful code, to
16
+ * provide consistent read/write access to mutable state; and being in STM
17
+ * allows this structure to be composed into more complicated concurrent
18
+ * structures that are consumed from effectful code.
19
+ *
20
+ * @tsplus type fncts.io.TReentrantLock
21
+ * @tsplus companion fncts.io.TReentrantLockOps
22
+ */
23
+ export declare class TReentrantLock {
24
+ readonly data: UTRef<LockState>;
25
+ constructor(data: UTRef<LockState>);
26
+ }
27
+ export interface Lock {
28
+ readonly readLocks: number;
29
+ readonly readLocksHeld: (fiberId: FiberId) => number;
30
+ readonly writeLocks: number;
31
+ readonly writeLocksHeld: (fiberId: FiberId) => number;
32
+ }
33
+ export declare const enum LockTag {
34
+ WriteLock = 0,
35
+ ReadLock = 1
36
+ }
37
+ /**
38
+ * @tsplus type fncts.io.TReentrantLock.WriteLock
39
+ * @tsplus companion fncts.io.TReentrantLock.WriteLockOps
40
+ */
41
+ export declare class WriteLock implements Lock {
42
+ readonly writeLocks: number;
43
+ readonly readLocks: number;
44
+ readonly fiberId: FiberId;
45
+ readonly _tag = LockTag.WriteLock;
46
+ constructor(writeLocks: number, readLocks: number, fiberId: FiberId);
47
+ readLocksHeld(fiberId: FiberId): number;
48
+ writeLocksHeld(fiberId: FiberId): number;
49
+ }
50
+ /**
51
+ * @tsplus type fncts.io.TReentrantLock.ReadLock
52
+ * @tsplus companion fncts.io.TReentrantLock.ReadLockOps
53
+ */
54
+ export declare class ReadLock implements Lock {
55
+ readonly readers: HashMap<FiberId, number>;
56
+ readonly _tag = LockTag.ReadLock;
57
+ constructor(readers: HashMap<FiberId, number>);
58
+ get readLocks(): number;
59
+ writeLocks: number;
60
+ readLocksHeld(fiberId: FiberId): number;
61
+ writeLocksHeld(_fiberId: FiberId): number;
62
+ noOtherHolder(fiberId: FiberId): boolean;
63
+ adjust(fiberId: FiberId, adjust: number): ReadLock;
64
+ }
65
+ export declare type LockState = WriteLock | ReadLock;
@@ -0,0 +1,2 @@
1
+ export * from "./TReentrantLock/api.js";
2
+ export * from "./TReentrantLock/definition.js";
@@ -43,7 +43,7 @@ exports.refresh_ = refresh_;
43
43
  * @tsplus static fncts.io.CachedOps auto
44
44
  */
45
45
  function auto(acquire, policy, __tsplusTrace) {
46
- return tsplus_module_6.flatMap_(manual_1(acquire), manual => tsplus_module_6.map_(tsplus_module_5.acquireRelease(() => tsplus_module_3.forkDaemon(tsplus_module_2.interruptible(tsplus_module_1.schedule(refresh_1(manual, __tsplusTrace), () => policy, __tsplusTrace), __tsplusTrace), __tsplusTrace), fiber => tsplus_module_4.interrupt(fiber)), () => manual), __tsplusTrace);
46
+ return tsplus_module_6.flatMap_(manual_1(acquire), manual => tsplus_module_6.map_(tsplus_module_5.acquireRelease(() => tsplus_module_3.forkDaemon(tsplus_module_2.interruptible(tsplus_module_1.schedule(refresh_1(manual, __tsplusTrace), () => policy, __tsplusTrace), __tsplusTrace), __tsplusTrace), fiber => tsplus_module_4.interrupt(fiber)), () => manual, __tsplusTrace), __tsplusTrace);
47
47
  }
48
48
  /**
49
49
  * @tsplus getter fncts.io.Cached get
@@ -1 +1 @@
1
- {"version":3,"file":"api.cjs","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;;MA4BgBA,MAAM;;MAqBNC,QAAQ;;;AA/CxB;;;AAGM,SAAUC,IAAV,CACJC,OADI,EAEJC,MAFI,EAGJC,aAHI,EAGkB;EAEtB,gCACmBC,SAAcH,OAAd,CADnB,EACQH,MAAM,yBACVO,gEAAkBC,8BAAiBC,2CAJvCJ,aAIuC,GAJvC,MAI+DD,MAAxB,EAJvCC,aAIuC,CAAjB,EAJtBA,aAIsB,CAAlB,EAJJA,aAII,GAAiFK,KAAD,IAAUC,0BAACD,KAAD,CAA1F,CADU,EACiG,MACtGV,MAFK,CADd,EAFAK,aAEA;AAKD;AAED;;;;;AAGM,SAAUO,IAAV,CAAgCC,IAAhC,EAA+DR,aAA/D,EAAqF;EACzF;EACA,OAAOQ,IAAI,CAACC,GAAZ;AACD;AAED;;;;;AAGA,kBACEX,OADF,EACiC;EAE/B,gCACgBY,kDADhB,EACQC,GAAG,yBACKC,mDAAsBd,OAAtB,EAA6Be,qBAA7B,GAA6BA,qBAA7B,CADL,EACHC,GAAG,IACF,IAAIC,MAAJ,CAAWD,GAAX,EAAgBJ,6CAA2BC,GAA3B,EAA8BE,qBAA9B,CAAhB,CAFE,EAE8CA,qBAF9C,CADX,EAGyDA,qBAHzD;AAKD;;AAED,MAAME,MAAN,SAAsCC,wBAAtC,CAAqE;EACnEC,YAAqBH,GAArB,EAAqEhB,OAArE,EAA6G;IAC3G;IADmB;IAAgD;IAGrE,WAA4BoB,8BAAKJ,GAAL,CAASL,GAAT,EAAYS,2BAAZ,EAAYL,qBAAZ,CAA5B;IACA,eAA4B,KAAKC,GAAL,CAASK,GAAT,CAAaD,0BAAKpB,OAAL,EAAYsB,uBAAZ,EAAYP,qBAAZ,CAAb,EAA2CA,qBAA3C,CAA5B;EAFC;;AAHkE;AAQrE;;;;;AAGA,mBAA0CL,IAA1C,EAAyER,aAAzE,EAA+F;EAC7F;EACA,OAAOQ,IAAI,CAACa,OAAZ;AACD","names":["manual","refresh_","auto","acquire","policy","__tsplusTrace","manual_1","tsplus_module_5","tsplus_module_2","tsplus_module_1","fiber","tsplus_module_4","get_","self","get","tsplus_module_7","env","tsplus_module_8","fileName_1","ref","Manual","CachedInternal","constructor","tsplus_module_6","set","tsplus_module_9","refresh"],"sourceRoot":"","sources":["../../_src/Cached/api.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"api.cjs","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;;;;MA4BgBA,MAAM;;MAqBNC,QAAQ;;;AA/CxB;;;AAGM,SAAUC,IAAV,CACJC,OADI,EAEJC,MAFI,EAGJC,aAHI,EAGkB;EAEtB,gCACmBC,SAAcH,OAAd,CADnB,EACQH,MAAM,yBACVO,gEAAkBC,8BAAiBC,2CAJvCJ,aAIuC,GAJvC,MAI+DD,MAAxB,EAJvCC,aAIuC,CAAjB,EAJtBA,aAIsB,CAAlB,EAJJA,aAII,GAAiFK,KAAD,IAAUC,0BAACD,KAAD,CAA1F,CADU,EACiG,MACtGV,MAFK,EAHdK,aAGc,CADd,EAFAA,aAEA;AAKD;AAED;;;;;AAGM,SAAUO,IAAV,CAAgCC,IAAhC,EAA+DR,aAA/D,EAAqF;EACzF;EACA,OAAOQ,IAAI,CAACC,GAAZ;AACD;AAED;;;;;AAGA,kBACEX,OADF,EACiC;EAE/B,gCACgBY,kDADhB,EACQC,GAAG,yBACKC,mDAAsBd,OAAtB,EAA6Be,qBAA7B,GAA6BA,qBAA7B,CADL,EACHC,GAAG,IACF,IAAIC,MAAJ,CAAWD,GAAX,EAAgBJ,6CAA2BC,GAA3B,EAA8BE,qBAA9B,CAAhB,CAFE,EAE8CA,qBAF9C,CADX,EAGyDA,qBAHzD;AAKD;;AAED,MAAME,MAAN,SAAsCC,wBAAtC,CAAqE;EACnEC,YAAqBH,GAArB,EAAqEhB,OAArE,EAA6G;IAC3G;IADmB;IAAgD;IAGrE,WAA4BoB,8BAAKJ,GAAL,CAASL,GAAT,EAAYS,2BAAZ,EAAYL,qBAAZ,CAA5B;IACA,eAA4B,KAAKC,GAAL,CAASK,GAAT,CAAaD,0BAAKpB,OAAL,EAAYsB,uBAAZ,EAAYP,qBAAZ,CAAb,EAA2CA,qBAA3C,CAA5B;EAFC;;AAHkE;AAQrE;;;;;AAGA,mBAA0CL,IAA1C,EAAyER,aAAzE,EAA+F;EAC7F;EACA,OAAOQ,IAAI,CAACa,OAAZ;AACD","names":["manual","refresh_","auto","acquire","policy","__tsplusTrace","manual_1","tsplus_module_5","tsplus_module_2","tsplus_module_1","fiber","tsplus_module_4","get_","self","get","tsplus_module_7","env","tsplus_module_8","fileName_1","ref","Manual","CachedInternal","constructor","tsplus_module_6","set","tsplus_module_9","refresh"],"sourceRoot":"","sources":["../../_src/Cached/api.ts"],"sourcesContent":[null]}
@@ -55,7 +55,7 @@ const fileName_1 = "(@fncts/io) src/Channel/api/mapOutIOC.ts";
55
55
  * @tsplus fluent fncts.io.Channel mapOutIOC
56
56
  */
57
57
  function mapOutIOC_(self, n, f) {
58
- return tsplus_module_2.unwrapScoped(tsplus_module_5.map_(tsplus_module_20.withChildren(getChildren => tsplus_module_5.flatMap_(tsplus_module_19.addFinalizer(() => tsplus_module_5.flatMap_(getChildren, tsplus_module_18.interruptAll, fileName_1 + ":12:46"), fileName_1 + ":12:26"), () => tsplus_module_5.flatMap_(tsplus_module_17.acquireRelease(() => tsplus_module_16.makeBounded(n), queue => tsplus_module_4.shutdown(queue)), queue => tsplus_module_5.flatMap_(tsplus_module_12.make(), errorSignal => tsplus_module_5.flatMap_(tsplus_module_15.atomically(tsplus_module_14.make(n)), permits => tsplus_module_5.flatMap_(tsplus_module_13.toPull(self), pull => tsplus_module_5.map_(tsplus_module_5.fork(tsplus_module_8.uninterruptible(tsplus_module_5.forever(tsplus_module_5.matchCauseIO_(pull, cause => tsplus_module_4.offer_(queue, tsplus_module_5.failCauseNow(cause, fileName_1 + ":24:51")), r => tsplus_module_3.match_(r, outDone => tsplus_module_5.asUnit(tsplus_module_5.apSecond_(tsplus_module_8.interruptible(tsplus_module_7.withPermitsSelf(permits)(n)(tsplus_module_5.unit), fileName_1 + ":29:45"), tsplus_module_4.offer_(queue, tsplus_module_5.succeedNow(tsplus_module_6.left(outDone), fileName_1 + ":30:70")), fileName_1 + ":30:44")), outElem => tsplus_module_5.flatMap_(tsplus_module_12.make(), p => tsplus_module_5.flatMap_(tsplus_module_12.make(), latch => tsplus_module_5.flatMap_(tsplus_module_4.offer_(queue, tsplus_module_5.map_(tsplus_module_9.wait(p), tsplus_module_6.right, fileName_1 + ":35:46")), () => tsplus_module_5.flatMap_(tsplus_module_7.withPermitSelf(permits)(tsplus_module_5.apSecond_(tsplus_module_9.succeed_(latch, undefined), tsplus_module_11.fulfill_(tsplus_module_5.tapErrorCause_(tsplus_module_10.raceFirst_(tsplus_module_9.wait(errorSignal), f(outElem)), c => tsplus_module_9.failCause_(p, c), fileName_1 + ":41:43"), p), fileName_1 + ":38:58")), () => tsplus_module_5.map_(tsplus_module_9.wait(latch), () => void 0), fileName_1 + ":36:22"), fileName_1 + ":35:22"), fileName_1 + ":34:36"), fileName_1 + ":33:36")), fileName_1 + ":23:28")), fileName_1 + ":49:20"), fileName_1 + ":49:36"), () => queue), fileName_1 + ":21:30"), fileName_1 + ":20:30"), fileName_1 + ":19:30"), fileName_1 + ":13:24"), fileName_1 + ":12:10"), fileName_1 + ":10:20"), queue => {
58
+ return tsplus_module_2.unwrapScoped(() => tsplus_module_5.map_(tsplus_module_20.withChildren(getChildren => tsplus_module_5.flatMap_(tsplus_module_19.addFinalizer(() => tsplus_module_5.flatMap_(getChildren, tsplus_module_18.interruptAll, fileName_1 + ":12:46"), fileName_1 + ":12:26"), () => tsplus_module_5.flatMap_(tsplus_module_17.acquireRelease(() => tsplus_module_16.makeBounded(n), queue => tsplus_module_4.shutdown(queue)), queue => tsplus_module_5.flatMap_(tsplus_module_12.make(), errorSignal => tsplus_module_5.flatMap_(tsplus_module_15.atomically(tsplus_module_14.make(n)), permits => tsplus_module_5.flatMap_(tsplus_module_13.toPull(self), pull => tsplus_module_5.map_(tsplus_module_5.fork(tsplus_module_8.uninterruptible(tsplus_module_5.forever(tsplus_module_5.matchCauseIO_(pull, cause => tsplus_module_4.offer_(queue, tsplus_module_5.failCauseNow(cause, fileName_1 + ":24:51")), r => tsplus_module_3.match_(r, outDone => tsplus_module_5.asUnit(tsplus_module_5.apSecond_(tsplus_module_8.interruptible(tsplus_module_7.withPermitsSelf(permits)(n)(tsplus_module_5.unit), fileName_1 + ":29:45"), tsplus_module_4.offer_(queue, tsplus_module_5.succeedNow(tsplus_module_6.left(outDone), fileName_1 + ":30:70")), fileName_1 + ":30:44")), outElem => tsplus_module_5.flatMap_(tsplus_module_12.make(), p => tsplus_module_5.flatMap_(tsplus_module_12.make(), latch => tsplus_module_5.flatMap_(tsplus_module_4.offer_(queue, tsplus_module_5.map_(tsplus_module_9.wait(p), tsplus_module_6.right, fileName_1 + ":35:46")), () => tsplus_module_5.flatMap_(tsplus_module_7.withPermitSelf(permits)(tsplus_module_5.apSecond_(tsplus_module_9.succeed_(latch, undefined), tsplus_module_11.fulfill_(tsplus_module_5.tapErrorCause_(tsplus_module_10.raceFirst_(tsplus_module_9.wait(errorSignal), f(outElem)), c => tsplus_module_9.failCause_(p, c), fileName_1 + ":41:43"), p), fileName_1 + ":38:58")), () => tsplus_module_5.map_(tsplus_module_9.wait(latch), () => void 0, fileName_1 + ":46:22"), fileName_1 + ":36:22"), fileName_1 + ":35:22"), fileName_1 + ":34:36"), fileName_1 + ":33:36")), fileName_1 + ":23:28")), fileName_1 + ":49:20"), fileName_1 + ":49:36"), () => queue, fileName_1 + ":22:10"), fileName_1 + ":21:30"), fileName_1 + ":20:30"), fileName_1 + ":19:30"), fileName_1 + ":13:24"), fileName_1 + ":12:10"), fileName_1 + ":10:20"), queue => {
59
59
  const consumer = tsplus_module_2.unwrap(() => tsplus_module_5.matchCause_(tsplus_module_5.flatten(tsplus_module_4.take(queue)), tsplus_module_1.failCauseNow, r => tsplus_module_3.match_(r, tsplus_module_1.endNow, outElem => tsplus_module_1.apSecond_(tsplus_module_2.writeNow(outElem), consumer)), fileName_1 + ":56:40"));
60
60
  return consumer;
61
61
  }, fileName_1 + ":53:10"));
@@ -1 +1 @@
1
- {"version":3,"file":"mapOutIOC.cjs","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;AAGM,SAAUA,UAAV,CACJC,IADI,EAEJC,CAFI,EAGJC,CAHI,EAG0C;EAE9C,OAAOC,6BACLC,mDAAiBC,WAAD,IAAgBD,yBAE1BE,oCAAgBF,sCAAWG,6BAAX,EAAWC,qBAAX,CAAhB,EAAuDA,qBAAvD,CAF0B,EAE8B,+BAExDC,sCACEC,6BAAyET,CAAzE,CADF,EAEGU,KAAD,IAAUC,yBAACD,KAAD,CAFZ,CAFwD,EACpDA,KAAK,6BAMWE,uBANX,EAMLC,WAAW,yDACKC,sBAAgBd,CAAhB,CADL,GACXe,OAAO,qDACShB,IADT,GACPiB,IAAI,sGAERb,oCACGc,KAAD,IAAWN,8BAAYR,6BAAgBc,KAAhB,EAAqBV,qBAArB,CAAZ,CADb,EAEGW,CAAD,IACEC,0BACGC,OAAD,IAAYjB,uBACVA,iGACeH,CADf,EACiBG,oBADjB,GAC0BI,qBAD1B,GAE0BI,8BAAYR,2BAAckB,qBAAYD,OAAZ,CAAd,EAAkCb,qBAAlC,CAAZ,CAF1B,EAE0EA,qBAF1E,CADU,CADd,EAKGe,OAAD,IAAYnB,yBAEQS,uBAFR,EAEFW,CAAC,6BACSX,uBADT,EACDY,KAAK,6BACTb,8BAAYR,8CAACkB,qBAAD,EAACd,qBAAD,CAAZ,CADS,EAC6B,+BAEtCkB,wCACEtB,0DAAcuB,SAAd,GACEC,wHACa1B,CAAC,CAACqB,OAAD,CADd,GAEkBM,CAAD,IAAOC,8BAAYD,CAAZ,CAFxB,EAEsCrB,qBAFtC,GAGWgB,CAHX,CADF,EAIehB,qBAJf,CADF,CAFsC,EASrC,gDAEDiB,KAFC,GAEI,YAFJ,CATqC,EAWjCjB,qBAXiC,CAD7B,EAYJA,qBAZI,CADJ,EAaAA,qBAbA,CAFC,EAeDA,qBAfC,CALd,CAHJ,EAyBKA,qBAzBL,CAFQ,GA4BPA,qBA5BO,GA4BPA,qBA5BO,GA4BP,MAEIG,KA9BG,CADG,EA+BDH,qBA/BC,CADI,EAgCLA,qBAhCK,CANN,EAsCCA,qBAtCD,CAD+C,EAuC9CA,qBAvC8C,CAF9B,EAyChBA,qBAzCgB,CAAhC,EA0CIA,qBA1CJ,GA2COG,KAAD,IAAU;IACd,MAAMoB,QAAQ,GACZ5B,6BACEC,kFAAK4B,4BAAL,EAAqDb,CAAD,IAClDC,0BAACY,sBAAD,EAAyBT,OAAD,IAAaS,mDAAiBT,OAAjB,GAAmCQ,QAAnC,CAArC,CADF,EACoFvB,qBADpF,CADF,CADF;IAMA,OAAOuB,QAAP;EACD,CAnDD,EAmDCvB,qBAnDD,CADK,CAAP;AAsDD","names":["mapOutIOC_","self","n","f","tsplus_module_2","tsplus_module_5","getChildren","tsplus_module_19","tsplus_module_18","fileName_1","tsplus_module_17","tsplus_module_16","queue","tsplus_module_4","tsplus_module_12","errorSignal","tsplus_module_14","permits","pull","cause","r","tsplus_module_3","outDone","tsplus_module_6","outElem","p","latch","tsplus_module_7","undefined","tsplus_module_11","c","tsplus_module_9","consumer","tsplus_module_1"],"sourceRoot":"","sources":["../../../_src/Channel/api/mapOutIOC.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"mapOutIOC.cjs","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;AAGM,SAAUA,UAAV,CACJC,IADI,EAEJC,CAFI,EAGJC,CAHI,EAG0C;EAE9C,OAAOC,mCACLC,mDAAiBC,WAAD,IAAgBD,yBAE1BE,oCAAgBF,sCAAWG,6BAAX,EAAWC,qBAAX,CAAhB,EAAuDA,qBAAvD,CAF0B,EAE8B,+BAExDC,sCACEC,6BAAyET,CAAzE,CADF,EAEGU,KAAD,IAAUC,yBAACD,KAAD,CAFZ,CAFwD,EACpDA,KAAK,6BAMWE,uBANX,EAMLC,WAAW,yDACKC,sBAAgBd,CAAhB,CADL,GACXe,OAAO,qDACShB,IADT,GACPiB,IAAI,sGAERb,oCACGc,KAAD,IAAWN,8BAAYR,6BAAgBc,KAAhB,EAAqBV,qBAArB,CAAZ,CADb,EAEGW,CAAD,IACEC,0BACGC,OAAD,IAAYjB,uBACVA,iGACeH,CADf,EACiBG,oBADjB,GAC0BI,qBAD1B,GAE0BI,8BAAYR,2BAAckB,qBAAYD,OAAZ,CAAd,EAAkCb,qBAAlC,CAAZ,CAF1B,EAE0EA,qBAF1E,CADU,CADd,EAKGe,OAAD,IAAYnB,yBAEQS,uBAFR,EAEFW,CAAC,6BACSX,uBADT,EACDY,KAAK,6BACTb,8BAAYR,8CAACkB,qBAAD,EAACd,qBAAD,CAAZ,CADS,EAC6B,+BAEtCkB,wCACEtB,0DAAcuB,SAAd,GACEC,wHACa1B,CAAC,CAACqB,OAAD,CADd,GAEkBM,CAAD,IAAOC,8BAAYD,CAAZ,CAFxB,EAEsCrB,qBAFtC,GAGWgB,CAHX,CADF,EAIehB,qBAJf,CADF,CAFsC,EASrC,gDAEDiB,KAFC,GAEI,YAFJ,EAEIjB,qBAFJ,CATqC,EAWjCA,qBAXiC,CAD7B,EAYJA,qBAZI,CADJ,EAaAA,qBAbA,CAFC,EAeDA,qBAfC,CALd,CAHJ,EAyBKA,qBAzBL,CAFQ,GA4BPA,qBA5BO,GA4BPA,qBA5BO,GA4BP,MAEIG,KA9BG,EA8BEH,qBA9BF,CADG,EA+BDA,qBA/BC,CADI,EAgCLA,qBAhCK,CANN,EAsCCA,qBAtCD,CAD+C,EAuC9CA,qBAvC8C,CAF9B,EAyChBA,qBAzCgB,CAAhC,EA0CIA,qBA1CJ,GA2COG,KAAD,IAAU;IACd,MAAMoB,QAAQ,GACZ5B,6BACEC,kFAAK4B,4BAAL,EAAqDb,CAAD,IAClDC,0BAACY,sBAAD,EAAyBT,OAAD,IAAaS,mDAAiBT,OAAjB,GAAmCQ,QAAnC,CAArC,CADF,EACoFvB,qBADpF,CADF,CADF;IAMA,OAAOuB,QAAP;EACD,CAnDD,EAmDCvB,qBAnDD,CADK,CAAP;AAsDD","names":["mapOutIOC_","self","n","f","tsplus_module_2","tsplus_module_5","getChildren","tsplus_module_19","tsplus_module_18","fileName_1","tsplus_module_17","tsplus_module_16","queue","tsplus_module_4","tsplus_module_12","errorSignal","tsplus_module_14","permits","pull","cause","r","tsplus_module_3","outDone","tsplus_module_6","outElem","p","latch","tsplus_module_7","undefined","tsplus_module_11","c","tsplus_module_9","consumer","tsplus_module_1"],"sourceRoot":"","sources":["../../../_src/Channel/api/mapOutIOC.ts"],"sourcesContent":[null]}
@@ -71,7 +71,7 @@ const fileName_1 = "(@fncts/io) src/Channel/api/mergeAllWith.ts";
71
71
  * @tsplus fluent fncts.io.Channel mergeAllWith
72
72
  */
73
73
  function mergeAllWith_(channels, n, f, bufferSize = 16, mergeStrategy = "BackPressure") {
74
- return tsplus_module_2.unwrapScoped(tsplus_module_5.map_(tsplus_module_27.withChildren(getChildren => tsplus_module_5.flatMap_(tsplus_module_26.addFinalizer(() => tsplus_module_5.flatMap_(getChildren, tsplus_module_6.interruptAll, fileName_1 + ":39:46"), fileName_1 + ":39:26"), () => tsplus_module_5.flatMap_(tsplus_module_25.acquireRelease(() => tsplus_module_24.makeBounded(bufferSize), queue => tsplus_module_4.shutdown(queue)), queue => tsplus_module_5.flatMap_(tsplus_module_25.acquireRelease(() => tsplus_module_24.makeUnbounded(), queue => tsplus_module_4.shutdown(queue)), cancelers => tsplus_module_5.flatMap_(tsplus_module_23.make(() => tsplus_module_18.nothing()), lastDone => tsplus_module_5.flatMap_(tsplus_module_17.make(), errorSignal => tsplus_module_5.flatMap_(tsplus_module_22.atomically(tsplus_module_21.make(n)), permits => tsplus_module_5.flatMap_(tsplus_module_15.toPull(channels), pull => {
74
+ return tsplus_module_2.unwrapScoped(() => tsplus_module_5.map_(tsplus_module_27.withChildren(getChildren => tsplus_module_5.flatMap_(tsplus_module_26.addFinalizer(() => tsplus_module_5.flatMap_(getChildren, tsplus_module_6.interruptAll, fileName_1 + ":39:46"), fileName_1 + ":39:26"), () => tsplus_module_5.flatMap_(tsplus_module_25.acquireRelease(() => tsplus_module_24.makeBounded(bufferSize), queue => tsplus_module_4.shutdown(queue)), queue => tsplus_module_5.flatMap_(tsplus_module_25.acquireRelease(() => tsplus_module_24.makeUnbounded(), queue => tsplus_module_4.shutdown(queue)), cancelers => tsplus_module_5.flatMap_(tsplus_module_23.make(() => tsplus_module_18.nothing()), lastDone => tsplus_module_5.flatMap_(tsplus_module_17.make(), errorSignal => tsplus_module_5.flatMap_(tsplus_module_22.atomically(tsplus_module_21.make(n)), permits => tsplus_module_5.flatMap_(tsplus_module_15.toPull(channels), pull => {
75
75
  const evaluatePull = pull => tsplus_module_5.flatMap_(tsplus_module_5.repeatUntil_(tsplus_module_5.flatMap_(pull, ea => tsplus_module_3.match_(ea, outDone => tsplus_module_5.succeedNow(tsplus_module_18.just(outDone), fileName_1 + ":56:43"), outElem => tsplus_module_5.as_(tsplus_module_4.offer_(queue, tsplus_module_5.succeedNow(tsplus_module_9.right(outElem), fileName_1 + ":57:55")), () => tsplus_module_18.nothing())), fileName_1 + ":54:21"), m => tsplus_module_20.isJust(m), fileName_1 + ":60:25"), md1 => tsplus_module_10.match_(md1, () => tsplus_module_5.unit, outDone => tsplus_module_19.update_(lastDone, md2 => tsplus_module_10.match_(md2, () => tsplus_module_18.just(outDone), lastDone => tsplus_module_18.just(f(lastDone, outDone))))), fileName_1 + ":61:21");
76
76
 
77
77
  return tsplus_module_5.map_(tsplus_module_5.fork(tsplus_module_5.repeatWhile_(tsplus_module_5.matchCauseIO_(pull, cause => tsplus_module_5.apSecond_(tsplus_module_5.flatMap_(getChildren, tsplus_module_6.interruptAll, fileName_1 + ":78:36"), tsplus_module_5.as_(tsplus_module_4.offer_(queue, tsplus_module_5.failCauseNow(cause, fileName_1 + ":78:93")), () => false), fileName_1 + ":78:65"), doneOrChannel => tsplus_module_3.match_(doneOrChannel, outDone => tsplus_module_13.raceWith_(tsplus_module_12.wait(errorSignal), () => tsplus_module_7.withPermitsSelf(permits)(n)(tsplus_module_5.unit), (_, permitAcquisition) => tsplus_module_5.apSecond_(tsplus_module_5.flatMap_(getChildren, tsplus_module_6.interruptAll, fileName_1 + ":85:44"), tsplus_module_5.as_(tsplus_module_8.interrupt(permitAcquisition), () => false), fileName_1 + ":85:73"), (_, failureAwait) => tsplus_module_5.apSecond_(tsplus_module_8.interrupt(failureAwait), tsplus_module_5.as_(tsplus_module_5.flatMap_(tsplus_module_11.get(lastDone), maybeDone => tsplus_module_10.match_(maybeDone, () => tsplus_module_4.offer_(queue, tsplus_module_5.succeedNow(tsplus_module_9.left(outDone), fileName_1 + ":91:64")), lastDone => tsplus_module_4.offer_(queue, tsplus_module_5.succeedNow(tsplus_module_9.left(f(lastDone, outDone)), fileName_1 + ":92:72"))), fileName_1 + ":89:37"), () => false), fileName_1 + ":87:56"), fileName_1 + ":82:47"), channel => {
@@ -88,7 +88,7 @@ function mergeAllWith_(channels, n, f, bufferSize = 16, mergeStrategy = "BackPre
88
88
  return tsplus_module_5.flatMap_(tsplus_module_5.fork(tsplus_module_7.withPermitSelf(permits)(tsplus_module_5.apSecond_(tsplus_module_12.succeed_(latch, undefined), raceIOs, fileName_1 + ":119:81")), fileName_1 + ":119:91"), () => tsplus_module_5.flatMap_(tsplus_module_12.wait(latch), () => tsplus_module_5.map_(tsplus_module_12.isDone(errorSignal), b => !b, fileName_1 + ":121:58"), fileName_1 + ":120:28"), fileName_1 + ":119:28");
89
89
  }, fileName_1 + ":115:28"), fileName_1 + ":114:45"), fileName_1 + ":113:45"), fileName_1 + ":112:45");
90
90
  }
91
- }), fileName_1 + ":76:26"), _function.identity), fileName_1 + ":127:35"), () => queue);
91
+ }), fileName_1 + ":76:26"), _function.identity), fileName_1 + ":127:35"), () => queue, fileName_1 + ":74:10");
92
92
  }, fileName_1 + ":50:30"), fileName_1 + ":49:30"), fileName_1 + ":48:30"), fileName_1 + ":47:30"), fileName_1 + ":46:30"), fileName_1 + ":40:24"), fileName_1 + ":39:10"), fileName_1 + ":37:20"), queue => {
93
93
  const consumer = tsplus_module_2.unwrap(() => tsplus_module_5.matchCause_(tsplus_module_5.flatten(tsplus_module_4.take(queue)), tsplus_module_1.failCauseNow, out => tsplus_module_3.match_(out, tsplus_module_1.endNow, outElem => tsplus_module_1.apSecond_(tsplus_module_2.writeNow(outElem), consumer)), fileName_1 + ":134:40"));
94
94
  return consumer;
@@ -1 +1 @@
1
- {"version":3,"file":"mergeAllWith.cjs","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;;;;;;AAIA;;;AAGM,SAAUA,aAAV,CAcJC,QAdI,EAuBJC,CAvBI,EAwBJC,CAxBI,EAyBJC,UAAU,GAAG,EAzBT,EA0BJC,gBAA+B,cA1B3B,EA0ByC;EAE7C,OAAOC,6BACLC,mDAAiBC,WAAD,IAAgBD,yBAE1BE,oCAAgBF,sCAAWG,4BAAX,EAAWC,qBAAX,CAAhB,EAAuDA,qBAAvD,CAF0B,EAE8B,+BAExDC,sCACEC,6BAAuET,UAAvE,CADF,EAEGU,KAAD,IAAUC,yBAACD,KAAD,CAFZ,CAFwD,EACpDA,KAAK,6BAMWF,sCAAkBC,gCAAlB,EAA+DC,KAAD,IAAUC,yBAACD,KAAD,CAAxE,CANX,EAMLE,SAAS,6BACOC,4BAAyBC,0BAAzB,CADP,EACTC,QAAQ,6BACQC,uBADR,EACRC,WAAW,yDACKC,sBAAgBpB,CAAhB,CADL,GACXqB,OAAO,qDACStB,QADT,GACPuB,IAAI;IAEV,MAAMC,YAAY,GAAID,IAAD,IACnBjB,qFACYmB,EAAD,IACPC,2BACGC,OAAD,IAAarB,2BAAcW,sBAAKU,OAAL,CAAd,EAA2BjB,qBAA3B,CADf,EAEGkB,OAAD,IAAatB,kDAAYA,2BAAcuB,sBAAaD,OAAb,CAAd,EAAmClB,qBAAnC,CAAZ,GAAiD,MAAIO,0BAArD,CAFf,CAFJ,EAKKP,qBALL,GAOgBoB,CAAD,IAAOC,0BAPtB,EAOgCrB,qBAPhC,GAQYsB,GAAD,IACPC,6BACE,MAAK3B,oBADP,EAEGqB,OAAD,IACEO,mCAAiBC,GAAD,IACdF,6BACE,MAAMhB,sBAAKU,OAAL,CADR,EAEGT,QAAD,IAAcD,sBAAKf,CAAC,CAACgB,QAAD,EAAWS,OAAX,CAAN,CAFhB,CADF,CAHJ,CATJ,EAkBKjB,qBAlBL,CADF;;qDAuBEJ,iEAEK8B,KAAD,IACE9B,gEAAWG,4BAAX,EAAWC,qBAAX,GAAiDJ,kDAAYA,6BAAgB8B,KAAhB,EAAqB1B,qBAArB,CAAZ,GAAmC,MAAI,KAAvC,CAAjD,EAA8FA,qBAA9F,CAHN,EAIK2B,aAAD,IACEX,sCACGC,OAAD,IACEW,+DAAW,MACTC,yCAAoBtC,CAApB,EAAsBK,oBAAtB,CADF,EAEE,CAACkC,CAAD,EAAIC,iBAAJ,KACEnC,gEAAWG,4BAAX,EAAWC,qBAAX,GAAiDJ,kEAAiB,MAAc,KAA/B,CAAjD,EAAsFI,qBAAtF,CAHJ,EAIE,CAAC8B,CAAD,EAAIE,YAAJ,KACEpC,mEACEA,6EACYqC,SAAD,IACPV,mCACE,MAAMnB,8BAAYR,2BAAcuB,qBAAYF,OAAZ,CAAd,EAAkCjB,qBAAlC,CAAZ,CADR,EAEGQ,QAAD,IAAcJ,8BAAYR,2BAAcuB,qBAAY3B,CAAC,CAACgB,QAAD,EAAWS,OAAX,CAAb,CAAd,EAA+CjB,qBAA/C,CAAZ,CAFhB,CAFJ,EAKKA,qBALL,GAMG,MACG,KAPN,CADF,EAQcA,qBARd,CALJ,EAcKA,qBAdL,CAFJ,EAkBGkC,OAAD,IAAY;MACV,QAAQxC,aAAR;QACE,KAAK,cAAL;UACE,gCACoBe,uBADpB,EACQ0B,KAAK;YACX,MAAMC,OAAO,4BAAGxC,2DAAwByC,EAAD,IACrCC,mCAAY,CAACD,EAAD,CAAZ,EAAgBE,sBAAM7B,WAAN,CAAhB,CADc,EAC0BV,sBAD1B,CAAH,CAAb;iEAGE6B,wCAAmBjC,2DAAc4C,SAAd,GAAkCJ,OAAlC,EAAyCpC,sBAAzC,CAAnB,GAA8DA,8EAC9DmC,KAD8D,GACzD,MACEvC,2DAAwB6C,CAAD,IAAO,CAACA,CAA/B,EAAgCzC,sBAAhC,CAFuD,EAEtBA,sBAFsB,GAEtBA;WAP5C;;QASF,KAAK,eAAL;UACE,gCACqBS,uBADrB,EACQiC,QAAQ,6BACKjC,uBADL,EACR0B,KAAK,kDACQ9B,SADR,GACLsC,IAAI,6BACR/C,gFAAwBJ,CAAD,IAAO+C,6BAAUC,SAAV,CAA9B,EAAkDxC,sBAAlD,GAAmD,MAAM2C,IAAI,IAAI,CAAjE,EAAkE3C,sBAAlE,CADQ,EAC2D;YACrE,MAAMoC,OAAO,4BAAGxC,2DAAwByC,EAAD,IACrCC,0DAAY,CAACD,EAAD,CAAZ,EAAgBE,sBAAM7B,WAAN,CAAhB,GAAwC6B,sBAAMG,QAAN,CAAxC,CADc,EAC+C1C,sBAD/C,CAAH,CAAb;iEAGE6B,wCAAmBjC,2DAAc4C,SAAd,GAAkCJ,OAAlC,EAAyCpC,sBAAzC,CAAnB,GAA8DA,8EAC9DmC,KAD8D,GACzD,MACEvC,2DAAwB6C,CAAD,IAAO,CAACA,CAA/B,EAAgCzC,sBAAhC,CAFuD,EAEtBA,sBAFsB,GAEtBA;WAPhC,yBADC,yBADG,yBADhB;MAZJ;IAyBD,CA5CH,CALN,EAkDOA,qBAlDP,GAoDe4C,kBApDf,GAoDwB5C,+BAEnBG;GAhFM,wBADI,wBADH,wBADC,wBANJ,wBAD+C,wBAF9B,wBAAhC,EA6FIH,qBA7FJ,GA8FOG,KAAD,IAAU;IACd,MAAM0C,QAAQ,GACZlD,6BACEC,kFAAKkD,4BAAL,EAAqDC,GAAD,IAClD/B,4BAAG8B,sBAAH,EAA2B5B,OAAD,IAAa4B,mDAAiB5B,OAAjB,GAAmC2B,QAAnC,CAAvC,CADF,EACsF7C,sBADtF,CADF,CADF;IAMA,OAAO6C,QAAP;EACD,CAtGD,EAsGC7C,sBAtGD,CADK,CAAP;AAyGD","names":["mergeAllWith_","channels","n","f","bufferSize","mergeStrategy","tsplus_module_2","tsplus_module_5","getChildren","tsplus_module_26","tsplus_module_6","fileName_1","tsplus_module_25","tsplus_module_24","queue","tsplus_module_4","cancelers","tsplus_module_23","tsplus_module_18","lastDone","tsplus_module_17","errorSignal","tsplus_module_21","permits","pull","evaluatePull","ea","tsplus_module_3","outDone","outElem","tsplus_module_9","m","tsplus_module_20","md1","tsplus_module_10","tsplus_module_19","md2","cause","doneOrChannel","tsplus_module_13","tsplus_module_7","_","permitAcquisition","failureAwait","maybeDone","channel","latch","raceIOs","io","tsplus_module_14","tsplus_module_12","undefined","b","canceler","size","identity","consumer","tsplus_module_1","out"],"sourceRoot":"","sources":["../../../_src/Channel/api/mergeAllWith.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"mergeAllWith.cjs","mappings":"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","names":["mergeAllWith_","channels","n","f","bufferSize","mergeStrategy","tsplus_module_2","tsplus_module_5","getChildren","tsplus_module_26","tsplus_module_6","fileName_1","tsplus_module_25","tsplus_module_24","queue","tsplus_module_4","cancelers","tsplus_module_23","tsplus_module_18","lastDone","tsplus_module_17","errorSignal","tsplus_module_21","permits","pull","evaluatePull","ea","tsplus_module_3","outDone","outElem","tsplus_module_9","m","tsplus_module_20","md1","tsplus_module_10","tsplus_module_19","md2","cause","doneOrChannel","tsplus_module_13","tsplus_module_7","_","permitAcquisition","failureAwait","maybeDone","channel","latch","raceIOs","io","tsplus_module_14","tsplus_module_12","undefined","b","canceler","size","identity","consumer","tsplus_module_1","out"],"sourceRoot":"","sources":["../../../_src/Channel/api/mergeAllWith.ts"],"sourcesContent":[null]}
@@ -45,7 +45,7 @@ const fileName_1 = "(@fncts/io) src/Channel/api/mergeWith.ts";
45
45
  * @tsplus fluent fncts.io.Channel mergeWith
46
46
  */
47
47
  function mergeWith_(self, that, leftDone, rightDone) {
48
- return tsplus_module_4.unwrapScoped(tsplus_module_3.flatMap_(tsplus_module_13.makeSingleProducerAsyncInput(), input => {
48
+ return tsplus_module_4.unwrapScoped(() => tsplus_module_3.flatMap_(tsplus_module_13.makeSingleProducerAsyncInput(), input => {
49
49
  const queueReader = tsplus_module_4.fromInput(input);
50
50
  return tsplus_module_3.flatMap_(tsplus_module_12.toPull(tsplus_module_4.pipeTo_(queueReader, self)), pullL => tsplus_module_3.map_(tsplus_module_12.toPull(tsplus_module_4.pipeTo_(queueReader, that)), pullR => {
51
51
  const handleSide = (exit, fiber, pull) => (done, both, single) => {
@@ -1 +1 @@
1
- {"version":3,"file":"mergeWith.cjs","mappings":"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","names":["mergeWith_","self","that","leftDone","rightDone","tsplus_module_4","tsplus_module_13","input","queueReader","pullL","pullR","handleSide","exit","fiber","pull","done","both","single","onDecision","decision","_tag","tsplus_module_3","io","fileName_1","ex","tsplus_module_9","cause","f","tsplus_module_7","r","tsplus_module_8","elem","tsplus_module_5","go","d","leftFiber","state","lj","left","rj","right","tsplus_module_1","leftEx","_","l","tsplus_module_2","rightEx","a","b"],"sourceRoot":"","sources":["../../../_src/Channel/api/mergeWith.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"mergeWith.cjs","mappings":"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","names":["mergeWith_","self","that","leftDone","rightDone","tsplus_module_4","tsplus_module_13","input","queueReader","pullL","pullR","handleSide","exit","fiber","pull","done","both","single","onDecision","decision","_tag","tsplus_module_3","io","fileName_1","ex","tsplus_module_9","cause","f","tsplus_module_7","r","tsplus_module_8","elem","tsplus_module_5","go","d","leftFiber","state","lj","left","rj","right","tsplus_module_1","leftEx","_","l","tsplus_module_2","rightEx","a","b"],"sourceRoot":"","sources":["../../../_src/Channel/api/mergeWith.ts"],"sourcesContent":[null]}
@@ -10,6 +10,7 @@ exports.asUnit = asUnit;
10
10
  exports.buffer = exports.ask = exports.as_ = void 0;
11
11
  exports.bufferChunk = bufferChunk;
12
12
  exports.catchAll_ = exports.catchAllCause_ = void 0;
13
+ exports.collectElements = collectElements;
13
14
  exports.concatAll = concatAll;
14
15
  exports.concatAllWith_ = void 0;
15
16
  exports.concatMapWithCustom_ = concatMapWithCustom_;
@@ -29,6 +30,7 @@ exports.ensuring_ = ensuring_;
29
30
  exports.fail = fail;
30
31
  exports.flatten = exports.failNow = void 0;
31
32
  exports.fromEither = fromEither;
33
+ exports.fromHubScoped = fromHubScoped;
32
34
  exports.fromInput = exports.fromIO = void 0;
33
35
  exports.fromOption = fromOption;
34
36
  exports.fromQueue = void 0;
@@ -39,8 +41,8 @@ exports.mapErrorCause_ = void 0;
39
41
  exports.mapError_ = mapError_;
40
42
  exports.mapIO_ = void 0;
41
43
  exports.mapOutIO_ = mapOutIO_;
42
- exports.mapOut_ = void 0;
43
- exports.matchCauseChannel_ = matchCauseChannel_;
44
+ exports.matchCauseChannel_ = exports.mapOut_ = void 0;
45
+ exports.matchChannel_ = matchChannel_;
44
46
  exports.never = void 0;
45
47
  exports.orElse_ = orElse_;
46
48
  exports.orHaltWith_ = void 0;
@@ -48,7 +50,9 @@ exports.orHalt_ = orHalt_;
48
50
  exports.pipeToOrFail_ = pipeToOrFail_;
49
51
  exports.provideEnvironment_ = exports.pipeTo_ = void 0;
50
52
  exports.read = read;
51
- exports.unwrap = exports.unit = exports.toQueue = exports.scoped = exports.repeated = exports.readWithCause = exports.readWith = exports.readOrFail = void 0;
53
+ exports.scoped = exports.repeated = exports.readWithCause = exports.readWith = exports.readOrFail = void 0;
54
+ exports.toHub = toHub;
55
+ exports.unwrap = exports.unit = exports.toQueue = void 0;
52
56
  exports.unwrapScoped = unwrapScoped;
53
57
  exports.write = void 0;
54
58
  exports.writeAll = writeAll;
@@ -78,27 +82,31 @@ var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/requir
78
82
 
79
83
  var tsplus_module_12 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/destructors"));
80
84
 
81
- var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/constructors"));
85
+ var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Conc"));
86
+
87
+ var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/constructors"));
82
88
 
83
- var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/UpstreamPullStrategy/definition"));
89
+ var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/UpstreamPullStrategy/definition"));
84
90
 
85
- var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/ChildExecutorDecision/definition"));
91
+ var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/ChildExecutorDecision/definition"));
86
92
 
87
- var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/destructors"));
93
+ var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/destructors"));
88
94
 
89
- var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Exit/api"));
95
+ var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Exit/api"));
90
96
 
91
- var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Queue/api/operations"));
97
+ var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Queue/api/operations"));
92
98
 
93
- var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Exit/constructors"));
99
+ var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Exit/constructors"));
94
100
 
95
- var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Scope/api"));
101
+ var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Scope/api"));
96
102
 
97
- var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/util/predicates"));
103
+ var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/util/predicates"));
98
104
 
99
- var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/constructors"));
105
+ var tsplus_module_23 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/constructors"));
100
106
 
101
- var tsplus_module_23 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Conc/constructors"));
107
+ var tsplus_module_24 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/Conc/constructors"));
108
+
109
+ var tsplus_module_25 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Hub/api"));
102
110
 
103
111
  var _function = /*#__PURE__*/require("@fncts/base/data/function");
104
112
 
@@ -157,6 +165,8 @@ const mapIO_ = mapIO_1;
157
165
  exports.mapIO_ = mapIO_;
158
166
  const mapOut_ = mapOut_1;
159
167
  exports.mapOut_ = mapOut_;
168
+ const matchCauseChannel_ = matchCauseChannel_1;
169
+ exports.matchCauseChannel_ = matchCauseChannel_;
160
170
  const orHaltWith_ = orHaltWith_1;
161
171
  exports.orHaltWith_ = orHaltWith_;
162
172
  const pipeTo_ = pipeTo_1;
@@ -293,6 +303,18 @@ function catchAll_1(self, f) {
293
303
  function catchAllCause_1(self, f) {
294
304
  return new _definition3.Fold(self, new _definition3.ContinuationK(_ => tsplus_module_1.endNow(_), f));
295
305
  }
306
+ /**
307
+ * @tsplus getter fncts.io.Channel collectElements
308
+ */
309
+
310
+
311
+ function collectElements(self) {
312
+ return defer_1(() => {
313
+ const builder = new tsplus_module_13.ConcBuilder(tsplus_module_9.empty());
314
+ const reader = readWith_1(out => tsplus_module_1.apSecond_(tsplus_module_1.succeed(() => builder.append(out)), reader), failNow_1, tsplus_module_1.succeedNow);
315
+ return tsplus_module_1.flatMap_(pipeTo_1(self, reader), z => tsplus_module_1.succeedNow([builder.result(), z]));
316
+ });
317
+ }
296
318
  /**
297
319
  * @tsplus getter fncts.io.Channel concatAll
298
320
  */
@@ -313,7 +335,7 @@ function concatAll(channels) {
313
335
 
314
336
 
315
337
  function concatMapWith_1(channel, f, g, h) {
316
- return new _definition3.ConcatAll(g, h, () => tsplus_module_14.PullAfterNext(tsplus_module_13.nothing()), () => tsplus_module_15.Continue, channel, f);
338
+ return new _definition3.ConcatAll(g, h, () => tsplus_module_15.PullAfterNext(tsplus_module_14.nothing()), () => tsplus_module_16.Continue, channel, f);
317
339
  }
318
340
  /**
319
341
  * Returns a new channel whose outputs are fed to the specified factory function, which creates
@@ -337,7 +359,7 @@ function concatMapWithCustom_(channel, f, g, h, onPull, onEmit) {
337
359
 
338
360
 
339
361
  function concatAllWith_1(channels, f, g) {
340
- return new _definition3.ConcatAll(f, g, () => tsplus_module_14.PullAfterNext(tsplus_module_13.nothing()), () => tsplus_module_15.Continue, channels, _function.identity);
362
+ return new _definition3.ConcatAll(f, g, () => tsplus_module_15.PullAfterNext(tsplus_module_14.nothing()), () => tsplus_module_16.Continue, channels, _function.identity);
341
363
  }
342
364
  /**
343
365
  * Returns a new channel whose outputs are fed to the specified factory function, which creates
@@ -411,7 +433,7 @@ function defer_1(effect) {
411
433
  function doneCollectReader(builder) {
412
434
  return readWith_1(out => tsplus_module_1.apSecond_(fromIO_1(() => tsplus_module_4.succeed(() => {
413
435
  builder.append(out);
414
- }, fileName_1 + ":527:19")), doneCollectReader(builder)), failNow_1, tsplus_module_1.endNow);
436
+ }, fileName_1 + ":544:19")), doneCollectReader(builder)), failNow_1, tsplus_module_1.endNow);
415
437
  }
416
438
  /**
417
439
  * Returns a new channel, which is the same as this one, except that all the outputs are
@@ -428,8 +450,8 @@ function doneCollectReader(builder) {
428
450
  function doneCollect_1(self) {
429
451
  return unwrap_1(() => tsplus_module_4.succeed(() => {
430
452
  const builder = tsplus_module_10.builder();
431
- return mapIO_1(pipeTo_1(self, doneCollectReader(builder)), z => tsplus_module_4.succeedNow((0, _function.tuple)(builder.result(), z), fileName_1 + ":553:80"));
432
- }, fileName_1 + ":550:15"));
453
+ return mapIO_1(pipeTo_1(self, doneCollectReader(builder)), z => tsplus_module_4.succeedNow((0, _function.tuple)(builder.result(), z), fileName_1 + ":570:80"));
454
+ }, fileName_1 + ":567:15"));
433
455
  }
434
456
  /**
435
457
  * Returns a new channel which reads all the elements from upstream's output channel
@@ -546,7 +568,7 @@ function fromIO_1(io) {
546
568
 
547
569
 
548
570
  function fromOption(option) {
549
- return defer_1(() => tsplus_module_16.match_(option(), () => failNow_1(tsplus_module_13.nothing()), tsplus_module_1.succeedNow));
571
+ return defer_1(() => tsplus_module_17.match_(option(), () => failNow_1(tsplus_module_14.nothing()), tsplus_module_1.succeedNow));
550
572
  }
551
573
  /**
552
574
  * @tsplus static fncts.io.ChannelOps fromQueue
@@ -554,7 +576,7 @@ function fromOption(option) {
554
576
 
555
577
 
556
578
  function fromQueue_1(queue) {
557
- return tsplus_module_1.flatMap_(fromIO_1(() => tsplus_module_18.take(queue)), _ => tsplus_module_12.match_(_, _ => tsplus_module_17.match_(_, tsplus_module_1.failCauseNow, tsplus_module_1.endNow), elem => tsplus_module_1.apSecond_(writeNow_1(elem), fromQueue_1(queue))));
579
+ return tsplus_module_1.flatMap_(fromIO_1(() => tsplus_module_19.take(queue)), _ => tsplus_module_12.match_(_, _ => tsplus_module_18.match_(_, tsplus_module_1.failCauseNow, tsplus_module_1.endNow), elem => tsplus_module_1.apSecond_(writeNow_1(elem), fromQueue_1(queue))));
558
580
  }
559
581
  /**
560
582
  * Provides the channel with its required environment, which eliminates
@@ -565,7 +587,7 @@ function fromQueue_1(queue) {
565
587
 
566
588
 
567
589
  function provideEnvironment_1(self, env) {
568
- return new _definition3.Provide(env, self);
590
+ return defer_1(() => new _definition3.Provide(env(), self));
569
591
  }
570
592
  /**
571
593
  * @tsplus fluent fncts.io.Channel contramapEnvironment
@@ -573,7 +595,7 @@ function provideEnvironment_1(self, env) {
573
595
 
574
596
 
575
597
  function contramapEnvironment_(self, f) {
576
- return tsplus_module_1.flatMap_(ask_1(), env0 => provideEnvironment_1(self, f(env0)));
598
+ return tsplus_module_1.flatMap_(ask_1(), env0 => provideEnvironment_1(self, () => f(env0)));
577
599
  }
578
600
  /**
579
601
  * Halt a channel with the specified exception
@@ -619,9 +641,9 @@ function interrupt(fiberId) {
619
641
 
620
642
 
621
643
  function scoped_1(io) {
622
- return mapOut_1(acquireReleaseOutExit_1(tsplus_module_4.flatMap_(tsplus_module_20.make, scope => tsplus_module_6.uninterruptibleMask(({
644
+ return mapOut_1(acquireReleaseOutExit_1(tsplus_module_4.flatMap_(tsplus_module_21.make, scope => tsplus_module_6.uninterruptibleMask(({
623
645
  restore
624
- }) => tsplus_module_4.matchCauseIO_(restore(tsplus_module_20.extend_(scope, io)), cause => tsplus_module_4.apSecond_(scope.close(() => tsplus_module_19.failCause(cause)), tsplus_module_4.failCauseNow(cause, fileName_1 + ":797:74"), fileName_1 + ":797:58"), out => tsplus_module_4.succeedNow((0, _function.tuple)(out, scope), fileName_1 + ":798:33"), fileName_1 + ":796:47")), fileName_1 + ":794:23"), ([_, scope], exit) => scope.close(() => exit)), ([a]) => a);
646
+ }) => tsplus_module_4.matchCauseIO_(restore(tsplus_module_21.extend_(scope, io)), cause => tsplus_module_4.apSecond_(scope.close(() => tsplus_module_20.failCause(cause)), tsplus_module_4.failCauseNow(cause, fileName_1 + ":814:74"), fileName_1 + ":814:58"), out => tsplus_module_4.succeedNow((0, _function.tuple)(out, scope), fileName_1 + ":815:33"), fileName_1 + ":813:47")), fileName_1 + ":811:23"), ([_, scope], exit) => scope.close(() => exit)), ([a]) => a);
625
647
  }
626
648
  /**
627
649
  * Returns a new channel, which is the same as this one, except the failure value of the returned
@@ -684,9 +706,19 @@ function mapOutIO_(self, f) {
684
706
  */
685
707
 
686
708
 
687
- function matchCauseChannel_(channel, onError, onSuccess) {
709
+ function matchCauseChannel_1(channel, onError, onSuccess) {
688
710
  return new _definition3.Fold(channel, new _definition3.ContinuationK(onSuccess, onError));
689
711
  }
712
+ /**
713
+ * Fold the channel exposing success and full error cause
714
+ *
715
+ * @tsplus fluent fncts.io.Channel matchChannel
716
+ */
717
+
718
+
719
+ function matchChannel_(channel, onError, onSuccess) {
720
+ return matchCauseChannel_1(channel, cause => tsplus_module_12.match_(tsplus_module_11.failureOrCause(cause), onError, tsplus_module_1.failCauseNow), onSuccess);
721
+ }
690
722
 
691
723
  const never = /*#__PURE__*/fromIO_1(() => tsplus_module_4.never);
692
724
  /**
@@ -721,6 +753,7 @@ function orHaltWith_1(self, f) {
721
753
  * Pipe the output of a channel into the input of another
722
754
  *
723
755
  * @tsplus fluent fncts.io.Channel pipeTo
756
+ * @tsplus operator fncts.io.Channel >>>
724
757
  */
725
758
 
726
759
 
@@ -739,7 +772,7 @@ class ChannelFailure {
739
772
  }
740
773
 
741
774
  function isChannelFailure(u) {
742
- return tsplus_module_21.hasTypeId(u, ChannelFailureTypeId);
775
+ return tsplus_module_22.hasTypeId(u, ChannelFailureTypeId);
743
776
  }
744
777
  /**
745
778
  * @tsplus fluent fncts.io.Channel pipeToOrFail
@@ -755,7 +788,7 @@ function pipeToOrFail_(left, right) {
755
788
 
756
789
 
757
790
  function read() {
758
- return readOrFail_1(tsplus_module_13.nothing());
791
+ return readOrFail_1(tsplus_module_14.nothing());
759
792
  }
760
793
  /**
761
794
  * @tsplus static fncts.io.ChannelOps readOrFail
@@ -796,12 +829,18 @@ function repeated_1(self) {
796
829
  return tsplus_module_1.flatMap_(self, () => repeated_1(self));
797
830
  }
798
831
  /**
799
- * @tsplus static fncts.io.Channel toQueue
832
+ * @tsplus static fncts.io.ChannelOps toQueue
800
833
  */
801
834
 
802
835
 
803
836
  function toQueue_1(queue) {
804
- return readWithCause_1(in_ => tsplus_module_1.apSecond_(fromIO_1(() => tsplus_module_18.offer_(queue, tsplus_module_22.right(in_))), toQueue_1(queue)), cause => fromIO_1(() => tsplus_module_18.offer_(queue, tsplus_module_22.left(tsplus_module_19.failCause(cause)))), done => fromIO_1(() => tsplus_module_18.offer_(queue, tsplus_module_22.left(tsplus_module_19.succeed(done)))));
837
+ return defer_1(() => {
838
+ function toQueue(queue) {
839
+ return readWithCause_1(inp => tsplus_module_1.apSecond_(fromIO_1(() => tsplus_module_19.offer_(queue, tsplus_module_23.right(inp))), toQueue(queue)), cause => fromIO_1(() => tsplus_module_19.offer_(queue, tsplus_module_23.left(tsplus_module_20.failCause(cause)))), done => fromIO_1(() => tsplus_module_19.offer_(queue, tsplus_module_23.left(tsplus_module_20.succeed(done)))));
840
+ }
841
+
842
+ return toQueue(queue());
843
+ });
805
844
  }
806
845
  /**
807
846
  * Writes an output to the channel
@@ -819,7 +858,7 @@ function write_1(out) {
819
858
 
820
859
 
821
860
  function writeAll(outs) {
822
- return writeChunk_1(tsplus_module_23.from(outs));
861
+ return writeChunk_1(tsplus_module_24.from(outs));
823
862
  }
824
863
 
825
864
  function writeChunkWriter(outs, idx, len) {
@@ -870,6 +909,22 @@ function unwrap_1(self) {
870
909
 
871
910
 
872
911
  function unwrapScoped(self) {
873
- return concatAllWith_1(scoped_1(() => self), (d, _) => d, (d, _) => d);
912
+ return concatAllWith_1(scoped_1(self), (d, _) => d, (d, _) => d);
913
+ }
914
+ /**
915
+ * @tsplus static fncts.io.ChannelOps fromHubScoped
916
+ */
917
+
918
+
919
+ function fromHubScoped(hub) {
920
+ return tsplus_module_4.defer(() => tsplus_module_4.map_(tsplus_module_25.subscribe(hub()), fromQueue_1, fileName_1 + ":1335:38"), fileName_1 + ":1335:18");
921
+ }
922
+ /**
923
+ * @tsplus static fncts.io.ChannelOps toHub
924
+ */
925
+
926
+
927
+ function toHub(hub) {
928
+ return toQueue_1(hub);
874
929
  }
875
930
  //# sourceMappingURL=api.cjs.map