@fncts/io 0.0.30 → 0.0.32
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/runScoped.d.ts +1 -0
- package/Channel/api.d.ts +1 -0
- package/Channel/internal/ChannelExecutor.d.ts +2 -2
- package/Fiber/FiberMessage.d.ts +5 -5
- package/IO/api/blocking.d.ts +7 -0
- package/IO/api/provideSomeLayer.d.ts +1 -2
- package/IO/api/zipConcurrent.d.ts +2 -1
- package/IO/runtime.d.ts +4 -2
- package/IO.d.ts +1 -0
- package/Ref/Synchronized/definition.d.ts +3 -3
- package/Semaphore.d.ts +30 -0
- package/Stream/api.d.ts +24 -4
- package/SubscriptionRef.d.ts +3 -3
- package/_cjs/Channel/api/mapOutConcurrentIO.cjs +14 -16
- package/_cjs/Channel/api/mapOutConcurrentIO.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAllWith.cjs +30 -32
- package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
- package/_cjs/Channel/api/runScoped.cjs +19 -3
- package/_cjs/Channel/api/runScoped.cjs.map +1 -1
- package/_cjs/Channel/api/toPull.cjs +1 -1
- package/_cjs/Channel/api/toPull.cjs.map +1 -1
- package/_cjs/Channel/api.cjs +3 -2
- package/_cjs/Channel/api.cjs.map +1 -1
- package/_cjs/Channel/internal/ChannelExecutor.cjs +61 -52
- package/_cjs/Channel/internal/ChannelExecutor.cjs.map +1 -1
- package/_cjs/Fiber/FiberMessage.cjs +12 -11
- package/_cjs/Fiber/FiberMessage.cjs.map +1 -1
- package/_cjs/Fiber/FiberRuntime.cjs +28 -27
- package/_cjs/Fiber/FiberRuntime.cjs.map +1 -1
- package/_cjs/FiberScope/definition.cjs +2 -2
- package/_cjs/FiberScope/definition.cjs.map +1 -1
- package/_cjs/Hub/api.cjs.map +1 -1
- package/_cjs/{RuntimeConfig.cjs → IO/api/blocking.cjs} +13 -5
- package/_cjs/IO/api/blocking.cjs.map +1 -0
- package/_cjs/IO/api/provideSomeLayer.cjs.map +1 -1
- package/_cjs/IO/api/raceWith.cjs +9 -12
- package/_cjs/IO/api/raceWith.cjs.map +1 -1
- package/_cjs/IO/api/stateful.cjs +3 -3
- package/_cjs/IO/api/stateful.cjs.map +1 -1
- package/_cjs/IO/api/withChildren.cjs +5 -4
- package/_cjs/IO/api/withChildren.cjs.map +1 -1
- package/_cjs/IO/api/zipConcurrent.cjs +23 -23
- package/_cjs/IO/api/zipConcurrent.cjs.map +1 -1
- package/_cjs/IO/runtime.cjs +8 -8
- package/_cjs/IO/runtime.cjs.map +1 -1
- package/_cjs/IO.cjs +11 -0
- package/_cjs/IO.cjs.map +1 -1
- package/_cjs/Queue/api/filterInputIO.cjs.map +1 -1
- package/_cjs/Queue/api/filterOutputIO.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/constructors.cjs +4 -5
- package/_cjs/Ref/Synchronized/constructors.cjs.map +1 -1
- package/_cjs/Ref/Synchronized/definition.cjs +1 -2
- package/_cjs/Ref/Synchronized/definition.cjs.map +1 -1
- package/_cjs/Semaphore.cjs +90 -0
- package/_cjs/Semaphore.cjs.map +1 -0
- package/_cjs/Stream/api.cjs +101 -61
- package/_cjs/Stream/api.cjs.map +1 -1
- package/_cjs/SubscriptionRef.cjs +2 -3
- package/_cjs/SubscriptionRef.cjs.map +1 -1
- package/_cjs/internal/BackgroundScheduler.cjs +199 -0
- package/_cjs/internal/BackgroundScheduler.cjs.map +1 -0
- package/_mjs/Cached/definition.mjs.map +1 -1
- package/_mjs/Channel/api/mapOutConcurrentIO.mjs +14 -16
- package/_mjs/Channel/api/mapOutConcurrentIO.mjs.map +1 -1
- package/_mjs/Channel/api/mergeAllWith.mjs +30 -32
- package/_mjs/Channel/api/mergeAllWith.mjs.map +1 -1
- package/_mjs/Channel/api/runScoped.mjs +19 -3
- package/_mjs/Channel/api/runScoped.mjs.map +1 -1
- package/_mjs/Channel/api/toPull.mjs +1 -1
- package/_mjs/Channel/api/toPull.mjs.map +1 -1
- package/_mjs/Channel/api.mjs +3 -2
- package/_mjs/Channel/api.mjs.map +1 -1
- package/_mjs/Channel/internal/ChannelExecutor.mjs +61 -52
- package/_mjs/Channel/internal/ChannelExecutor.mjs.map +1 -1
- package/_mjs/Fiber/FiberMessage.mjs +5 -5
- package/_mjs/Fiber/FiberMessage.mjs.map +1 -1
- package/_mjs/Fiber/FiberRuntime.mjs +28 -27
- package/_mjs/Fiber/FiberRuntime.mjs.map +1 -1
- package/_mjs/FiberScope/definition.mjs +2 -2
- package/_mjs/FiberScope/definition.mjs.map +1 -1
- package/_mjs/Hub/api.mjs.map +1 -1
- package/_mjs/IO/api/blocking.mjs +12 -0
- package/_mjs/IO/api/blocking.mjs.map +1 -0
- package/_mjs/IO/api/provideSomeLayer.mjs.map +1 -1
- package/_mjs/IO/api/raceWith.mjs +9 -12
- package/_mjs/IO/api/raceWith.mjs.map +1 -1
- package/_mjs/IO/api/stateful.mjs +3 -3
- package/_mjs/IO/api/stateful.mjs.map +1 -1
- package/_mjs/IO/api/withChildren.mjs +5 -4
- package/_mjs/IO/api/withChildren.mjs.map +1 -1
- package/_mjs/IO/api/zipConcurrent.mjs +23 -23
- package/_mjs/IO/api/zipConcurrent.mjs.map +1 -1
- package/_mjs/IO/runtime.mjs +6 -6
- package/_mjs/IO/runtime.mjs.map +1 -1
- package/_mjs/IO.mjs +1 -0
- package/_mjs/IO.mjs.map +1 -1
- package/_mjs/Queue/api/filterInputIO.mjs.map +1 -1
- package/_mjs/Queue/api/filterOutputIO.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/constructors.mjs +4 -5
- package/_mjs/Ref/Synchronized/constructors.mjs.map +1 -1
- package/_mjs/Ref/Synchronized/definition.mjs +1 -2
- package/_mjs/Ref/Synchronized/definition.mjs.map +1 -1
- package/_mjs/Semaphore.mjs +78 -0
- package/_mjs/Semaphore.mjs.map +1 -0
- package/_mjs/Stream/api.mjs +93 -57
- package/_mjs/Stream/api.mjs.map +1 -1
- package/_mjs/SubscriptionRef.mjs +2 -3
- package/_mjs/SubscriptionRef.mjs.map +1 -1
- package/_mjs/internal/BackgroundScheduler.mjs +191 -0
- package/_mjs/internal/BackgroundScheduler.mjs.map +1 -0
- package/_src/Cached/definition.ts +1 -1
- package/_src/Channel/api/mapOutConcurrentIO.ts +1 -1
- package/_src/Channel/api/mergeAllWith.ts +1 -1
- package/_src/Channel/api/runScoped.ts +30 -5
- package/_src/Channel/api/toPull.ts +1 -1
- package/_src/Channel/api.ts +1 -0
- package/_src/Channel/internal/ChannelExecutor.ts +24 -20
- package/_src/Fiber/FiberMessage.ts +5 -5
- package/_src/Fiber/FiberRuntime.ts +1 -1
- package/_src/FiberRefs/api.ts +1 -1
- package/_src/Hub/api.ts +1 -1
- package/_src/IO/api/blocking.ts +9 -0
- package/_src/IO/api/provideSomeLayer.ts +1 -3
- package/_src/IO/api/raceWith.ts +1 -3
- package/_src/IO/api/stateful.ts +1 -1
- package/_src/IO/api/zipConcurrent.ts +26 -30
- package/_src/IO/runtime.ts +4 -4
- package/_src/IO.ts +1 -0
- package/_src/Queue/api/filterInputIO.ts +1 -1
- package/_src/Queue/api/filterOutputIO.ts +1 -1
- package/_src/Ref/Synchronized/constructors.ts +2 -2
- package/_src/Ref/Synchronized/definition.ts +1 -1
- package/_src/Semaphore.ts +81 -0
- package/_src/State/definition.ts +1 -1
- package/_src/Stream/api.ts +58 -7
- package/_src/Subject/Atomic.ts +1 -1
- package/_src/SubscriptionRef.ts +2 -2
- package/_src/global.ts +4 -4
- package/_src/index.ts +2 -2
- package/_src/internal/BackgroundScheduler.ts +276 -0
- package/global.d.ts +4 -4
- package/index.d.ts +2 -2
- package/internal/BackgroundScheduler.d.ts +47 -0
- package/package.json +3 -3
- package/RuntimeConfig.d.ts +0 -11
- package/_cjs/RuntimeConfig.cjs.map +0 -1
- package/_mjs/RuntimeConfig.mjs +0 -3
- package/_mjs/RuntimeConfig.mjs.map +0 -1
- package/_src/RuntimeConfig.ts +0 -6
package/_cjs/Stream/api.cjs
CHANGED
|
@@ -35,6 +35,7 @@ exports.cross = cross;
|
|
|
35
35
|
exports.crossWith = void 0;
|
|
36
36
|
exports.debounce = debounce;
|
|
37
37
|
exports.defaultIfEmpty = defaultIfEmpty;
|
|
38
|
+
exports.defer = defer;
|
|
38
39
|
exports.distributedWith = distributedWith;
|
|
39
40
|
exports.distributedWithDynamic = void 0;
|
|
40
41
|
exports.drain = drain;
|
|
@@ -83,18 +84,18 @@ exports.mapConcatIO = mapConcatIO;
|
|
|
83
84
|
exports.mapError = void 0;
|
|
84
85
|
exports.mapErrorCause = mapErrorCause;
|
|
85
86
|
exports.mapIO = void 0;
|
|
86
|
-
exports.
|
|
87
|
+
exports.mapIOConcurrently = mapIOConcurrently;
|
|
88
|
+
exports.mapIOConcurrentlyUnordered = mapIOConcurrentlyUnordered;
|
|
87
89
|
exports.mergeMap = exports.mergeEither = void 0;
|
|
88
90
|
exports.mergeMapIO = mergeMapIO;
|
|
89
91
|
exports.mergeWith = void 0;
|
|
90
|
-
exports.mergeWithHandler = mergeWithHandler;
|
|
91
92
|
exports.onError = onError;
|
|
92
93
|
exports.orElse = void 0;
|
|
93
94
|
exports.orElseEither = orElseEither;
|
|
94
95
|
exports.orElseFail = orElseFail;
|
|
95
96
|
exports.orElseOptional = orElseOptional;
|
|
96
97
|
exports.orElseSucceed = orElseSucceed;
|
|
97
|
-
exports.provideLayer = exports.provideEnvironment = exports.pipeThrough = void 0;
|
|
98
|
+
exports.provideLayer = exports.provideEnvironment = exports.pipeThroughChannelOrFail = exports.pipeThrough = void 0;
|
|
98
99
|
exports.provideSomeLayer = provideSomeLayer;
|
|
99
100
|
exports.rechunk = rechunk;
|
|
100
101
|
exports.repeatIO = repeatIO;
|
|
@@ -104,7 +105,9 @@ exports.repeatValue = repeatValue;
|
|
|
104
105
|
exports.run = void 0;
|
|
105
106
|
exports.runCollect = runCollect;
|
|
106
107
|
exports.runDrain = runDrain;
|
|
107
|
-
exports.
|
|
108
|
+
exports.runForeachScoped = void 0;
|
|
109
|
+
exports.runIntoElementsScoped_ = runIntoElementsScoped_;
|
|
110
|
+
exports.runScoped = exports.runIntoQueueScoped = exports.runIntoQueueElementsScoped = exports.runIntoHubScoped = void 0;
|
|
108
111
|
exports.scan = scan;
|
|
109
112
|
exports.scanIO = void 0;
|
|
110
113
|
exports.scanReduce = scanReduce;
|
|
@@ -172,27 +175,25 @@ var tsplus_module_42 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/requir
|
|
|
172
175
|
var tsplus_module_43 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Clock/api"));
|
|
173
176
|
var tsplus_module_44 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/transplant"));
|
|
174
177
|
var tsplus_module_45 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/collection/immutable/HashMap/api"));
|
|
175
|
-
var tsplus_module_46 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
176
|
-
var tsplus_module_47 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
177
|
-
var tsplus_module_48 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
178
|
-
var tsplus_module_49 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
179
|
-
var tsplus_module_50 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
180
|
-
var tsplus_module_51 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
181
|
-
var tsplus_module_52 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
182
|
-
var tsplus_module_53 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
183
|
-
var tsplus_module_54 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
184
|
-
var tsplus_module_55 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
185
|
-
var tsplus_module_56 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
186
|
-
var tsplus_module_57 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/
|
|
187
|
-
var tsplus_module_58 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/
|
|
188
|
-
var tsplus_module_59 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/
|
|
189
|
-
var tsplus_module_60 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
190
|
-
var tsplus_module_61 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
191
|
-
var tsplus_module_62 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/
|
|
192
|
-
var tsplus_module_63 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/
|
|
193
|
-
var tsplus_module_64 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/
|
|
194
|
-
var tsplus_module_65 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/exceptions"));
|
|
195
|
-
var tsplus_module_66 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/toPull"));
|
|
178
|
+
var tsplus_module_46 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Semaphore"));
|
|
179
|
+
var tsplus_module_47 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Sink/api"));
|
|
180
|
+
var tsplus_module_48 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Predicate/api"));
|
|
181
|
+
var tsplus_module_49 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/poll"));
|
|
182
|
+
var tsplus_module_50 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/environment"));
|
|
183
|
+
var tsplus_module_51 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/collection/immutable/Conc/findIO"));
|
|
184
|
+
var tsplus_module_52 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Exit/definition"));
|
|
185
|
+
var tsplus_module_53 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Stream/internal/Pull"));
|
|
186
|
+
var tsplus_module_54 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Queue/api/takeBetween"));
|
|
187
|
+
var tsplus_module_55 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/interruptWhen"));
|
|
188
|
+
var tsplus_module_56 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/mapOutConcurrentIO"));
|
|
189
|
+
var tsplus_module_57 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/mergeMap"));
|
|
190
|
+
var tsplus_module_58 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/internal/MergeDecision"));
|
|
191
|
+
var tsplus_module_59 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/mergeWith"));
|
|
192
|
+
var tsplus_module_60 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Layer/MemoMap"));
|
|
193
|
+
var tsplus_module_61 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Layer/api"));
|
|
194
|
+
var tsplus_module_62 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/runDrain"));
|
|
195
|
+
var tsplus_module_63 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/exceptions"));
|
|
196
|
+
var tsplus_module_64 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/toPull"));
|
|
196
197
|
var _function = /*#__PURE__*/require("@fncts/base/data/function");
|
|
197
198
|
var _definition2 = /*#__PURE__*/require("./definition.cjs");
|
|
198
199
|
var _Handoff2 = /*#__PURE__*/require("./internal/Handoff.cjs");
|
|
@@ -296,6 +297,8 @@ const orElse = orElse_1;
|
|
|
296
297
|
exports.orElse = orElse;
|
|
297
298
|
const pipeThrough = pipeThrough_1;
|
|
298
299
|
exports.pipeThrough = pipeThrough;
|
|
300
|
+
const pipeThroughChannelOrFail = pipeThroughChannelOrFail_1;
|
|
301
|
+
exports.pipeThroughChannelOrFail = pipeThroughChannelOrFail;
|
|
299
302
|
const provideEnvironment = provideEnvironment_1;
|
|
300
303
|
exports.provideEnvironment = provideEnvironment;
|
|
301
304
|
const provideLayer = provideLayer_1;
|
|
@@ -308,10 +311,10 @@ const run = run_1;
|
|
|
308
311
|
exports.run = run;
|
|
309
312
|
const runForeachScoped = runForeachScoped_1;
|
|
310
313
|
exports.runForeachScoped = runForeachScoped;
|
|
311
|
-
const runIntoElementsScoped_ = runIntoElementsScoped_1;
|
|
312
|
-
exports.runIntoElementsScoped_ = runIntoElementsScoped_;
|
|
313
314
|
const runIntoQueueScoped = runIntoQueueScoped_1;
|
|
314
315
|
exports.runIntoQueueScoped = runIntoQueueScoped;
|
|
316
|
+
const runIntoQueueElementsScoped = runIntoQueueElementsScoped_1;
|
|
317
|
+
exports.runIntoQueueElementsScoped = runIntoQueueElementsScoped;
|
|
315
318
|
const runIntoHubScoped = runIntoHubScoped_1;
|
|
316
319
|
exports.runIntoHubScoped = runIntoHubScoped;
|
|
317
320
|
const runScoped = runScoped_1;
|
|
@@ -793,7 +796,7 @@ function combine(that, s, f, __tsplusTrace) {
|
|
|
793
796
|
};
|
|
794
797
|
}
|
|
795
798
|
function combineChunksProducer(handoff, latch, __tsplusTrace) {
|
|
796
|
-
return tsplus_module_11.zipRight(tsplus_module_10.readWithCause(chunk => tsplus_module_11.zipRight(combineChunksProducer(handoff, latch, __tsplusTrace))(tsplus_module_10.fromIO(() => tsplus_module_5.offer(tsplus_module_27.chunk(chunk))(handoff))), cause => tsplus_module_10.fromIO(() => tsplus_module_5.offer(tsplus_module_27.failCause(cause))(handoff)), () =>
|
|
799
|
+
return tsplus_module_11.zipRight(tsplus_module_10.readWithCause(chunk => tsplus_module_11.zipRight(combineChunksProducer(handoff, latch, __tsplusTrace))(tsplus_module_10.fromIO(() => tsplus_module_5.offer(tsplus_module_27.chunk(chunk))(handoff))), cause => tsplus_module_10.fromIO(() => tsplus_module_5.offer(tsplus_module_27.failCause(cause))(handoff)), () => tsplus_module_10.fromIO(() => tsplus_module_5.offer(tsplus_module_27.end)(handoff))))(tsplus_module_10.fromIO(() => tsplus_module_5.take(latch)));
|
|
797
800
|
}
|
|
798
801
|
/**
|
|
799
802
|
* Combines the chunks from this stream and the specified stream by repeatedly applying the
|
|
@@ -906,6 +909,12 @@ function debounce(duration, __tsplusTrace) {
|
|
|
906
909
|
}, __tsplusTrace)(tsplus_module_5.make()), __tsplusTrace), __tsplusTrace);
|
|
907
910
|
};
|
|
908
911
|
}
|
|
912
|
+
/**
|
|
913
|
+
* @tsplus static fncts.io.StreamOps defer
|
|
914
|
+
*/
|
|
915
|
+
function defer(self) {
|
|
916
|
+
return new _definition2.Stream(tsplus_module_10.defer(() => self().channel));
|
|
917
|
+
}
|
|
909
918
|
function defaultIfEmptyWriter(fb, __tsplusTrace) {
|
|
910
919
|
return tsplus_module_10.readWith(i => tsplus_module_12.isEmpty(i) ? defaultIfEmptyWriter(fb, __tsplusTrace) : tsplus_module_11.zipRight(tsplus_module_10.id())(tsplus_module_10.writeNow(i)), tsplus_module_10.failNow, () => fb.channel);
|
|
911
920
|
}
|
|
@@ -954,12 +963,12 @@ function distributedWithDynamic_1(maximumLag, decide, done = () => tsplus_module
|
|
|
954
963
|
}
|
|
955
964
|
}, __tsplusTrace)), __tsplusTrace)(tsplus_module_14.get(queuesRef, __tsplusTrace)), __tsplusTrace)(decide(a));
|
|
956
965
|
return tsplus_module_1.flatMap(queuesRef => tsplus_module_1.map(add => add, __tsplusTrace)(tsplus_module_1.flatMap(queuesLock => tsplus_module_1.flatMap(newQueue => {
|
|
957
|
-
const finalize = endTake =>
|
|
966
|
+
const finalize = endTake => queuesLock.withPermit(tsplus_module_1.asUnit(tsplus_module_1.flatMap(() => tsplus_module_1.flatMap(queues => tsplus_module_1.flatMap(() => tsplus_module_1.map(() => void 0, __tsplusTrace)(done(endTake)), __tsplusTrace)(tsplus_module_1.foreach(queues, queue => tsplus_module_1.catchJustCause(c => tsplus_module_25.interrupted(c) ? tsplus_module_3.just(tsplus_module_1.unit) : tsplus_module_3.nothing(), __tsplusTrace)(tsplus_module_28.offer(endTake, __tsplusTrace)(queue)), __tsplusTrace)), __tsplusTrace)(tsplus_module_1.map(map => tsplus_module_45.values(map), __tsplusTrace)(tsplus_module_14.get(queuesRef, __tsplusTrace))), __tsplusTrace)(tsplus_module_13.set(tsplus_module_1.flatMap(queue => tsplus_module_1.flatMap(() => {
|
|
958
967
|
const id = Symbol();
|
|
959
968
|
return tsplus_module_1.map(() => (0, _function.tuple)(id, queue), __tsplusTrace)(tsplus_module_15.update(map => tsplus_module_45.set(id, queue)(map), __tsplusTrace)(queuesRef));
|
|
960
969
|
}, __tsplusTrace)(tsplus_module_28.offer(endTake, __tsplusTrace)(queue)), __tsplusTrace)(tsplus_module_30.makeBounded(1, __tsplusTrace)), __tsplusTrace)(newQueue)), __tsplusTrace));
|
|
961
|
-
return tsplus_module_1.map(() =>
|
|
962
|
-
}, __tsplusTrace)(tsplus_module_6.make(() => tsplus_module_1.flatMap(queue => tsplus_module_1.flatMap(id => tsplus_module_1.map(() => (0, _function.tuple)(id, queue), __tsplusTrace)(tsplus_module_15.update(map => tsplus_module_45.set(id, queue)(map), __tsplusTrace)(queuesRef)), __tsplusTrace)(tsplus_module_1.succeed(() => Symbol(), __tsplusTrace)), __tsplusTrace)(tsplus_module_30.makeBounded(maximumLag, __tsplusTrace)), __tsplusTrace)), __tsplusTrace)(
|
|
970
|
+
return tsplus_module_1.map(() => queuesLock.withPermit(tsplus_module_1.flatten(tsplus_module_14.get(newQueue, __tsplusTrace), __tsplusTrace)), __tsplusTrace)(tsplus_module_33.fork(tsplus_module_1.matchCauseIO(cause => finalize(tsplus_module_41.failCause(tsplus_module_25.map(tsplus_module_3.just)(cause))), () => finalize(tsplus_module_41.fail(tsplus_module_3.nothing())), __tsplusTrace)(runForeachScoped_1(offer(queuesRef), __tsplusTrace)(self)), __tsplusTrace));
|
|
971
|
+
}, __tsplusTrace)(tsplus_module_6.make(() => tsplus_module_1.flatMap(queue => tsplus_module_1.flatMap(id => tsplus_module_1.map(() => (0, _function.tuple)(id, queue), __tsplusTrace)(tsplus_module_15.update(map => tsplus_module_45.set(id, queue)(map), __tsplusTrace)(queuesRef)), __tsplusTrace)(tsplus_module_1.succeed(() => Symbol(), __tsplusTrace)), __tsplusTrace)(tsplus_module_30.makeBounded(maximumLag, __tsplusTrace)), __tsplusTrace)), __tsplusTrace)(tsplus_module_46.makeSemaphore(1, __tsplusTrace))), __tsplusTrace)(tsplus_module_31.acquireRelease(() => tsplus_module_6.make(() => tsplus_module_45.empty(), __tsplusTrace), ref => tsplus_module_1.flatMap(qs => tsplus_module_1.foreach(tsplus_module_45.values(qs), q => tsplus_module_28.shutdown(q, __tsplusTrace), __tsplusTrace), __tsplusTrace)(tsplus_module_14.get(ref, __tsplusTrace)), __tsplusTrace));
|
|
963
972
|
};
|
|
964
973
|
}
|
|
965
974
|
/**
|
|
@@ -997,7 +1006,7 @@ function drop_1(n, __tsplusTrace) {
|
|
|
997
1006
|
*/
|
|
998
1007
|
function dropWhile_1(p, __tsplusTrace) {
|
|
999
1008
|
return stream => {
|
|
1000
|
-
return pipeThrough_1(
|
|
1009
|
+
return pipeThrough_1(tsplus_module_47.makeDropWhile(p, __tsplusTrace), __tsplusTrace)(stream);
|
|
1001
1010
|
};
|
|
1002
1011
|
}
|
|
1003
1012
|
/**
|
|
@@ -1008,7 +1017,7 @@ function dropWhile_1(p, __tsplusTrace) {
|
|
|
1008
1017
|
*/
|
|
1009
1018
|
function dropUntil(p, __tsplusTrace) {
|
|
1010
1019
|
return stream => {
|
|
1011
|
-
return drop_1(1, __tsplusTrace)(dropWhile_1(
|
|
1020
|
+
return drop_1(1, __tsplusTrace)(dropWhile_1(tsplus_module_48.invert(p), __tsplusTrace)(stream));
|
|
1012
1021
|
};
|
|
1013
1022
|
}
|
|
1014
1023
|
/**
|
|
@@ -1026,11 +1035,11 @@ function either(stream, __tsplusTrace) {
|
|
|
1026
1035
|
/**
|
|
1027
1036
|
* @tsplus static fncts.io.StreamOps empty
|
|
1028
1037
|
*/
|
|
1029
|
-
const empty_1 = /*#__PURE__*/fromChunkNow_1( /*#__PURE__*/tsplus_module_7.empty(), fileName_1 + ":
|
|
1038
|
+
const empty_1 = /*#__PURE__*/fromChunkNow_1( /*#__PURE__*/tsplus_module_7.empty(), fileName_1 + ":1228:70");
|
|
1030
1039
|
const empty = empty_1;
|
|
1031
1040
|
exports.empty = empty;
|
|
1032
1041
|
function endWhenWriter(fiber, __tsplusTrace) {
|
|
1033
|
-
return tsplus_module_10.unwrap(() => tsplus_module_1.map(maybeExit => tsplus_module_20.match(() => tsplus_module_10.readWith(inp => tsplus_module_11.zipRight(endWhenWriter(fiber, __tsplusTrace))(tsplus_module_10.writeNow(inp)), tsplus_module_10.failNow, () => tsplus_module_10.unit), exit => tsplus_module_36.match(tsplus_module_11.failCauseNow, () => tsplus_module_10.unit)(exit))(maybeExit), __tsplusTrace)(
|
|
1042
|
+
return tsplus_module_10.unwrap(() => tsplus_module_1.map(maybeExit => tsplus_module_20.match(() => tsplus_module_10.readWith(inp => tsplus_module_11.zipRight(endWhenWriter(fiber, __tsplusTrace))(tsplus_module_10.writeNow(inp)), tsplus_module_10.failNow, () => tsplus_module_10.unit), exit => tsplus_module_36.match(tsplus_module_11.failCauseNow, () => tsplus_module_10.unit)(exit))(maybeExit), __tsplusTrace)(tsplus_module_49.poll(fiber, __tsplusTrace)));
|
|
1034
1043
|
}
|
|
1035
1044
|
/**
|
|
1036
1045
|
* Halts the evaluation of this stream when the provided IO completes. The given IO
|
|
@@ -1060,7 +1069,7 @@ function ensuring_1(finalizer, __tsplusTrace) {
|
|
|
1060
1069
|
* @tsplus static fncts.io.StreamOps environment
|
|
1061
1070
|
*/
|
|
1062
1071
|
function environment_1(__tsplusTrace) {
|
|
1063
|
-
return fromIO_1(
|
|
1072
|
+
return fromIO_1(tsplus_module_50.environment(__tsplusTrace), __tsplusTrace);
|
|
1064
1073
|
}
|
|
1065
1074
|
/**
|
|
1066
1075
|
* Accesses the environment of the stream.
|
|
@@ -1181,7 +1190,7 @@ function find(p, __tsplusTrace) {
|
|
|
1181
1190
|
*/
|
|
1182
1191
|
function findIO(f, __tsplusTrace) {
|
|
1183
1192
|
return stream => {
|
|
1184
|
-
const loop = tsplus_module_10.readWith(inp => tsplus_module_10.unwrap(() => tsplus_module_1.map(maybeA => tsplus_module_20.match(() => loop, a => tsplus_module_10.writeNow(tsplus_module_19.single(a)))(maybeA), __tsplusTrace)(
|
|
1193
|
+
const loop = tsplus_module_10.readWith(inp => tsplus_module_10.unwrap(() => tsplus_module_1.map(maybeA => tsplus_module_20.match(() => loop, a => tsplus_module_10.writeNow(tsplus_module_19.single(a)))(maybeA), __tsplusTrace)(tsplus_module_51.findIO(f, __tsplusTrace)(inp))), tsplus_module_10.failNow, () => tsplus_module_10.unit);
|
|
1185
1194
|
return new _definition2.Stream(tsplus_module_10.pipeTo(loop)(stream.channel));
|
|
1186
1195
|
};
|
|
1187
1196
|
}
|
|
@@ -1203,7 +1212,7 @@ function flatten_1(self, __tsplusTrace) {
|
|
|
1203
1212
|
*/
|
|
1204
1213
|
function flattenExitOption_1(stream, __tsplusTrace) {
|
|
1205
1214
|
const processChunk = (chunk, cont) => {
|
|
1206
|
-
const [toEmit, rest] = tsplus_module_12.splitWhere(_ => !
|
|
1215
|
+
const [toEmit, rest] = tsplus_module_12.splitWhere(_ => !tsplus_module_52.isSuccess(_))(chunk);
|
|
1207
1216
|
const next = tsplus_module_20.match(() => cont, exit => tsplus_module_36.match(cause => tsplus_module_20.match(() => tsplus_module_11.endNow(undefined), tsplus_module_11.failCauseNow)(tsplus_module_25.flipCauseOption(cause)), () => tsplus_module_11.endNow(undefined))(exit))(tsplus_module_12.head(rest));
|
|
1208
1217
|
return tsplus_module_11.zipRight(next)(tsplus_module_10.writeNow(tsplus_module_12.filterMap(exit => tsplus_module_36.match(() => tsplus_module_3.nothing(), tsplus_module_3.just)(exit))(toEmit)));
|
|
1209
1218
|
};
|
|
@@ -1339,11 +1348,11 @@ function fromPull_1(scopedPull, __tsplusTrace) {
|
|
|
1339
1348
|
function fromQueue_1(queue, maxChunkSize = _definition2.DEFAULT_CHUNK_SIZE, __tsplusTrace) {
|
|
1340
1349
|
return repeatIOChunkMaybe_1(tsplus_module_1.catchAllCause(c => tsplus_module_1.flatMap(down => {
|
|
1341
1350
|
if (down && tsplus_module_25.interrupted(c)) {
|
|
1342
|
-
return
|
|
1351
|
+
return tsplus_module_53.end;
|
|
1343
1352
|
} else {
|
|
1344
|
-
return
|
|
1353
|
+
return tsplus_module_53.failCause(c);
|
|
1345
1354
|
}
|
|
1346
|
-
}, __tsplusTrace)(tsplus_module_28.isShutdown(queue, __tsplusTrace)), __tsplusTrace)(tsplus_module_1.map(tsplus_module_19.from, __tsplusTrace)(
|
|
1355
|
+
}, __tsplusTrace)(tsplus_module_28.isShutdown(queue, __tsplusTrace)), __tsplusTrace)(tsplus_module_1.map(tsplus_module_19.from, __tsplusTrace)(tsplus_module_54.takeBetween(1, maxChunkSize, __tsplusTrace)(queue))), __tsplusTrace);
|
|
1347
1356
|
}
|
|
1348
1357
|
/**
|
|
1349
1358
|
* @tsplus static fncts.io.StreamOps fromQueueWithShutdown
|
|
@@ -1380,7 +1389,7 @@ function halt_1(u, __tsplusTrace) {
|
|
|
1380
1389
|
return new _definition2.Stream(tsplus_module_10.halt(u));
|
|
1381
1390
|
}
|
|
1382
1391
|
function haltWhenWriter(fiber, __tsplusTrace) {
|
|
1383
|
-
return tsplus_module_10.unwrap(() => tsplus_module_1.map(maybeExit => tsplus_module_20.match(() => tsplus_module_10.readWith(i => tsplus_module_11.zipRight(haltWhenWriter(fiber, __tsplusTrace))(tsplus_module_10.writeNow(i)), tsplus_module_10.failNow, () => tsplus_module_10.unit), exit => tsplus_module_36.match(tsplus_module_11.failCauseNow, () => tsplus_module_10.unit)(exit))(maybeExit), __tsplusTrace)(
|
|
1392
|
+
return tsplus_module_10.unwrap(() => tsplus_module_1.map(maybeExit => tsplus_module_20.match(() => tsplus_module_10.readWith(i => tsplus_module_11.zipRight(haltWhenWriter(fiber, __tsplusTrace))(tsplus_module_10.writeNow(i)), tsplus_module_10.failNow, () => tsplus_module_10.unit), exit => tsplus_module_36.match(tsplus_module_11.failCauseNow, () => tsplus_module_10.unit)(exit))(maybeExit), __tsplusTrace)(tsplus_module_49.poll(fiber, __tsplusTrace)));
|
|
1384
1393
|
}
|
|
1385
1394
|
/**
|
|
1386
1395
|
* Halts the evaluation of this stream when the provided IO completes. The
|
|
@@ -1485,7 +1494,7 @@ function intersperse(stream, middle, __tsplusTrace) {
|
|
|
1485
1494
|
*/
|
|
1486
1495
|
function interruptWhen(io, __tsplusTrace) {
|
|
1487
1496
|
return stream => {
|
|
1488
|
-
return new _definition2.Stream(
|
|
1497
|
+
return new _definition2.Stream(tsplus_module_55.interruptWhen(io)(stream.channel));
|
|
1489
1498
|
};
|
|
1490
1499
|
}
|
|
1491
1500
|
/**
|
|
@@ -1493,7 +1502,7 @@ function interruptWhen(io, __tsplusTrace) {
|
|
|
1493
1502
|
*/
|
|
1494
1503
|
function interruptWhenFuture(future, __tsplusTrace) {
|
|
1495
1504
|
return fa => {
|
|
1496
|
-
return new _definition2.Stream(
|
|
1505
|
+
return new _definition2.Stream(tsplus_module_55.interruptWhenFuture(future)(fa.channel));
|
|
1497
1506
|
};
|
|
1498
1507
|
}
|
|
1499
1508
|
/**
|
|
@@ -1654,11 +1663,19 @@ function mapIOLoop(iterator, f, __tsplusTrace) {
|
|
|
1654
1663
|
*
|
|
1655
1664
|
* @note This combinator destroys the chunking structure. It's recommended to use chunkN afterwards.
|
|
1656
1665
|
*
|
|
1657
|
-
* @tsplus pipeable fncts.io.Stream
|
|
1666
|
+
* @tsplus pipeable fncts.io.Stream mapIOConcurrently
|
|
1658
1667
|
*/
|
|
1659
|
-
function
|
|
1668
|
+
function mapIOConcurrently(n, f, __tsplusTrace) {
|
|
1660
1669
|
return stream => {
|
|
1661
|
-
return new _definition2.Stream(tsplus_module_10.mapOut(tsplus_module_19.single)(
|
|
1670
|
+
return new _definition2.Stream(tsplus_module_10.mapOut(tsplus_module_19.single)(tsplus_module_56.mapOutConcurrentIO(n, f)(tsplus_module_10.concatMap(tsplus_module_10.writeChunk)(stream.channel))));
|
|
1671
|
+
};
|
|
1672
|
+
}
|
|
1673
|
+
/**
|
|
1674
|
+
* @tsplus pipeable fncts.io.Stream mapIOConcurrentlyUnordered
|
|
1675
|
+
*/
|
|
1676
|
+
function mapIOConcurrentlyUnordered(n, f) {
|
|
1677
|
+
return self => {
|
|
1678
|
+
return pipeThroughChannelOrFail_1(tsplus_module_57.mergeMap(inp => fromIO_1(f(inp), fileName_1 + ":2216:41").channel, n, 16)(tsplus_module_10.concatMap(chunk => tsplus_module_10.writeChunk(chunk))(tsplus_module_10.id())))(self);
|
|
1662
1679
|
};
|
|
1663
1680
|
}
|
|
1664
1681
|
/**
|
|
@@ -1671,7 +1688,7 @@ function mapIOC(n, f, __tsplusTrace) {
|
|
|
1671
1688
|
*/
|
|
1672
1689
|
function mergeMap_1(f, n, bufferSize = 16, __tsplusTrace) {
|
|
1673
1690
|
return ma => {
|
|
1674
|
-
return new _definition2.Stream(
|
|
1691
|
+
return new _definition2.Stream(tsplus_module_57.mergeMap(a => f(a).channel, n, bufferSize)(tsplus_module_10.concatMap(tsplus_module_10.writeChunk)(ma.channel)));
|
|
1675
1692
|
};
|
|
1676
1693
|
}
|
|
1677
1694
|
/**
|
|
@@ -1695,14 +1712,14 @@ function mergeEither_1(fb, __tsplusTrace) {
|
|
|
1695
1712
|
};
|
|
1696
1713
|
}
|
|
1697
1714
|
function mergeWithHandler(terminate, __tsplusTrace) {
|
|
1698
|
-
return exit => terminate || !
|
|
1715
|
+
return exit => terminate || !tsplus_module_52.isSuccess(exit) ? tsplus_module_58.done(tsplus_module_1.fromExitNow(exit, __tsplusTrace)) : tsplus_module_58.wait(tsplus_module_1.fromExitNow);
|
|
1699
1716
|
}
|
|
1700
1717
|
/**
|
|
1701
1718
|
* @tsplus pipeable fncts.io.Stream mergeWith
|
|
1702
1719
|
*/
|
|
1703
1720
|
function mergeWith_1(sb, l, r, strategy = "Both", __tsplusTrace) {
|
|
1704
1721
|
return sa => {
|
|
1705
|
-
return new _definition2.Stream(
|
|
1722
|
+
return new _definition2.Stream(tsplus_module_59.mergeWith(map_1(r, __tsplusTrace)(sb).channel, mergeWithHandler(strategy === "Either" || strategy === "Left", __tsplusTrace), mergeWithHandler(strategy === "Either" || strategy === "Right", __tsplusTrace))(map_1(l, __tsplusTrace)(sa).channel));
|
|
1706
1723
|
};
|
|
1707
1724
|
}
|
|
1708
1725
|
/**
|
|
@@ -1779,6 +1796,14 @@ function pipeThrough_1(sa, __tsplusTrace) {
|
|
|
1779
1796
|
return new _definition2.Stream(tsplus_module_10.pipeToOrFail(sa.channel)(ma.channel));
|
|
1780
1797
|
};
|
|
1781
1798
|
}
|
|
1799
|
+
/**
|
|
1800
|
+
* @tsplus pipeable fncts.io.Stream pipeThroughChannelOrFail
|
|
1801
|
+
*/
|
|
1802
|
+
function pipeThroughChannelOrFail_1(channel) {
|
|
1803
|
+
return self => {
|
|
1804
|
+
return new _definition2.Stream(tsplus_module_10.pipeToOrFail(channel)(self.channel));
|
|
1805
|
+
};
|
|
1806
|
+
}
|
|
1782
1807
|
/**
|
|
1783
1808
|
* Provides the stream with its required environment, which eliminates
|
|
1784
1809
|
* its dependency on `R`.
|
|
@@ -1795,7 +1820,7 @@ function provideEnvironment_1(r, __tsplusTrace) {
|
|
|
1795
1820
|
*/
|
|
1796
1821
|
function provideLayer_1(layer, __tsplusTrace) {
|
|
1797
1822
|
return self => {
|
|
1798
|
-
return new _definition2.Stream(tsplus_module_10.unwrapScoped(() => tsplus_module_1.map(r => tsplus_module_10.provideEnvironment(() => r)(self.channel), __tsplusTrace)(
|
|
1823
|
+
return new _definition2.Stream(tsplus_module_10.unwrapScoped(() => tsplus_module_1.map(r => tsplus_module_10.provideEnvironment(() => r)(self.channel), __tsplusTrace)(tsplus_module_60.build(layer, __tsplusTrace))));
|
|
1799
1824
|
};
|
|
1800
1825
|
}
|
|
1801
1826
|
/**
|
|
@@ -1804,7 +1829,7 @@ function provideLayer_1(layer, __tsplusTrace) {
|
|
|
1804
1829
|
function provideSomeLayer(layer, __tsplusTrace) {
|
|
1805
1830
|
return self => {
|
|
1806
1831
|
// @ts-expect-error
|
|
1807
|
-
return provideLayer_1(
|
|
1832
|
+
return provideLayer_1(tsplus_module_61.and(layer, __tsplusTrace)(tsplus_module_61.environment(__tsplusTrace)), __tsplusTrace)(self);
|
|
1808
1833
|
};
|
|
1809
1834
|
}
|
|
1810
1835
|
class Rechunker {
|
|
@@ -1918,7 +1943,7 @@ function repeatIOChunkMaybe_1(fa, __tsplusTrace) {
|
|
|
1918
1943
|
*/
|
|
1919
1944
|
function run_1(sink, __tsplusTrace) {
|
|
1920
1945
|
return stream => {
|
|
1921
|
-
return
|
|
1946
|
+
return tsplus_module_62.runDrain(tsplus_module_10.pipeToOrFail(sink.channel)(stream.channel));
|
|
1922
1947
|
};
|
|
1923
1948
|
}
|
|
1924
1949
|
/**
|
|
@@ -1927,7 +1952,7 @@ function run_1(sink, __tsplusTrace) {
|
|
|
1927
1952
|
* @tsplus getter fncts.io.Stream runCollect
|
|
1928
1953
|
*/
|
|
1929
1954
|
function runCollect(stream, __tsplusTrace) {
|
|
1930
|
-
return run_1(
|
|
1955
|
+
return run_1(tsplus_module_47.makeCollectAll(__tsplusTrace), __tsplusTrace)(stream);
|
|
1931
1956
|
}
|
|
1932
1957
|
/**
|
|
1933
1958
|
* Runs the stream and collects ignore its elements.
|
|
@@ -1935,14 +1960,14 @@ function runCollect(stream, __tsplusTrace) {
|
|
|
1935
1960
|
* @tsplus getter fncts.io.Stream runDrain
|
|
1936
1961
|
*/
|
|
1937
1962
|
function runDrain(stream, __tsplusTrace) {
|
|
1938
|
-
return run_1(
|
|
1963
|
+
return run_1(tsplus_module_47.drain, __tsplusTrace)(stream);
|
|
1939
1964
|
}
|
|
1940
1965
|
/**
|
|
1941
1966
|
* @tsplus pipeable fncts.io.Stream runForeachScoped
|
|
1942
1967
|
*/
|
|
1943
1968
|
function runForeachScoped_1(f, __tsplusTrace) {
|
|
1944
1969
|
return self => {
|
|
1945
|
-
return runScoped_1(
|
|
1970
|
+
return runScoped_1(tsplus_module_47.makeForeach(f, __tsplusTrace), __tsplusTrace)(self);
|
|
1946
1971
|
};
|
|
1947
1972
|
}
|
|
1948
1973
|
/**
|
|
@@ -1951,7 +1976,7 @@ function runForeachScoped_1(f, __tsplusTrace) {
|
|
|
1951
1976
|
*
|
|
1952
1977
|
* @tsplus pipeable fncts.io.Stream runIntoElementsScoped
|
|
1953
1978
|
*/
|
|
1954
|
-
function
|
|
1979
|
+
function runIntoElementsScoped_(queue, __tsplusTrace) {
|
|
1955
1980
|
return stream => {
|
|
1956
1981
|
const writer = tsplus_module_10.readWith(inp => tsplus_module_11.zipRight(writer)(tsplus_module_12.foldLeft(tsplus_module_10.unit, (channel, a) => tsplus_module_11.zipRight(tsplus_module_10.writeNow(tsplus_module_41.succeed(a)))(channel))(inp)), err => tsplus_module_10.writeNow(tsplus_module_41.fail(tsplus_module_3.just(err))), () => tsplus_module_10.writeNow(tsplus_module_41.fail(tsplus_module_3.nothing())));
|
|
1957
1982
|
return tsplus_module_1.asUnit(tsplus_module_16.runScoped(tsplus_module_10.drain(tsplus_module_10.mapOutIO(exit => tsplus_module_28.offer(exit, __tsplusTrace)(queue))(tsplus_module_10.pipeTo(writer)(stream.channel)))), __tsplusTrace);
|
|
@@ -1969,6 +1994,21 @@ function runIntoQueueScoped_1(queue, __tsplusTrace) {
|
|
|
1969
1994
|
return tsplus_module_1.asUnit(tsplus_module_16.runScoped(tsplus_module_10.drain(tsplus_module_10.mapOutIO(take => tsplus_module_28.offer(take, __tsplusTrace)(queue))(tsplus_module_10.pipeTo(writer)(stream.channel)))), __tsplusTrace);
|
|
1970
1995
|
};
|
|
1971
1996
|
}
|
|
1997
|
+
/**
|
|
1998
|
+
* Like runIntoQueue, but provides the result as a scoped IO
|
|
1999
|
+
* to allow for scope composition.
|
|
2000
|
+
*
|
|
2001
|
+
* @tsplus pipeable fncts.io.Stream runIntoQueueElementsScoped
|
|
2002
|
+
*/
|
|
2003
|
+
function runIntoQueueElementsScoped_1(queue) {
|
|
2004
|
+
return self => {
|
|
2005
|
+
return tsplus_module_1.defer(() => {
|
|
2006
|
+
const queue0 = queue();
|
|
2007
|
+
const writer = tsplus_module_10.readWithCause(inp => tsplus_module_11.zipRight(writer)(tsplus_module_10.fromIO(() => tsplus_module_28.offerAll(tsplus_module_12.map(a => tsplus_module_41.succeed(a))(inp), fileName_1 + ":2647:57")(queue0))), cause => tsplus_module_10.fromIO(() => tsplus_module_28.offer(tsplus_module_41.failCause(tsplus_module_25.map(e => tsplus_module_3.just(e))(cause)), fileName_1 + ":2648:47")(queue0)), () => tsplus_module_10.fromIO(() => tsplus_module_28.offer(tsplus_module_41.fail(tsplus_module_3.nothing()), fileName_1 + ":2649:42")(queue0)));
|
|
2008
|
+
return tsplus_module_1.asUnit(tsplus_module_16.runScoped(tsplus_module_10.drain(tsplus_module_10.pipeTo(writer)(self.channel))), fileName_1 + ":2652:55");
|
|
2009
|
+
}, fileName_1 + ":2644:20");
|
|
2010
|
+
};
|
|
2011
|
+
}
|
|
1972
2012
|
/**
|
|
1973
2013
|
* Like `Stream#runIntoHub`, but provides the result as a `Managed` to allow for scope
|
|
1974
2014
|
* composition.
|
|
@@ -2072,7 +2112,7 @@ function take(n, __tsplusTrace) {
|
|
|
2072
2112
|
return empty_1;
|
|
2073
2113
|
}
|
|
2074
2114
|
if (!Number.isInteger(n)) {
|
|
2075
|
-
return halt_1(() => new
|
|
2115
|
+
return halt_1(() => new tsplus_module_63.IllegalArgumentError(`${n} should be an integer`, "Stream.take"), __tsplusTrace);
|
|
2076
2116
|
}
|
|
2077
2117
|
return new _definition2.Stream(tsplus_module_10.pipeTo(takeLoop(n, __tsplusTrace))(stream.channel));
|
|
2078
2118
|
};
|
|
@@ -2095,7 +2135,7 @@ function takeUntilIOLoop(iterator, f, __tsplusTrace) {
|
|
|
2095
2135
|
}
|
|
2096
2136
|
function takeUntilLoop(p, __tsplusTrace) {
|
|
2097
2137
|
return tsplus_module_10.readWith(chunk => {
|
|
2098
|
-
const taken = tsplus_module_12.takeWhile(
|
|
2138
|
+
const taken = tsplus_module_12.takeWhile(tsplus_module_48.invert(p))(chunk);
|
|
2099
2139
|
const last = tsplus_module_12.take(1)(tsplus_module_12.drop(taken.length)(chunk));
|
|
2100
2140
|
if (tsplus_module_12.isEmpty(last)) {
|
|
2101
2141
|
return tsplus_module_11.zipRight(takeUntilLoop(p, __tsplusTrace))(tsplus_module_10.writeNow(taken));
|
|
@@ -2178,7 +2218,7 @@ function toHub_1(capacity, __tsplusTrace) {
|
|
|
2178
2218
|
* @tsplus getter fncts.io.Stream toPull
|
|
2179
2219
|
*/
|
|
2180
2220
|
function toPull_1(stream, __tsplusTrace) {
|
|
2181
|
-
return tsplus_module_1.map(io => tsplus_module_1.flatMap(r => tsplus_module_4.match(() => tsplus_module_1.failNow(tsplus_module_3.nothing(), __tsplusTrace), tsplus_module_1.succeedNow)(r), __tsplusTrace)(tsplus_module_1.mapError(tsplus_module_3.just, __tsplusTrace)(io)), __tsplusTrace)(
|
|
2221
|
+
return tsplus_module_1.map(io => tsplus_module_1.flatMap(r => tsplus_module_4.match(() => tsplus_module_1.failNow(tsplus_module_3.nothing(), __tsplusTrace), tsplus_module_1.succeedNow)(r), __tsplusTrace)(tsplus_module_1.mapError(tsplus_module_3.just, __tsplusTrace)(io)), __tsplusTrace)(tsplus_module_64.toPull(stream.channel));
|
|
2182
2222
|
}
|
|
2183
2223
|
/**
|
|
2184
2224
|
* Converts the stream to a managed queue of chunks. After the managed queue is used,
|
|
@@ -2204,7 +2244,7 @@ function toQueueDropping(capacity = 2, __tsplusTrace) {
|
|
|
2204
2244
|
*/
|
|
2205
2245
|
function toQueueOfElements_1(capacity = 2, __tsplusTrace) {
|
|
2206
2246
|
return stream => {
|
|
2207
|
-
return tsplus_module_1.flatMap(queue => tsplus_module_1.map(() => queue, __tsplusTrace)(
|
|
2247
|
+
return tsplus_module_1.flatMap(queue => tsplus_module_1.map(() => queue, __tsplusTrace)(tsplus_module_17.forkScoped(runIntoQueueElementsScoped_1(() => queue)(stream), __tsplusTrace)), __tsplusTrace)(tsplus_module_31.acquireRelease(() => tsplus_module_30.makeBounded(capacity, __tsplusTrace), _ => tsplus_module_28.shutdown(_, __tsplusTrace), __tsplusTrace));
|
|
2208
2248
|
};
|
|
2209
2249
|
}
|
|
2210
2250
|
/**
|