@fncts/io 0.0.30 → 0.0.31

Sign up to get free protection for your applications and to get access to all the features.
Files changed (59) hide show
  1. package/IO/api/blocking.d.ts +7 -0
  2. package/IO.d.ts +1 -0
  3. package/Ref/Synchronized/definition.d.ts +3 -3
  4. package/Semaphore.d.ts +30 -0
  5. package/SubscriptionRef.d.ts +3 -3
  6. package/_cjs/Channel/api/mapOutConcurrentIO.cjs +14 -16
  7. package/_cjs/Channel/api/mapOutConcurrentIO.cjs.map +1 -1
  8. package/_cjs/Channel/api/mergeAllWith.cjs +30 -32
  9. package/_cjs/Channel/api/mergeAllWith.cjs.map +1 -1
  10. package/_cjs/IO/api/blocking.cjs +20 -0
  11. package/_cjs/IO/api/blocking.cjs.map +1 -0
  12. package/_cjs/IO.cjs +11 -0
  13. package/_cjs/IO.cjs.map +1 -1
  14. package/_cjs/Ref/Synchronized/constructors.cjs +4 -5
  15. package/_cjs/Ref/Synchronized/constructors.cjs.map +1 -1
  16. package/_cjs/Ref/Synchronized/definition.cjs +1 -2
  17. package/_cjs/Ref/Synchronized/definition.cjs.map +1 -1
  18. package/_cjs/Semaphore.cjs +90 -0
  19. package/_cjs/Semaphore.cjs.map +1 -0
  20. package/_cjs/Stream/api.cjs +47 -49
  21. package/_cjs/Stream/api.cjs.map +1 -1
  22. package/_cjs/SubscriptionRef.cjs +2 -3
  23. package/_cjs/SubscriptionRef.cjs.map +1 -1
  24. package/_cjs/internal/BackgroundScheduler.cjs +199 -0
  25. package/_cjs/internal/BackgroundScheduler.cjs.map +1 -0
  26. package/_mjs/Channel/api/mapOutConcurrentIO.mjs +14 -16
  27. package/_mjs/Channel/api/mapOutConcurrentIO.mjs.map +1 -1
  28. package/_mjs/Channel/api/mergeAllWith.mjs +30 -32
  29. package/_mjs/Channel/api/mergeAllWith.mjs.map +1 -1
  30. package/_mjs/IO/api/blocking.mjs +12 -0
  31. package/_mjs/IO/api/blocking.mjs.map +1 -0
  32. package/_mjs/IO.mjs +1 -0
  33. package/_mjs/IO.mjs.map +1 -1
  34. package/_mjs/Ref/Synchronized/constructors.mjs +4 -5
  35. package/_mjs/Ref/Synchronized/constructors.mjs.map +1 -1
  36. package/_mjs/Ref/Synchronized/definition.mjs +1 -2
  37. package/_mjs/Ref/Synchronized/definition.mjs.map +1 -1
  38. package/_mjs/Semaphore.mjs +78 -0
  39. package/_mjs/Semaphore.mjs.map +1 -0
  40. package/_mjs/Stream/api.mjs +47 -49
  41. package/_mjs/Stream/api.mjs.map +1 -1
  42. package/_mjs/SubscriptionRef.mjs +2 -3
  43. package/_mjs/SubscriptionRef.mjs.map +1 -1
  44. package/_mjs/internal/BackgroundScheduler.mjs +191 -0
  45. package/_mjs/internal/BackgroundScheduler.mjs.map +1 -0
  46. package/_src/Channel/api/mapOutConcurrentIO.ts +1 -1
  47. package/_src/Channel/api/mergeAllWith.ts +1 -1
  48. package/_src/IO/api/blocking.ts +9 -0
  49. package/_src/IO.ts +1 -0
  50. package/_src/Ref/Synchronized/constructors.ts +2 -2
  51. package/_src/Ref/Synchronized/definition.ts +1 -1
  52. package/_src/Semaphore.ts +81 -0
  53. package/_src/Stream/api.ts +1 -1
  54. package/_src/SubscriptionRef.ts +2 -2
  55. package/_src/global.ts +4 -0
  56. package/_src/internal/BackgroundScheduler.ts +276 -0
  57. package/global.d.ts +4 -0
  58. package/internal/BackgroundScheduler.d.ts +47 -0
  59. package/package.json +2 -2
@@ -0,0 +1,7 @@
1
+ import { IO } from "@fncts/io/IO/definition";
2
+ /**
3
+ * @tsplus static fncts.io.IOOps blocking
4
+ * @tsplus getter fncts.io.IO blocking
5
+ * @tsplus location "@fncts/io/IO/api/blocking"
6
+ */
7
+ export declare function blocking<R, E, A>(self: IO<R, E, A>, __tsplusTrace?: string): IO<R, E, A>;
package/IO.d.ts CHANGED
@@ -9,6 +9,7 @@ export * from "./IO/api/addFinalizer.js";
9
9
  export * from "./IO/api/addFinalizerExit.js";
10
10
  export * from "./IO/api/asyncInterrupt.js";
11
11
  export * from "./IO/api/asyncIO.js";
12
+ export * from "./IO/api/blocking.js";
12
13
  export * from "./IO/api/bracket.js";
13
14
  export * from "./IO/api/bracketExit.js";
14
15
  export * from "./IO/api/clockWith.js";
@@ -1,4 +1,4 @@
1
- import { TSemaphore } from "@fncts/io/TSemaphore/definition";
1
+ import { Semaphore } from "@fncts/io/Semaphore";
2
2
  import { Either } from "@fncts/base/data/Either/definition";
3
3
  import type { PRef } from "../definition.js";
4
4
  import { IO } from "@fncts/io/IO";
@@ -25,11 +25,11 @@ export declare const Synchronized: PSynchronizedOps;
25
25
  * @tsplus type fncts.io.Ref.Synchronized
26
26
  */
