effect 3.22.0 → 3.22.2
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/Context.js +1 -1
- package/dist/cjs/Mailbox.js +3 -2
- package/dist/cjs/Mailbox.js.map +1 -1
- package/dist/cjs/ParseResult.js +18 -0
- package/dist/cjs/ParseResult.js.map +1 -1
- package/dist/cjs/Schema.js +1 -1
- package/dist/cjs/Schema.js.map +1 -1
- package/dist/cjs/internal/config.js +5 -1
- package/dist/cjs/internal/config.js.map +1 -1
- package/dist/cjs/internal/configProvider.js +14 -1
- package/dist/cjs/internal/configProvider.js.map +1 -1
- package/dist/cjs/internal/effect/circular.js +5 -4
- package/dist/cjs/internal/effect/circular.js.map +1 -1
- package/dist/cjs/internal/mailbox.js +11 -19
- package/dist/cjs/internal/mailbox.js.map +1 -1
- package/dist/cjs/internal/opCodes/config.js +3 -1
- package/dist/cjs/internal/opCodes/config.js.map +1 -1
- package/dist/cjs/internal/stm/tMap.js +2 -2
- package/dist/cjs/internal/stm/tMap.js.map +1 -1
- package/dist/cjs/internal/stream/emit.js +6 -34
- package/dist/cjs/internal/stream/emit.js.map +1 -1
- package/dist/cjs/internal/stream.js +26 -16
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Context.d.ts +1 -1
- package/dist/dts/Mailbox.d.ts.map +1 -1
- package/dist/dts/ParseResult.d.ts.map +1 -1
- package/dist/dts/internal/stream.d.ts.map +1 -1
- package/dist/esm/Context.js +1 -1
- package/dist/esm/Mailbox.js +3 -2
- package/dist/esm/Mailbox.js.map +1 -1
- package/dist/esm/ParseResult.js +18 -0
- package/dist/esm/ParseResult.js.map +1 -1
- package/dist/esm/Schema.js +1 -1
- package/dist/esm/Schema.js.map +1 -1
- package/dist/esm/internal/config.js +5 -1
- package/dist/esm/internal/config.js.map +1 -1
- package/dist/esm/internal/configProvider.js +14 -1
- package/dist/esm/internal/configProvider.js.map +1 -1
- package/dist/esm/internal/effect/circular.js +5 -4
- package/dist/esm/internal/effect/circular.js.map +1 -1
- package/dist/esm/internal/mailbox.js +10 -17
- package/dist/esm/internal/mailbox.js.map +1 -1
- package/dist/esm/internal/opCodes/config.js +2 -0
- package/dist/esm/internal/opCodes/config.js.map +1 -1
- package/dist/esm/internal/stm/tMap.js +2 -2
- package/dist/esm/internal/stm/tMap.js.map +1 -1
- package/dist/esm/internal/stream/emit.js +6 -34
- package/dist/esm/internal/stream/emit.js.map +1 -1
- package/dist/esm/internal/stream.js +22 -13
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +1 -1
- package/src/Context.ts +1 -1
- package/src/Mailbox.ts +3 -2
- package/src/ParseResult.ts +18 -0
- package/src/Schema.ts +1 -1
- package/src/internal/config.ts +14 -1
- package/src/internal/configProvider.ts +24 -1
- package/src/internal/effect/circular.ts +5 -4
- package/src/internal/mailbox.ts +13 -52
- package/src/internal/opCodes/config.ts +6 -0
- package/src/internal/stm/tMap.ts +2 -2
- package/src/internal/stream/emit.ts +7 -39
- package/src/internal/stream.ts +62 -24
- package/src/internal/version.ts +1 -1
|
@@ -148,7 +148,7 @@ export const remove = /*#__PURE__*/dual(2, (self, key) => core.effect(journal =>
|
|
|
148
148
|
const buckets = tRef.unsafeGet(self.tBuckets, journal);
|
|
149
149
|
const index = indexOf(key, buckets.chunk.length);
|
|
150
150
|
const bucket = tRef.unsafeGet(buckets.chunk[index], journal);
|
|
151
|
-
const [
|
|
151
|
+
const [toRetain, toRemove] = Chunk.partition(bucket, entry => Equal.equals(entry[0], key));
|
|
152
152
|
if (Chunk.isNonEmpty(toRemove)) {
|
|
153
153
|
const currentSize = tRef.unsafeGet(self.tSize, journal);
|
|
154
154
|
tRef.unsafeSet(buckets.chunk[index], toRetain, journal);
|
|
@@ -163,7 +163,7 @@ export const removeAll = /*#__PURE__*/dual(2, (self, keys) => core.effect(journa
|
|
|
163
163
|
const buckets = tRef.unsafeGet(self.tBuckets, journal);
|
|
164
164
|
const index = indexOf(next.value, buckets.chunk.length);
|
|
165
165
|
const bucket = tRef.unsafeGet(buckets.chunk[index], journal);
|
|
166
|
-
const [
|
|
166
|
+
const [toRetain, toRemove] = Chunk.partition(bucket, entry => Equal.equals(next.value)(entry[0]));
|
|
167
167
|
if (Chunk.isNonEmpty(toRemove)) {
|
|
168
168
|
const currentSize = tRef.unsafeGet(self.tSize, journal);
|
|
169
169
|
tRef.unsafeSet(buckets.chunk[index], toRetain, journal);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tMap.js","names":["RA","Chunk","Equal","dual","pipe","Hash","HashMap","Option","hasProperty","STM","core","stm","tArray","tRef","TMapSymbolKey","TMapTypeId","Symbol","for","tMapVariance","_K","_","_V","TMapImpl","tBuckets","tSize","constructor","isTMap","u","InitialCapacity","LoadFactor","nextPowerOfTwo","size","n","Math","clz32","hash","key","h","indexOf","k","capacity","allocate","data","buckets","Array","from","length","empty","distinct","Map","entry","index","prepend","fromIterable","flatMap","make","map","find","self","pf","findSTM","value","option","isSome","succeed","fail","none","f","reduceSTM","acc","isNone","matchSTM","onFailure","match","onNone","succeedNone","onSome","onSuccess","succeedSome","findAll","findAllSTM","a","append","forEach","asVoid","iterable","suspend","get","effect","journal","unsafeGet","chunk","bucket","findFirst","equals","getOrElse","fallback","has","isEmpty","keys","toReadonlyArray","entries","merge","as","set","v0","v1","reduce","zero","result","items","remove","toRemove","toRetain","partition","isNonEmpty","currentSize","unsafeSet","removeAll","iterator","next","done","removeIf","args","predicate","options","discard","removed","newSize","newBucket","v","push","retainIf","resize","newCapacity","newBuckets","pairs","newIndex","newArray","TRefImpl","newTArray","TArrayImpl","shouldUpdate","some","setIfAbsent","void","takeFirst","recreate","collect","takeFirstSTM","takeSome","builder","takeSomeSTM","isNonEmptyArray","toChunk","toHashMap","toArray","unshift","toMap","transform","newPair","transformSTM","newData","transformValues","transformValuesSTM","updateWith","values"],"sources":["../../../../src/internal/stm/tMap.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"tMap.js","names":["RA","Chunk","Equal","dual","pipe","Hash","HashMap","Option","hasProperty","STM","core","stm","tArray","tRef","TMapSymbolKey","TMapTypeId","Symbol","for","tMapVariance","_K","_","_V","TMapImpl","tBuckets","tSize","constructor","isTMap","u","InitialCapacity","LoadFactor","nextPowerOfTwo","size","n","Math","clz32","hash","key","h","indexOf","k","capacity","allocate","data","buckets","Array","from","length","empty","distinct","Map","entry","index","prepend","fromIterable","flatMap","make","map","find","self","pf","findSTM","value","option","isSome","succeed","fail","none","f","reduceSTM","acc","isNone","matchSTM","onFailure","match","onNone","succeedNone","onSome","onSuccess","succeedSome","findAll","findAllSTM","a","append","forEach","asVoid","iterable","suspend","get","effect","journal","unsafeGet","chunk","bucket","findFirst","equals","getOrElse","fallback","has","isEmpty","keys","toReadonlyArray","entries","merge","as","set","v0","v1","reduce","zero","result","items","remove","toRetain","toRemove","partition","isNonEmpty","currentSize","unsafeSet","removeAll","iterator","next","done","removeIf","args","predicate","options","discard","removed","newSize","newBucket","v","push","retainIf","resize","newCapacity","newBuckets","pairs","newIndex","newArray","TRefImpl","newTArray","TArrayImpl","shouldUpdate","some","setIfAbsent","void","takeFirst","recreate","collect","takeFirstSTM","takeSome","builder","takeSomeSTM","isNonEmptyArray","toChunk","toHashMap","toArray","unshift","toMap","transform","newPair","transformSTM","newData","transformValues","transformValuesSTM","updateWith","values"],"sources":["../../../../src/internal/stm/tMap.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -47,50 +47,23 @@ export const make = emit => {
|
|
|
47
47
|
return Object.assign(emit, ops);
|
|
48
48
|
};
|
|
49
49
|
/** @internal */
|
|
50
|
-
export const makePush =
|
|
50
|
+
export const makePush = mailbox => {
|
|
51
51
|
let finished = false;
|
|
52
|
-
let buffer = [];
|
|
53
|
-
let running = false;
|
|
54
52
|
function array(items) {
|
|
55
53
|
if (finished) return false;
|
|
56
|
-
|
|
57
|
-
buffer.push.apply(buffer, items);
|
|
58
|
-
} else {
|
|
59
|
-
for (let i = 0; i < items.length; i++) {
|
|
60
|
-
buffer.push(items[0]);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
if (!running) {
|
|
64
|
-
running = true;
|
|
65
|
-
scheduler.scheduleTask(flush, 0);
|
|
66
|
-
}
|
|
67
|
-
return true;
|
|
68
|
-
}
|
|
69
|
-
function flush() {
|
|
70
|
-
running = false;
|
|
71
|
-
if (buffer.length > 0) {
|
|
72
|
-
queue.unsafeOffer(buffer);
|
|
73
|
-
buffer = [];
|
|
74
|
-
}
|
|
54
|
+
return Chunk.isEmpty(mailbox.unsafeOfferAll(items));
|
|
75
55
|
}
|
|
76
56
|
function done(exit) {
|
|
77
57
|
if (finished) return;
|
|
78
58
|
finished = true;
|
|
79
59
|
if (exit._tag === "Success") {
|
|
80
|
-
|
|
60
|
+
mailbox.unsafeOffer(exit.value);
|
|
81
61
|
}
|
|
82
|
-
|
|
83
|
-
queue.unsafeOffer(exit._tag === "Success" ? Exit.void : exit);
|
|
62
|
+
mailbox.unsafeDone(exit._tag === "Success" ? Exit.void : exit);
|
|
84
63
|
}
|
|
85
64
|
return {
|
|
86
65
|
single(value) {
|
|
87
|
-
|
|
88
|
-
buffer.push(value);
|
|
89
|
-
if (!running) {
|
|
90
|
-
running = true;
|
|
91
|
-
scheduler.scheduleTask(flush, 0);
|
|
92
|
-
}
|
|
93
|
-
return true;
|
|
66
|
+
return finished ? false : mailbox.unsafeOffer(value);
|
|
94
67
|
},
|
|
95
68
|
array,
|
|
96
69
|
chunk(chunk) {
|
|
@@ -100,8 +73,7 @@ export const makePush = (queue, scheduler) => {
|
|
|
100
73
|
end() {
|
|
101
74
|
if (finished) return;
|
|
102
75
|
finished = true;
|
|
103
|
-
|
|
104
|
-
queue.unsafeOffer(Exit.void);
|
|
76
|
+
mailbox.unsafeDone(Exit.void);
|
|
105
77
|
},
|
|
106
78
|
halt(cause) {
|
|
107
79
|
return done(Exit.failCause(cause));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"emit.js","names":["Cause","Chunk","Effect","Exit","pipe","Option","make","emit","ops","chunk","as","succeed","die","defect","dieMessage","message","done","exit","suspend","mapBoth","onFailure","some","onSuccess","of","end","fail","none","e","fromEffect","effect","fromEffectChunk","mapError","halt","cause","failCause","map","single","value","Object","assign","makePush","
|
|
1
|
+
{"version":3,"file":"emit.js","names":["Cause","Chunk","Effect","Exit","pipe","Option","make","emit","ops","chunk","as","succeed","die","defect","dieMessage","message","done","exit","suspend","mapBoth","onFailure","some","onSuccess","of","end","fail","none","e","fromEffect","effect","fromEffectChunk","mapError","halt","cause","failCause","map","single","value","Object","assign","makePush","mailbox","finished","array","items","isEmpty","unsafeOfferAll","_tag","unsafeOffer","unsafeDone","void","toReadonlyArray","error","Error"],"sources":["../../../../src/internal/stream/emit.ts"],"sourcesContent":[null],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,gBAAgB;AACvC,OAAO,KAAKC,KAAK,MAAM,gBAAgB;AACvC,OAAO,KAAKC,MAAM,MAAM,iBAAiB;AACzC,OAAO,KAAKC,IAAI,MAAM,eAAe;AACrC,SAASC,IAAI,QAAQ,mBAAmB;AAExC,OAAO,KAAKC,MAAM,MAAM,iBAAiB;AAGzC;AACA,OAAO,MAAMC,IAAI,GACfC,IAA2E,IAClD;EACzB,MAAMC,GAAG,GAA6B;IACpCC,KAAKA,CAA8BC,EAAkB;MACnD,OAAO,IAAI,CAACR,MAAM,CAACS,OAAO,CAACD,EAAE,CAAC,CAAC;IACjC,CAAC;IACDE,GAAGA,CAAmCC,MAAW;MAC/C,OAAO,IAAI,CAACX,MAAM,CAACU,GAAG,CAACC,MAAM,CAAC,CAAC;IACjC,CAAC;IACDC,UAAUA,CAA8BC,OAAe;MACrD,OAAO,IAAI,CAACb,MAAM,CAACY,UAAU,CAACC,OAAO,CAAC,CAAC;IACzC,CAAC;IACDC,IAAIA,CAA8BC,IAAqB;MACrD,OAAO,IAAI,CAACf,MAAM,CAACgB,OAAO,CAAC,MAAMf,IAAI,CAACgB,OAAO,CAACF,IAAI,EAAE;QAAEG,SAAS,EAAEf,MAAM,CAACgB,IAAI;QAAEC,SAAS,EAAErB,KAAK,CAACsB;MAAE,CAAE,CAAC,CAAC,CAAC;IACxG,CAAC;IACDC,GAAGA,CAAA;MACD,OAAO,IAAI,CAACtB,MAAM,CAACuB,IAAI,CAACpB,MAAM,CAACqB,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IACDD,IAAIA,CAA8BE,CAAI;MACpC,OAAO,IAAI,CAACzB,MAAM,CAACuB,IAAI,CAACpB,MAAM,CAACgB,IAAI,CAACM,CAAC,CAAC,CAAC,CAAC;IAC1C,CAAC;IACDC,UAAUA,CAA8BC,MAA8B;MACpE,OAAO,IAAI,CAAC3B,MAAM,CAACiB,OAAO,CAACU,MAAM,EAAE;QAAET,SAAS,EAAEf,MAAM,CAACgB,IAAI;QAAEC,SAAS,EAAErB,KAAK,CAACsB;MAAE,CAAE,CAAC,CAAC;IACtF,CAAC;IACDO,eAAeA,CAA8BD,MAA2C;MACtF,OAAO,IAAI,CAACzB,IAAI,CAACyB,MAAM,EAAE3B,MAAM,CAAC6B,QAAQ,CAAC1B,MAAM,CAACgB,IAAI,CAAC,CAAC,CAAC;IACzD,CAAC;IACDW,IAAIA,CAA8BC,KAAqB;MACrD,OAAO,IAAI,CAAC/B,MAAM,CAACgC,SAAS,CAAC9B,IAAI,CAAC6B,KAAK,EAAEjC,KAAK,CAACmC,GAAG,CAAC9B,MAAM,CAACgB,IAAI,CAAC,CAAC,CAAC,CAAC;IACpE,CAAC;IACDe,MAAMA,CAA8BC,KAAQ;MAC1C,OAAO,IAAI,CAACnC,MAAM,CAACS,OAAO,CAACV,KAAK,CAACsB,EAAE,CAACc,KAAK,CAAC,CAAC,CAAC;IAC9C;GACD;EACD,OAAOC,MAAM,CAACC,MAAM,CAAChC,IAAI,EAAEC,GAAG,CAAC;AACjC,CAAC;AAED;AACA,OAAO,MAAMgC,QAAQ,GAAUC,OAA8B,IAA4B;EACvF,IAAIC,QAAQ,GAAG,KAAK;EACpB,SAASC,KAAKA,CAACC,KAAuB;IACpC,IAAIF,QAAQ,EAAE,OAAO,KAAK;IAC1B,OAAOzC,KAAK,CAAC4C,OAAO,CAACJ,OAAO,CAACK,cAAc,CAACF,KAAK,CAAC,CAAC;EACrD;EACA,SAAS5B,IAAIA,CAACC,IAAqB;IACjC,IAAIyB,QAAQ,EAAE;IACdA,QAAQ,GAAG,IAAI;IACf,IAAIzB,IAAI,CAAC8B,IAAI,KAAK,SAAS,EAAE;MAC3BN,OAAO,CAACO,WAAW,CAAC/B,IAAI,CAACoB,KAAK,CAAC;IACjC;IACAI,OAAO,CAACQ,UAAU,CAAChC,IAAI,CAAC8B,IAAI,KAAK,SAAS,GAAG5C,IAAI,CAAC+C,IAAI,GAAGjC,IAAI,CAAC;EAChE;EACA,OAAO;IACLmB,MAAMA,CAACC,KAAQ;MACb,OAAOK,QAAQ,GAAG,KAAK,GAAGD,OAAO,CAACO,WAAW,CAACX,KAAK,CAAC;IACtD,CAAC;IACDM,KAAK;IACLlC,KAAKA,CAACA,KAAK;MACT,OAAOkC,KAAK,CAAC1C,KAAK,CAACkD,eAAe,CAAC1C,KAAK,CAAC,CAAC;IAC5C,CAAC;IACDO,IAAI;IACJQ,GAAGA,CAAA;MACD,IAAIkB,QAAQ,EAAE;MACdA,QAAQ,GAAG,IAAI;MACfD,OAAO,CAACQ,UAAU,CAAC9C,IAAI,CAAC+C,IAAI,CAAC;IAC/B,CAAC;IACDlB,IAAIA,CAACC,KAAqB;MACxB,OAAOjB,IAAI,CAACb,IAAI,CAAC+B,SAAS,CAACD,KAAK,CAAC,CAAC;IACpC,CAAC;IACDR,IAAIA,CAAC2B,KAAQ;MACX,OAAOpC,IAAI,CAACb,IAAI,CAACsB,IAAI,CAAC2B,KAAK,CAAC,CAAC;IAC/B,CAAC;IACDxC,GAAGA,CAAMC,MAAW;MAClB,OAAOG,IAAI,CAACb,IAAI,CAACS,GAAG,CAACC,MAAM,CAAC,CAAC;IAC/B,CAAC;IACDC,UAAUA,CAACC,OAAe;MACxB,OAAOC,IAAI,CAACb,IAAI,CAACS,GAAG,CAAC,IAAIyC,KAAK,CAACtC,OAAO,CAAC,CAAC,CAAC;IAC3C;GACD;AACH,CAAC","ignoreList":[]}
|
|
@@ -9,7 +9,6 @@ import * as Either from "../Either.js";
|
|
|
9
9
|
import * as Equal from "../Equal.js";
|
|
10
10
|
import * as Exit from "../Exit.js";
|
|
11
11
|
import * as Fiber from "../Fiber.js";
|
|
12
|
-
import * as FiberRef from "../FiberRef.js";
|
|
13
12
|
import { constTrue, dual, identity, pipe } from "../Function.js";
|
|
14
13
|
import * as internalExecutionPlan from "../internal/executionPlan.js";
|
|
15
14
|
import * as Layer from "../Layer.js";
|
|
@@ -31,7 +30,11 @@ import * as channel from "./channel.js";
|
|
|
31
30
|
import * as channelExecutor from "./channel/channelExecutor.js";
|
|
32
31
|
import * as MergeStrategy from "./channel/mergeStrategy.js";
|
|
33
32
|
import * as core from "./core-stream.js";
|
|
33
|
+
import * as effectCore from "./core.js";
|
|
34
34
|
import * as doNotation from "./doNotation.js";
|
|
35
|
+
import * as circular from "./effect/circular.js";
|
|
36
|
+
import * as fiberRuntime from "./fiberRuntime.js";
|
|
37
|
+
import * as mailbox from "./mailbox.js";
|
|
35
38
|
import { RingBuffer } from "./ringBuffer.js";
|
|
36
39
|
import * as InternalSchedule from "./schedule.js";
|
|
37
40
|
import * as sink_ from "./sink.js";
|
|
@@ -220,22 +223,17 @@ export const asyncEffect = (register, bufferSize) => pipe(Effect.acquireRelease(
|
|
|
220
223
|
}), channel.unwrap);
|
|
221
224
|
return loop;
|
|
222
225
|
}))))), channel.unwrapScoped, fromChannel);
|
|
223
|
-
const
|
|
226
|
+
const mailboxFromBufferOptionsPush = options => {
|
|
224
227
|
if (options?.bufferSize === "unbounded" || options?.bufferSize === undefined && options?.strategy === undefined) {
|
|
225
|
-
return
|
|
226
|
-
}
|
|
227
|
-
switch (options?.strategy) {
|
|
228
|
-
case "sliding":
|
|
229
|
-
return Queue.sliding(options.bufferSize ?? 16);
|
|
230
|
-
default:
|
|
231
|
-
return Queue.dropping(options?.bufferSize ?? 16);
|
|
228
|
+
return mailbox.make();
|
|
232
229
|
}
|
|
230
|
+
return mailbox.make({
|
|
231
|
+
capacity: options?.bufferSize ?? 16,
|
|
232
|
+
strategy: options?.strategy ?? "dropping"
|
|
233
|
+
});
|
|
233
234
|
};
|
|
234
235
|
/** @internal */
|
|
235
|
-
export const asyncPush = (register, options) => Effect.acquireRelease(
|
|
236
|
-
const loop = core.flatMap(Queue.take(queue), item => Exit.isExit(item) ? Exit.isSuccess(item) ? core.void : core.failCause(item.cause) : channel.zipRight(core.write(Chunk.unsafeFromArray(item)), loop));
|
|
237
|
-
return loop;
|
|
238
|
-
}), channel.unwrapScoped, fromChannel);
|
|
236
|
+
export const asyncPush = (register, options) => Effect.acquireRelease(mailboxFromBufferOptionsPush(options), mailbox => mailbox.shutdown).pipe(Effect.tap(mailbox => register(emit.makePush(mailbox))), Effect.map(mailboxToStream), unwrapScoped);
|
|
239
237
|
/** @internal */
|
|
240
238
|
export const asyncScoped = (register, bufferSize) => pipe(Effect.acquireRelease(queueFromBufferOptions(bufferSize), queue => Queue.shutdown(queue)), Effect.flatMap(output => pipe(Effect.runtime(), Effect.flatMap(runtime => pipe(register(emit.make(k => pipe(InternalTake.fromPull(k), Effect.flatMap(take => Queue.offer(output, take)), Effect.asVoid, Runtime.runPromiseExit(runtime)).then(exit => {
|
|
241
239
|
if (Exit.isFailure(exit)) {
|
|
@@ -923,6 +921,17 @@ export const toChannel = stream => {
|
|
|
923
921
|
}
|
|
924
922
|
};
|
|
925
923
|
/** @internal */
|
|
924
|
+
export const mailboxToStream = self => fromChannel(mailbox.toChannel(self));
|
|
925
|
+
/** @internal */
|
|
926
|
+
export const mailboxFromStream = /*#__PURE__*/dual(args => isStream(args[0]), (self, options) => effectCore.tap(fiberRuntime.acquireRelease(mailbox.make(options), mailbox => mailbox.shutdown), mailbox => {
|
|
927
|
+
const writer = core.readWithCause({
|
|
928
|
+
onInput: input => core.flatMap(mailbox.offerAll(input), () => writer),
|
|
929
|
+
onFailure: cause => mailbox.failCause(cause),
|
|
930
|
+
onDone: () => mailbox.end
|
|
931
|
+
});
|
|
932
|
+
return fiberRuntime.scopeWith(scope => toChannel(self).pipe(core.pipeTo(writer), channelExecutor.runIn(scope), circular.forkIn(scope)));
|
|
933
|
+
}));
|
|
934
|
+
/** @internal */
|
|
926
935
|
export const fromChunk = chunk => new StreamImpl(Chunk.isEmpty(chunk) ? core.void : core.write(chunk));
|
|
927
936
|
/** @internal */
|
|
928
937
|
export const fromChunkPubSub = (pubsub, options) => {
|