effect 3.10.19 → 3.11.0
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/dist/cjs/BigDecimal.js +125 -24
- package/dist/cjs/BigDecimal.js.map +1 -1
- package/dist/cjs/Channel.js +44 -4
- package/dist/cjs/Channel.js.map +1 -1
- package/dist/cjs/Config.js +8 -1
- package/dist/cjs/Config.js.map +1 -1
- package/dist/cjs/Context.js +26 -1
- package/dist/cjs/Context.js.map +1 -1
- package/dist/cjs/Cron.js +75 -67
- package/dist/cjs/Cron.js.map +1 -1
- package/dist/cjs/DateTime.js +114 -664
- package/dist/cjs/DateTime.js.map +1 -1
- package/dist/cjs/Effect.js +82 -4
- package/dist/cjs/Effect.js.map +1 -1
- package/dist/cjs/Inspectable.js +8 -4
- package/dist/cjs/Inspectable.js.map +1 -1
- package/dist/cjs/JSONSchema.js.map +1 -1
- package/dist/cjs/Micro.js +1099 -1072
- package/dist/cjs/Micro.js.map +1 -1
- package/dist/cjs/STM.js.map +1 -1
- package/dist/cjs/Schema.js +57 -8
- package/dist/cjs/Schema.js.map +1 -1
- package/dist/cjs/Sink.js +9 -1
- package/dist/cjs/Sink.js.map +1 -1
- package/dist/cjs/Stream.js +25 -7
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/Utils.js +7 -1
- package/dist/cjs/Utils.js.map +1 -1
- package/dist/cjs/internal/channel/channelExecutor.js +5 -9
- package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
- package/dist/cjs/internal/channel.js +156 -130
- package/dist/cjs/internal/channel.js.map +1 -1
- package/dist/cjs/internal/config.js +13 -4
- package/dist/cjs/internal/config.js.map +1 -1
- package/dist/cjs/internal/context.js +46 -3
- package/dist/cjs/internal/context.js.map +1 -1
- package/dist/cjs/internal/dateTime.js +747 -0
- package/dist/cjs/internal/dateTime.js.map +1 -0
- package/dist/cjs/internal/fiberRuntime.js +34 -11
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/groupBy.js +9 -3
- package/dist/cjs/internal/groupBy.js.map +1 -1
- package/dist/cjs/internal/layer.js +1 -1
- package/dist/cjs/internal/layer.js.map +1 -1
- package/dist/cjs/internal/mailbox.js +1 -1
- package/dist/cjs/internal/mailbox.js.map +1 -1
- package/dist/cjs/internal/sink.js +25 -21
- package/dist/cjs/internal/sink.js.map +1 -1
- package/dist/cjs/internal/stream.js +70 -71
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/cjs/internal/version.js.map +1 -1
- package/dist/dts/BigDecimal.d.ts +56 -1
- package/dist/dts/BigDecimal.d.ts.map +1 -1
- package/dist/dts/Channel.d.ts +66 -5
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/Config.d.ts +23 -1
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/Context.d.ts +111 -0
- package/dist/dts/Context.d.ts.map +1 -1
- package/dist/dts/Cron.d.ts +15 -6
- package/dist/dts/Cron.d.ts.map +1 -1
- package/dist/dts/DateTime.d.ts +40 -49
- package/dist/dts/DateTime.d.ts.map +1 -1
- package/dist/dts/Effect.d.ts +88 -1
- package/dist/dts/Effect.d.ts.map +1 -1
- package/dist/dts/Inspectable.d.ts.map +1 -1
- package/dist/dts/JSONSchema.d.ts +1 -0
- package/dist/dts/JSONSchema.d.ts.map +1 -1
- package/dist/dts/Micro.d.ts +875 -872
- package/dist/dts/Micro.d.ts.map +1 -1
- package/dist/dts/STM.d.ts +2 -0
- package/dist/dts/STM.d.ts.map +1 -1
- package/dist/dts/Schema.d.ts +32 -0
- package/dist/dts/Schema.d.ts.map +1 -1
- package/dist/dts/Sink.d.ts +8 -0
- package/dist/dts/Sink.d.ts.map +1 -1
- package/dist/dts/Stream.d.ts +50 -32
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/Utils.d.ts +4 -0
- package/dist/dts/Utils.d.ts.map +1 -1
- package/dist/dts/internal/context.d.ts +1 -1
- package/dist/dts/internal/context.d.ts.map +1 -1
- package/dist/dts/internal/dateTime.d.ts +2 -0
- package/dist/dts/internal/dateTime.d.ts.map +1 -0
- package/dist/dts/internal/fiberRuntime.d.ts.map +1 -1
- package/dist/dts/internal/stream.d.ts.map +1 -1
- package/dist/esm/BigDecimal.js +119 -20
- package/dist/esm/BigDecimal.js.map +1 -1
- package/dist/esm/Channel.js +42 -2
- package/dist/esm/Channel.js.map +1 -1
- package/dist/esm/Config.js +7 -0
- package/dist/esm/Config.js.map +1 -1
- package/dist/esm/Context.js +25 -0
- package/dist/esm/Context.js.map +1 -1
- package/dist/esm/Cron.js +75 -67
- package/dist/esm/Cron.js.map +1 -1
- package/dist/esm/DateTime.js +112 -627
- package/dist/esm/DateTime.js.map +1 -1
- package/dist/esm/Effect.js +77 -0
- package/dist/esm/Effect.js.map +1 -1
- package/dist/esm/Inspectable.js +8 -4
- package/dist/esm/Inspectable.js.map +1 -1
- package/dist/esm/JSONSchema.js.map +1 -1
- package/dist/esm/Micro.js +1077 -1047
- package/dist/esm/Micro.js.map +1 -1
- package/dist/esm/STM.js.map +1 -1
- package/dist/esm/Schema.js +54 -0
- package/dist/esm/Schema.js.map +1 -1
- package/dist/esm/Sink.js +8 -0
- package/dist/esm/Sink.js.map +1 -1
- package/dist/esm/Stream.js +23 -5
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/Utils.js +5 -0
- package/dist/esm/Utils.js.map +1 -1
- package/dist/esm/internal/channel/channelExecutor.js +5 -7
- package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
- package/dist/esm/internal/channel.js +152 -129
- package/dist/esm/internal/channel.js.map +1 -1
- package/dist/esm/internal/config.js +11 -3
- package/dist/esm/internal/config.js.map +1 -1
- package/dist/esm/internal/context.js +42 -2
- package/dist/esm/internal/context.js.map +1 -1
- package/dist/esm/internal/dateTime.js +704 -0
- package/dist/esm/internal/dateTime.js.map +1 -0
- package/dist/esm/internal/fiberRuntime.js +31 -9
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/groupBy.js +9 -3
- package/dist/esm/internal/groupBy.js.map +1 -1
- package/dist/esm/internal/layer.js +1 -1
- package/dist/esm/internal/layer.js.map +1 -1
- package/dist/esm/internal/mailbox.js +1 -1
- package/dist/esm/internal/mailbox.js.map +1 -1
- package/dist/esm/internal/sink.js +23 -20
- package/dist/esm/internal/sink.js.map +1 -1
- package/dist/esm/internal/stream.js +66 -69
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/dist/esm/internal/version.js.map +1 -1
- package/package.json +1 -1
- package/src/BigDecimal.ts +131 -21
- package/src/Channel.ts +81 -5
- package/src/Config.ts +24 -1
- package/src/Context.ts +119 -0
- package/src/Cron.ts +85 -68
- package/src/DateTime.ts +155 -757
- package/src/Effect.ts +340 -1
- package/src/Inspectable.ts +11 -7
- package/src/JSONSchema.ts +1 -0
- package/src/Micro.ts +2005 -1757
- package/src/STM.ts +2 -0
- package/src/Schema.ts +60 -0
- package/src/Sink.ts +11 -0
- package/src/Stream.ts +55 -44
- package/src/Utils.ts +8 -0
- package/src/internal/channel/channelExecutor.ts +37 -33
- package/src/internal/channel.ts +504 -467
- package/src/internal/config.ts +18 -6
- package/src/internal/context.ts +56 -4
- package/src/internal/dateTime.ts +1126 -0
- package/src/internal/fiberRuntime.ts +35 -16
- package/src/internal/groupBy.ts +13 -22
- package/src/internal/layer.ts +5 -8
- package/src/internal/mailbox.ts +6 -4
- package/src/internal/sink.ts +55 -35
- package/src/internal/stream.ts +299 -299
- package/src/internal/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"channelExecutor.js","names":["Cause","_interopRequireWildcard","require","Deferred","Effect","ExecutionStrategy","Exit","Fiber","_Function","Option","Scope","core","ChannelOpCodes","ChildExecutorDecisionOpCodes","ChannelStateOpCodes","UpstreamPullStrategyOpCodes","ContinuationOpCodes","ChannelState","Continuation","Subexecutor","upstreamPullRequest","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ChannelExecutor","_activeSubexecutor","undefined","_cancelled","_closeLastSubstream","_currentChannel","_done","_doneStack","_emitted","_executeCloseLastSubstream","_input","_inProgressFinalizer","_providedEnv","constructor","initialChannel","providedEnv","executeCloseLastSubstream","run","result","processCancellation","runSubexecutor","Done","isEffect","fromEffect","_tag","OP_BRACKET_OUT","runBracketOut","OP_BRIDGE","bridgeInput","input","channel","inputExecutor","drainer","flatMap","awaitRead","suspend","state","OP_DONE","match","getDone","onFailure","cause","error","onSuccess","value","done","OP_EMIT","emit","getEmit","OP_FROM_EFFECT","matchCauseEffect","effect","OP_READ","readUpstream","forkDaemon","interruptible","fiber","sync","addFinalizer","exit","interrupt","restorePipe","void","OP_CONCAT_ALL","executor","prevLastClose","pipe","zipRight","PullFromUpstream","k","x","y","combineInners","combineAll","request","onPull","onEmit","out","Emit","OP_ENSURING","runEnsuring","OP_FAIL","doneHalt","OP_FOLD","push","provide","isFromEffect","doneSucceed","OP_PIPE_TO","previousInput","leftExec","left","right","OP_PROVIDE","previousEnv","context","inner","read","Read","identity","emitted","more","onExit","die","OP_SUCCEED","evaluate","OP_SUCCEED_NOW","terminal","OP_SUSPEND","failCause","cancelWith","clearInProgressFinalizer","storeInProgressFinalizer","finalizer","popAllFinalizers","finalizers","next","pop","length","runFinalizers","popNextFinalizers","builder","cont","OP_CONTINUATION_K","prev","currInput","close","runInProgressFinalizers","ensuring","closeSelf","selfFinalizers","closeSubexecutors","ifNotNull","zip","map","exit1","exit2","exit3","uninterruptible","succeed","head","reverse","finalizerEffect","f","onHalt","bracketOut","acquire","write","ContinuationFinalizerImpl","subexecutor","OP_PULL_FROM_CHILD","pullFromChild","childExecutor","parentSubexecutor","OP_PULL_FROM_UPSTREAM","pullFromUpstream","OP_DRAIN_CHILD_EXECUTORS","drainChildExecutors","replaceSubexecutor","nextSubExec","finishWithExit","finishSubexecutorWithCloseEffect","subexecutorDone","closeFuncs","forEach","closeFunc","closeEffect","discard","applyUpstreamPullStrategy","upstreamFinished","queue","strategy","OP_PULL_AFTER_NEXT","shouldPrepend","some","emitSeparator","OP_PULL_AFTER_ALL_ENQUEUED","shouldEnqueue","onEmitted","childExecutorDecision","OP_CONTINUE","OP_CLOSE","finishWithDoneValue","OP_YIELD","modifiedParent","enqueuePullFromChild","handleSubexecutorFailure","effectOrUndefinedIgnored","doneValue","upstreamExecutor","createChild","lastDone","combineChildResults","activeChildExecutors","combineWithChildResult","DrainChildExecutors","upstreamDone","performPullFromUpstream","activeChild","slice","PullFromChild","closeLastSubstream","updatedChildExecutors","Pulled","isSome","drain","lastClose","rest","remainingExecutors","NoUpstream","reduce","curr","fin","exits","all","getOrElse","readStack","current","upstream","dieMessage","emitEffect","doneEffect","onDone","onEffect","catchAllCause","exports","self","runScoped","scoped","channelDeferred","scopeDeferred","scope","acquireUseRelease","exec","runScopedInterpret","intoDeferred","await","zipLeft","finalize","tapErrorCause","uninterruptibleMask","restore","parent","fork","sequential","make","child","forkScoped","yieldNow","inheritAll","channelState","op"],"sources":["../../../../src/internal/channel/channelExecutor.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"channelExecutor.js","names":["Cause","_interopRequireWildcard","require","Deferred","Effect","ExecutionStrategy","Exit","Fiber","_Function","Option","Scope","core","ChannelOpCodes","ChildExecutorDecisionOpCodes","ChannelStateOpCodes","UpstreamPullStrategyOpCodes","ContinuationOpCodes","ChannelState","Continuation","Subexecutor","upstreamPullRequest","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ChannelExecutor","_activeSubexecutor","undefined","_cancelled","_closeLastSubstream","_currentChannel","_done","_doneStack","_emitted","_executeCloseLastSubstream","_input","_inProgressFinalizer","_providedEnv","constructor","initialChannel","providedEnv","executeCloseLastSubstream","run","result","processCancellation","runSubexecutor","Done","isEffect","fromEffect","_tag","OP_BRACKET_OUT","runBracketOut","OP_BRIDGE","bridgeInput","input","channel","inputExecutor","drainer","flatMap","awaitRead","suspend","state","OP_DONE","match","getDone","onFailure","cause","error","onSuccess","value","done","OP_EMIT","emit","getEmit","OP_FROM_EFFECT","matchCauseEffect","effect","OP_READ","readUpstream","forkDaemon","interruptible","fiber","sync","addFinalizer","exit","interrupt","restorePipe","void","OP_CONCAT_ALL","executor","prevLastClose","pipe","zipRight","PullFromUpstream","k","x","y","combineInners","combineAll","request","onPull","onEmit","out","Emit","OP_ENSURING","runEnsuring","OP_FAIL","doneHalt","OP_FOLD","push","provide","isFromEffect","doneSucceed","OP_PIPE_TO","previousInput","leftExec","left","right","OP_PROVIDE","previousEnv","context","inner","read","Read","identity","emitted","more","onExit","die","OP_SUCCEED","evaluate","OP_SUCCEED_NOW","terminal","OP_SUSPEND","failCause","cancelWith","clearInProgressFinalizer","storeInProgressFinalizer","finalizer","popAllFinalizers","finalizers","next","pop","length","runFinalizers","popNextFinalizers","builder","cont","OP_CONTINUATION_K","prev","currInput","close","runInProgressFinalizers","ensuring","closeSelf","selfFinalizers","closeSubexecutors","ifNotNull","zip","map","exit1","exit2","exit3","uninterruptible","succeed","head","reverse","finalizerEffect","f","onHalt","bracketOut","acquire","write","ContinuationFinalizerImpl","subexecutor","OP_PULL_FROM_CHILD","pullFromChild","childExecutor","parentSubexecutor","OP_PULL_FROM_UPSTREAM","pullFromUpstream","OP_DRAIN_CHILD_EXECUTORS","drainChildExecutors","replaceSubexecutor","nextSubExec","finishWithExit","finishSubexecutorWithCloseEffect","subexecutorDone","closeFuncs","forEach","closeFunc","closeEffect","discard","applyUpstreamPullStrategy","upstreamFinished","queue","strategy","OP_PULL_AFTER_NEXT","shouldPrepend","some","emitSeparator","OP_PULL_AFTER_ALL_ENQUEUED","shouldEnqueue","onEmitted","childExecutorDecision","OP_CONTINUE","OP_CLOSE","finishWithDoneValue","OP_YIELD","modifiedParent","enqueuePullFromChild","handleSubexecutorFailure","effectOrUndefinedIgnored","doneValue","upstreamExecutor","createChild","lastDone","combineChildResults","activeChildExecutors","combineWithChildResult","DrainChildExecutors","upstreamDone","performPullFromUpstream","activeChild","slice","PullFromChild","closeLastSubstream","updatedChildExecutors","Pulled","isSome","drain","lastClose","rest","remainingExecutors","NoUpstream","reduce","curr","fin","exits","all","getOrElse","readStack","current","upstream","dieMessage","emitEffect","doneEffect","onDone","onEffect","catchAllCause","exports","runIn","dual","self","scope","channelDeferred","scopeDeferred","acquireUseRelease","exec","runScopedInterpret","intoDeferred","await","zipLeft","finalize","tapErrorCause","uninterruptibleMask","restore","fork","sequential","make","child","forkIn","isDone","inheritAll","channelState","op"],"sources":["../../../../src/internal/channel/channelExecutor.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
Object.defineProperty(exports, "__esModule", {
|
|
4
4
|
value: true
|
|
5
5
|
});
|
|
6
|
-
exports.zipRight = exports.zipLeft = exports.zip = exports.writeChunk = exports.writeAll = exports.withSpan = exports.updateService = exports.unwrapScoped = exports.unwrap = exports.toQueue = exports.toPull = exports.toPubSub = exports.splitLines = exports.serviceWithEffect = exports.serviceWithChannel = exports.serviceWith = exports.service = exports.scoped = exports.runDrain = exports.runCollect = exports.run = exports.repeated = exports.read = exports.provideSomeLayer = exports.provideService = exports.provideLayer = exports.pipeToOrFail = exports.orElse = exports.orDieWith = exports.orDie = exports.never = exports.mergeWith = exports.mergeOutWith = exports.mergeOut = exports.mergeMap = exports.mergeAllWith = exports.mergeAllUnboundedWith = exports.mergeAllUnbounded = exports.mergeAll = exports.mapOutEffectPar = exports.mapOutEffect = exports.mapOut = exports.mapInputInEffect = exports.mapInputIn = exports.mapInputErrorEffect = exports.mapInputError = exports.mapInputEffect = exports.mapInputContext = exports.mapInput = exports.mapErrorCause = exports.mapError = exports.mapEffect = exports.map = exports.isChannelException = exports.interruptWhenDeferred = exports.interruptWhen = exports.identityChannel = exports.fromQueue = exports.fromPubSubScoped = exports.fromPubSub = exports.fromOption = exports.fromInput = exports.fromEither = exports.foldChannel = exports.flatten = exports.ensuring = exports.emitCollect = exports.drain = exports.doneCollect = exports.contextWithEffect = exports.contextWithChannel = exports.contextWith = exports.context = exports.concatOut = exports.concatMap = exports.collect = exports.catchAll = exports.bufferChunk = exports.buffer = exports.asVoid = exports.as = exports.acquireUseRelease = exports.ChannelExceptionTypeId = exports.ChannelException = void 0;
|
|
6
|
+
exports.zipRight = exports.zipLeft = exports.zip = exports.writeChunk = exports.writeAll = exports.withSpan = exports.updateService = exports.unwrapScopedWith = exports.unwrapScoped = exports.unwrap = exports.toQueue = exports.toPullIn = exports.toPull = exports.toPubSub = exports.splitLines = exports.serviceWithEffect = exports.serviceWithChannel = exports.serviceWith = exports.service = exports.scopedWith = exports.scoped = exports.runScoped = exports.runDrain = exports.runCollect = exports.run = exports.repeated = exports.read = exports.provideSomeLayer = exports.provideService = exports.provideLayer = exports.pipeToOrFail = exports.orElse = exports.orDieWith = exports.orDie = exports.never = exports.mergeWith = exports.mergeOutWith = exports.mergeOut = exports.mergeMap = exports.mergeAllWith = exports.mergeAllUnboundedWith = exports.mergeAllUnbounded = exports.mergeAll = exports.mapOutEffectPar = exports.mapOutEffect = exports.mapOut = exports.mapInputInEffect = exports.mapInputIn = exports.mapInputErrorEffect = exports.mapInputError = exports.mapInputEffect = exports.mapInputContext = exports.mapInput = exports.mapErrorCause = exports.mapError = exports.mapEffect = exports.map = exports.isChannelException = exports.interruptWhenDeferred = exports.interruptWhen = exports.identityChannel = exports.fromQueue = exports.fromPubSubScoped = exports.fromPubSub = exports.fromOption = exports.fromInput = exports.fromEither = exports.foldChannel = exports.flatten = exports.ensuring = exports.emitCollect = exports.drain = exports.doneCollect = exports.contextWithEffect = exports.contextWithChannel = exports.contextWith = exports.context = exports.concatOut = exports.concatMap = exports.collect = exports.catchAll = exports.bufferChunk = exports.buffer = exports.asVoid = exports.as = exports.acquireUseRelease = exports.ChannelExceptionTypeId = exports.ChannelException = void 0;
|
|
7
7
|
var Cause = _interopRequireWildcard(require("../Cause.js"));
|
|
8
8
|
var Chunk = _interopRequireWildcard(require("../Chunk.js"));
|
|
9
9
|
var Context = _interopRequireWildcard(require("../Context.js"));
|
|
@@ -273,31 +273,27 @@ const mapOutEffect = exports.mapOutEffect = /*#__PURE__*/(0, _Function.dual)(2,
|
|
|
273
273
|
return core.pipeTo(self, reader);
|
|
274
274
|
});
|
|
275
275
|
/** @internal */
|
|
276
|
-
const mapOutEffectPar = exports.mapOutEffectPar = /*#__PURE__*/(0, _Function.dual)(3, (self, f, n) => (
|
|
277
|
-
const
|
|
278
|
-
const
|
|
279
|
-
const
|
|
280
|
-
|
|
281
|
-
yield*
|
|
276
|
+
const mapOutEffectPar = exports.mapOutEffectPar = /*#__PURE__*/(0, _Function.dual)(3, (self, f, n) => unwrapScopedWith(scope => Effect.gen(function* () {
|
|
277
|
+
const input = yield* singleProducerAsyncInput.make();
|
|
278
|
+
const queueReader = fromInput(input);
|
|
279
|
+
const queue = yield* Queue.bounded(n);
|
|
280
|
+
yield* Scope.addFinalizer(scope, Queue.shutdown(queue));
|
|
281
|
+
const errorSignal = yield* Deferred.make();
|
|
282
|
+
const withPermits = n === Number.POSITIVE_INFINITY ? _ => _Function.identity : (yield* Effect.makeSemaphore(n)).withPermits;
|
|
283
|
+
const pull = yield* queueReader.pipe(core.pipeTo(self), toPullIn(scope));
|
|
284
|
+
yield* pull.pipe(Effect.matchCauseEffect({
|
|
282
285
|
onFailure: cause => Queue.offer(queue, Effect.failCause(cause)),
|
|
283
|
-
onSuccess:
|
|
284
|
-
onLeft: outDone =>
|
|
285
|
-
|
|
286
|
-
|
|
287
|
-
|
|
288
|
-
|
|
289
|
-
|
|
290
|
-
|
|
291
|
-
yield* $(Effect.asVoid(Queue.offer(queue, Effect.map(Deferred.await(deferred), Either.right))));
|
|
292
|
-
yield* $(Deferred.succeed(latch, void 0), Effect.zipRight((0, _Function.pipe)(Effect.uninterruptibleMask(restore => (0, _Function.pipe)(Effect.exit(restore(Deferred.await(errorSignal))), Effect.raceFirst(Effect.exit(restore(f(outElem)))),
|
|
293
|
-
// TODO: remove
|
|
294
|
-
Effect.flatMap(exit => Effect.suspend(() => exit)))), Effect.tapErrorCause(cause => Deferred.failCause(errorSignal, cause)), Effect.intoDeferred(deferred))), withPermits(1), Effect.forkScoped);
|
|
295
|
-
yield* $(Deferred.await(latch));
|
|
286
|
+
onSuccess: Either.match({
|
|
287
|
+
onLeft: outDone => Effect.zipRight(Effect.interruptible(withPermits(n)(Effect.void)), Effect.asVoid(Queue.offer(queue, Effect.succeed(Either.left(outDone))))),
|
|
288
|
+
onRight: outElem => Effect.gen(function* () {
|
|
289
|
+
const deferred = yield* Deferred.make();
|
|
290
|
+
const latch = yield* Deferred.make();
|
|
291
|
+
yield* Queue.offer(queue, Effect.map(Deferred.await(deferred), Either.right));
|
|
292
|
+
yield* Deferred.succeed(latch, void 0).pipe(Effect.zipRight(Effect.uninterruptibleMask(restore => Effect.exit(restore(Deferred.await(errorSignal))).pipe(Effect.raceFirst(Effect.exit(restore(f(outElem)))), Effect.flatMap(_Function.identity))).pipe(Effect.tapErrorCause(cause => Deferred.failCause(errorSignal, cause)), Effect.intoDeferred(deferred))), withPermits(1), Effect.forkIn(scope));
|
|
293
|
+
yield* Deferred.await(latch);
|
|
296
294
|
})
|
|
297
295
|
})
|
|
298
|
-
}), Effect.forever, Effect.interruptible, Effect.
|
|
299
|
-
return queue;
|
|
300
|
-
}), Effect.map(queue => {
|
|
296
|
+
}), Effect.forever, Effect.interruptible, Effect.forkIn(scope));
|
|
301
297
|
const consumer = unwrap(Effect.matchCause(Effect.flatten(Queue.take(queue)), {
|
|
302
298
|
onFailure: core.failCause,
|
|
303
299
|
onSuccess: Either.match({
|
|
@@ -305,8 +301,8 @@ const mapOutEffectPar = exports.mapOutEffectPar = /*#__PURE__*/(0, _Function.dua
|
|
|
305
301
|
onRight: outElem => core.flatMap(core.write(outElem), () => consumer)
|
|
306
302
|
})
|
|
307
303
|
}));
|
|
308
|
-
return consumer;
|
|
309
|
-
})
|
|
304
|
+
return core.embedInput(consumer, input);
|
|
305
|
+
})));
|
|
310
306
|
/** @internal */
|
|
311
307
|
const mergeAll = options => {
|
|
312
308
|
return channels => mergeAllWith(options)(channels, _Function.constVoid);
|
|
@@ -327,63 +323,65 @@ const mergeAllWith = ({
|
|
|
327
323
|
bufferSize = 16,
|
|
328
324
|
concurrency,
|
|
329
325
|
mergeStrategy = _mergeStrategy.BackPressure()
|
|
330
|
-
}) => (channels, f) => (
|
|
326
|
+
}) => (channels, f) => unwrapScopedWith(scope => Effect.gen(function* () {
|
|
331
327
|
const concurrencyN = concurrency === "unbounded" ? Number.MAX_SAFE_INTEGER : concurrency;
|
|
332
|
-
const input = yield*
|
|
328
|
+
const input = yield* singleProducerAsyncInput.make();
|
|
333
329
|
const queueReader = fromInput(input);
|
|
334
|
-
const queue = yield*
|
|
335
|
-
|
|
336
|
-
const
|
|
337
|
-
|
|
338
|
-
const
|
|
339
|
-
const
|
|
340
|
-
const
|
|
341
|
-
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
|
|
330
|
+
const queue = yield* Queue.bounded(bufferSize);
|
|
331
|
+
yield* Scope.addFinalizer(scope, Queue.shutdown(queue));
|
|
332
|
+
const cancelers = yield* Queue.unbounded();
|
|
333
|
+
yield* Scope.addFinalizer(scope, Queue.shutdown(cancelers));
|
|
334
|
+
const lastDone = yield* Ref.make(Option.none());
|
|
335
|
+
const errorSignal = yield* Deferred.make();
|
|
336
|
+
const withPermits = (yield* Effect.makeSemaphore(concurrencyN)).withPermits;
|
|
337
|
+
const pull = yield* toPullIn(core.pipeTo(queueReader, channels), scope);
|
|
338
|
+
function evaluatePull(pull) {
|
|
339
|
+
return pull.pipe(Effect.flatMap(Either.match({
|
|
340
|
+
onLeft: done => Effect.succeed(Option.some(done)),
|
|
341
|
+
onRight: outElem => Effect.as(Queue.offer(queue, Effect.succeed(Either.right(outElem))), Option.none())
|
|
342
|
+
})), Effect.repeat({
|
|
343
|
+
until: _ => Option.isSome(_)
|
|
344
|
+
}), Effect.flatMap(outDone => Ref.update(lastDone, Option.match({
|
|
345
|
+
onNone: () => Option.some(outDone.value),
|
|
346
|
+
onSome: lastDone => Option.some(f(lastDone, outDone.value))
|
|
347
|
+
}))), Effect.catchAllCause(cause => Cause.isInterrupted(cause) ? Effect.failCause(cause) : Queue.offer(queue, Effect.failCause(cause)).pipe(Effect.zipRight(Deferred.succeed(errorSignal, void 0)), Effect.asVoid)));
|
|
348
|
+
}
|
|
349
|
+
yield* pull.pipe(Effect.matchCauseEffect({
|
|
350
|
+
onFailure: cause => Queue.offer(queue, Effect.failCause(cause)).pipe(Effect.zipRight(Effect.succeed(false))),
|
|
351
351
|
onSuccess: Either.match({
|
|
352
352
|
onLeft: outDone => Effect.raceWith(Effect.interruptible(Deferred.await(errorSignal)), Effect.interruptible(withPermits(concurrencyN)(Effect.void)), {
|
|
353
353
|
onSelfDone: (_, permitAcquisition) => Effect.as(Fiber.interrupt(permitAcquisition), false),
|
|
354
|
-
onOtherDone: (_, failureAwait) => Effect.zipRight(Fiber.interrupt(failureAwait),
|
|
354
|
+
onOtherDone: (_, failureAwait) => Effect.zipRight(Fiber.interrupt(failureAwait), Ref.get(lastDone).pipe(Effect.flatMap(Option.match({
|
|
355
355
|
onNone: () => Queue.offer(queue, Effect.succeed(Either.left(outDone))),
|
|
356
356
|
onSome: lastDone => Queue.offer(queue, Effect.succeed(Either.left(f(lastDone, outDone))))
|
|
357
357
|
})), Effect.as(false)))
|
|
358
358
|
}),
|
|
359
359
|
onRight: channel => _mergeStrategy.match(mergeStrategy, {
|
|
360
|
-
onBackPressure: () => Effect.gen(function* (
|
|
361
|
-
const latch = yield*
|
|
362
|
-
const raceEffects = (
|
|
363
|
-
yield*
|
|
364
|
-
yield*
|
|
365
|
-
const errored = yield*
|
|
360
|
+
onBackPressure: () => Effect.gen(function* () {
|
|
361
|
+
const latch = yield* Deferred.make();
|
|
362
|
+
const raceEffects = Effect.scopedWith(scope => toPullIn(core.pipeTo(queueReader, channel), scope).pipe(Effect.flatMap(pull => Effect.race(Effect.exit(evaluatePull(pull)), Effect.exit(Effect.interruptible(Deferred.await(errorSignal))))), Effect.flatMap(_Function.identity)));
|
|
363
|
+
yield* Deferred.succeed(latch, void 0).pipe(Effect.zipRight(raceEffects), withPermits(1), Effect.forkIn(scope));
|
|
364
|
+
yield* Deferred.await(latch);
|
|
365
|
+
const errored = yield* Deferred.isDone(errorSignal);
|
|
366
366
|
return !errored;
|
|
367
367
|
}),
|
|
368
|
-
onBufferSliding: () => Effect.gen(function* (
|
|
369
|
-
const canceler = yield*
|
|
370
|
-
const latch = yield*
|
|
371
|
-
const size = yield*
|
|
372
|
-
yield*
|
|
373
|
-
yield*
|
|
374
|
-
const raceEffects = (
|
|
375
|
-
yield*
|
|
376
|
-
yield*
|
|
377
|
-
const errored = yield*
|
|
368
|
+
onBufferSliding: () => Effect.gen(function* () {
|
|
369
|
+
const canceler = yield* Deferred.make();
|
|
370
|
+
const latch = yield* Deferred.make();
|
|
371
|
+
const size = yield* Queue.size(cancelers);
|
|
372
|
+
yield* Queue.take(cancelers).pipe(Effect.flatMap(canceler => Deferred.succeed(canceler, void 0)), Effect.when(() => size >= concurrencyN));
|
|
373
|
+
yield* Queue.offer(cancelers, canceler);
|
|
374
|
+
const raceEffects = Effect.scopedWith(scope => toPullIn(core.pipeTo(queueReader, channel), scope).pipe(Effect.flatMap(pull => Effect.exit(evaluatePull(pull)).pipe(Effect.race(Effect.exit(Effect.interruptible(Deferred.await(errorSignal)))), Effect.race(Effect.exit(Effect.interruptible(Deferred.await(canceler)))))), Effect.flatMap(_Function.identity)));
|
|
375
|
+
yield* Deferred.succeed(latch, void 0).pipe(Effect.zipRight(raceEffects), withPermits(1), Effect.forkIn(scope));
|
|
376
|
+
yield* Deferred.await(latch);
|
|
377
|
+
const errored = yield* Deferred.isDone(errorSignal);
|
|
378
378
|
return !errored;
|
|
379
379
|
})
|
|
380
380
|
})
|
|
381
381
|
})
|
|
382
382
|
}), Effect.repeat({
|
|
383
383
|
while: _ => _
|
|
384
|
-
}), Effect.
|
|
385
|
-
return [queue, input];
|
|
386
|
-
}), Effect.map(([queue, input]) => {
|
|
384
|
+
}), Effect.forkIn(scope));
|
|
387
385
|
const consumer = (0, _Function.pipe)(Queue.take(queue), Effect.flatten, Effect.matchCause({
|
|
388
386
|
onFailure: core.failCause,
|
|
389
387
|
onSuccess: Either.match({
|
|
@@ -392,7 +390,7 @@ const mergeAllWith = ({
|
|
|
392
390
|
})
|
|
393
391
|
}), unwrap);
|
|
394
392
|
return core.embedInput(consumer, input);
|
|
395
|
-
})
|
|
393
|
+
}));
|
|
396
394
|
/** @internal */
|
|
397
395
|
exports.mergeAllWith = mergeAllWith;
|
|
398
396
|
const mergeMap = exports.mergeMap = /*#__PURE__*/(0, _Function.dual)(3, (self, f, options) => mergeAll(options)(mapOut(self, f)));
|
|
@@ -405,67 +403,84 @@ const mergeOutWith = exports.mergeOutWith = /*#__PURE__*/(0, _Function.dual)(3,
|
|
|
405
403
|
concurrency: n
|
|
406
404
|
})(mapOut(self, _Function.identity), f));
|
|
407
405
|
/** @internal */
|
|
408
|
-
const mergeWith = exports.mergeWith = /*#__PURE__*/(0, _Function.dual)(2, (self, options) =>
|
|
409
|
-
|
|
410
|
-
|
|
411
|
-
|
|
412
|
-
const
|
|
413
|
-
|
|
414
|
-
|
|
415
|
-
|
|
416
|
-
|
|
417
|
-
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
};
|
|
425
|
-
return Exit.match(exit, {
|
|
426
|
-
onFailure: cause => onDecision(done(Exit.failCause(cause))),
|
|
427
|
-
onSuccess: Either.match({
|
|
428
|
-
onLeft: z => onDecision(done(Exit.succeed(z))),
|
|
429
|
-
onRight: elem => Effect.succeed(core.flatMap(core.write(elem), () => core.flatMap(core.fromEffect(Effect.forkIn(Effect.interruptible(pull), scope)), leftFiber => go(both(leftFiber, fiber)))))
|
|
430
|
-
})
|
|
431
|
-
});
|
|
432
|
-
};
|
|
433
|
-
const go = state => {
|
|
434
|
-
switch (state._tag) {
|
|
435
|
-
case MergeStateOpCodes.OP_BOTH_RUNNING:
|
|
436
|
-
{
|
|
437
|
-
const leftJoin = Effect.interruptible(Fiber.join(state.left));
|
|
438
|
-
const rightJoin = Effect.interruptible(Fiber.join(state.right));
|
|
439
|
-
return unwrap(Effect.raceWith(leftJoin, rightJoin, {
|
|
440
|
-
onSelfDone: (leftExit, rf) => Effect.zipRight(Fiber.interrupt(rf), handleSide(leftExit, state.right, pullL)(options.onSelfDone, mergeState.BothRunning, f => mergeState.LeftDone(f))),
|
|
441
|
-
onOtherDone: (rightExit, lf) => Effect.zipRight(Fiber.interrupt(lf), handleSide(rightExit, state.left, pullR)(options.onOtherDone, (left, right) => mergeState.BothRunning(right, left), f => mergeState.RightDone(f)))
|
|
442
|
-
}));
|
|
443
|
-
}
|
|
444
|
-
case MergeStateOpCodes.OP_LEFT_DONE:
|
|
445
|
-
{
|
|
446
|
-
return unwrap(Effect.map(Effect.exit(pullR), Exit.match({
|
|
447
|
-
onFailure: cause => core.fromEffect(state.f(Exit.failCause(cause))),
|
|
448
|
-
onSuccess: Either.match({
|
|
449
|
-
onLeft: done => core.fromEffect(state.f(Exit.succeed(done))),
|
|
450
|
-
onRight: elem => core.flatMap(core.write(elem), () => go(mergeState.LeftDone(state.f)))
|
|
451
|
-
})
|
|
452
|
-
})));
|
|
453
|
-
}
|
|
454
|
-
case MergeStateOpCodes.OP_RIGHT_DONE:
|
|
455
|
-
{
|
|
456
|
-
return unwrap(Effect.map(Effect.exit(pullL), Exit.match({
|
|
457
|
-
onFailure: cause => core.fromEffect(state.f(Exit.failCause(cause))),
|
|
406
|
+
const mergeWith = exports.mergeWith = /*#__PURE__*/(0, _Function.dual)(2, (self, options) => {
|
|
407
|
+
function merge(scope) {
|
|
408
|
+
return Effect.gen(function* () {
|
|
409
|
+
const input = yield* singleProducerAsyncInput.make();
|
|
410
|
+
const queueReader = fromInput(input);
|
|
411
|
+
const pullL = yield* toPullIn(core.pipeTo(queueReader, self), scope);
|
|
412
|
+
const pullR = yield* toPullIn(core.pipeTo(queueReader, options.other), scope);
|
|
413
|
+
function handleSide(exit, fiber, pull) {
|
|
414
|
+
return (done, both, single) => {
|
|
415
|
+
function onDecision(decision) {
|
|
416
|
+
const op = decision;
|
|
417
|
+
if (op._tag === MergeDecisionOpCodes.OP_DONE) {
|
|
418
|
+
return Effect.succeed(core.fromEffect(Effect.zipRight(Fiber.interrupt(fiber), op.effect)));
|
|
419
|
+
}
|
|
420
|
+
return Effect.map(Fiber.await(fiber), Exit.match({
|
|
421
|
+
onFailure: cause => core.fromEffect(op.f(Exit.failCause(cause))),
|
|
458
422
|
onSuccess: Either.match({
|
|
459
|
-
onLeft: done => core.fromEffect(
|
|
460
|
-
onRight: elem =>
|
|
423
|
+
onLeft: done => core.fromEffect(op.f(Exit.succeed(done))),
|
|
424
|
+
onRight: elem => zipRight(core.write(elem), go(single(op.f)))
|
|
461
425
|
})
|
|
462
|
-
}))
|
|
426
|
+
}));
|
|
463
427
|
}
|
|
428
|
+
return Exit.match(exit, {
|
|
429
|
+
onFailure: cause => onDecision(done(Exit.failCause(cause))),
|
|
430
|
+
onSuccess: Either.match({
|
|
431
|
+
onLeft: z => onDecision(done(Exit.succeed(z))),
|
|
432
|
+
onRight: elem => Effect.succeed(core.flatMap(core.write(elem), () => core.flatMap(core.fromEffect(Effect.forkIn(Effect.interruptible(pull), scope)), leftFiber => go(both(leftFiber, fiber)))))
|
|
433
|
+
})
|
|
434
|
+
});
|
|
435
|
+
};
|
|
464
436
|
}
|
|
465
|
-
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
437
|
+
function go(state) {
|
|
438
|
+
switch (state._tag) {
|
|
439
|
+
case MergeStateOpCodes.OP_BOTH_RUNNING:
|
|
440
|
+
{
|
|
441
|
+
const leftJoin = Effect.interruptible(Fiber.join(state.left));
|
|
442
|
+
const rightJoin = Effect.interruptible(Fiber.join(state.right));
|
|
443
|
+
return unwrap(Effect.raceWith(leftJoin, rightJoin, {
|
|
444
|
+
onSelfDone: (leftExit, rf) => Effect.zipRight(Fiber.interrupt(rf), handleSide(leftExit, state.right, pullL)(options.onSelfDone, mergeState.BothRunning, f => mergeState.LeftDone(f))),
|
|
445
|
+
onOtherDone: (rightExit, lf) => Effect.zipRight(Fiber.interrupt(lf), handleSide(rightExit, state.left, pullR)(options.onOtherDone, (left, right) => mergeState.BothRunning(right, left), f => mergeState.RightDone(f)))
|
|
446
|
+
}));
|
|
447
|
+
}
|
|
448
|
+
case MergeStateOpCodes.OP_LEFT_DONE:
|
|
449
|
+
{
|
|
450
|
+
return unwrap(Effect.map(Effect.exit(pullR), Exit.match({
|
|
451
|
+
onFailure: cause => core.fromEffect(state.f(Exit.failCause(cause))),
|
|
452
|
+
onSuccess: Either.match({
|
|
453
|
+
onLeft: done => core.fromEffect(state.f(Exit.succeed(done))),
|
|
454
|
+
onRight: elem => core.flatMap(core.write(elem), () => go(mergeState.LeftDone(state.f)))
|
|
455
|
+
})
|
|
456
|
+
})));
|
|
457
|
+
}
|
|
458
|
+
case MergeStateOpCodes.OP_RIGHT_DONE:
|
|
459
|
+
{
|
|
460
|
+
return unwrap(Effect.map(Effect.exit(pullL), Exit.match({
|
|
461
|
+
onFailure: cause => core.fromEffect(state.f(Exit.failCause(cause))),
|
|
462
|
+
onSuccess: Either.match({
|
|
463
|
+
onLeft: done => core.fromEffect(state.f(Exit.succeed(done))),
|
|
464
|
+
onRight: elem => core.flatMap(core.write(elem), () => go(mergeState.RightDone(state.f)))
|
|
465
|
+
})
|
|
466
|
+
})));
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
}
|
|
470
|
+
return core.fromEffect(Effect.withFiberRuntime(parent => {
|
|
471
|
+
const inherit = Effect.withFiberRuntime(state => {
|
|
472
|
+
;
|
|
473
|
+
state.transferChildren(parent.scope());
|
|
474
|
+
return Effect.void;
|
|
475
|
+
});
|
|
476
|
+
const leftFiber = Effect.interruptible(pullL).pipe(Effect.ensuring(inherit), Effect.forkIn(scope));
|
|
477
|
+
const rightFiber = Effect.interruptible(pullR).pipe(Effect.ensuring(inherit), Effect.forkIn(scope));
|
|
478
|
+
return Effect.zipWith(leftFiber, rightFiber, (left, right) => mergeState.BothRunning(left, right));
|
|
479
|
+
})).pipe(core.flatMap(go), core.embedInput(input));
|
|
480
|
+
});
|
|
481
|
+
}
|
|
482
|
+
return unwrapScopedWith(merge);
|
|
483
|
+
});
|
|
469
484
|
/** @internal */
|
|
470
485
|
const never = exports.never = /*#__PURE__*/core.fromEffect(Effect.never);
|
|
471
486
|
/** @internal */
|
|
@@ -499,7 +514,7 @@ const provideService = exports.provideService = /*#__PURE__*/(0, _Function.dual)
|
|
|
499
514
|
return core.flatMap(context(), context => core.provideContext(self, Context.add(context, tag, service)));
|
|
500
515
|
});
|
|
501
516
|
/** @internal */
|
|
502
|
-
const provideLayer = exports.provideLayer = /*#__PURE__*/(0, _Function.dual)(2, (self, layer) =>
|
|
517
|
+
const provideLayer = exports.provideLayer = /*#__PURE__*/(0, _Function.dual)(2, (self, layer) => unwrapScopedWith(scope => Effect.map(Layer.buildWithScope(layer, scope), context => core.provideContext(self, context))));
|
|
503
518
|
/** @internal */
|
|
504
519
|
const mapInputContext = exports.mapInputContext = /*#__PURE__*/(0, _Function.dual)(2, (self, f) => contextWithChannel(context => core.provideContext(self, f(context))));
|
|
505
520
|
/** @internal */
|
|
@@ -513,18 +528,24 @@ exports.read = read;
|
|
|
513
528
|
const repeated = self => core.flatMap(self, () => repeated(self));
|
|
514
529
|
/** @internal */
|
|
515
530
|
exports.repeated = repeated;
|
|
516
|
-
const run = self => Effect.
|
|
531
|
+
const run = self => Effect.scopedWith(scope => executor.runIn(self, scope));
|
|
517
532
|
/** @internal */
|
|
518
533
|
exports.run = run;
|
|
519
|
-
const runCollect = self =>
|
|
534
|
+
const runCollect = self => run(core.collectElements(self));
|
|
520
535
|
/** @internal */
|
|
521
536
|
exports.runCollect = runCollect;
|
|
522
|
-
const runDrain = self =>
|
|
537
|
+
const runDrain = self => run(drain(self));
|
|
523
538
|
/** @internal */
|
|
524
539
|
exports.runDrain = runDrain;
|
|
540
|
+
const runScoped = self => Effect.scopeWith(scope => executor.runIn(self, scope));
|
|
541
|
+
/** @internal */
|
|
542
|
+
exports.runScoped = runScoped;
|
|
525
543
|
const scoped = effect => unwrap(Effect.uninterruptibleMask(restore => Effect.map(Scope.make(), scope => core.acquireReleaseOut(Effect.tapErrorCause(restore(Scope.extend(effect, scope)), cause => Scope.close(scope, Exit.failCause(cause))), (_, exit) => Scope.close(scope, exit)))));
|
|
526
544
|
/** @internal */
|
|
527
545
|
exports.scoped = scoped;
|
|
546
|
+
const scopedWith = f => unwrapScoped(Effect.map(Effect.scope, scope => core.flatMap(core.fromEffect(f(scope)), core.write)));
|
|
547
|
+
/** @internal */
|
|
548
|
+
exports.scopedWith = scopedWith;
|
|
528
549
|
const service = tag => core.fromEffect(tag);
|
|
529
550
|
/** @internal */
|
|
530
551
|
exports.service = service;
|
|
@@ -614,12 +635,14 @@ exports.splitLines = splitLines;
|
|
|
614
635
|
const toPubSub = pubsub => toQueue(pubsub);
|
|
615
636
|
/** @internal */
|
|
616
637
|
exports.toPubSub = toPubSub;
|
|
617
|
-
const toPull = self => Effect.
|
|
618
|
-
const finalize = exec.close(exit);
|
|
619
|
-
return finalize === undefined ? Effect.void : finalize;
|
|
620
|
-
}), exec => Effect.suspend(() => interpretToPull(exec.run(), exec)));
|
|
638
|
+
const toPull = self => Effect.flatMap(Effect.scope, scope => toPullIn(self, scope));
|
|
621
639
|
/** @internal */
|
|
622
640
|
exports.toPull = toPull;
|
|
641
|
+
const toPullIn = exports.toPullIn = /*#__PURE__*/(0, _Function.dual)(2, (self, scope) => Effect.zip(Effect.sync(() => new executor.ChannelExecutor(self, void 0, _Function.identity)), Effect.runtime()).pipe(Effect.tap(([executor, runtime]) => Scope.addFinalizerExit(scope, exit => {
|
|
642
|
+
const finalizer = executor.close(exit);
|
|
643
|
+
return finalizer !== undefined ? Effect.provide(finalizer, runtime) : Effect.void;
|
|
644
|
+
})), Effect.uninterruptible, Effect.map(([executor]) => Effect.suspend(() => interpretToPull(executor.run(), executor)))));
|
|
645
|
+
/** @internal */
|
|
623
646
|
const interpretToPull = (channelState, exec) => {
|
|
624
647
|
const state = channelState;
|
|
625
648
|
switch (state._tag) {
|
|
@@ -662,6 +685,9 @@ exports.unwrap = unwrap;
|
|
|
662
685
|
const unwrapScoped = self => core.concatAllWith(scoped(self), (d, _) => d, (d, _) => d);
|
|
663
686
|
/** @internal */
|
|
664
687
|
exports.unwrapScoped = unwrapScoped;
|
|
688
|
+
const unwrapScopedWith = f => core.concatAllWith(scopedWith(f), (d, _) => d, (d, _) => d);
|
|
689
|
+
/** @internal */
|
|
690
|
+
exports.unwrapScopedWith = unwrapScopedWith;
|
|
665
691
|
const updateService = exports.updateService = /*#__PURE__*/(0, _Function.dual)(3, (self, tag, f) => mapInputContext(self, context => Context.merge(context, Context.make(tag, f(Context.unsafeGet(context, tag))))));
|
|
666
692
|
/** @internal */
|
|
667
693
|
const withSpan = function () {
|