27
27
  export declare class PSynchronizedInternal<RA, RB, EA, EB, A, B> extends RefInternal<RA, RB, EA, EB, A, B> {
28
- readonly semaphore: TSemaphore;
28
+ readonly semaphore: Semaphore;
29
29
  readonly unsafeGet: IO<RB, EB, B>;
30
30
  readonly unsafeSet: (a: A) => IO<RA, EA, void>;
31
31
  readonly [SynchronizedTypeId]: SynchronizedTypeId;
32
- constructor(semaphore: TSemaphore, unsafeGet: IO<RB, EB, B>, unsafeSet: (a: A) => IO<RA, EA, void>);
32
+ constructor(semaphore: Semaphore, unsafeGet: IO<RB, EB, B>, unsafeSet: (a: A) => IO<RA, EA, void>);
33
33
  get get(): IO<RB, EB, B>;
34
34
  set(a: A, __tsplusTrace?: string): IO<RA, EA, void>;
35
35
  modify<C>(f: (b: B) => readonly [C, A], __tsplusTrace?: string | undefined): IO<RA | RB, EA | EB, C>;
package/Semaphore.d.ts ADDED
@@ -0,0 +1,30 @@
1
+ import { IO, UIO } from "@fncts/io/IO/definition";
2
+ import { Either } from "@fncts/base/data/Either/definition";
3
+ import { FiberRef } from "@fncts/io/FiberRef/definition";
4
+ /**
5
+ * @tsplus type fncts.io.Semaphore
6
+ * @tsplus companion fncts.io.SemaphoreOps
7
+ */
8
+ export declare class Semaphore {
9
+ readonly permits: number;
10
+ constructor(permits: number);
11
+ taken: number;
12
+ waiters: Set<() => void>;
13
+ get free(): number;
14
+ runNext(): void;
15
+ take(n: number): import("./IO").IO<never, never, number>;
16
+ release(n: number): import("./IO").IO<never, never, void>;
17
+ withPermits(permits: number): <R, E, A>(io: import("./IO").IO<R, E, A>) => import("./IO").IO<R, E, A>;
18
+ withPermit<R, E, A>(io: IO<R, E, A>): IO<R, E, A>;
19
+ }
20
+ /**
21
+ * @tsplus static fncts.io.SemaphoreOps unsafeMake
22
+ * @tsplus location "@fncts/io/Semaphore"
23
+ */
24
+ export declare function unsafeMakeSemaphore(permits: number): Semaphore;
25
+ /**
26
+ * @tsplus static fncts.io.SemaphoreOps make
27
+ * @tsplus static fncts.io.SemaphoreOps __call
28
+ * @tsplus location "@fncts/io/Semaphore"
29
+ */
30
+ export declare function makeSemaphore(permits: number, __tsplusTrace?: string): UIO<Semaphore>;
@@ -1,4 +1,4 @@
1
- import { TSemaphore } from "@fncts/io/TSemaphore/definition";
1
+ import { Semaphore } from "@fncts/io/Semaphore";
2
2
  import { Hub } from "@fncts/io/Hub/definition";
3
3
  import { Ref, PRef } from "@fncts/io/Ref/definition";
4
4
  import { UIO, IO } from "@fncts/io/IO/definition";
@@ -8,11 +8,11 @@ import { Stream } from "@fncts/io/Stream";
8
8
  export declare const SubscriptionRefTypeId: unique symbol;
9
9
  export type SubscriptionRefTypeId = typeof SubscriptionRefTypeId;
10
10
  export declare class SubscriptionRefInternal<A> extends PSynchronizedInternal<never, never, never, never, A, A> {
11
- readonly semaphore: TSemaphore;
11
+ readonly semaphore: Semaphore;
12
12
  readonly hub: Hub<A>;
13
13
  readonly ref: Ref<A>;
14
14
  readonly [SubscriptionRefTypeId]: SubscriptionRefTypeId;
15
- constructor(semaphore: TSemaphore, hub: Hub<A>, ref: Ref<A>);
15
+ constructor(semaphore: Semaphore, hub: Hub<A>, ref: Ref<A>);
16
16
  changes: Stream<never, never, A>;
17
17
  set(a: A, __tsplusTrace?: string): UIO<void>;
18
18
  modifyIO<R1, E1, B>(f: (a: A) => IO<R1, E1, readonly [B, A]>, __tsplusTrace?: string): IO<R1, E1, B>;
@@ -10,21 +10,19 @@ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require
10
10
  var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Queue/api/operations"));
11
11
  var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
12
12
  var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/constructors"));
13
- var tsplus_module_7 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/TSemaphore/api"));
14
- var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/interrupt"));
15
- var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/api"));
16
- var tsplus_module_10 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/raceFirst"));
17
- var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/fulfill"));
18
- var tsplus_module_12 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/constructors"));
19
- var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/fork"));
20
- var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/toPull"));
21
- var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/TSemaphore/constructors"));
22
- var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/STM/api/atomically"));
23
- var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Queue/constructors"));
24
- var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/acquireRelease"));
25
- var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interruptAll"));
26
- var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/addFinalizer"));
27
- var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/withChildren"));
13
+ var tsplus_module_7 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/interrupt"));
14
+ var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/api"));
15
+ var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/raceFirst"));
16
+ var tsplus_module_10 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/fulfill"));
17
+ var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/constructors"));
18
+ var tsplus_module_12 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/fork"));
19
+ var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/toPull"));
20
+ var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Semaphore"));
21
+ var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Queue/constructors"));
22
+ var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/acquireRelease"));
23
+ var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interruptAll"));
24
+ var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/addFinalizer"));
25
+ var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/withChildren"));
28
26
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
29
27
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
30
28
  const fileName_1 = "(@fncts/io) src/Channel/api/mapOutConcurrentIO.ts";
@@ -36,7 +34,7 @@ function mapOutConcurrentIO(n, f) {
36
34
  return tsplus_module_2.unwrapScoped(() => tsplus_module_5.map(queue => {
37
35
  const consumer = tsplus_module_2.unwrap(() => tsplus_module_5.matchCause(tsplus_module_1.failCauseNow, r => tsplus_module_3.match(tsplus_module_1.endNow, outElem => tsplus_module_1.zipRight(consumer)(tsplus_module_2.writeNow(outElem)))(r), fileName_1 + ":58:42")(tsplus_module_5.flatten(tsplus_module_4.take(queue, fileName_1 + ":58:18"), fileName_1 + ":58:23")));
38
36
  return consumer;
39
- }, fileName_1 + ":55:12")(tsplus_module_21.withChildren(getChildren => tsplus_module_5.flatMap(() => tsplus_module_5.flatMap(queue => tsplus_module_5.flatMap(errorSignal => tsplus_module_5.flatMap(permits => tsplus_module_5.flatMap(pull => tsplus_module_5.map(() => queue, fileName_1 + ":24:12")(tsplus_module_13.fork(tsplus_module_8.uninterruptible(tsplus_module_5.forever(tsplus_module_5.matchCauseIO(cause => tsplus_module_4.offer(tsplus_module_5.failCauseNow(cause, fileName_1 + ":26:53"), fileName_1 + ":26:37")(queue), r => tsplus_module_3.match(outDone => tsplus_module_5.asUnit(tsplus_module_5.zipRight(tsplus_module_4.offer(tsplus_module_5.succeedNow(tsplus_module_6.left(outDone), fileName_1 + ":32:72"), fileName_1 + ":32:58")(queue), fileName_1 + ":32:46")(tsplus_module_8.interruptible(tsplus_module_7.withPermits(permits, fileName_1 + ":30:28")(n)(tsplus_module_5.unit), fileName_1 + ":31:47")), fileName_1 + ":32:96"), outElem => tsplus_module_5.flatMap(p => tsplus_module_5.flatMap(latch => tsplus_module_5.flatMap(() => tsplus_module_5.flatMap(() => tsplus_module_5.map(() => void 0, fileName_1 + ":48:24")(tsplus_module_9.wait(latch, fileName_1 + ":48:30")), fileName_1 + ":38:24")(tsplus_module_7.withPermit(permits, fileName_1 + ":39:32")(tsplus_module_5.zipRight(tsplus_module_11.fulfill(p, fileName_1 + ":44:39")(tsplus_module_5.tapErrorCause(c => tsplus_module_9.failCause(c, fileName_1 + ":43:64")(p), fileName_1 + ":43:45")(tsplus_module_10.raceFirst(f(outElem), fileName_1 + ":42:41")(tsplus_module_9.wait(errorSignal, fileName_1 + ":41:40")))), fileName_1 + ":40:60")(tsplus_module_9.succeed_(undefined, fileName_1 + ":40:40")(latch)))), fileName_1 + ":37:24")(tsplus_module_4.offer(tsplus_module_5.map(tsplus_module_6.right, fileName_1 + ":37:48")(tsplus_module_9.wait(p, fileName_1 + ":37:38")), fileName_1 + ":37:36")(queue)), fileName_1 + ":36:38")(tsplus_module_12.make(fileName_1 + ":36:50")), fileName_1 + ":35:38")(tsplus_module_12.make(fileName_1 + ":35:50")))(r), fileName_1 + ":25:30")(pull), fileName_1 + ":51:14"), fileName_1 + ":51:22"), fileName_1 + ":51:38")), fileName_1 + ":23:32")(tsplus_module_14.toPull(self)), fileName_1 + ":22:32")(tsplus_module_16.atomically(tsplus_module_15.make(n, fileName_1 + ":22:48"), fileName_1 + ":22:51")), fileName_1 + ":21:32")(tsplus_module_12.make(fileName_1 + ":21:44")), fileName_1 + ":15:26")(tsplus_module_18.acquireRelease(() => tsplus_module_17.makeBounded(n, fileName_1 + ":17:32"), queue => tsplus_module_4.shutdown(queue, fileName_1 + ":18:31"), fileName_1 + ":16:30")), fileName_1 + ":14:12")(tsplus_module_20.addFinalizer(() => tsplus_module_5.flatMap(tsplus_module_19.interruptAll, fileName_1 + ":14:48")(getChildren), fileName_1 + ":14:28")), fileName_1 + ":12:22")));
37
+ }, fileName_1 + ":55:12")(tsplus_module_19.withChildren(getChildren => tsplus_module_5.flatMap(() => tsplus_module_5.flatMap(queue => tsplus_module_5.flatMap(errorSignal => tsplus_module_5.flatMap(permits => tsplus_module_5.flatMap(pull => tsplus_module_5.map(() => queue, fileName_1 + ":24:12")(tsplus_module_12.fork(tsplus_module_7.uninterruptible(tsplus_module_5.forever(tsplus_module_5.matchCauseIO(cause => tsplus_module_4.offer(tsplus_module_5.failCauseNow(cause, fileName_1 + ":26:53"), fileName_1 + ":26:37")(queue), r => tsplus_module_3.match(outDone => tsplus_module_5.asUnit(tsplus_module_5.zipRight(tsplus_module_4.offer(tsplus_module_5.succeedNow(tsplus_module_6.left(outDone), fileName_1 + ":32:72"), fileName_1 + ":32:58")(queue), fileName_1 + ":32:46")(tsplus_module_7.interruptible(permits.withPermits(n)(tsplus_module_5.unit), fileName_1 + ":31:47")), fileName_1 + ":32:96"), outElem => tsplus_module_5.flatMap(p => tsplus_module_5.flatMap(latch => tsplus_module_5.flatMap(() => tsplus_module_5.flatMap(() => tsplus_module_5.map(() => void 0, fileName_1 + ":48:24")(tsplus_module_8.wait(latch, fileName_1 + ":48:30")), fileName_1 + ":38:24")(permits.withPermit(tsplus_module_5.zipRight(tsplus_module_10.fulfill(p, fileName_1 + ":44:39")(tsplus_module_5.tapErrorCause(c => tsplus_module_8.failCause(c, fileName_1 + ":43:64")(p), fileName_1 + ":43:45")(tsplus_module_9.raceFirst(f(outElem), fileName_1 + ":42:41")(tsplus_module_8.wait(errorSignal, fileName_1 + ":41:40")))), fileName_1 + ":40:60")(tsplus_module_8.succeed_(undefined, fileName_1 + ":40:40")(latch)))), fileName_1 + ":37:24")(tsplus_module_4.offer(tsplus_module_5.map(tsplus_module_6.right, fileName_1 + ":37:48")(tsplus_module_8.wait(p, fileName_1 + ":37:38")), fileName_1 + ":37:36")(queue)), fileName_1 + ":36:38")(tsplus_module_11.make(fileName_1 + ":36:50")), fileName_1 + ":35:38")(tsplus_module_11.make(fileName_1 + ":35:50")))(r), fileName_1 + ":25:30")(pull), fileName_1 + ":51:14"), fileName_1 + ":51:22"), fileName_1 + ":51:38")), fileName_1 + ":23:32")(tsplus_module_13.toPull(self)), fileName_1 + ":22:32")(tsplus_module_14.makeSemaphore(n, fileName_1 + ":22:42")), fileName_1 + ":21:32")(tsplus_module_11.make(fileName_1 + ":21:44")), fileName_1 + ":15:26")(tsplus_module_16.acquireRelease(() => tsplus_module_15.makeBounded(n, fileName_1 + ":17:32"), queue => tsplus_module_4.shutdown(queue, fileName_1 + ":18:31"), fileName_1 + ":16:30")), fileName_1 + ":14:12")(tsplus_module_18.addFinalizer(() => tsplus_module_5.flatMap(tsplus_module_17.interruptAll, fileName_1 + ":14:48")(getChildren), fileName_1 + ":14:28")), fileName_1 + ":12:22")));
40
38
  };
