effect 3.4.9 → 3.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/RcMap/package.json +6 -0
- package/RcRef/package.json +6 -0
- package/dist/cjs/Cause.js +22 -1
- package/dist/cjs/Cause.js.map +1 -1
- package/dist/cjs/Channel.js.map +1 -1
- package/dist/cjs/Config.js.map +1 -1
- package/dist/cjs/Console.js.map +1 -1
- package/dist/cjs/Data.js +3 -1
- package/dist/cjs/Data.js.map +1 -1
- package/dist/cjs/Duration.js +23 -2
- package/dist/cjs/Duration.js.map +1 -1
- package/dist/cjs/Logger.js +11 -1
- package/dist/cjs/Logger.js.map +1 -1
- package/dist/cjs/PubSub.js.map +1 -1
- package/dist/cjs/Random.js +9 -1
- package/dist/cjs/Random.js.map +1 -1
- package/dist/cjs/RcMap.js +52 -0
- package/dist/cjs/RcMap.js.map +1 -0
- package/dist/cjs/RcRef.js +51 -0
- package/dist/cjs/RcRef.js.map +1 -0
- package/dist/cjs/Stream.js +29 -2
- package/dist/cjs/Stream.js.map +1 -1
- package/dist/cjs/index.js +6 -2
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/internal/cause.js +21 -5
- package/dist/cjs/internal/cause.js.map +1 -1
- package/dist/cjs/internal/channel/channelExecutor.js.map +1 -1
- package/dist/cjs/internal/channel.js.map +1 -1
- package/dist/cjs/internal/core-effect.js +0 -5
- package/dist/cjs/internal/core-effect.js.map +1 -1
- package/dist/cjs/internal/core.js +15 -10
- package/dist/cjs/internal/core.js.map +1 -1
- package/dist/cjs/internal/defaultServices.js +1 -1
- package/dist/cjs/internal/defaultServices.js.map +1 -1
- package/dist/cjs/internal/fiberRuntime.js +3 -1
- package/dist/cjs/internal/fiberRuntime.js.map +1 -1
- package/dist/cjs/internal/logger.js +128 -27
- package/dist/cjs/internal/logger.js.map +1 -1
- package/dist/cjs/internal/pubsub.js +216 -36
- package/dist/cjs/internal/pubsub.js.map +1 -1
- package/dist/cjs/internal/random.js +2 -1
- package/dist/cjs/internal/random.js.map +1 -1
- package/dist/cjs/internal/rcMap.js +129 -0
- package/dist/cjs/internal/rcMap.js.map +1 -0
- package/dist/cjs/internal/rcRef.js +122 -0
- package/dist/cjs/internal/rcRef.js.map +1 -0
- package/dist/cjs/internal/stream.js +57 -11
- package/dist/cjs/internal/stream.js.map +1 -1
- package/dist/cjs/internal/version.js +1 -1
- package/dist/dts/Cause.d.ts +40 -1
- package/dist/dts/Cause.d.ts.map +1 -1
- package/dist/dts/Channel.d.ts +3 -3
- package/dist/dts/Channel.d.ts.map +1 -1
- package/dist/dts/Config.d.ts +5 -0
- package/dist/dts/Config.d.ts.map +1 -1
- package/dist/dts/Console.d.ts +2 -4
- package/dist/dts/Console.d.ts.map +1 -1
- package/dist/dts/Duration.d.ts +5 -0
- package/dist/dts/Duration.d.ts.map +1 -1
- package/dist/dts/Logger.d.ts +15 -0
- package/dist/dts/Logger.d.ts.map +1 -1
- package/dist/dts/PubSub.d.ts +15 -4
- package/dist/dts/PubSub.d.ts.map +1 -1
- package/dist/dts/Random.d.ts +8 -0
- package/dist/dts/Random.d.ts.map +1 -1
- package/dist/dts/RcMap.d.ts +93 -0
- package/dist/dts/RcMap.d.ts.map +1 -0
- package/dist/dts/RcRef.d.ts +83 -0
- package/dist/dts/RcRef.d.ts.map +1 -0
- package/dist/dts/Stream.d.ts +64 -26
- package/dist/dts/Stream.d.ts.map +1 -1
- package/dist/dts/index.d.ts +8 -0
- package/dist/dts/index.d.ts.map +1 -1
- package/dist/dts/internal/core-effect.d.ts.map +1 -1
- package/dist/dts/internal/fiberRuntime.d.ts.map +1 -1
- package/dist/dts/internal/logger.d.ts.map +1 -1
- package/dist/dts/internal/random.d.ts +1 -1
- package/dist/dts/internal/random.d.ts.map +1 -1
- package/dist/dts/internal/rcMap.d.ts +2 -0
- package/dist/dts/internal/rcMap.d.ts.map +1 -0
- package/dist/dts/internal/rcRef.d.ts +2 -0
- package/dist/dts/internal/rcRef.d.ts.map +1 -0
- package/dist/dts/internal/stream.d.ts +1 -0
- package/dist/dts/internal/stream.d.ts.map +1 -1
- package/dist/esm/Cause.js +21 -0
- package/dist/esm/Cause.js.map +1 -1
- package/dist/esm/Channel.js.map +1 -1
- package/dist/esm/Config.js.map +1 -1
- package/dist/esm/Console.js.map +1 -1
- package/dist/esm/Data.js +3 -1
- package/dist/esm/Data.js.map +1 -1
- package/dist/esm/Duration.js +20 -0
- package/dist/esm/Duration.js.map +1 -1
- package/dist/esm/Logger.js +10 -0
- package/dist/esm/Logger.js.map +1 -1
- package/dist/esm/PubSub.js.map +1 -1
- package/dist/esm/Random.js +8 -0
- package/dist/esm/Random.js.map +1 -1
- package/dist/esm/RcMap.js +44 -0
- package/dist/esm/RcMap.js.map +1 -0
- package/dist/esm/RcRef.js +43 -0
- package/dist/esm/RcRef.js.map +1 -0
- package/dist/esm/Stream.js +27 -0
- package/dist/esm/Stream.js.map +1 -1
- package/dist/esm/index.js +8 -0
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/internal/cause.js +21 -5
- package/dist/esm/internal/cause.js.map +1 -1
- package/dist/esm/internal/channel/channelExecutor.js.map +1 -1
- package/dist/esm/internal/channel.js.map +1 -1
- package/dist/esm/internal/core-effect.js +0 -5
- package/dist/esm/internal/core-effect.js.map +1 -1
- package/dist/esm/internal/core.js +11 -7
- package/dist/esm/internal/core.js.map +1 -1
- package/dist/esm/internal/defaultServices.js +1 -1
- package/dist/esm/internal/defaultServices.js.map +1 -1
- package/dist/esm/internal/fiberRuntime.js +2 -0
- package/dist/esm/internal/fiberRuntime.js.map +1 -1
- package/dist/esm/internal/logger.js +126 -26
- package/dist/esm/internal/logger.js.map +1 -1
- package/dist/esm/internal/pubsub.js +216 -36
- package/dist/esm/internal/pubsub.js.map +1 -1
- package/dist/esm/internal/random.js +2 -1
- package/dist/esm/internal/random.js.map +1 -1
- package/dist/esm/internal/rcMap.js +120 -0
- package/dist/esm/internal/rcMap.js.map +1 -0
- package/dist/esm/internal/rcRef.js +112 -0
- package/dist/esm/internal/rcRef.js.map +1 -0
- package/dist/esm/internal/stream.js +53 -8
- package/dist/esm/internal/stream.js.map +1 -1
- package/dist/esm/internal/version.js +1 -1
- package/package.json +17 -1
- package/src/Cause.ts +47 -1
- package/src/Channel.ts +3 -3
- package/src/Config.ts +6 -0
- package/src/Console.ts +2 -4
- package/src/Data.ts +1 -1
- package/src/Duration.ts +18 -0
- package/src/Logger.ts +19 -0
- package/src/PubSub.ts +11 -4
- package/src/Random.ts +9 -0
- package/src/RcMap.ts +103 -0
- package/src/RcRef.ts +91 -0
- package/src/Stream.ts +83 -26
- package/src/index.ts +10 -0
- package/src/internal/cause.ts +26 -5
- package/src/internal/channel/channelExecutor.ts +1 -1
- package/src/internal/channel.ts +4 -3
- package/src/internal/core-effect.ts +0 -5
- package/src/internal/core.ts +19 -9
- package/src/internal/defaultServices.ts +1 -1
- package/src/internal/fiberRuntime.ts +6 -0
- package/src/internal/logger.ts +133 -27
- package/src/internal/pubsub.ts +249 -58
- package/src/internal/random.ts +2 -1
- package/src/internal/rcMap.ts +213 -0
- package/src/internal/rcRef.ts +172 -0
- package/src/internal/stream.ts +325 -111
- package/src/internal/version.ts +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pubsub.js","names":["Chunk","_interopRequireWildcard","require","_Function","MutableQueue","MutableRef","_Number","Option","_Pipeable","core","executionStrategy","fiberRuntime","queue","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","AbsentValue","Symbol","for","addSubscribers","subscription","pollers","subscribers","Set","add","removeSubscribers","delete","size","bounded","requestedCapacity","pipe","sync","makeBoundedPubSub","flatMap","atomicPubSub","makePubSub","BackPressureStrategy","exports","dropping","DroppingStrategy","sliding","SlidingStrategy","unbounded","makeUnboundedPubSub","capacity","self","isFull","isEmpty","shutdown","isShutdown","awaitShutdown","publish","dual","value","publishAll","elements","subscribe","ensureCapacity","BoundedPubSubSingle","nextPow2","BoundedPubSubPow2","BoundedPubSubArb","UnboundedPubSub","makeSubscription","pubsub","strategy","map","deferredMake","deferred","unsafeMakeSubscription","make","shutdownHook","shutdownFlag","SubscriptionImpl","array","publisherIndex","subscriberCount","subscribersIndex","constructor","Array","from","length","index","empty","chunk","fromIterable","available","forPubSub","Math","min","iteratorIndex","publishAllIndex","unsafeGet","drop","slide","BoundedPubSubArbSubscription","subscriberIndex","unsubscribed","max","poll","default_","elem","pollUpTo","toPoll","builder","pollUpToIndex","push","unsubscribe","mask","BoundedPubSubPow2Subscription","pipeArguments","arguments","unsafeHead","BoundedPubSubSingleSubscription","of","publisherHead","next","publisherTail","Number","MAX_SAFE_INTEGER","UnboundedPubSubSubscription","subscriberHead","loop","polled","DequeueTypeId","dequeueVariance","isActive","suspend","interrupt","succeed","unsafeSize","none","some","uninterruptible","withFiberRuntime","state","forEachParUnbounded","unsafePollAllQueue","d","deferredInterruptWith","id","zipRight","unsafeOnPubSubEmptySpace","whenEffect","deferredSucceed","asVoid","deferredAwait","take","message","EmptyMutableQueue","deferredUnsafeMake","offer","unsafeCompletePollers","onInterrupt","unsafeRemove","takeAll","as","unsafePollAllSubscription","takeUpTo","unsafePollN","takeBetween","takeRemainderLoop","acc","bs","remaining","b","appendAll","append","PubSubImpl","scope","EnqueueTypeId","enqueueVariance","close","exitInterrupt","unsafeCompleteSubscribers","handleSurplus","unsafeOffer","surplus","unsafePublishAll","acquire","tap","all","fork","sequential","tuple","addFinalizer","acquireRelease","exit","offerAll","scopeMake","unsafeMakePubSub","Map","InvalidPubSubCapacityException","unsafeCompleteDeferred","deferredUnsafeDone","unsafeOfferAll","POSITIVE_INFINITY","filter","publishers","fiberId","forEachConcurrentDiscard","_","last","void","keepPolling","publisher","published","prepend","unsafeStrategyCompletePollers","unsafeStrategyCompleteSubscribers","iterator","done","_pubsub","_subscribers","_elements","_isShutdown","unsafeSlidingPublish","it","pub","poller","pollResult","pollersSet"],"sources":["../../../src/internal/pubsub.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"pubsub.js","names":["Chunk","_interopRequireWildcard","require","_Function","MutableQueue","MutableRef","_Number","Option","_Pipeable","core","executionStrategy","fiberRuntime","queue","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","AbsentValue","Symbol","for","addSubscribers","subscription","pollers","subscribers","Set","add","removeSubscribers","delete","size","bounded","capacity","suspend","pubsub","makeBoundedPubSub","makePubSub","BackPressureStrategy","exports","dropping","DroppingStrategy","sliding","SlidingStrategy","unbounded","options","makeUnboundedPubSub","self","isFull","isEmpty","shutdown","isShutdown","awaitShutdown","publish","dual","value","publishAll","elements","subscribe","ensureCapacity","replayBuffer","replay","ReplayBuffer","Math","ceil","undefined","BoundedPubSubSingle","nextPow2","BoundedPubSubPow2","BoundedPubSubArb","UnboundedPubSub","makeSubscription","strategy","map","deferredMake","deferred","unsafeMakeSubscription","make","shutdownHook","shutdownFlag","SubscriptionImpl","replayWindow","array","publisherIndex","subscriberCount","subscribersIndex","constructor","Array","from","length","ReplayWindowImpl","emptyReplayWindow","index","offer","offerAll","empty","chunk","fromIterable","available","forPubSub","min","iteratorIndex","publishAllIndex","unsafeGet","drop","slide","BoundedPubSubArbSubscription","subscriberIndex","unsubscribed","max","poll","default_","elem","pollUpTo","toPoll","builder","pollUpToIndex","push","unsubscribe","mask","BoundedPubSubPow2Subscription","pipe","pipeArguments","arguments","unsafeHead","BoundedPubSubSingleSubscription","of","publisherHead","next","publisherTail","Number","MAX_SAFE_INTEGER","UnboundedPubSubSubscription","subscriberHead","loop","polled","DequeueTypeId","dequeueVariance","isActive","interrupt","succeed","remaining","unsafeSize","none","some","uninterruptible","withFiberRuntime","state","forEachParUnbounded","unsafePollAllQueue","d","deferredInterruptWith","id","zipRight","sync","unsafeOnPubSubEmptySpace","whenEffect","deferredSucceed","asVoid","deferredAwait","take","message","EmptyMutableQueue","deferredUnsafeMake","unsafeCompletePollers","onInterrupt","unsafeRemove","takeAll","as","unsafePollAllSubscription","appendAll","takeUpTo","takeN","unsafePollN","takeBetween","takeRemainderLoop","acc","flatMap","bs","b","append","PubSubImpl","scope","EnqueueTypeId","enqueueVariance","close","exitInterrupt","unsafeCompleteSubscribers","handleSurplus","unsafeOffer","surplus","unsafePublishAll","acquire","tap","all","fork","sequential","tuple","addFinalizer","acquireRelease","exit","scopeMake","unsafeMakePubSub","Map","InvalidPubSubCapacityException","unsafeCompleteDeferred","deferredUnsafeDone","unsafeOfferAll","POSITIVE_INFINITY","filter","publishers","fiberId","forEachConcurrentDiscard","_","last","void","keepPolling","publisher","published","prepend","unsafeStrategyCompletePollers","unsafeStrategyCompleteSubscribers","iterator","done","_pubsub","_subscribers","_elements","_isShutdown","unsafeSlidingPublish","it","pub","poller","pollResult","pollersSet","head","tail","buffer","fastForward","len","items","unsafeFromArray"],"sources":["../../../src/internal/pubsub.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -7,6 +7,7 @@ exports.randomTag = exports.make = exports.RandomTypeId = void 0;
|
|
|
7
7
|
var Chunk = _interopRequireWildcard(require("../Chunk.js"));
|
|
8
8
|
var Context = _interopRequireWildcard(require("../Context.js"));
|
|
9
9
|
var _Function = require("../Function.js");
|
|
10
|
+
var Hash = _interopRequireWildcard(require("../Hash.js"));
|
|
10
11
|
var PCGRandom = _interopRequireWildcard(require("../Utils.js"));
|
|
11
12
|
var core = _interopRequireWildcard(require("./core.js"));
|
|
12
13
|
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
@@ -60,6 +61,6 @@ const swap = (buffer, index1, index2) => {
|
|
|
60
61
|
buffer[index2] = tmp;
|
|
61
62
|
return buffer;
|
|
62
63
|
};
|
|
63
|
-
const make = seed => new RandomImpl(seed);
|
|
64
|
+
const make = seed => new RandomImpl(Hash.hash(seed));
|
|
64
65
|
exports.make = make;
|
|
65
66
|
//# sourceMappingURL=random.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"random.js","names":["Chunk","_interopRequireWildcard","require","Context","_Function","PCGRandom","core","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","RandomSymbolKey","RandomTypeId","exports","Symbol","for","randomTag","GenericTag","RandomImpl","seed","PRNG","constructor","next","sync","number","nextBoolean","map","nextInt","integer","Number","MAX_SAFE_INTEGER","nextRange","min","max","nextIntBetween","shuffle","elements","shuffleWith","nextIntBounded","suspend","pipe","Array","from","flatMap","buffer","numbers","length","push","forEachSequentialDiscard","k","swap","as","fromIterable","index1","index2","tmp","make"],"sources":["../../../src/internal/random.ts"],"sourcesContent":[null],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,uBAAA,CAAAC,OAAA;AACA,IAAAC,OAAA,GAAAF,uBAAA,CAAAC,OAAA;AAEA,IAAAE,SAAA,GAAAF,OAAA;
|
|
1
|
+
{"version":3,"file":"random.js","names":["Chunk","_interopRequireWildcard","require","Context","_Function","Hash","PCGRandom","core","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","RandomSymbolKey","RandomTypeId","exports","Symbol","for","randomTag","GenericTag","RandomImpl","seed","PRNG","constructor","next","sync","number","nextBoolean","map","nextInt","integer","Number","MAX_SAFE_INTEGER","nextRange","min","max","nextIntBetween","shuffle","elements","shuffleWith","nextIntBounded","suspend","pipe","Array","from","flatMap","buffer","numbers","length","push","forEachSequentialDiscard","k","swap","as","fromIterable","index1","index2","tmp","make","hash"],"sources":["../../../src/internal/random.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.make = exports.get = exports.TypeId = void 0;
|
|
7
|
+
var Context = _interopRequireWildcard(require("../Context.js"));
|
|
8
|
+
var Duration = _interopRequireWildcard(require("../Duration.js"));
|
|
9
|
+
var _Function = require("../Function.js");
|
|
10
|
+
var MutableHashMap = _interopRequireWildcard(require("../MutableHashMap.js"));
|
|
11
|
+
var _Pipeable = require("../Pipeable.js");
|
|
12
|
+
var coreEffect = _interopRequireWildcard(require("./core-effect.js"));
|
|
13
|
+
var core = _interopRequireWildcard(require("./core.js"));
|
|
14
|
+
var circular = _interopRequireWildcard(require("./effect/circular.js"));
|
|
15
|
+
var fiberRuntime = _interopRequireWildcard(require("./fiberRuntime.js"));
|
|
16
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
18
|
+
/** @internal */
|
|
19
|
+
const TypeId = exports.TypeId = /*#__PURE__*/Symbol.for("effect/RcMap");
|
|
20
|
+
const variance = {
|
|
21
|
+
_K: _Function.identity,
|
|
22
|
+
_A: _Function.identity,
|
|
23
|
+
_E: _Function.identity
|
|
24
|
+
};
|
|
25
|
+
class RcMapImpl {
|
|
26
|
+
lookup;
|
|
27
|
+
context;
|
|
28
|
+
scope;
|
|
29
|
+
idleTimeToLive;
|
|
30
|
+
capacity;
|
|
31
|
+
[TypeId];
|
|
32
|
+
state = {
|
|
33
|
+
_tag: "Open",
|
|
34
|
+
map: MutableHashMap.empty()
|
|
35
|
+
};
|
|
36
|
+
semaphore = circular.unsafeMakeSemaphore(1);
|
|
37
|
+
constructor(lookup, context, scope, idleTimeToLive, capacity) {
|
|
38
|
+
this.lookup = lookup;
|
|
39
|
+
this.context = context;
|
|
40
|
+
this.scope = scope;
|
|
41
|
+
this.idleTimeToLive = idleTimeToLive;
|
|
42
|
+
this.capacity = capacity;
|
|
43
|
+
this[TypeId] = variance;
|
|
44
|
+
}
|
|
45
|
+
pipe() {
|
|
46
|
+
return (0, _Pipeable.pipeArguments)(this, arguments);
|
|
47
|
+
}
|
|
48
|
+
}
|
|
49
|
+
/** @internal */
|
|
50
|
+
const make = options => core.withFiberRuntime(fiber => {
|
|
51
|
+
const context = fiber.getFiberRef(core.currentContext);
|
|
52
|
+
const scope = Context.get(context, fiberRuntime.scopeTag);
|
|
53
|
+
const self = new RcMapImpl(options.lookup, context, scope, options.idleTimeToLive ? Duration.decode(options.idleTimeToLive) : undefined, Math.max(options.capacity ?? Number.POSITIVE_INFINITY, 0));
|
|
54
|
+
return core.as(scope.addFinalizer(() => core.suspend(() => {
|
|
55
|
+
if (self.state._tag === "Closed") {
|
|
56
|
+
return core.void;
|
|
57
|
+
}
|
|
58
|
+
const map = self.state.map;
|
|
59
|
+
self.state = {
|
|
60
|
+
_tag: "Closed"
|
|
61
|
+
};
|
|
62
|
+
return core.forEachSequentialDiscard(map, ([, entry]) => core.scopeClose(entry.scope, core.exitVoid)).pipe(core.tap(() => {
|
|
63
|
+
MutableHashMap.clear(map);
|
|
64
|
+
}), self.semaphore.withPermits(1));
|
|
65
|
+
})), self);
|
|
66
|
+
});
|
|
67
|
+
/** @internal */
|
|
68
|
+
exports.make = make;
|
|
69
|
+
const get = exports.get = /*#__PURE__*/(0, _Function.dual)(2, (self_, key) => {
|
|
70
|
+
const self = self_;
|
|
71
|
+
return core.uninterruptibleMask(restore => core.suspend(() => {
|
|
72
|
+
if (self.state._tag === "Closed") {
|
|
73
|
+
return core.interrupt;
|
|
74
|
+
}
|
|
75
|
+
const state = self.state;
|
|
76
|
+
const o = MutableHashMap.get(state.map, key);
|
|
77
|
+
if (o._tag === "Some") {
|
|
78
|
+
const entry = o.value;
|
|
79
|
+
entry.refCount++;
|
|
80
|
+
return entry.fiber ? core.as(core.interruptFiber(entry.fiber), entry) : core.succeed(entry);
|
|
81
|
+
} else if (Number.isFinite(self.capacity) && MutableHashMap.size(self.state.map) >= self.capacity) {
|
|
82
|
+
return core.fail(new core.ExceededCapacityException(`RcMap attempted to exceed capacity of ${self.capacity}`));
|
|
83
|
+
}
|
|
84
|
+
const acquire = self.lookup(key);
|
|
85
|
+
return fiberRuntime.scopeMake().pipe(coreEffect.bindTo("scope"), coreEffect.bind("deferred", () => core.deferredMake()), core.tap(({
|
|
86
|
+
deferred,
|
|
87
|
+
scope
|
|
88
|
+
}) => restore(core.fiberRefLocally(acquire, core.currentContext, Context.add(self.context, fiberRuntime.scopeTag, scope))).pipe(core.exit, core.flatMap(exit => core.deferredDone(deferred, exit)), circular.forkIn(scope))), core.map(({
|
|
89
|
+
deferred,
|
|
90
|
+
scope
|
|
91
|
+
}) => {
|
|
92
|
+
const entry = {
|
|
93
|
+
deferred,
|
|
94
|
+
scope,
|
|
95
|
+
fiber: undefined,
|
|
96
|
+
refCount: 1
|
|
97
|
+
};
|
|
98
|
+
MutableHashMap.set(state.map, key, entry);
|
|
99
|
+
return entry;
|
|
100
|
+
}));
|
|
101
|
+
}).pipe(self.semaphore.withPermits(1), coreEffect.bindTo("entry"), coreEffect.bind("scope", () => fiberRuntime.scopeTag), core.tap(({
|
|
102
|
+
entry,
|
|
103
|
+
scope
|
|
104
|
+
}) => scope.addFinalizer(() => core.suspend(() => {
|
|
105
|
+
entry.refCount--;
|
|
106
|
+
if (entry.refCount > 0) {
|
|
107
|
+
return core.void;
|
|
108
|
+
} else if (self.idleTimeToLive === undefined) {
|
|
109
|
+
if (self.state._tag === "Open") {
|
|
110
|
+
MutableHashMap.remove(self.state.map, key);
|
|
111
|
+
}
|
|
112
|
+
return core.scopeClose(entry.scope, core.exitVoid);
|
|
113
|
+
}
|
|
114
|
+
return coreEffect.sleep(self.idleTimeToLive).pipe(core.interruptible, core.zipRight(core.suspend(() => {
|
|
115
|
+
if (self.state._tag === "Open" && entry.refCount === 0) {
|
|
116
|
+
MutableHashMap.remove(self.state.map, key);
|
|
117
|
+
return core.scopeClose(entry.scope, core.exitVoid);
|
|
118
|
+
}
|
|
119
|
+
return core.void;
|
|
120
|
+
})), fiberRuntime.ensuring(core.sync(() => {
|
|
121
|
+
entry.fiber = undefined;
|
|
122
|
+
})), circular.forkIn(self.scope), core.tap(fiber => {
|
|
123
|
+
entry.fiber = fiber;
|
|
124
|
+
}), self.semaphore.withPermits(1));
|
|
125
|
+
}))), core.flatMap(({
|
|
126
|
+
entry
|
|
127
|
+
}) => restore(core.deferredAwait(entry.deferred)))));
|
|
128
|
+
});
|
|
129
|
+
//# sourceMappingURL=rcMap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rcMap.js","names":["Context","_interopRequireWildcard","require","Duration","_Function","MutableHashMap","_Pipeable","coreEffect","core","circular","fiberRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","variance","_K","identity","_A","_E","RcMapImpl","lookup","context","scope","idleTimeToLive","capacity","state","_tag","map","empty","semaphore","unsafeMakeSemaphore","constructor","pipe","pipeArguments","arguments","make","options","withFiberRuntime","fiber","getFiberRef","currentContext","scopeTag","self","decode","undefined","Math","max","Number","POSITIVE_INFINITY","as","addFinalizer","suspend","void","forEachSequentialDiscard","entry","scopeClose","exitVoid","tap","clear","withPermits","dual","self_","key","uninterruptibleMask","restore","interrupt","o","value","refCount","interruptFiber","succeed","isFinite","size","fail","ExceededCapacityException","acquire","scopeMake","bindTo","bind","deferredMake","deferred","fiberRefLocally","add","exit","flatMap","deferredDone","forkIn","remove","sleep","interruptible","zipRight","ensuring","sync","deferredAwait"],"sources":["../../../src/internal/rcMap.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,122 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.make = exports.get = exports.TypeId = void 0;
|
|
7
|
+
var Context = _interopRequireWildcard(require("../Context.js"));
|
|
8
|
+
var Duration = _interopRequireWildcard(require("../Duration.js"));
|
|
9
|
+
var _Function = require("../Function.js");
|
|
10
|
+
var _Pipeable = require("../Pipeable.js");
|
|
11
|
+
var coreEffect = _interopRequireWildcard(require("./core-effect.js"));
|
|
12
|
+
var core = _interopRequireWildcard(require("./core.js"));
|
|
13
|
+
var circular = _interopRequireWildcard(require("./effect/circular.js"));
|
|
14
|
+
var fiberRuntime = _interopRequireWildcard(require("./fiberRuntime.js"));
|
|
15
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function (e) { return e ? t : r; })(e); }
|
|
16
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != typeof e && "function" != typeof e) return { default: e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n.default = e, t && t.set(e, n), n; }
|
|
17
|
+
/** @internal */
|
|
18
|
+
const TypeId = exports.TypeId = /*#__PURE__*/Symbol.for("effect/RcRef");
|
|
19
|
+
const stateEmpty = {
|
|
20
|
+
_tag: "Empty"
|
|
21
|
+
};
|
|
22
|
+
const stateClosed = {
|
|
23
|
+
_tag: "Closed"
|
|
24
|
+
};
|
|
25
|
+
const variance = {
|
|
26
|
+
_A: _Function.identity,
|
|
27
|
+
_E: _Function.identity
|
|
28
|
+
};
|
|
29
|
+
class RcRefImpl {
|
|
30
|
+
acquire;
|
|
31
|
+
context;
|
|
32
|
+
scope;
|
|
33
|
+
idleTimeToLive;
|
|
34
|
+
[TypeId];
|
|
35
|
+
state = stateEmpty;
|
|
36
|
+
semaphore = circular.unsafeMakeSemaphore(1);
|
|
37
|
+
constructor(acquire, context, scope, idleTimeToLive) {
|
|
38
|
+
this.acquire = acquire;
|
|
39
|
+
this.context = context;
|
|
40
|
+
this.scope = scope;
|
|
41
|
+
this.idleTimeToLive = idleTimeToLive;
|
|
42
|
+
this[TypeId] = variance;
|
|
43
|
+
}
|
|
44
|
+
pipe() {
|
|
45
|
+
return (0, _Pipeable.pipeArguments)(this, arguments);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
/** @internal */
|
|
49
|
+
const make = options => core.withFiberRuntime(fiber => {
|
|
50
|
+
const context = fiber.getFiberRef(core.currentContext);
|
|
51
|
+
const scope = Context.get(context, fiberRuntime.scopeTag);
|
|
52
|
+
const ref = new RcRefImpl(options.acquire, context, scope, options.idleTimeToLive ? Duration.decode(options.idleTimeToLive) : undefined);
|
|
53
|
+
return core.as(scope.addFinalizer(() => ref.semaphore.withPermits(1)(core.suspend(() => {
|
|
54
|
+
const close = ref.state._tag === "Acquired" ? core.scopeClose(ref.state.scope, core.exitVoid) : core.void;
|
|
55
|
+
ref.state = stateClosed;
|
|
56
|
+
return close;
|
|
57
|
+
}))), ref);
|
|
58
|
+
});
|
|
59
|
+
/** @internal */
|
|
60
|
+
exports.make = make;
|
|
61
|
+
const get = self_ => {
|
|
62
|
+
const self = self_;
|
|
63
|
+
return core.uninterruptibleMask(restore => core.suspend(() => {
|
|
64
|
+
switch (self.state._tag) {
|
|
65
|
+
case "Closed":
|
|
66
|
+
{
|
|
67
|
+
return core.interrupt;
|
|
68
|
+
}
|
|
69
|
+
case "Acquired":
|
|
70
|
+
{
|
|
71
|
+
self.state.refCount++;
|
|
72
|
+
return self.state.fiber ? core.as(core.interruptFiber(self.state.fiber), self.state) : core.succeed(self.state);
|
|
73
|
+
}
|
|
74
|
+
case "Empty":
|
|
75
|
+
{
|
|
76
|
+
return fiberRuntime.scopeMake().pipe(coreEffect.bindTo("scope"), coreEffect.bind("value", ({
|
|
77
|
+
scope
|
|
78
|
+
}) => restore(core.fiberRefLocally(self.acquire, core.currentContext, Context.add(self.context, fiberRuntime.scopeTag, scope)))), core.map(({
|
|
79
|
+
scope,
|
|
80
|
+
value
|
|
81
|
+
}) => {
|
|
82
|
+
const state = {
|
|
83
|
+
_tag: "Acquired",
|
|
84
|
+
value,
|
|
85
|
+
scope,
|
|
86
|
+
fiber: undefined,
|
|
87
|
+
refCount: 1
|
|
88
|
+
};
|
|
89
|
+
self.state = state;
|
|
90
|
+
return state;
|
|
91
|
+
}));
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
})).pipe(self.semaphore.withPermits(1), coreEffect.bindTo("state"), coreEffect.bind("scope", () => fiberRuntime.scopeTag), core.tap(({
|
|
95
|
+
scope,
|
|
96
|
+
state
|
|
97
|
+
}) => scope.addFinalizer(() => core.suspend(() => {
|
|
98
|
+
state.refCount--;
|
|
99
|
+
if (state.refCount > 0) {
|
|
100
|
+
return core.void;
|
|
101
|
+
}
|
|
102
|
+
if (self.idleTimeToLive === undefined) {
|
|
103
|
+
self.state = stateEmpty;
|
|
104
|
+
return core.scopeClose(state.scope, core.exitVoid);
|
|
105
|
+
}
|
|
106
|
+
return coreEffect.sleep(self.idleTimeToLive).pipe(core.interruptible, core.zipRight(core.suspend(() => {
|
|
107
|
+
if (self.state._tag === "Acquired" && self.state.refCount === 0) {
|
|
108
|
+
self.state = stateEmpty;
|
|
109
|
+
return core.scopeClose(state.scope, core.exitVoid);
|
|
110
|
+
}
|
|
111
|
+
return core.void;
|
|
112
|
+
})), fiberRuntime.ensuring(core.sync(() => {
|
|
113
|
+
state.fiber = undefined;
|
|
114
|
+
})), circular.forkIn(self.scope), core.tap(fiber => {
|
|
115
|
+
state.fiber = fiber;
|
|
116
|
+
}), self.semaphore.withPermits(1));
|
|
117
|
+
}))), core.map(({
|
|
118
|
+
state
|
|
119
|
+
}) => state.value));
|
|
120
|
+
};
|
|
121
|
+
exports.get = get;
|
|
122
|
+
//# sourceMappingURL=rcRef.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"rcRef.js","names":["Context","_interopRequireWildcard","require","Duration","_Function","_Pipeable","coreEffect","core","circular","fiberRuntime","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","default","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypeId","exports","Symbol","for","stateEmpty","_tag","stateClosed","variance","_A","identity","_E","RcRefImpl","acquire","context","scope","idleTimeToLive","state","semaphore","unsafeMakeSemaphore","constructor","pipe","pipeArguments","arguments","make","options","withFiberRuntime","fiber","getFiberRef","currentContext","scopeTag","ref","decode","undefined","as","addFinalizer","withPermits","suspend","close","scopeClose","exitVoid","void","self_","self","uninterruptibleMask","restore","interrupt","refCount","interruptFiber","succeed","scopeMake","bindTo","bind","fiberRefLocally","add","map","value","tap","sleep","interruptible","zipRight","ensuring","sync","forkIn"],"sources":["../../../src/internal/rcRef.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|