@fncts/io 0.0.41 → 0.0.43
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/Fiber/FiberRuntime.d.ts +2 -2
- package/Fiber/definition.d.ts +1 -0
- package/FiberSet.d.ts +66 -0
- package/Hub/definition.d.ts +3 -0
- package/Hub/internal.d.ts +1 -0
- package/IO/api/diffFiberRefs.d.ts +7 -0
- package/IO/api/timeout.d.ts +5 -0
- package/IO/api.d.ts +12 -1
- package/IO/definition.d.ts +18 -7
- package/IO.d.ts +1 -0
- package/Layer/api.d.ts +5 -0
- package/Queue/api/dimapIO.d.ts +5 -0
- package/Queue/api/filterInputIO.d.ts +1 -1
- package/Queue/api/filterOutputIO.d.ts +1 -0
- package/Queue/api/operations.d.ts +11 -0
- package/Queue/api/zipWithIO.d.ts +1 -0
- package/Queue/definition.d.ts +5 -0
- package/Queue/internal.d.ts +1 -0
- package/STM/definition.d.ts +1 -1
- package/Stream/api.d.ts +10 -0
- package/_cjs/Channel/api/mapOutConcurrentIO.cjs +2 -8
- package/_cjs/Channel/api/mapOutConcurrentIO.cjs.map +1 -1
- package/_cjs/Channel/api/mergeAllWith.cjs +14 -23
- package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
- package/_cjs/Channel/api/mergeWith.cjs +4 -16
- package/_cjs/Channel/api/mergeWith.cjs.map +1 -1
- package/_cjs/Channel/api.cjs +18 -33
- package/_cjs/Channel/api.cjs.map +1 -1
- package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs +2 -8
- package/_cjs/Channel/internal/SingleProducerAsyncInput.cjs.map +1 -1
- package/_cjs/Fiber/FiberRuntime.cjs +86 -75
- package/_cjs/Fiber/FiberRuntime.cjs.map +1 -1
- package/_cjs/Fiber/definition.cjs.map +1 -1
- package/_cjs/FiberSet.cjs +129 -0
- package/_cjs/FiberSet.cjs.map +1 -0
- package/_cjs/Hub/api.cjs +20 -11
- package/_cjs/Hub/api.cjs.map +1 -1
- package/_cjs/Hub/definition.cjs +3 -0
- package/_cjs/Hub/definition.cjs.map +1 -1
- package/_cjs/Hub/internal.cjs +65 -49
- package/_cjs/Hub/internal.cjs.map +1 -1
- package/_cjs/IO/api/asyncInterrupt.cjs +4 -7
- package/_cjs/IO/api/asyncInterrupt.cjs.map +1 -1
- package/_cjs/IO/api/diffFiberRefs.cjs +17 -0
- package/_cjs/IO/api/diffFiberRefs.cjs.map +1 -0
- package/_cjs/IO/api/memoize.cjs +7 -4
- package/_cjs/IO/api/memoize.cjs.map +1 -1
- package/_cjs/IO/api/timeout.cjs +8 -0
- package/_cjs/IO/api/timeout.cjs.map +1 -1
- package/_cjs/IO/api.cjs +33 -42
- package/_cjs/IO/api.cjs.map +1 -1
- package/_cjs/IO/definition.cjs +9 -3
- package/_cjs/IO/definition.cjs.map +1 -1
- package/_cjs/IO/runtime.cjs +3 -6
- package/_cjs/IO/runtime.cjs.map +1 -1
- package/_cjs/IO.cjs +11 -0
- package/_cjs/IO.cjs.map +1 -1
- package/_cjs/Layer/api.cjs +9 -5
- package/_cjs/Layer/api.cjs.map +1 -1
- package/_cjs/Push/api.cjs +1 -4
- package/_cjs/Push/api.cjs.map +1 -1
- package/_cjs/Queue/api/dimapIO.cjs +28 -10
- package/_cjs/Queue/api/dimapIO.cjs.map +1 -1
- package/_cjs/Queue/api/filterInputIO.cjs +21 -9
- package/_cjs/Queue/api/filterInputIO.cjs.map +1 -1
- package/_cjs/Queue/api/filterOutputIO.cjs +28 -16
- package/_cjs/Queue/api/filterOutputIO.cjs.map +1 -1
- package/_cjs/Queue/api/operations.cjs +20 -0
- package/_cjs/Queue/api/operations.cjs.map +1 -1
- package/_cjs/Queue/api/zipWithIO.cjs +16 -9
- package/_cjs/Queue/api/zipWithIO.cjs.map +1 -1
- package/_cjs/Queue/definition.cjs.map +1 -1
- package/_cjs/Queue/internal.cjs +84 -54
- package/_cjs/Queue/internal.cjs.map +1 -1
- package/_cjs/Ref/Derived.cjs +8 -35
- package/_cjs/Ref/Derived.cjs.map +1 -1
- package/_cjs/Ref/DerivedAll.cjs +8 -35
- package/_cjs/Ref/DerivedAll.cjs.map +1 -1
- package/_cjs/STM/api/core-api.cjs +1 -4
- package/_cjs/STM/api/core-api.cjs.map +1 -1
- package/_cjs/STM/api.cjs +4 -16
- package/_cjs/STM/api.cjs.map +1 -1
- package/_cjs/STM/definition.cjs +1 -1
- package/_cjs/STM/definition.cjs.map +1 -1
- package/_cjs/Schedule/api.cjs +1 -7
- package/_cjs/Schedule/api.cjs.map +1 -1
- package/_cjs/Sink/api.cjs +1 -7
- package/_cjs/Sink/api.cjs.map +1 -1
- package/_cjs/Stream/api/zipAllWith.cjs +1 -4
- package/_cjs/Stream/api/zipAllWith.cjs.map +1 -1
- package/_cjs/Stream/api/zipWithChunks.cjs +1 -4
- package/_cjs/Stream/api/zipWithChunks.cjs.map +1 -1
- package/_cjs/Stream/api.cjs +51 -37
- package/_cjs/Stream/api.cjs.map +1 -1
- package/_cjs/TRef/definition.cjs +20 -74
- package/_cjs/TRef/definition.cjs.map +1 -1
- package/_cjs/internal/BackgroundScheduler.cjs +0 -1
- package/_cjs/internal/BackgroundScheduler.cjs.map +1 -1
- package/_mjs/Channel/api/mapOutConcurrentIO.mjs +2 -8
- package/_mjs/Channel/api/mapOutConcurrentIO.mjs.map +1 -1
- package/_mjs/Channel/api/mergeAllWith.mjs +14 -23
- package/_mjs/Channel/api/mergeAllWith.mjs.map +1 -1
- package/_mjs/Channel/api/mergeWith.mjs +4 -16
- package/_mjs/Channel/api/mergeWith.mjs.map +1 -1
- package/_mjs/Channel/api.mjs +18 -33
- package/_mjs/Channel/api.mjs.map +1 -1
- package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs +2 -8
- package/_mjs/Channel/internal/SingleProducerAsyncInput.mjs.map +1 -1
- package/_mjs/Fiber/FiberRuntime.mjs +86 -75
- package/_mjs/Fiber/FiberRuntime.mjs.map +1 -1
- package/_mjs/Fiber/definition.mjs.map +1 -1
- package/_mjs/FiberSet.mjs +113 -0
- package/_mjs/FiberSet.mjs.map +1 -0
- package/_mjs/Hub/api.mjs +20 -11
- package/_mjs/Hub/api.mjs.map +1 -1
- package/_mjs/Hub/definition.mjs +3 -0
- package/_mjs/Hub/definition.mjs.map +1 -1
- package/_mjs/Hub/internal.mjs +65 -49
- package/_mjs/Hub/internal.mjs.map +1 -1
- package/_mjs/IO/api/asyncInterrupt.mjs +4 -7
- package/_mjs/IO/api/asyncInterrupt.mjs.map +1 -1
- package/_mjs/IO/api/diffFiberRefs.mjs +9 -0
- package/_mjs/IO/api/diffFiberRefs.mjs.map +1 -0
- package/_mjs/IO/api/memoize.mjs +7 -4
- package/_mjs/IO/api/memoize.mjs.map +1 -1
- package/_mjs/IO/api/timeout.mjs +7 -0
- package/_mjs/IO/api/timeout.mjs.map +1 -1
- package/_mjs/IO/api.mjs +30 -40
- package/_mjs/IO/api.mjs.map +1 -1
- package/_mjs/IO/definition.mjs +7 -2
- package/_mjs/IO/definition.mjs.map +1 -1
- package/_mjs/IO/runtime.mjs +3 -6
- package/_mjs/IO/runtime.mjs.map +1 -1
- package/_mjs/IO.mjs +1 -0
- package/_mjs/IO.mjs.map +1 -1
- package/_mjs/Layer/api.mjs +8 -5
- package/_mjs/Layer/api.mjs.map +1 -1
- package/_mjs/Push/api.mjs +1 -4
- package/_mjs/Push/api.mjs.map +1 -1
- package/_mjs/Queue/api/dimapIO.mjs +28 -10
- package/_mjs/Queue/api/dimapIO.mjs.map +1 -1
- package/_mjs/Queue/api/filterInputIO.mjs +21 -9
- package/_mjs/Queue/api/filterInputIO.mjs.map +1 -1
- package/_mjs/Queue/api/filterOutputIO.mjs +28 -16
- package/_mjs/Queue/api/filterOutputIO.mjs.map +1 -1
- package/_mjs/Queue/api/operations.mjs +18 -0
- package/_mjs/Queue/api/operations.mjs.map +1 -1
- package/_mjs/Queue/api/zipWithIO.mjs +16 -9
- package/_mjs/Queue/api/zipWithIO.mjs.map +1 -1
- package/_mjs/Queue/definition.mjs.map +1 -1
- package/_mjs/Queue/internal.mjs +84 -54
- package/_mjs/Queue/internal.mjs.map +1 -1
- package/_mjs/Ref/Derived.mjs +8 -35
- package/_mjs/Ref/Derived.mjs.map +1 -1
- package/_mjs/Ref/DerivedAll.mjs +8 -35
- package/_mjs/Ref/DerivedAll.mjs.map +1 -1
- package/_mjs/STM/api/core-api.mjs +1 -4
- package/_mjs/STM/api/core-api.mjs.map +1 -1
- package/_mjs/STM/api.mjs +4 -16
- package/_mjs/STM/api.mjs.map +1 -1
- package/_mjs/STM/definition.mjs +1 -1
- package/_mjs/STM/definition.mjs.map +1 -1
- package/_mjs/Schedule/api.mjs +1 -7
- package/_mjs/Schedule/api.mjs.map +1 -1
- package/_mjs/Sink/api.mjs +1 -7
- package/_mjs/Sink/api.mjs.map +1 -1
- package/_mjs/Stream/api/zipAllWith.mjs +1 -4
- package/_mjs/Stream/api/zipAllWith.mjs.map +1 -1
- package/_mjs/Stream/api/zipWithChunks.mjs +1 -4
- package/_mjs/Stream/api/zipWithChunks.mjs.map +1 -1
- package/_mjs/Stream/api.mjs +47 -36
- package/_mjs/Stream/api.mjs.map +1 -1
- package/_mjs/TRef/definition.mjs +20 -74
- package/_mjs/TRef/definition.mjs.map +1 -1
- package/_mjs/internal/BackgroundScheduler.mjs +0 -1
- package/_mjs/internal/BackgroundScheduler.mjs.map +1 -1
- package/_src/Channel/api/mapOutConcurrentIO.ts +5 -5
- package/_src/Channel/api/mergeAllWith.ts +9 -9
- package/_src/Channel/api/mergeWith.ts +16 -16
- package/_src/Channel/api.ts +12 -32
- package/_src/Channel/internal/SingleProducerAsyncInput.ts +2 -2
- package/_src/Fiber/FiberRuntime.ts +50 -36
- package/_src/Fiber/definition.ts +2 -0
- package/_src/FiberSet.ts +115 -0
- package/_src/Hub/api.ts +15 -6
- package/_src/Hub/definition.ts +6 -0
- package/_src/Hub/internal.ts +19 -0
- package/_src/IO/api/asyncInterrupt.ts +4 -4
- package/_src/IO/api/diffFiberRefs.ts +11 -0
- package/_src/IO/api/memoize.ts +5 -3
- package/_src/IO/api/timeout.ts +8 -0
- package/_src/IO/api.ts +32 -19
- package/_src/IO/definition.ts +20 -4
- package/_src/IO/runtime.ts +3 -6
- package/_src/IO.ts +1 -0
- package/_src/Layer/api.ts +11 -4
- package/_src/Push/api.ts +4 -4
- package/_src/Queue/api/dimapIO.ts +25 -0
- package/_src/Queue/api/filterInputIO.ts +16 -0
- package/_src/Queue/api/filterOutputIO.ts +16 -0
- package/_src/Queue/api/operations.ts +20 -0
- package/_src/Queue/api/zipWithIO.ts +8 -0
- package/_src/Queue/definition.ts +4 -0
- package/_src/Queue/internal.ts +32 -0
- package/_src/Ref/Derived.ts +18 -20
- package/_src/Ref/DerivedAll.ts +18 -21
- package/_src/STM/api/core-api.ts +1 -1
- package/_src/STM/api.ts +4 -4
- package/_src/STM/definition.ts +1 -1
- package/_src/Schedule/api.ts +8 -8
- package/_src/Sink/api.ts +8 -8
- package/_src/Stream/api/zipAllWith.ts +4 -4
- package/_src/Stream/api/zipWithChunks.ts +4 -4
- package/_src/Stream/api.ts +75 -22
- package/_src/TRef/definition.ts +33 -36
- package/_src/global.ts +4 -0
- package/_src/index.ts +1 -0
- package/_src/internal/BackgroundScheduler.ts +0 -1
- package/global.d.ts +4 -0
- package/index.d.ts +1 -0
- package/package.json +4 -4
@@ -42,13 +42,13 @@ export class RevertFlags {
|
|
42
42
|
constructor(patch, trace) {
|
43
43
|
this.patch = patch;
|
44
44
|
this.trace = trace;
|
45
|
-
this.
|
45
|
+
this._ioOpCode = 14 /* IOTag.RevertFlags */;
|
46
46
|
}
|
47
47
|
}
|
48
48
|
export class UpdateTrace {
|
49
49
|
constructor(trace) {
|
50
50
|
this.trace = trace;
|
51
|
-
this.
|
51
|
+
this._ioOpCode = 15 /* IOTag.UpdateTrace */;
|
52
52
|
}
|
53
53
|
}
|
54
54
|
/**
|
@@ -79,14 +79,14 @@ export class FiberRuntime {
|
|
79
79
|
ask(f) {
|
80
80
|
return tsplus_module_4.defer(() => {
|
81
81
|
const future = tsplus_module_3.unsafeMake(this.fiberId);
|
82
|
-
this.tell(tsplus_module_6.stateful((fiber, status) => tsplus_module_5.unsafeDone(tsplus_module_4.succeed(() => f(fiber, status), fileName_1 + ":
|
83
|
-
return tsplus_module_5.wait(future, fileName_1 + ":
|
84
|
-
}, fileName_1 + ":
|
82
|
+
this.tell(tsplus_module_6.stateful((fiber, status) => tsplus_module_5.unsafeDone(tsplus_module_4.succeed(() => f(fiber, status), fileName_1 + ":78:86"), fileName_1 + ":78:75")(future)));
|
83
|
+
return tsplus_module_5.wait(future, fileName_1 + ":80:20");
|
84
|
+
}, fileName_1 + ":75:20");
|
85
85
|
}
|
86
86
|
get await() {
|
87
87
|
return tsplus_module_4.async(cb => this.tell(tsplus_module_6.stateful((fiber, _) => {
|
88
|
-
if (fiber._exitValue !== null) cb(tsplus_module_4.succeedNow(fiber.exitValue(), fileName_1 + ":
|
89
|
-
})), this.id, fileName_1 + ":
|
88
|
+
if (fiber._exitValue !== null) cb(tsplus_module_4.succeedNow(fiber.exitValue(), fileName_1 + ":89:60"));else fiber.addObserver(exit => cb(tsplus_module_4.succeedNow(exit, fileName_1 + ":90:62")));
|
89
|
+
})), this.id, fileName_1 + ":85:20");
|
90
90
|
}
|
91
91
|
get children() {
|
92
92
|
return this.ask(fiber => tsplus_module_7.from(fiber.getChildren()));
|
@@ -104,9 +104,9 @@ export class FiberRuntime {
|
|
104
104
|
parentFiber.setFiberRefs(updatedFiberRefs);
|
105
105
|
return tsplus_module_4.flatMap(childRuntimeFlags => {
|
106
106
|
const patch = tsplus_module_10.exclude(tsplus_module_10.exclude(tsplus_module_9.diff(parentRuntimeFlags, childRuntimeFlags), 64 /* RuntimeFlag.WindDown */), 1 /* RuntimeFlag.Interruption */);
|
107
|
-
return tsplus_module_4.updateRuntimeFlags(patch, fileName_1 + ":
|
108
|
-
}, fileName_1 + ":
|
109
|
-
}, fileName_1 + ":
|
107
|
+
return tsplus_module_4.updateRuntimeFlags(patch, fileName_1 + ":122:37");
|
108
|
+
}, fileName_1 + ":116:39")(this.runtimeFlags);
|
109
|
+
}, fileName_1 + ":106:31");
|
110
110
|
}
|
111
111
|
get runtimeFlags() {
|
112
112
|
return this.ask((state, status) => {
|
@@ -117,13 +117,13 @@ export class FiberRuntime {
|
|
117
117
|
return tsplus_module_4.succeed(() => {
|
118
118
|
const cause = tsplus_module_11.interrupt(fiberId);
|
119
119
|
this.tell(tsplus_module_6.interruptSignal(cause));
|
120
|
-
}, fileName_1 + ":
|
120
|
+
}, fileName_1 + ":135:22");
|
121
121
|
}
|
122
122
|
getSupervisor() {
|
123
123
|
return this.getFiberRef(tsplus_module_12.currentSupervisor);
|
124
124
|
}
|
125
125
|
get poll() {
|
126
|
-
return tsplus_module_4.succeed(() => tsplus_module_13.fromNullable(this.exitValue()), fileName_1 + ":
|
126
|
+
return tsplus_module_4.succeed(() => tsplus_module_13.fromNullable(this.exitValue()), fileName_1 + ":146:22");
|
127
127
|
}
|
128
128
|
run() {
|
129
129
|
this.drainQueueOnCurrentThread();
|
@@ -171,7 +171,7 @@ export class FiberRuntime {
|
|
171
171
|
case 0 /* FiberMessageTag.InterruptSignal */:
|
172
172
|
{
|
173
173
|
this.processNewInterruptSignal(message.cause);
|
174
|
-
cur = tsplus_module_9.interruptible(runtimeFlags) ? tsplus_module_4.failCause(() => message.cause, fileName_1 + ":
|
174
|
+
cur = tsplus_module_9.interruptible(runtimeFlags) ? tsplus_module_4.failCause(() => message.cause, fileName_1 + ":209:58") : cur;
|
175
175
|
break;
|
176
176
|
}
|
177
177
|
case 1 /* FiberMessageTag.GenStackTrace */:
|
@@ -208,7 +208,7 @@ export class FiberRuntime {
|
|
208
208
|
try {
|
209
209
|
let effect;
|
210
210
|
if (tsplus_module_9.interruptible(this._runtimeFlags) && this.isInterrupted()) {
|
211
|
-
effect = tsplus_module_4.failCause(() => this.getInterruptedCause(), fileName_1 + ":
|
211
|
+
effect = tsplus_module_4.failCause(() => this.getInterruptedCause(), fileName_1 + ":247:30");
|
212
212
|
} else {
|
213
213
|
effect = effect0;
|
214
214
|
}
|
@@ -223,15 +223,15 @@ export class FiberRuntime {
|
|
223
223
|
finalExit = exit;
|
224
224
|
this.setExitValue(exit);
|
225
225
|
} else {
|
226
|
-
this.tell(tsplus_module_6.resume(tsplus_module_4.fromExitNow(exit, fileName_1 + ":
|
226
|
+
this.tell(tsplus_module_6.resume(tsplus_module_4.fromExitNow(exit, fileName_1 + ":265:59")));
|
227
227
|
}
|
228
228
|
effect = null;
|
229
229
|
} else {
|
230
|
-
effect = tsplus_module_4.flatMap(() => tsplus_module_4.fromExitNow(exit, fileName_1 + ":
|
230
|
+
effect = tsplus_module_4.flatMap(() => tsplus_module_4.fromExitNow(exit, fileName_1 + ":270:63"), this.id.location)(interruption);
|
231
231
|
}
|
232
232
|
} catch (e) {
|
233
233
|
if (isIO(e)) {
|
234
|
-
if (e.
|
234
|
+
if (e._ioOpCode === 12 /* IOTag.YieldNow */) {
|
235
235
|
if (tsplus_module_9.cooperativeYielding(this._runtimeFlags)) {
|
236
236
|
this.tell(tsplus_module_6.yieldNow);
|
237
237
|
this.tell(tsplus_module_6.resume(tsplus_module_4.unit));
|
@@ -239,10 +239,10 @@ export class FiberRuntime {
|
|
239
239
|
} else {
|
240
240
|
effect = tsplus_module_4.unit;
|
241
241
|
}
|
242
|
-
} else if (e.
|
242
|
+
} else if (e._ioOpCode === 3 /* IOTag.Async */) {
|
243
243
|
effect = null;
|
244
244
|
} else {
|
245
|
-
throw new Error(`Unhandled op ${e.
|
245
|
+
throw new Error(`Unhandled op ${e._ioOpCode}`);
|
246
246
|
}
|
247
247
|
} else {
|
248
248
|
throw e;
|
@@ -273,13 +273,13 @@ export class FiberRuntime {
|
|
273
273
|
cur = tsplus_module_4.flatMap(() => oldCur, trace)(tsplus_module_4.yieldNow);
|
274
274
|
}
|
275
275
|
try {
|
276
|
-
switch (cur.
|
276
|
+
switch (cur._ioOpCode) {
|
277
277
|
case 2 /* IOTag.Sync */:
|
278
278
|
{
|
279
279
|
const value = cur.i0();
|
280
280
|
const cont = this.getNextSuccessCont();
|
281
281
|
if (cont) {
|
282
|
-
switch (cont.
|
282
|
+
switch (cont._ioOpCode) {
|
283
283
|
case 5 /* IOTag.OnSuccess */:
|
284
284
|
{
|
285
285
|
cur = cont.i1(value);
|
@@ -305,9 +305,9 @@ export class FiberRuntime {
|
|
305
305
|
{
|
306
306
|
this.patchRuntimeFlags(this._runtimeFlags, cont.patch);
|
307
307
|
if (tsplus_module_9.interruptible(this._runtimeFlags) && this.isInterrupted()) {
|
308
|
-
cur = tsplus_module_4.failCauseNow(this.getInterruptedCause(), fileName_1 + ":
|
308
|
+
cur = tsplus_module_4.failCauseNow(this.getInterruptedCause(), fileName_1 + ":350:54");
|
309
309
|
} else {
|
310
|
-
cur = tsplus_module_4.succeedNow(value, fileName_1 + ":
|
310
|
+
cur = tsplus_module_4.succeedNow(value, fileName_1 + ":352:52");
|
311
311
|
}
|
312
312
|
break;
|
313
313
|
}
|
@@ -319,7 +319,7 @@ export class FiberRuntime {
|
|
319
319
|
}
|
320
320
|
}
|
321
321
|
} else {
|
322
|
-
return tsplus_module_16.succeed(value, fileName_1 + ":
|
322
|
+
return tsplus_module_16.succeed(value, fileName_1 + ":363:34");
|
323
323
|
}
|
324
324
|
break;
|
325
325
|
}
|
@@ -347,7 +347,7 @@ export class FiberRuntime {
|
|
347
347
|
cur = cur.i1(oldRuntimeFlags);
|
348
348
|
} else {
|
349
349
|
if (tsplus_module_9.interruptible(newRuntimeFlags) && this.isInterrupted()) {
|
350
|
-
cur = tsplus_module_4.failCauseNow(this.getInterruptedCause(), fileName_1 + ":
|
350
|
+
cur = tsplus_module_4.failCauseNow(this.getInterruptedCause(), fileName_1 + ":389:50");
|
351
351
|
} else {
|
352
352
|
this.patchRuntimeFlags(this._runtimeFlags, updateFlags);
|
353
353
|
const revertFlags = tsplus_module_9.diff(newRuntimeFlags, oldRuntimeFlags);
|
@@ -359,7 +359,7 @@ export class FiberRuntime {
|
|
359
359
|
}
|
360
360
|
case 9 /* IOTag.GenerateStackTrace */:
|
361
361
|
{
|
362
|
-
cur = tsplus_module_4.succeedNow(this.generateStackTrace(), fileName_1 + ":
|
362
|
+
cur = tsplus_module_4.succeedNow(this.generateStackTrace(), fileName_1 + ":400:44");
|
363
363
|
break;
|
364
364
|
}
|
365
365
|
case 10 /* IOTag.Stateful */:
|
@@ -372,7 +372,7 @@ export class FiberRuntime {
|
|
372
372
|
const oldCur = cur;
|
373
373
|
const cont = this.getNextSuccessCont();
|
374
374
|
if (cont) {
|
375
|
-
switch (cont.
|
375
|
+
switch (cont._ioOpCode) {
|
376
376
|
case 5 /* IOTag.OnSuccess */:
|
377
377
|
{
|
378
378
|
cur = cont.i1(oldCur.i0);
|
@@ -398,7 +398,7 @@ export class FiberRuntime {
|
|
398
398
|
{
|
399
399
|
this.patchRuntimeFlags(this._runtimeFlags, cont.patch);
|
400
400
|
if (tsplus_module_9.interruptible(this._runtimeFlags) && this.isInterrupted()) {
|
401
|
-
cur = tsplus_module_4.failCauseNow(this.getInterruptedCause(), fileName_1 + ":
|
401
|
+
cur = tsplus_module_4.failCauseNow(this.getInterruptedCause(), fileName_1 + ":433:54");
|
402
402
|
}
|
403
403
|
break;
|
404
404
|
}
|
@@ -410,7 +410,7 @@ export class FiberRuntime {
|
|
410
410
|
}
|
411
411
|
}
|
412
412
|
} else {
|
413
|
-
return tsplus_module_16.succeed(oldCur.i0, fileName_1 + ":
|
413
|
+
return tsplus_module_16.succeed(oldCur.i0, fileName_1 + ":444:34");
|
414
414
|
}
|
415
415
|
break;
|
416
416
|
}
|
@@ -419,14 +419,14 @@ export class FiberRuntime {
|
|
419
419
|
const cause = cur.i0();
|
420
420
|
const cont = this.getNextFailCont();
|
421
421
|
if (cont) {
|
422
|
-
switch (cont.
|
422
|
+
switch (cont._ioOpCode) {
|
423
423
|
case 6 /* IOTag.OnFailure */:
|
424
424
|
case 4 /* IOTag.OnSuccessAndFailure */:
|
425
425
|
{
|
426
426
|
if (!(tsplus_module_9.interruptible(this._runtimeFlags) && this.isInterrupted())) {
|
427
427
|
cur = cont.i1(cause);
|
428
428
|
} else {
|
429
|
-
cur = tsplus_module_4.failCauseNow(tsplus_module_11.stripFailures(cause), fileName_1 + ":
|
429
|
+
cur = tsplus_module_4.failCauseNow(tsplus_module_11.stripFailures(cause), fileName_1 + ":458:54");
|
430
430
|
}
|
431
431
|
break;
|
432
432
|
}
|
@@ -436,9 +436,9 @@ export class FiberRuntime {
|
|
436
436
|
if (tsplus_module_9.interruptible(this._runtimeFlags) && this.isInterrupted()) {
|
437
437
|
const interruptedCause = this.getInterruptedCause();
|
438
438
|
if (tsplus_module_11.contains(interruptedCause)(cause)) {
|
439
|
-
cur = tsplus_module_4.failCauseNow(cause, fileName_1 + ":
|
439
|
+
cur = tsplus_module_4.failCauseNow(cause, fileName_1 + ":467:56");
|
440
440
|
} else {
|
441
|
-
cur = tsplus_module_4.failCauseNow(tsplus_module_11.sequential(cause, this.getInterruptedCause()), fileName_1 + ":
|
441
|
+
cur = tsplus_module_4.failCauseNow(tsplus_module_11.sequential(cause, this.getInterruptedCause()), fileName_1 + ":469:56");
|
442
442
|
}
|
443
443
|
}
|
444
444
|
break;
|
@@ -451,7 +451,7 @@ export class FiberRuntime {
|
|
451
451
|
}
|
452
452
|
}
|
453
453
|
} else {
|
454
|
-
return tsplus_module_16.failCause(cause, fileName_1 + ":
|
454
|
+
return tsplus_module_16.failCause(cause, fileName_1 + ":481:36");
|
455
455
|
}
|
456
456
|
break;
|
457
457
|
}
|
@@ -480,53 +480,64 @@ export class FiberRuntime {
|
|
480
480
|
}
|
481
481
|
case 13 /* IOTag.Commit */:
|
482
482
|
{
|
483
|
-
cur = tsplus_module_17.atomically(cur, fileName_1 + ":
|
483
|
+
cur = tsplus_module_17.atomically(cur, fileName_1 + ":506:34");
|
484
484
|
break;
|
485
485
|
}
|
486
|
-
case
|
486
|
+
case 16 /* IOTag.External */:
|
487
487
|
{
|
488
|
-
cur =
|
488
|
+
cur = cur.toIO;
|
489
489
|
break;
|
490
490
|
}
|
491
|
-
case
|
491
|
+
case null:
|
492
492
|
{
|
493
|
-
|
494
|
-
|
495
|
-
|
496
|
-
|
497
|
-
|
498
|
-
|
499
|
-
|
500
|
-
|
501
|
-
|
502
|
-
|
503
|
-
|
504
|
-
|
505
|
-
|
506
|
-
|
507
|
-
|
508
|
-
|
509
|
-
|
510
|
-
|
511
|
-
|
512
|
-
|
513
|
-
|
514
|
-
|
515
|
-
|
516
|
-
|
517
|
-
|
518
|
-
|
493
|
+
switch (cur._tag) {
|
494
|
+
case "Just" /* MaybeTag.Just */:
|
495
|
+
{
|
496
|
+
cur = tsplus_module_4.succeedNow(cur.value, fileName_1 + ":516:48");
|
497
|
+
break;
|
498
|
+
}
|
499
|
+
case "Nothing" /* MaybeTag.Nothing */:
|
500
|
+
{
|
501
|
+
cur = tsplus_module_4.failNow(new tsplus_module_14.NoSuchElementError(), fileName_1 + ":520:45");
|
502
|
+
break;
|
503
|
+
}
|
504
|
+
case "Left" /* EitherTag.Left */:
|
505
|
+
{
|
506
|
+
cur = tsplus_module_4.failNow(cur.left, fileName_1 + ":524:45");
|
507
|
+
break;
|
508
|
+
}
|
509
|
+
case "Right" /* EitherTag.Right */:
|
510
|
+
{
|
511
|
+
cur = tsplus_module_4.succeedNow(cur.right, fileName_1 + ":528:48");
|
512
|
+
break;
|
513
|
+
}
|
514
|
+
case "Failure" /* ExitTag.Failure */:
|
515
|
+
{
|
516
|
+
cur = tsplus_module_4.failCauseNow(cur.cause, fileName_1 + ":532:50");
|
517
|
+
break;
|
518
|
+
}
|
519
|
+
case "Success" /* ExitTag.Success */:
|
520
|
+
{
|
521
|
+
cur = tsplus_module_4.succeedNow(cur.value, fileName_1 + ":536:48");
|
522
|
+
break;
|
523
|
+
}
|
524
|
+
case "Tag":
|
525
|
+
{
|
526
|
+
cur = tsplus_module_18.service(cur, fileName_1 + ":540:45");
|
527
|
+
break;
|
528
|
+
}
|
529
|
+
}
|
519
530
|
}
|
520
531
|
}
|
521
532
|
} catch (e) {
|
522
533
|
if (isIOError(e)) {
|
523
|
-
cur = tsplus_module_4.failCauseNow(e.cause, fileName_1 + ":
|
524
|
-
} else if (isIO(e) && (e.
|
534
|
+
cur = tsplus_module_4.failCauseNow(e.cause, fileName_1 + ":548:44");
|
535
|
+
} else if (isIO(e) && (e._ioOpCode === 3 /* IOTag.Async */ || e._ioOpCode === 12 /* IOTag.YieldNow */)) {
|
525
536
|
throw e;
|
526
537
|
} else if (tsplus_module_14.isInterruptedException(e)) {
|
527
|
-
cur = tsplus_module_4.failCauseNow(tsplus_module_11.parallel(tsplus_module_11.halt(e), tsplus_module_11.interrupt(tsplus_module_19.none)), fileName_1 + ":
|
538
|
+
cur = tsplus_module_4.failCauseNow(tsplus_module_11.parallel(tsplus_module_11.halt(e), tsplus_module_11.interrupt(tsplus_module_19.none)), fileName_1 + ":555:44");
|
528
539
|
} else {
|
529
|
-
cur = tsplus_module_4.failCauseNow(tsplus_module_11.halt(e, tsplus_module_21.make(this.fiberId, tsplus_module_7.make(tsplus_module_20.parse(lastTrace)))), fileName_1 + ":
|
540
|
+
cur = tsplus_module_4.failCauseNow(tsplus_module_11.halt(e, tsplus_module_21.make(this.fiberId, tsplus_module_7.make(tsplus_module_20.parse(lastTrace)))), fileName_1 + ":557:44");
|
530
541
|
}
|
531
542
|
}
|
532
543
|
}
|
@@ -624,7 +635,7 @@ export class FiberRuntime {
|
|
624
635
|
try {
|
625
636
|
asyncRegister(callback);
|
626
637
|
} catch (e) {
|
627
|
-
callback(tsplus_module_4.failCauseNow(tsplus_module_11.halt(e), fileName_1 + ":
|
638
|
+
callback(tsplus_module_4.failCauseNow(tsplus_module_11.halt(e), fileName_1 + ":681:31"));
|
628
639
|
}
|
629
640
|
}
|
630
641
|
setFiberRef(fiberRef, value) {
|
@@ -647,7 +658,7 @@ export class FiberRuntime {
|
|
647
658
|
{
|
648
659
|
this.processNewInterruptSignal(fiberMessage.cause);
|
649
660
|
if (this.asyncInterruptor !== null) {
|
650
|
-
this.asyncInterruptor(tsplus_module_4.failCause(() => fiberMessage.cause, fileName_1 + ":
|
661
|
+
this.asyncInterruptor(tsplus_module_4.failCause(() => fiberMessage.cause, fileName_1 + ":708:45"));
|
651
662
|
this.asyncInterruptor = null;
|
652
663
|
}
|
653
664
|
return 0 /* EvaluationSignal.Continue */;
|
@@ -753,14 +764,14 @@ export class FiberRuntime {
|
|
753
764
|
get trace() {
|
754
765
|
return tsplus_module_4.defer(() => {
|
755
766
|
const future = tsplus_module_3.unsafeMake(this.fiberId);
|
756
|
-
this.tell(tsplus_module_6.genStackTrace(trace => tsplus_module_5.unsafeDone(tsplus_module_4.succeedNow(trace, fileName_1 + ":
|
757
|
-
return tsplus_module_5.wait(future, fileName_1 + ":
|
758
|
-
}, fileName_1 + ":
|
767
|
+
this.tell(tsplus_module_6.genStackTrace(trace => tsplus_module_5.unsafeDone(tsplus_module_4.succeedNow(trace, fileName_1 + ":845:86"), fileName_1 + ":845:72")(future)));
|
768
|
+
return tsplus_module_5.wait(future, fileName_1 + ":846:20");
|
769
|
+
}, fileName_1 + ":843:20");
|
759
770
|
}
|
760
771
|
getNextSuccessCont() {
|
761
772
|
while (this.stack.hasNext) {
|
762
773
|
const frame = this.stack.pop();
|
763
|
-
if (frame.
|
774
|
+
if (frame._ioOpCode !== 6 /* IOTag.OnFailure */) {
|
764
775
|
return frame;
|
765
776
|
}
|
766
777
|
}
|
@@ -768,7 +779,7 @@ export class FiberRuntime {
|
|
768
779
|
getNextFailCont() {
|
769
780
|
while (this.stack.hasNext) {
|
770
781
|
const frame = this.stack.pop();
|
771
|
-
if (frame.
|
782
|
+
if (frame._ioOpCode !== 5 /* IOTag.OnSuccess */ && frame._ioOpCode !== 11 /* IOTag.WhileLoop */) {
|
772
783
|
return frame;
|
773
784
|
}
|
774
785
|
}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"FiberRuntime.mjs","names":["isIOError","Trace","FiberTypeId","FiberVariance","StackTraceBuilder","Done","Suspended","Running","LinkedQueue","IOPrimitive","isIO","RevertFlags","constructor","patch","trace","_tag","UpdateTrace","FiberRuntime","fiberId","fiberRefs0","runtimeFlags0","_a","queue","_children","observers","tsplus_module_1","make","running","stack","tsplus_module_2","Stack","asyncInterruptor","asyncTrace","asyncBlockinOn","_exitValue","location","_fiberRefs","_runtimeFlags","id","ask","f","tsplus_module_4","defer","future","tsplus_module_3","unsafeMake","tell","tsplus_module_6","stateful","fiber","status","tsplus_module_5","unsafeDone","succeed","fileName_1","wait","await","async","cb","_","succeedNow","exitValue","addObserver","exit","children","tsplus_module_7","from","getChildren","fiberRefs","getFiberRefs","inheritAll","withFiberRuntime","parentFiber","parentStatus","parentFiberId","parentFiberRefs","parentRuntimeFlags","runtimeFlags","childFiberRefs","updatedFiberRefs","tsplus_module_8","join","setFiberRefs","flatMap","childRuntimeFlags","tsplus_module_10","exclude","tsplus_module_9","diff","updateRuntimeFlags","state","interruptAsFork","cause","tsplus_module_11","interrupt","interruptSignal","getSupervisor","getFiberRef","tsplus_module_12","currentSupervisor","poll","tsplus_module_13","fromNullable","run","drainQueueOnCurrentThread","recurse","evaluationSignal","currentFiber","isEmpty","evaluateMessageWhileSuspended","dequeue","drainQueueLaterOnExecutor","currentScheduler","scheduleTask","drainQueueWhileRunning","lastTrace","cur0","cur","message","processNewInterruptSignal","interruptible","failCause","oldCur","stackTrace","onTrace","undefined","onFiber","tsplus_module_14","IllegalStateError","yieldNow","evaluateEffect","effect0","unsafeOnResume","effect","isInterrupted","getInterruptedCause","finalExit","runLoop","enable","interruption","interruptAllChildren","setExitValue","resume","fromExitNow","e","cooperativeYielding","unit","Error","unsafeOnSuspend","ops","unsafeOnEffect","nextTrace","currentMaxFiberOps","value","i0","cont","getNextSuccessCont","i1","i2","push","patchRuntimeFlags","failCauseNow","tsplus_module_16","initiateAsync","updateFlags","oldRuntimeFlags","newRuntimeFlags","revertFlags","generateStackTrace","getNextFailCont","stripFailures","interruptedCause","contains","sequential","iterate","check","body","tsplus_module_17","atomically","failNow","NoSuchElementError","left","right","tsplus_module_18","service","isInterruptedException","parallel","halt","tsplus_module_19","none","tsplus_module_21","tsplus_module_20","parse","tsplus_module_22","fiberRef","tsplus_module_23","has","unsafeGet","head","tsplus_module_24","initial","enqueue","observer","cons","Set","sendInterruptSignalToAllChildren","size","told","child","iterator","Symbol","next","done","io","asyncRegister","alreadyCalled","callback","setFiberRef","updateAs","addInterruptedCause","oldSC","fiberMessage","builder","clone","hasNext","append","pop","result","empty","start","startFork","updateFiberRef","removeObserver","tsplus_module_25","filter","addChild","add","removeChild","delete","scope","tsplus_module_26","log","overrideLogLevel","logLevel","tsplus_module_27","getOrElse","currentLogLevel","spans","currentLogSpan","annotations","currentLogAnnotations","contextMap","tsplus_module_30","filterLogLevel","level","tsplus_module_28","gte","Info","map","s","console","tsplus_module_29","defaultString","deleteFiberRef","ref","remove","genStackTrace","frame","isFatal","t","currentIsFatal","apply"],"sources":["../../_src/Fiber/FiberRuntime.ts"],"sourcesContent":[null],"mappings":"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"}
|
1
|
+
{"version":3,"file":"FiberRuntime.mjs","names":["isIOError","Trace","FiberTypeId","FiberVariance","StackTraceBuilder","Done","Suspended","Running","LinkedQueue","IOPrimitive","isIO","RevertFlags","constructor","patch","trace","_ioOpCode","UpdateTrace","FiberRuntime","fiberId","fiberRefs0","runtimeFlags0","_a","_tag","queue","_children","observers","tsplus_module_1","make","running","stack","tsplus_module_2","Stack","asyncInterruptor","asyncTrace","asyncBlockinOn","_exitValue","location","_fiberRefs","_runtimeFlags","id","ask","f","tsplus_module_4","defer","future","tsplus_module_3","unsafeMake","tell","tsplus_module_6","stateful","fiber","status","tsplus_module_5","unsafeDone","succeed","fileName_1","wait","await","async","cb","_","succeedNow","exitValue","addObserver","exit","children","tsplus_module_7","from","getChildren","fiberRefs","getFiberRefs","inheritAll","withFiberRuntime","parentFiber","parentStatus","parentFiberId","parentFiberRefs","parentRuntimeFlags","runtimeFlags","childFiberRefs","updatedFiberRefs","tsplus_module_8","join","setFiberRefs","flatMap","childRuntimeFlags","tsplus_module_10","exclude","tsplus_module_9","diff","updateRuntimeFlags","state","interruptAsFork","cause","tsplus_module_11","interrupt","interruptSignal","getSupervisor","getFiberRef","tsplus_module_12","currentSupervisor","poll","tsplus_module_13","fromNullable","run","drainQueueOnCurrentThread","recurse","evaluationSignal","currentFiber","isEmpty","evaluateMessageWhileSuspended","dequeue","drainQueueLaterOnExecutor","currentScheduler","scheduleTask","drainQueueWhileRunning","lastTrace","cur0","cur","message","processNewInterruptSignal","interruptible","failCause","oldCur","stackTrace","onTrace","undefined","onFiber","tsplus_module_14","IllegalStateError","yieldNow","evaluateEffect","effect0","unsafeOnResume","effect","isInterrupted","getInterruptedCause","finalExit","runLoop","enable","interruption","interruptAllChildren","setExitValue","resume","fromExitNow","e","cooperativeYielding","unit","Error","unsafeOnSuspend","ops","unsafeOnEffect","nextTrace","currentMaxFiberOps","value","i0","cont","getNextSuccessCont","i1","i2","push","patchRuntimeFlags","failCauseNow","tsplus_module_16","initiateAsync","updateFlags","oldRuntimeFlags","newRuntimeFlags","revertFlags","generateStackTrace","getNextFailCont","stripFailures","interruptedCause","contains","sequential","iterate","check","body","tsplus_module_17","atomically","toIO","failNow","NoSuchElementError","left","right","tsplus_module_18","service","isInterruptedException","parallel","halt","tsplus_module_19","none","tsplus_module_21","tsplus_module_20","parse","tsplus_module_22","fiberRef","tsplus_module_23","has","unsafeGet","head","tsplus_module_24","initial","enqueue","observer","cons","Set","sendInterruptSignalToAllChildren","size","told","child","iterator","Symbol","next","done","io","asyncRegister","alreadyCalled","callback","setFiberRef","updateAs","addInterruptedCause","oldSC","fiberMessage","builder","clone","hasNext","append","pop","result","empty","start","startFork","updateFiberRef","removeObserver","tsplus_module_25","filter","addChild","add","removeChild","delete","scope","tsplus_module_26","log","overrideLogLevel","logLevel","tsplus_module_27","getOrElse","currentLogLevel","spans","currentLogSpan","annotations","currentLogAnnotations","contextMap","tsplus_module_30","filterLogLevel","level","tsplus_module_28","gte","Info","map","s","console","tsplus_module_29","defaultString","deleteFiberRef","ref","remove","genStackTrace","frame","isFatal","t","currentIsFatal","apply"],"sources":["../../_src/Fiber/FiberRuntime.ts"],"sourcesContent":[null],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"definition.mjs","names":["IterableWeakSet","FiberVariance","Symbol","for","FiberTypeId","Fiber","SyntheticFiber","constructor","id","wait","children","inheritAll","poll","interruptAsFork","_tag","_a","await","concrete","_fiber","isFiber","u","tsplus_module_1","isObject","_roots"],"sources":["../../_src/Fiber/definition.ts"],"sourcesContent":[null],"mappings":";;AAKA,SAASA,eAAe,QAAQ,6CAA6C;AAE7E,OAAO,MAAMC,aAAa,gBAAGC,MAAM,CAACC,GAAG,CAAC,yBAAyB,CAAC;AAGlE,OAAO,MAAMC,WAAW,gBAAGF,MAAM,CAACC,GAAG,CAAC,gBAAgB,CAAC;AAmBvD,OAAO,MAAME,KAAK,GAAa,EAAE;
|
1
|
+
{"version":3,"file":"definition.mjs","names":["IterableWeakSet","FiberVariance","Symbol","for","FiberTypeId","Fiber","SyntheticFiber","constructor","id","wait","children","inheritAll","poll","interruptAsFork","_tag","_a","await","concrete","_fiber","isFiber","u","tsplus_module_1","isObject","_roots"],"sources":["../../_src/Fiber/definition.ts"],"sourcesContent":[null],"mappings":";;AAKA,SAASA,eAAe,QAAQ,6CAA6C;AAE7E,OAAO,MAAMC,aAAa,gBAAGC,MAAM,CAACC,GAAG,CAAC,yBAAyB,CAAC;AAGlE,OAAO,MAAMC,WAAW,gBAAGF,MAAM,CAACC,GAAG,CAAC,gBAAgB,CAAC;AAmBvD,OAAO,MAAME,KAAK,GAAa,EAAE;AAkEjC,OAAM,MAAOC,cAAc;EAWzBC,YACWC,EAAW,EACpBC,IAAqB,EACZC,QAA4C,EAC5CC,UAAqB,EACrBC,IAA4B,EAC5BC,eAAgD;IALhD,KAAAL,EAAE,GAAFA,EAAE;IAEF,KAAAE,QAAQ,GAARA,QAAQ;IACR,KAAAC,UAAU,GAAVA,UAAU;IACV,KAAAC,IAAI,GAAJA,IAAI;IACJ,KAAAC,eAAe,GAAfA,eAAe;IAhBjB,KAAAC,IAAI,GAAG,gBAAgB;IAEvB,KAAAC,EAAA,CAAa,GAAgBX,WAAW;IAgB/C,IAAI,CAACY,KAAK,GAAGP,IAAI;EACnB;;KAjBUL,WAAW;AAsBvB;;;;AAIA,OAAM,SAAUa,QAAQA,CAAOC,MAAmB;EAChD;AAAA;AAGF,OAAM,SAAUC,OAAOA,CAACC,CAAU;EAChC,OAAOC,eAAA,CAAAC,QAAQ,CAACF,CAAC,CAAC,IAAIhB,WAAW,IAAIgB,CAAC;AACxC;AAEA;;;AAGA,OAAO,MAAMG,MAAM,gBAA4C,IAAIvB,eAAe,EAAE"}
|
@@ -0,0 +1,113 @@
|
|
1
|
+
var _a;
|
2
|
+
const fileName_1 = "(@fncts/io) src/FiberSet.ts";
|
3
|
+
import * as tsplus_module_1 from "@fncts/io/Future/constructors";
|
4
|
+
import * as tsplus_module_2 from "@fncts/io/IO/api";
|
5
|
+
import * as tsplus_module_3 from "@fncts/io/IO/api/acquireRelease";
|
6
|
+
import * as tsplus_module_4 from "@fncts/base/data/Exit/definition";
|
7
|
+
import * as tsplus_module_5 from "@fncts/base/data/Cause/api";
|
8
|
+
import * as tsplus_module_6 from "@fncts/io/Future/api";
|
9
|
+
import * as tsplus_module_7 from "@fncts/io/IO/runtime";
|
10
|
+
import * as tsplus_module_8 from "@fncts/io/IO/api/forkDaemon";
|
11
|
+
import * as tsplus_module_9 from "@fncts/io/Fiber/api/interrupt";
|
12
|
+
export const unsafeMake = unsafeMake_1;
|
13
|
+
export const make = make_1;
|
14
|
+
export const unsafeAdd = unsafeAdd_1;
|
15
|
+
export const add = add_1;
|
16
|
+
export const runtime = runtime_1;
|
17
|
+
export const clear = clear_1;
|
18
|
+
export const FiberSetTypeId = /*#__PURE__*/Symbol.for("fncts.io.FiberSet");
|
19
|
+
/**
|
20
|
+
* @tsplus type fncts.io.FiberSet
|
21
|
+
* @tsplus companion fncts.io.FiberSetOps
|
22
|
+
*/
|
23
|
+
export class FiberSet {
|
24
|
+
constructor(backing, future) {
|
25
|
+
this.backing = backing;
|
26
|
+
this.future = future;
|
27
|
+
this[_a] = FiberSetTypeId;
|
28
|
+
}
|
29
|
+
}
|
30
|
+
_a = FiberSetTypeId;
|
31
|
+
/**
|
32
|
+
* @tsplus static fncts.io.FiberSetOps unsafeMake
|
33
|
+
*/
|
34
|
+
function unsafeMake_1(backing, future) {
|
35
|
+
return new FiberSet(backing, future);
|
36
|
+
}
|
37
|
+
/**
|
38
|
+
* @tsplus static fncts.io.FiberSetOps make
|
39
|
+
*/
|
40
|
+
function make_1() {
|
41
|
+
return tsplus_module_3.acquireRelease(() => tsplus_module_2.map(future => unsafeMake_1(new Set(), future), fileName_1 + ":28:38")(tsplus_module_1.make(fileName_1 + ":28:16")), fiberSet => clear_1(fiberSet), fileName_1 + ":27:27");
|
42
|
+
}
|
43
|
+
/**
|
44
|
+
* @tsplus static fncts.io.FiberSetOps makeRuntime
|
45
|
+
*/
|
46
|
+
export function makeRuntime() {
|
47
|
+
return tsplus_module_2.flatMap(fiberSet => runtime_1()(fiberSet), fileName_1 + ":41:30")(make_1());
|
48
|
+
}
|
49
|
+
/**
|
50
|
+
* @tsplus pipeable fncts.io.FiberSet unsafeAdd
|
51
|
+
*/
|
52
|
+
function unsafeAdd_1(fiber) {
|
53
|
+
return self => {
|
54
|
+
if (self.backing.has(fiber)) {
|
55
|
+
return;
|
56
|
+
}
|
57
|
+
self.backing.add(fiber);
|
58
|
+
fiber.addObserver(exit => {
|
59
|
+
self.backing.delete(fiber);
|
60
|
+
if (tsplus_module_4.isFailure(exit) && !tsplus_module_5.isInterruptedOnly(exit.cause)) {
|
61
|
+
tsplus_module_6.unsafeDone(exit, fileName_1 + ":56:31")(self.future);
|
62
|
+
}
|
63
|
+
});
|
64
|
+
};
|
65
|
+
}
|
66
|
+
/**
|
67
|
+
* @tsplus pipeable fncts.io.FiberSet add
|
68
|
+
*/
|
69
|
+
function add_1(fiber) {
|
70
|
+
return self => tsplus_module_2.succeed(() => unsafeAdd_1(fiber)(self), fileName_1 + ":66:49");
|
71
|
+
}
|
72
|
+
/**
|
73
|
+
* @tsplus pipeable fncts.io.FiberSet runtime
|
74
|
+
*/
|
75
|
+
function runtime_1() {
|
76
|
+
return self => {
|
77
|
+
return tsplus_module_2.map(runtime => {
|
78
|
+
const runFork = runtime.unsafeRunFiber;
|
79
|
+
return io => {
|
80
|
+
const fiber = runFork(io, fileName_1 + ":79:30");
|
81
|
+
unsafeAdd_1(fiber)(self);
|
82
|
+
return fiber;
|
83
|
+
};
|
84
|
+
}, fileName_1 + ":76:31")(tsplus_module_7.runtime(fileName_1 + ":76:22"));
|
85
|
+
};
|
86
|
+
}
|
87
|
+
/**
|
88
|
+
* @tsplus pipeable fncts.io.FiberSet run
|
89
|
+
*/
|
90
|
+
export function run(io) {
|
91
|
+
return self => {
|
92
|
+
return tsplus_module_2.tap(fiber => add_1(fiber)(self), fileName_1 + ":92:29")(tsplus_module_8.forkDaemon(io, fileName_1 + ":92:14"));
|
93
|
+
};
|
94
|
+
}
|
95
|
+
/**
|
96
|
+
* @tsplus getter fncts.io.FiberSet size
|
97
|
+
*/
|
98
|
+
export function size(self) {
|
99
|
+
return tsplus_module_2.succeed(() => self.backing.size, fileName_1 + ":100:12");
|
100
|
+
}
|
101
|
+
/**
|
102
|
+
* @tsplus getter fncts.io.FiberSet join
|
103
|
+
*/
|
104
|
+
export function join(self) {
|
105
|
+
return tsplus_module_6.wait(self.future, fileName_1 + ":107:43");
|
106
|
+
}
|
107
|
+
/**
|
108
|
+
* @tsplus getter fncts.io.FiberSet clear
|
109
|
+
*/
|
110
|
+
function clear_1(self) {
|
111
|
+
return tsplus_module_2.zipRight(tsplus_module_2.succeed(() => self.backing.clear(), fileName_1 + ":114:67"), fileName_1 + ":114:64")(tsplus_module_2.foreach(self.backing, fiber => tsplus_module_9.interrupt(fiber), fileName_1 + ":114:20"));
|
112
|
+
}
|
113
|
+
//# sourceMappingURL=FiberSet.mjs.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"FiberSet.mjs","names":["unsafeMake","unsafeMake_1","make","make_1","unsafeAdd","unsafeAdd_1","add","add_1","runtime","runtime_1","clear","clear_1","FiberSetTypeId","Symbol","for","FiberSet","constructor","backing","future","_a","tsplus_module_3","acquireRelease","tsplus_module_2","map","Set","fileName_1","tsplus_module_1","fiberSet","makeRuntime","flatMap","fiber","self","has","addObserver","exit","delete","tsplus_module_4","isFailure","tsplus_module_5","isInterruptedOnly","cause","tsplus_module_6","unsafeDone","succeed","runFork","unsafeRunFiber","io","tsplus_module_7","run","tap","tsplus_module_8","forkDaemon","size","join","wait","zipRight","foreach","tsplus_module_9","interrupt"],"sources":["../_src/FiberSet.ts"],"sourcesContent":[null],"mappings":"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"}
|