41
39
  }
42
40
  //# sourceMappingURL=mapOutConcurrentIO.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"mapOutConcurrentIO.cjs","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;AAGM,SAAUA,kBAAkB,CAChCC,CAAS,EACTC,CAA8C;EAE9C,OACEC,IAAmE,IACgB;IACnF,OAAOC,mCACLC,oBA2COC,KAAK,IAAI;MACd,MAAMC,QAAQ,GACZH,6BACEC,yDAAqDG,CAAC,IACpDC,8CAAyBC,OAAO,IAAKC,yBAAmCJ,QAAQ,EAA3CH,yBAAiBM,OAAO,CAAC,CAAmB,EAAjFF,CAAC,CAAiF,sEADpFF,KAAK,iDAEJ,CACF;MACH,OAAOC,QAAQ;IACjB,CAAC,yBAnDDK,8BAAiBC,WAAW,IAAIR,sDAGtBC,KAAK,4BAMLQ,WAAW,4BACXC,OAAO,4BACPC,IAAI,8BA8BHV,KAAK,uGA5BVD,6BACGY,KAAK,IAAKC,sBAAYb,6BAAgBY,KAAK,wBAAC,yBAAlCX,KAAK,CAA8B,EAC7CE,CAAC,IACAC,sBACGU,OAAO,IAAId,uBACVA,yBAE0Ba,sBAAYb,2BAAce,qBAAYD,OAAO,CAAC,wBAAC,yBAA/Cb,KAAK,CAA2C,uDAF1Ee,mCAAO,yBACQpB,CAAC,CAAC,sBAAS,yBACiD,wBAAO,EACnFS,OAAO,IAAIL,wBAEFiB,CAAC,4BACDC,KAAK,8IAYTA,KAAK,kDATLF,kCAAO,yBACLhB,yBACEmB,yBAGWF,CAAC,yBAHZjB,8BAEkBoB,CAAC,IAAKC,0BAAYD,CAAC,yBAAbH,CAAC,CAAa,yBAFtCK,2BACazB,CAAC,CAACQ,OAAO,CAAC,8CADvBI,WAAW,yBACa,CACe,CAC1B,yBAJfY,yBAAcE,SAAS,yBAAvBL,KAAK,CAAmB,CAKvB,CACF,0BATDL,sBAAYb,wFAAC,yBAAwB,yBAArCC,KAAK,CAAiC,0BADxBuB,4CAA0B,0BAD1BA,4CAAgC,CAchD,EArBNrB,CAAC,CAsBA,yBAzBLQ,IAAI,CA0BH,0HA5BmBb,IAAI,uDADJ2B,sBAAgB7B,CAAC,wBAAC,kDADlB4B,4CAA6B,0BALjDE,sCACEC,6BAAyE/B,CAAC,wBAAC,EAC1EK,KAAK,IAAIY,yBAACZ,KAAK,wBAAS,wBAC1B,0BALD2B,oCAAgB5B,yFAAW,CAA4B,wBAAC,CAwC1D,wBACH,CAQC,CACH;EACH,CAAC;AACH","names":["mapOutConcurrentIO","n","f","self","tsplus_module_2","tsplus_module_5","queue","consumer","r","tsplus_module_3","outElem","tsplus_module_1","tsplus_module_21","getChildren","errorSignal","permits","pull","cause","tsplus_module_4","outDone","tsplus_module_6","tsplus_module_7","p","latch","tsplus_module_11","c","tsplus_module_9","tsplus_module_10","undefined","tsplus_module_12","tsplus_module_15","tsplus_module_18","tsplus_module_17","tsplus_module_20"],"sourceRoot":"","sources":["../../../_src/Channel/api/mapOutConcurrentIO.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"mapOutConcurrentIO.cjs","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;;AAGM,SAAUA,kBAAkB,CAChCC,CAAS,EACTC,CAA8C;EAE9C,OACEC,IAAmE,IACgB;IACnF,OAAOC,mCACLC,oBA2COC,KAAK,IAAI;MACd,MAAMC,QAAQ,GACZH,6BACEC,yDAAqDG,CAAC,IACpDC,8CAAyBC,OAAO,IAAKC,yBAAmCJ,QAAQ,EAA3CH,yBAAiBM,OAAO,CAAC,CAAmB,EAAjFF,CAAC,CAAiF,sEADpFF,KAAK,iDAEJ,CACF;MACH,OAAOC,QAAQ;IACjB,CAAC,yBAnDDK,8BAAiBC,WAAW,IAAIR,sDAGtBC,KAAK,4BAMLQ,WAAW,4BACXC,OAAO,4BACPC,IAAI,8BA8BHV,KAAK,uGA5BVD,6BACGY,KAAK,IAAKC,sBAAYb,6BAAgBY,KAAK,wBAAC,yBAAlCX,KAAK,CAA8B,EAC7CE,CAAC,IACAC,sBACGU,OAAO,IAAId,uBACVA,yBAE0Ba,sBAAYb,2BAAce,qBAAYD,OAAO,CAAC,wBAAC,yBAA/Cb,KAAK,CAA2C,uDAF1ES,OAAO,CACJM,WAAW,CAACpB,CAAC,CAAC,sBAAS,yBACiD,wBAAO,EACnFS,OAAO,IAAIL,wBAEFiB,CAAC,4BACDC,KAAK,8IAYTA,KAAK,kDATLR,OAAO,CAACS,UAAU,CAChBnB,yBACEoB,yBAGWH,CAAC,yBAHZjB,8BAEkBqB,CAAC,IAAKC,0BAAYD,CAAC,yBAAbJ,CAAC,CAAa,yBAFtCM,0BACa1B,CAAC,CAACQ,OAAO,CAAC,8CADvBI,WAAW,yBACa,CACe,CAC1B,yBAJfa,yBAAcE,SAAS,yBAAvBN,KAAK,CAAmB,CAKvB,CACF,0BATDL,sBAAYb,wFAAC,yBAAwB,yBAArCC,KAAK,CAAiC,0BADxBwB,4CAA0B,0BAD1BA,4CAAgC,CAchD,EArBNtB,CAAC,CAsBA,yBAzBLQ,IAAI,CA0BH,0HA5BmBb,IAAI,2BADJ4B,+BAAU9B,CAAC,wBAAC,0BADZ6B,4CAA6B,0BALjDE,sCACEC,6BAAyEhC,CAAC,wBAAC,EAC1EK,KAAK,IAAIY,yBAACZ,KAAK,wBAAS,wBAC1B,0BALD4B,oCAAgB7B,yFAAW,CAA4B,wBAAC,CAwC1D,wBACH,CAQC,CACH;EACH,CAAC;AACH","names":["mapOutConcurrentIO","n","f","self","tsplus_module_2","tsplus_module_5","queue","consumer","r","tsplus_module_3","outElem","tsplus_module_1","tsplus_module_19","getChildren","errorSignal","permits","pull","cause","tsplus_module_4","outDone","tsplus_module_6","withPermits","p","latch","withPermit","tsplus_module_10","c","tsplus_module_8","tsplus_module_9","undefined","tsplus_module_11","tsplus_module_14","tsplus_module_16","tsplus_module_15","tsplus_module_18"],"sourceRoot":"","sources":["../../../_src/Channel/api/mapOutConcurrentIO.ts"],"sourcesContent":[null]}
@@ -10,28 +10,26 @@ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require
10
10
  var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Queue/api/operations"));
11
11
  var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
12
12
  var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interruptAll"));
13
- var tsplus_module_7 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/TSemaphore/api"));
14
- var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interrupt"));
15
- var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/constructors"));
16
- var tsplus_module_10 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/destructors"));
17
- var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/api/get"));
18
- var tsplus_module_12 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/api"));
19
- var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/raceWith"));
20
- var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/fork"));
21
- var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/race"));
22
- var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/toPull"));
23
- var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/scoped"));
24
- var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/constructors"));
25
- var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/constructors"));
26
- var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/api/modify"));
27
- var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/definition"));
28
- var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/TSemaphore/constructors"));
29
- var tsplus_module_23 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/STM/api/atomically"));
30
- var tsplus_module_24 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/constructors"));
31
- var tsplus_module_25 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Queue/constructors"));
32
- var tsplus_module_26 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/acquireRelease"));
33
- var tsplus_module_27 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/addFinalizer"));
34
- var tsplus_module_28 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/withChildren"));
13
+ var tsplus_module_7 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Fiber/api/interrupt"));
14
+ var tsplus_module_8 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/constructors"));
15
+ var tsplus_module_9 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/destructors"));
16
+ var tsplus_module_10 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/api/get"));
17
+ var tsplus_module_11 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/api"));
18
+ var tsplus_module_12 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/raceWith"));
19
+ var tsplus_module_13 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/fork"));
20
+ var tsplus_module_14 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/race"));
21
+ var tsplus_module_15 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Channel/api/toPull"));
22
+ var tsplus_module_16 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/scoped"));
23
+ var tsplus_module_17 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Future/constructors"));
24
+ var tsplus_module_18 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/constructors"));
25
+ var tsplus_module_19 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/api/modify"));
26
+ var tsplus_module_20 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Maybe/definition"));
27
+ var tsplus_module_21 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Semaphore"));
28
+ var tsplus_module_22 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/constructors"));
29
+ var tsplus_module_23 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Queue/constructors"));
30
+ var tsplus_module_24 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/acquireRelease"));
31
+ var tsplus_module_25 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/addFinalizer"));
32
+ var tsplus_module_26 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/withChildren"));
35
33
  var _function = /*#__PURE__*/require("@fncts/base/data/function");
36
34
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
37
35
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -44,23 +42,23 @@ function mergeAllWith(n, f, bufferSize = 16, mergeStrategy = "BackPressure") {
44
42
  return tsplus_module_2.unwrapScoped(() => tsplus_module_5.map(queue => {
45
43
  const consumer = tsplus_module_2.unwrap(() => tsplus_module_5.matchCause(tsplus_module_1.failCauseNow, out => tsplus_module_3.match(tsplus_module_1.endNow, outElem => tsplus_module_1.zipRight(consumer)(tsplus_module_2.writeNow(outElem)))(out), fileName_1 + ":121:42")(tsplus_module_5.flatten(tsplus_module_4.take(queue, fileName_1 + ":121:18"), fileName_1 + ":121:23")));
46
44
  return consumer;
47
- }, fileName_1 + ":118:12")(tsplus_module_28.withChildren(getChildren => tsplus_module_5.flatMap(() => tsplus_module_5.flatMap(queue => tsplus_module_5.flatMap(cancelers => tsplus_module_5.flatMap(lastDone => tsplus_module_5.flatMap(errorSignal => tsplus_module_5.flatMap(permits => tsplus_module_5.flatMap(pull => {
48
- const evaluatePull = pull => tsplus_module_5.flatMap(md1 => tsplus_module_10.match(() => tsplus_module_5.unit, outDone => tsplus_module_20.update(md2 => tsplus_module_10.match(() => tsplus_module_19.just(outDone), lastDone => tsplus_module_19.just(f(lastDone, outDone)))(md2), fileName_1 + ":53:36")(lastDone))(md1), fileName_1 + ":49:23")(tsplus_module_5.repeatUntil(m => tsplus_module_21.isJust(m), fileName_1 + ":48:27")(tsplus_module_5.flatMap(ea => tsplus_module_3.match(outDone => tsplus_module_5.succeedNow(tsplus_module_19.just(outDone), fileName_1 + ":44:45"), outElem => tsplus_module_5.as(() => tsplus_module_19.nothing(), fileName_1 + ":45:84")(tsplus_module_4.offer(tsplus_module_5.succeedNow(tsplus_module_9.right(outElem), fileName_1 + ":45:57"), fileName_1 + ":45:43")(queue)))(ea), fileName_1 + ":42:23")(pull)));
49
- return tsplus_module_5.map(() => queue, fileName_1 + ":61:12")(tsplus_module_14.fork(tsplus_module_5.repeatWhile(_function.identity, fileName_1 + ":114:27")(tsplus_module_5.matchCauseIO(cause => tsplus_module_5.zipRight(tsplus_module_5.as(() => false, fileName_1 + ":65:106")(tsplus_module_4.offer(tsplus_module_5.failCauseNow(cause, fileName_1 + ":65:95"), fileName_1 + ":65:79")(queue)), fileName_1 + ":65:67")(tsplus_module_5.flatMap(tsplus_module_6.interruptAll, fileName_1 + ":65:38")(getChildren)), doneOrChannel => tsplus_module_3.match(outDone => tsplus_module_13.raceWith(() => tsplus_module_7.withPermits(permits, fileName_1 + ":70:32")(n)(tsplus_module_5.unit), (_, permitAcquisition) => tsplus_module_5.zipRight(tsplus_module_5.as(() => false, fileName_1 + ":72:106")(tsplus_module_8.interrupt(permitAcquisition)), fileName_1 + ":72:75")(tsplus_module_5.flatMap(tsplus_module_6.interruptAll, fileName_1 + ":72:46")(getChildren)), (_, failureAwait) => tsplus_module_5.zipRight(tsplus_module_5.as(() => false, fileName_1 + ":82:34")(tsplus_module_5.flatMap(maybeDone => tsplus_module_10.match(() => tsplus_module_4.offer(tsplus_module_5.succeedNow(tsplus_module_9.left(outDone), fileName_1 + ":78:66"), fileName_1 + ":78:52")(queue), lastDone => tsplus_module_4.offer(tsplus_module_5.succeedNow(tsplus_module_9.left(f(lastDone, outDone)), fileName_1 + ":79:74"), fileName_1 + ":79:60")(queue))(maybeDone), fileName_1 + ":76:39")(tsplus_module_11.get(lastDone, fileName_1 + ":75:37"))), fileName_1 + ":74:58")(tsplus_module_8.interrupt(failureAwait)), fileName_1 + ":69:49")(tsplus_module_12.wait(errorSignal, fileName_1 + ":69:34")), channel => {
45
+ }, fileName_1 + ":118:12")(tsplus_module_26.withChildren(getChildren => tsplus_module_5.flatMap(() => tsplus_module_5.flatMap(queue => tsplus_module_5.flatMap(cancelers => tsplus_module_5.flatMap(lastDone => tsplus_module_5.flatMap(errorSignal => tsplus_module_5.flatMap(permits => tsplus_module_5.flatMap(pull => {
46
+ const evaluatePull = pull => tsplus_module_5.flatMap(md1 => tsplus_module_9.match(() => tsplus_module_5.unit, outDone => tsplus_module_19.update(md2 => tsplus_module_9.match(() => tsplus_module_18.just(outDone), lastDone => tsplus_module_18.just(f(lastDone, outDone)))(md2), fileName_1 + ":53:36")(lastDone))(md1), fileName_1 + ":49:23")(tsplus_module_5.repeatUntil(m => tsplus_module_20.isJust(m), fileName_1 + ":48:27")(tsplus_module_5.flatMap(ea => tsplus_module_3.match(outDone => tsplus_module_5.succeedNow(tsplus_module_18.just(outDone), fileName_1 + ":44:45"), outElem => tsplus_module_5.as(() => tsplus_module_18.nothing(), fileName_1 + ":45:84")(tsplus_module_4.offer(tsplus_module_5.succeedNow(tsplus_module_8.right(outElem), fileName_1 + ":45:57"), fileName_1 + ":45:43")(queue)))(ea), fileName_1 + ":42:23")(pull)));
47
+ return tsplus_module_5.map(() => queue, fileName_1 + ":61:12")(tsplus_module_13.fork(tsplus_module_5.repeatWhile(_function.identity, fileName_1 + ":114:27")(tsplus_module_5.matchCauseIO(cause => tsplus_module_5.zipRight(tsplus_module_5.as(() => false, fileName_1 + ":65:106")(tsplus_module_4.offer(tsplus_module_5.failCauseNow(cause, fileName_1 + ":65:95"), fileName_1 + ":65:79")(queue)), fileName_1 + ":65:67")(tsplus_module_5.flatMap(tsplus_module_6.interruptAll, fileName_1 + ":65:38")(getChildren)), doneOrChannel => tsplus_module_3.match(outDone => tsplus_module_12.raceWith(() => permits.withPermits(n)(tsplus_module_5.unit), (_, permitAcquisition) => tsplus_module_5.zipRight(tsplus_module_5.as(() => false, fileName_1 + ":72:106")(tsplus_module_7.interrupt(permitAcquisition)), fileName_1 + ":72:75")(tsplus_module_5.flatMap(tsplus_module_6.interruptAll, fileName_1 + ":72:46")(getChildren)), (_, failureAwait) => tsplus_module_5.zipRight(tsplus_module_5.as(() => false, fileName_1 + ":82:34")(tsplus_module_5.flatMap(maybeDone => tsplus_module_9.match(() => tsplus_module_4.offer(tsplus_module_5.succeedNow(tsplus_module_8.left(outDone), fileName_1 + ":78:66"), fileName_1 + ":78:52")(queue), lastDone => tsplus_module_4.offer(tsplus_module_5.succeedNow(tsplus_module_8.left(f(lastDone, outDone)), fileName_1 + ":79:74"), fileName_1 + ":79:60")(queue))(maybeDone), fileName_1 + ":76:39")(tsplus_module_10.get(lastDone, fileName_1 + ":75:37"))), fileName_1 + ":74:58")(tsplus_module_7.interrupt(failureAwait)), fileName_1 + ":69:49")(tsplus_module_11.wait(errorSignal, fileName_1 + ":69:34")), channel => {
50
48
  switch (mergeStrategy) {
51
49
  case "BackPressure":
52
50
  return tsplus_module_5.flatMap(latch => {
53
- const raceIOs = tsplus_module_17.scoped(tsplus_module_5.flatMap(io => tsplus_module_15.race(tsplus_module_12.wait(errorSignal, fileName_1 + ":91:64"))(evaluatePull(io)), fileName_1 + ":90:67")(tsplus_module_16.toPull(channel)), fileName_1 + ":92:30");
54
- return tsplus_module_5.flatMap(() => tsplus_module_5.flatMap(() => tsplus_module_5.map(b => !b, fileName_1 + ":95:60")(tsplus_module_12.isDone(errorSignal, fileName_1 + ":95:49")), fileName_1 + ":94:30")(tsplus_module_12.wait(latch, fileName_1 + ":94:36")), fileName_1 + ":93:30")(tsplus_module_14.fork(tsplus_module_7.withPermit(permits, fileName_1 + ":93:38")(tsplus_module_5.zipRight(raceIOs, fileName_1 + ":93:83")(tsplus_module_12.succeed_(undefined, fileName_1 + ":93:63")(latch))), fileName_1 + ":93:93"));
55
- }, fileName_1 + ":89:46")(tsplus_module_18.make(fileName_1 + ":89:58"));
51
+ const raceIOs = tsplus_module_16.scoped(tsplus_module_5.flatMap(io => tsplus_module_14.race(tsplus_module_11.wait(errorSignal, fileName_1 + ":91:64"))(evaluatePull(io)), fileName_1 + ":90:67")(tsplus_module_15.toPull(channel)), fileName_1 + ":92:30");
52
+ return tsplus_module_5.flatMap(() => tsplus_module_5.flatMap(() => tsplus_module_5.map(b => !b, fileName_1 + ":95:60")(tsplus_module_11.isDone(errorSignal, fileName_1 + ":95:49")), fileName_1 + ":94:30")(tsplus_module_11.wait(latch, fileName_1 + ":94:36")), fileName_1 + ":93:30")(tsplus_module_13.fork(permits.withPermit(tsplus_module_5.zipRight(raceIOs, fileName_1 + ":93:83")(tsplus_module_11.succeed_(undefined, fileName_1 + ":93:63")(latch))), fileName_1 + ":93:93"));
53
+ }, fileName_1 + ":89:46")(tsplus_module_17.make(fileName_1 + ":89:58"));
56
54
  case "BufferSliding":
57
55
  return tsplus_module_5.flatMap(canceler => tsplus_module_5.flatMap(latch => tsplus_module_5.flatMap(size => tsplus_module_5.flatMap(() => {
58
- const raceIOs = tsplus_module_17.scoped(tsplus_module_5.flatMap(io => tsplus_module_15.race(tsplus_module_12.wait(canceler, fileName_1 + ":104:85"))(tsplus_module_15.race(tsplus_module_12.wait(errorSignal, fileName_1 + ":104:64"))(evaluatePull(io))), fileName_1 + ":103:67")(tsplus_module_16.toPull(channel)), fileName_1 + ":105:30");
59
- return tsplus_module_5.flatMap(() => tsplus_module_5.flatMap(() => tsplus_module_5.map(b => !b, fileName_1 + ":108:60")(tsplus_module_12.isDone(errorSignal, fileName_1 + ":108:49")), fileName_1 + ":107:30")(tsplus_module_12.wait(latch, fileName_1 + ":107:36")), fileName_1 + ":106:30")(tsplus_module_14.fork(tsplus_module_7.withPermit(permits, fileName_1 + ":106:38")(tsplus_module_5.zipRight(raceIOs, fileName_1 + ":106:83")(tsplus_module_12.succeed_(undefined, fileName_1 + ":106:63")(latch))), fileName_1 + ":106:93"));
60
- }, fileName_1 + ":102:30")(tsplus_module_5.when(() => size >= 0, fileName_1 + ":102:87")(tsplus_module_5.flatMap(f => tsplus_module_12.succeed_(undefined, fileName_1 + ":102:70")(f), fileName_1 + ":102:53")(tsplus_module_4.take(cancelers, fileName_1 + ":102:40")))), fileName_1 + ":101:47")(tsplus_module_4.size(cancelers, fileName_1 + ":101:57")), fileName_1 + ":100:47")(tsplus_module_18.make(fileName_1 + ":100:59")), fileName_1 + ":99:47")(tsplus_module_18.make(fileName_1 + ":99:59"));
56
+ const raceIOs = tsplus_module_16.scoped(tsplus_module_5.flatMap(io => tsplus_module_14.race(tsplus_module_11.wait(canceler, fileName_1 + ":104:85"))(tsplus_module_14.race(tsplus_module_11.wait(errorSignal, fileName_1 + ":104:64"))(evaluatePull(io))), fileName_1 + ":103:67")(tsplus_module_15.toPull(channel)), fileName_1 + ":105:30");
57
+ return tsplus_module_5.flatMap(() => tsplus_module_5.flatMap(() => tsplus_module_5.map(b => !b, fileName_1 + ":108:60")(tsplus_module_11.isDone(errorSignal, fileName_1 + ":108:49")), fileName_1 + ":107:30")(tsplus_module_11.wait(latch, fileName_1 + ":107:36")), fileName_1 + ":106:30")(tsplus_module_13.fork(permits.withPermit(tsplus_module_5.zipRight(raceIOs, fileName_1 + ":106:83")(tsplus_module_11.succeed_(undefined, fileName_1 + ":106:63")(latch))), fileName_1 + ":106:93"));
58
+ }, fileName_1 + ":102:30")(tsplus_module_5.when(() => size >= 0, fileName_1 + ":102:87")(tsplus_module_5.flatMap(f => tsplus_module_11.succeed_(undefined, fileName_1 + ":102:70")(f), fileName_1 + ":102:53")(tsplus_module_4.take(cancelers, fileName_1 + ":102:40")))), fileName_1 + ":101:47")(tsplus_module_4.size(cancelers, fileName_1 + ":101:57")), fileName_1 + ":100:47")(tsplus_module_17.make(fileName_1 + ":100:59")), fileName_1 + ":99:47")(tsplus_module_17.make(fileName_1 + ":99:59"));
61
59
  }
62
60
  })(doneOrChannel), fileName_1 + ":63:28")(pull)), fileName_1 + ":114:37"));
63
- }, fileName_1 + ":39:33")(tsplus_module_16.toPull(channels)), fileName_1 + ":38:33")(tsplus_module_23.atomically(tsplus_module_22.make(n, fileName_1 + ":38:49"), fileName_1 + ":38:52")), fileName_1 + ":37:33")(tsplus_module_18.make(fileName_1 + ":37:45")), fileName_1 + ":36:33")(tsplus_module_24.make(() => tsplus_module_19.nothing(), fileName_1 + ":36:42")), fileName_1 + ":35:33")(tsplus_module_26.acquireRelease(() => tsplus_module_25.makeUnbounded(fileName_1 + ":35:71"), queue => tsplus_module_4.shutdown(queue, fileName_1 + ":35:112"), fileName_1 + ":35:51")), fileName_1 + ":29:26")(tsplus_module_26.acquireRelease(() => tsplus_module_25.makeBounded(bufferSize, fileName_1 + ":31:32"), queue => tsplus_module_4.shutdown(queue, fileName_1 + ":32:31"), fileName_1 + ":30:30")), fileName_1 + ":28:12")(tsplus_module_27.addFinalizer(() => tsplus_module_5.flatMap(tsplus_module_6.interruptAll, fileName_1 + ":28:48")(getChildren), fileName_1 + ":28:28")), fileName_1 + ":26:22")));
61
+ }, fileName_1 + ":39:33")(tsplus_module_15.toPull(channels)), fileName_1 + ":38:33")(tsplus_module_21.makeSemaphore(n, fileName_1 + ":38:43")), fileName_1 + ":37:33")(tsplus_module_17.make(fileName_1 + ":37:45")), fileName_1 + ":36:33")(tsplus_module_22.make(() => tsplus_module_18.nothing(), fileName_1 + ":36:42")), fileName_1 + ":35:33")(tsplus_module_24.acquireRelease(() => tsplus_module_23.makeUnbounded(fileName_1 + ":35:71"), queue => tsplus_module_4.shutdown(queue, fileName_1 + ":35:112"), fileName_1 + ":35:51")), fileName_1 + ":29:26")(tsplus_module_24.acquireRelease(() => tsplus_module_23.makeBounded(bufferSize, fileName_1 + ":31:32"), queue => tsplus_module_4.shutdown(queue, fileName_1 + ":32:31"), fileName_1 + ":30:30")), fileName_1 + ":28:12")(tsplus_module_25.addFinalizer(() => tsplus_module_5.flatMap(tsplus_module_6.interruptAll, fileName_1 + ":28:48")(getChildren), fileName_1 + ":28:28")), fileName_1 + ":26:22")));
64
62
  };
65
63
  }
66
64
  //# sourceMappingURL=mergeAllWith.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"mergeAllWith.cjs","mappings":"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","names":["mergeAllWith","n","f","bufferSize","mergeStrategy","channels","tsplus_module_2","tsplus_module_5","queue","consumer","out","tsplus_module_3","outElem","tsplus_module_1","tsplus_module_28","getChildren","cancelers","lastDone","errorSignal","permits","pull","evaluatePull","md1","tsplus_module_10","outDone","tsplus_module_20","md2","tsplus_module_19","m","tsplus_module_21","ea","tsplus_module_4","tsplus_module_9","identity","cause","doneOrChannel","tsplus_module_13","tsplus_module_7","_","permitAcquisition","failureAwait","maybeDone","channel","latch","raceIOs","io","tsplus_module_15","b","tsplus_module_12","undefined","tsplus_module_18","canceler","size","tsplus_module_22","tsplus_module_24","tsplus_module_26","tsplus_module_25","tsplus_module_27"],"sourceRoot":"","sources":["../../../_src/Channel/api/mergeAllWith.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"mergeAllWith.cjs","mappings":"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","names":["mergeAllWith","n","f","bufferSize","mergeStrategy","channels","tsplus_module_2","tsplus_module_5","queue","consumer","out","tsplus_module_3","outElem","tsplus_module_1","tsplus_module_26","getChildren","cancelers","lastDone","errorSignal","permits","pull","evaluatePull","md1","tsplus_module_9","outDone","tsplus_module_19","md2","tsplus_module_18","m","tsplus_module_20","ea","tsplus_module_4","tsplus_module_8","identity","cause","doneOrChannel","tsplus_module_12","withPermits","_","permitAcquisition","failureAwait","maybeDone","channel","latch","raceIOs","io","tsplus_module_14","b","withPermit","tsplus_module_11","undefined","tsplus_module_17","canceler","size","tsplus_module_21","tsplus_module_22","tsplus_module_24","tsplus_module_23","tsplus_module_25"],"sourceRoot":"","sources":["../../../_src/Channel/api/mergeAllWith.ts"],"sourcesContent":[null]}
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.blocking = blocking;
7
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
8
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/unsafe"));
9
+ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/operations"));
10
+ var _BackgroundScheduler = /*#__PURE__*/require("@fncts/io/internal/BackgroundScheduler");
11
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
13
+ /**
14
+ * @tsplus static fncts.io.IOOps blocking
15
+ * @tsplus getter fncts.io.IO blocking
16
+ */
17
+ function blocking(self, __tsplusTrace) {
18
+ return tsplus_module_1.zipRight(self, __tsplusTrace)(tsplus_module_3.locally(tsplus_module_2.currentScheduler, _BackgroundScheduler.backgroundScheduler, __tsplusTrace)(tsplus_module_1.yieldNow));
19
+ }
20
+ //# sourceMappingURL=blocking.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"blocking.cjs","mappings":";;;;;;;;;AAAA;AAA6E;AAAA;AAE7E;;;;AAIM,SAAUA,QAAQ,CAAUC,IAAiB,EAAEC,aAAsB;EACzE,gCAA6ED,IAAI,EAD9BC,eAC5CC,0DAAkCC,wCAAmB,EADTF,cACU,0BAAa;AAC5E","names":["blocking","self","__tsplusTrace","tsplus_module_3","backgroundScheduler"],"sourceRoot":"","sources":["../../../_src/IO/api/blocking.ts"],"sourcesContent":[null]}
package/_cjs/IO.cjs CHANGED
@@ -124,6 +124,17 @@ Object.keys(_asyncIO).forEach(function (key) {
124
124
  }
125
125
  });
126
126
  });
127
+ var _blocking = /*#__PURE__*/require("./IO/api/blocking.cjs");
128
+ Object.keys(_blocking).forEach(function (key) {
129
+ if (key === "default" || key === "__esModule") return;
130
+ if (key in exports && exports[key] === _blocking[key]) return;
131
+ Object.defineProperty(exports, key, {
132
+ enumerable: true,
133
+ get: function () {
134
+ return _blocking[key];
135
+ }
136
+ });
137
+ });
127
138
  var _bracket = /*#__PURE__*/require("./IO/api/bracket.cjs");
128
139
  Object.keys(_bracket).forEach(function (key) {
129
140
  if (key === "default" || key === "__esModule") return;
package/_cjs/IO.cjs.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"IO.cjs","mappings":";;;;;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAIA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA","names":[],"sourceRoot":"","sources":["../_src/IO.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"IO.cjs","mappings":";;;;;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AAIA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA;AACA;AAAA;EAAA;EAAA;EAAA;IAAA;IAAA;MAAA;IAAA;EAAA;AAAA","names":[],"sourceRoot":"","sources":["../_src/IO.ts"],"sourcesContent":[null]}
@@ -6,11 +6,10 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.makeSynchronized = makeSynchronized;
7
7
  exports.unsafeMakeSynchronized = unsafeMakeSynchronized;
8
8
  var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/constructors"));
9
- var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/TSemaphore/constructors"));
9
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Semaphore"));
10
10
  var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/api/get"));
11
11
  var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/Ref/api/set"));
12
- var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/STM/api/atomically"));
13
- var tsplus_module_6 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
12
+ var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
14
13
  var _definition = /*#__PURE__*/require("./definition.cjs");
15
14
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
16
15
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -19,13 +18,13 @@ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj &&
19
18
  */
20
19
  function unsafeMakeSynchronized(a, __tsplusTrace) {
21
20
  const ref = tsplus_module_1.unsafeMake(a, __tsplusTrace);
22
- const semaphore = tsplus_module_2.unsafeMake(1);
21
+ const semaphore = tsplus_module_2.unsafeMakeSemaphore(1);
23
22
  return new _definition.PSynchronizedInternal(semaphore, ref.get, a => ref.set(a));
24
23
  }
25
24
  /**
26
25
  * @tsplus static fncts.io.Ref.SynchronizedOps make
27
26
  */
28
27
  function makeSynchronized(a, __tsplusTrace) {
29
- return tsplus_module_6.flatMap(ref => tsplus_module_6.map(semaphore => new _definition.PSynchronizedInternal(semaphore, tsplus_module_3.get(ref, __tsplusTrace), a => tsplus_module_4.set(a, __tsplusTrace)(ref)), __tsplusTrace)(tsplus_module_5.atomically(tsplus_module_2.make(1, __tsplusTrace), __tsplusTrace)), __tsplusTrace)(tsplus_module_1.make(a, __tsplusTrace));
28
+ return tsplus_module_5.flatMap(ref => tsplus_module_5.map(semaphore => new _definition.PSynchronizedInternal(semaphore, tsplus_module_3.get(ref, __tsplusTrace), a => tsplus_module_4.set(a, __tsplusTrace)(ref)), __tsplusTrace)(tsplus_module_2.makeSemaphore(1, __tsplusTrace)), __tsplusTrace)(tsplus_module_1.make(a, __tsplusTrace));
30
29
  }
31
30
  //# sourceMappingURL=constructors.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"constructors.cjs","mappings":";;;;;;;;;;;;;AAAA;AAAwD;AAAA;AAExD;;;AAGM,SAAUA,sBAAsB,CAAIC,CAAI,EAAEC,aAAsB;EACpE,MAAMC,GAAG,GAASC,2BAAeH,CAAC,EADYC,cACX;EACnC,MAAMG,SAAS,GAAGC,2BAAsB,CAAC,CAAC;EAC1C,OAAO,IAAIC,iCAAqB,CAACF,SAAS,EAAEF,GAAG,CAACK,GAAG,EAAGP,CAAI,IAAKE,GAAG,CAACM,GAAG,CAACR,CAAC,CAAC,CAAC;AAC5E;AAEA;;;AAGM,SAAUS,gBAAgB,CAAIT,CAAU,EAAEC,aAAsB;EACpE,+BACQC,GAAG,wBACHE,SAAS,IACR,IAAIE,iCAAqB,CAACF,SAAS,sBAAEF,GAAG,EAJHD,gBAIUD,CAAI,IAAKU,oBAAQV,CAAC,EAJ5BC,eAImBC,GAAG,CAAO,CAAC,EAJ9BD,0CAGxBI,qBAAgB,CAAC,EAHOJ,cAGN,EAHMA,gCAExBE,qBAASH,CAAC,EAFcC,cAEb;AAInC","names":["unsafeMakeSynchronized","a","__tsplusTrace","ref","tsplus_module_1","semaphore","tsplus_module_2","PSynchronizedInternal","get","set","makeSynchronized","tsplus_module_4"],"sourceRoot":"","sources":["../../../_src/Ref/Synchronized/constructors.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"constructors.cjs","mappings":";;;;;;;;;;;;AAAA;AAAwD;AAAA;AAExD;;;AAGM,SAAUA,sBAAsB,CAAIC,CAAI,EAAEC,aAAsB;EACpE,MAAMC,GAAG,GAASC,2BAAeH,CAAC,EADYC,cACX;EACnC,MAAMG,SAAS,GAAGC,oCAAqB,CAAC,CAAC;EACzC,OAAO,IAAIC,iCAAqB,CAACF,SAAS,EAAEF,GAAG,CAACK,GAAG,EAAGP,CAAI,IAAKE,GAAG,CAACM,GAAG,CAACR,CAAC,CAAC,CAAC;AAC5E;AAEA;;;AAGM,SAAUS,gBAAgB,CAAIT,CAAU,EAAEC,aAAsB;EACpE,+BACQC,GAAG,wBACHE,SAAS,IACR,IAAIE,iCAAqB,CAACF,SAAS,sBAAEF,GAAG,EAJHD,gBAIUD,CAAI,IAAKU,oBAAQV,CAAC,EAJ5BC,eAImBC,GAAG,CAAO,CAAC,EAJ9BD,eAGxBI,8BAAU,CAAC,EAHaJ,cAGZ,GAHYA,eAExBE,qBAASH,CAAC,EAFcC,cAEb;AAInC","names":["unsafeMakeSynchronized","a","__tsplusTrace","ref","tsplus_module_1","semaphore","tsplus_module_2","PSynchronizedInternal","get","set","makeSynchronized","tsplus_module_4"],"sourceRoot":"","sources":["../../../_src/Ref/Synchronized/constructors.ts"],"sourcesContent":[null]}
@@ -6,7 +6,6 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.SynchronizedTypeId = exports.Synchronized = exports.PSynchronizedInternal = void 0;
7
7
  exports.concreteSynchronized = concreteSynchronized;
8
8
  var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
9
- var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/TSemaphore/api"));
10
9
  var _definition = /*#__PURE__*/require("../definition.cjs");
11
10
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
12
11
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
@@ -55,7 +54,7 @@ class PSynchronizedInternal extends _definition.RefInternal {
55
54
  return this.matchAllIO(ea, eb, ec, c => b => tsplus_module_1.fromEitherNow(ca(c)(b), fileName_1 + ":119:37"), b => tsplus_module_1.fromEitherNow(bd(b), fileName_1 + ":120:30"), fileName_1 + ":115:27");
56
55
  }
57
56
  withPermit(io, __tsplusTrace) {
58
- return tsplus_module_2.withPermit(this.semaphore, fileName_1 + ":125:26")(io);
57
+ return this.semaphore.withPermit(io);
59
58
  }
60
59
  }
61
60
  exports.PSynchronizedInternal = PSynchronizedInternal;
@@ -1 +1 @@
1
- {"version":3,"file":"definition.cjs","mappings":"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","names":["SynchronizedTypeId","Symbol","for","Synchronized","PSynchronizedInternal","RefInternal","constructor","semaphore","unsafeGet","unsafeSet","get","withPermit","set","a","__tsplusTrace","modify","f","modifyIO","tsplus_module_1","b","matchAllIO","ea","eb","ec","ca","bd","e","c","matchIO","match","matchAll","io","tsplus_module_2","concreteSynchronized","self"],"sourceRoot":"","sources":["../../../_src/Ref/Synchronized/definition.ts"],"sourcesContent":[null]}
1
+ {"version":3,"file":"definition.cjs","mappings":"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","names":["SynchronizedTypeId","Symbol","for","Synchronized","PSynchronizedInternal","RefInternal","constructor","semaphore","unsafeGet","unsafeSet","get","withPermit","set","a","__tsplusTrace","modify","f","modifyIO","tsplus_module_1","b","matchAllIO","ea","eb","ec","ca","bd","e","c","matchIO","match","matchAll","io","concreteSynchronized","self"],"sourceRoot":"","sources":["../../../_src/Ref/Synchronized/definition.ts"],"sourcesContent":[null]}
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.Semaphore = void 0;
7
+ exports.makeSemaphore = makeSemaphore;
8
+ exports.unsafeMakeSemaphore = void 0;
9
+ var tsplus_module_1 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api"));
10
+ var tsplus_module_2 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/base/data/Either/constructors"));
11
+ var tsplus_module_3 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/asyncInterrupt"));
12
+ var tsplus_module_4 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/FiberRef/unsafe"));
13
+ var tsplus_module_5 = /*#__PURE__*/_interopRequireWildcard( /*#__PURE__*/require("@fncts/io/IO/api/interrupt"));
14
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
15
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
16
+ const fileName_1 = "(@fncts/io) src/Semaphore.ts";
17
+ const unsafeMakeSemaphore = unsafeMakeSemaphore_1;
18
+ /**
19
+ * @tsplus type fncts.io.Semaphore
20
+ * @tsplus companion fncts.io.SemaphoreOps
21
+ */
22
+ exports.unsafeMakeSemaphore = unsafeMakeSemaphore;
23
+ class Semaphore {
24
+ constructor(permits) {
25
+ this.permits = permits;
26
+ this.taken = 0;
27
+ this.waiters = new Set();
28
+ }
29
+ get free() {
30
+ return this.permits - this.taken;
31
+ }
32
+ runNext() {
33
+ const next = this.waiters.values().next();
34
+ if (!next.done) {
35
+ this.waiters.delete(next.value);
36
+ next.value();
37
+ }
38
+ }
39
+ take(n) {
40
+ return tsplus_module_3.asyncInterrupt(cb => {
41
+ if (this.free < n) {
42
+ const observer = () => {
43
+ if (this.free >= n) {
44
+ this.waiters.delete(observer);
45
+ this.taken += n;
46
+ cb(tsplus_module_1.succeedNow(n, fileName_1 + ":30:29"));
47
+ }
48
+ };
49
+ this.waiters.add(observer);
50
+ return tsplus_module_2.left(tsplus_module_1.succeed(() => {
51
+ this.waiters.delete(observer);
52
+ }, fileName_1 + ":35:13"));
53
+ }
54
+ this.taken += n;
55
+ return tsplus_module_2.right(tsplus_module_1.succeedNow(n, fileName_1 + ":41:40"));
56
+ });
57
+ }
58
+ release(n) {
59
+ return tsplus_module_1.withFiberRuntime(fiber => {
60
+ this.taken -= n;
61
+ fiber.getFiberRef(tsplus_module_4.currentScheduler).scheduleTask(() => {
62
+ this.waiters.forEach(wake => wake());
63
+ });
64
+ return tsplus_module_1.unit;
65
+ }, fileName_1 + ":46:31");
66
+ }
67
+ withPermits(permits) {
68
+ return io => {
69
+ return tsplus_module_5.uninterruptibleMask(restore => tsplus_module_1.flatMap(permits => tsplus_module_5.ensuring(this.release(permits), fileName_1 + ":58:78")(restore(io, fileName_1 + ":58:65")), fileName_1 + ":58:44")(restore(this.take(permits), fileName_1 + ":58:16")));
70
+ };
71
+ }
72
+ withPermit(io) {
73
+ return this.withPermits(1)(io);
74
+ }
75
+ }
76
+ /**
77
+ * @tsplus static fncts.io.SemaphoreOps unsafeMake
78
+ */
79
+ exports.Semaphore = Semaphore;
80
+ function unsafeMakeSemaphore_1(permits) {
81
+ return new Semaphore(permits);
82
+ }
83
+ /**
84
+ * @tsplus static fncts.io.SemaphoreOps make
85
+ * @tsplus static fncts.io.SemaphoreOps __call
86
+ */
87
+ function makeSemaphore(permits, __tsplusTrace) {
88
+ return tsplus_module_1.succeed(() => unsafeMakeSemaphore_1(permits), __tsplusTrace);
89
+ }
90
+ //# sourceMappingURL=Semaphore.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Semaphore.cjs","mappings":";;;;;;;;;;;;;;;;MAsEgBA,mBAAmB;AAtEnC;;;;AAAA;AAIM,MAAOC,SAAS;EACpBC,YAAqBC,OAAe;IAAf,YAAO,GAAPA,OAAO;IAE5B,UAAK,GAAK,CAAC;IACX,YAAO,GAAG,IAAIC,GAAG,EAAc;EAHQ;EAKvC,IAAIC,IAAI;IACN,OAAO,IAAI,CAACF,OAAO,GAAG,IAAI,CAACG,KAAK;EAClC;EAEAC,OAAO;IACL,MAAMC,IAAI,GAAG,IAAI,CAACC,OAAO,CAACC,MAAM,EAAE,CAACF,IAAI,EAAE;IACzC,IAAI,CAACA,IAAI,CAACG,IAAI,EAAE;MACd,IAAI,CAACF,OAAO,CAACG,MAAM,CAACJ,IAAI,CAACK,KAAK,CAAC;MAC/BL,IAAI,CAACK,KAAK,EAAE;;EAEhB;EAEAC,IAAI,CAACC,CAAS;IACZ,OAAOC,+BAAyCC,EAAE,IAAI;MACpD,IAAI,IAAI,CAACZ,IAAI,GAAGU,CAAC,EAAE;QACjB,MAAMG,QAAQ,GAAG,MAAK;UACpB,IAAI,IAAI,CAACb,IAAI,IAAIU,CAAC,EAAE;YAClB,IAAI,CAACN,OAAO,CAACG,MAAM,CAACM,QAAQ,CAAC;YAC7B,IAAI,CAACZ,KAAK,IAAIS,CAAC;YACfE,EAAE,CAACE,2BAAcJ,CAAC,wBAAC,CAAC;;QAExB,CAAC;QACD,IAAI,CAACN,OAAO,CAACW,GAAG,CAACF,QAAQ,CAAC;QAC1B,OAAOG,qBACLF,wBAAG,MAAK;UACN,IAAI,CAACV,OAAO,CAACG,MAAM,CAACM,QAAQ,CAAC;QAC/B,CAAC,wBAAC,CACH;;MAEH,IAAI,CAACZ,KAAK,IAAIS,CAAC;MACf,OAAOM,sBAAaF,2BAAcJ,CAAC,wBAAC,CAAC;IACvC,CAAC,CAAC;EACJ;EAEAO,OAAO,CAACP,CAAS;IACf,OAAOI,iCAAyCI,KAAK,IAAI;MACvD,IAAI,CAACjB,KAAK,IAAIS,CAAC;MACfQ,KAAK,CAACC,WAAW,kCAA2B,CAACC,YAAY,CAAC,MAAK;QAC7D,IAAI,CAAChB,OAAO,CAACiB,OAAO,CAAEC,IAAI,IAAKA,IAAI,EAAE,CAAC;MACxC,CAAC,CAAC;MACF;IACF,CAAC,wBAAC;EACJ;EAEAC,WAAW,CAACzB,OAAe;IACzB,OAAiB0B,EAAe,IAAiB;MAC/C,OAAOC,oCAAwBC,OAAO,IACpCZ,wBAAqChB,OAAO,IAAK2B,yBAAqB,IAAI,CAACR,OAAO,CAACnB,OAAO,CAAC,yBAA1C4B,OAAO,CAACF,EAAE,wBAAC,CAAgC,yBAA5FE,OAAO,CAAC,IAAI,CAACjB,IAAI,CAACX,OAAO,CAAC,wBAAC,CAAkE,CAC9F;IACH,CAAC;EACH;EAEA6B,UAAU,CAAUH,EAAe;IACjC,OAAO,IAAI,CAACD,WAAW,CAAC,CAAC,CAAC,CAACC,EAAE,CAAC;EAChC;;AAGF;;;AAAA;AAGA,+BAAoC1B,OAAe;EACjD,OAAO,IAAIF,SAAS,CAACE,OAAO,CAAC;AAC/B;AAEA;;;;AAIM,SAAU8B,aAAa,CAAC9B,OAAe,EAAE+B,aAAsB;EACnE,OAAOf,8BAAGgB,sBAAqBhC,OAAO,CAAC,EADM+B,cACL;AAC1C","names":["unsafeMakeSemaphore","Semaphore","constructor","permits","Set","free","taken","runNext","next","waiters","values","done","delete","value","take","n","tsplus_module_3","cb","observer","tsplus_module_1","add","tsplus_module_2","release","fiber","getFiberRef","scheduleTask","forEach","wake","withPermits","io","tsplus_module_5","restore","withPermit","makeSemaphore","__tsplusTrace","unsafeMakeSemaphore_1"],"sourceRoot":"","sources":["../_src/Semaphore.ts"],"sourcesContent":[null]}