effect 2.4.2 → 2.4.3

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.
Files changed (38) hide show
  1. package/ManagedRuntime/package.json +6 -0
  2. package/dist/cjs/Layer.js +9 -1
  3. package/dist/cjs/Layer.js.map +1 -1
  4. package/dist/cjs/ManagedRuntime.js +58 -0
  5. package/dist/cjs/ManagedRuntime.js.map +1 -0
  6. package/dist/cjs/index.js +4 -2
  7. package/dist/cjs/index.js.map +1 -1
  8. package/dist/cjs/internal/layer.js +7 -4
  9. package/dist/cjs/internal/layer.js.map +1 -1
  10. package/dist/cjs/internal/managedRuntime.js +94 -0
  11. package/dist/cjs/internal/managedRuntime.js.map +1 -0
  12. package/dist/cjs/internal/version.js +1 -1
  13. package/dist/dts/Layer.d.ts +11 -0
  14. package/dist/dts/Layer.d.ts.map +1 -1
  15. package/dist/dts/ManagedRuntime.d.ts +96 -0
  16. package/dist/dts/ManagedRuntime.d.ts.map +1 -0
  17. package/dist/dts/index.d.ts +4 -0
  18. package/dist/dts/index.d.ts.map +1 -1
  19. package/dist/dts/internal/managedRuntime.d.ts +2 -0
  20. package/dist/dts/internal/managedRuntime.d.ts.map +1 -0
  21. package/dist/esm/Layer.js +8 -0
  22. package/dist/esm/Layer.js.map +1 -1
  23. package/dist/esm/ManagedRuntime.js +27 -0
  24. package/dist/esm/ManagedRuntime.js.map +1 -0
  25. package/dist/esm/index.js +4 -0
  26. package/dist/esm/index.js.map +1 -1
  27. package/dist/esm/internal/layer.js +5 -3
  28. package/dist/esm/internal/layer.js.map +1 -1
  29. package/dist/esm/internal/managedRuntime.js +62 -0
  30. package/dist/esm/internal/managedRuntime.js.map +1 -0
  31. package/dist/esm/internal/version.js +1 -1
  32. package/package.json +9 -1
  33. package/src/Layer.ts +17 -0
  34. package/src/ManagedRuntime.ts +115 -0
  35. package/src/index.ts +5 -0
  36. package/src/internal/layer.ts +25 -4
  37. package/src/internal/managedRuntime.ts +111 -0
  38. package/src/internal/version.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"layer.js","names":["Cause","Clock","Context","Duration","FiberRefsPatch","dual","pipe","pipeArguments","hasProperty","ScheduleDecision","Intervals","Scope","effect","core","circular","fiberRuntime","EffectOpCodes","OpCodes","ref","runtime","runtimeFlags","synchronized","tracer","LayerSymbolKey","LayerTypeId","Symbol","for","layerVariance","_RIn","_","_E","_ROut","proto","arguments","MemoMapTypeIdKey","MemoMapTypeId","isLayer","u","isFresh","self","_tag","OP_FRESH","MemoMapImpl","constructor","getOrElseMemoize","layer","scope","modifyEffect","map","inMap","get","undefined","acquire","release","cached","flatMap","patch","b","patchFiberRefs","as","onExit","exitMatch","onFailure","unit","onSuccess","scopeAddFinalizerExit","succeed","make","observers","deferredMake","deferred","finalizerRef","resource","uninterruptibleMask","restore","scopeMake","innerScope","makeBuilder","f","diffFiberRefs","exit","OP_FAILURE","deferredFailCause","i0","zipRight","scopeClose","failCause","OP_SUCCESS","set","whenEffect","modify","n","asUnit","update","sync","delete","finalizer","deferredSucceed","memoized","deferredAwait","exitMatchEffect","flatten","makeMemoMap","suspend","makeSynchronized","Map","build","scopeWith","buildWithScope","memoMap","run","buildWithMemoMap","inMemoMap","op","matchCauseEffect","cause","failureK","value","successK","first","env","second","provideContext","scopeExtend","evaluate","zipWith","zipK","zipWithOptions","concurrent","catchAll","match","succeedContext","catchAllCause","matchCause","die","defect","dieSync","failCauseSync","discard","empty","context","fromEffectContext","extendScope","Object","create","OP_EXTEND_SCOPE","fail","error","failSync","tag","fresh","fromEffect","a","tagFirst","isTag","service","fromEffectDiscard","OP_FROM_EFFECT","fiberRefLocally","locallyEffect","locally","fiberRefLocallyWith","fiberRefLocallyScoped","scopedDiscard","fiberRefLocallyScopedWith","fromFunction","tagA","tagB","launch","scopedEffect","never","mapError","fold","OP_FOLD","failureOrCause","left","right","memoize","merge","that","mergeAll","layers","final","i","length","orDie","orElse","passthrough","project","unsafeGet","retry","schedule","stateTag","GenericTag","state","initial","retryLoop","retryUpdate","currentTimeMillis","now","step","decision","isDone","sleep","millis","start","intervals","scoped","scopedContext","OP_SCOPED","acquireRelease","close","OP_SUSPEND","syncContext","tap","tapError","e","tapErrorCause","toRuntime","provide","provideTo","OP_PROVIDE","OP_PROVIDE_MERGE","enumerable","provideMerge","OP_ZIP_WITH","unwrapEffect","unwrapScoped","withSpan","args","name","options","onEnd","makeSpanScoped","span","addFinalizer","withParentSpan","spanTag","provideSomeLayer","acquireUseRelease","provideSomeContext","provideSomeRuntime","rt","patchRefs","diff","defaultRuntime","fiberRefs","patchFlags","withFiberRuntime","fiber","oldRefs","getFiberRefs","newRefs","id","oldFlags","_runtimeFlags","newFlags","rollbackRefs","rollbackFlags","setFiberRefs","ensuring","effect_provide","source","isContext"],"sources":["../../../src/internal/layer.ts"],"sourcesContent":[null],"mappings":"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"}
1
+ {"version":3,"file":"layer.js","names":["Cause","Clock","Context","Duration","FiberRefsPatch","dual","pipe","pipeArguments","hasProperty","ScheduleDecision","Intervals","Scope","effect","core","circular","fiberRuntime","EffectOpCodes","OpCodes","ref","runtime","runtimeFlags","synchronized","tracer","LayerSymbolKey","LayerTypeId","Symbol","for","layerVariance","_RIn","_","_E","_ROut","proto","arguments","MemoMapTypeIdKey","MemoMapTypeId","isLayer","u","isFresh","self","_tag","OP_FRESH","MemoMapImpl","constructor","getOrElseMemoize","layer","scope","modifyEffect","map","inMap","get","undefined","acquire","release","cached","flatMap","patch","b","patchFiberRefs","as","onExit","exitMatch","onFailure","unit","onSuccess","scopeAddFinalizerExit","succeed","make","observers","deferredMake","deferred","finalizerRef","resource","uninterruptibleMask","restore","scopeMake","innerScope","makeBuilder","f","diffFiberRefs","exit","OP_FAILURE","deferredFailCause","i0","zipRight","scopeClose","failCause","OP_SUCCESS","set","whenEffect","modify","n","asUnit","update","sync","delete","finalizer","deferredSucceed","memoized","deferredAwait","exitMatchEffect","flatten","makeMemoMap","suspend","makeSynchronized","Map","unsafeMakeMemoMap","unsafeMakeSynchronized","build","scopeWith","buildWithScope","memoMap","run","buildWithMemoMap","inMemoMap","op","matchCauseEffect","cause","failureK","value","successK","first","env","second","provideContext","scopeExtend","evaluate","zipWith","zipK","zipWithOptions","concurrent","catchAll","match","succeedContext","catchAllCause","matchCause","die","defect","dieSync","failCauseSync","discard","empty","context","fromEffectContext","extendScope","Object","create","OP_EXTEND_SCOPE","fail","error","failSync","tag","fresh","fromEffect","a","tagFirst","isTag","service","fromEffectDiscard","OP_FROM_EFFECT","fiberRefLocally","locallyEffect","locally","fiberRefLocallyWith","fiberRefLocallyScoped","scopedDiscard","fiberRefLocallyScopedWith","fromFunction","tagA","tagB","launch","scopedEffect","never","mapError","fold","OP_FOLD","failureOrCause","left","right","memoize","merge","that","mergeAll","layers","final","i","length","orDie","orElse","passthrough","project","unsafeGet","retry","schedule","stateTag","GenericTag","state","initial","retryLoop","retryUpdate","currentTimeMillis","now","step","decision","isDone","sleep","millis","start","intervals","scoped","scopedContext","OP_SCOPED","acquireRelease","close","OP_SUSPEND","syncContext","tap","tapError","e","tapErrorCause","toRuntime","toRuntimeWithMemoMap","provide","provideTo","OP_PROVIDE","OP_PROVIDE_MERGE","enumerable","provideMerge","OP_ZIP_WITH","unwrapEffect","unwrapScoped","withSpan","args","name","options","onEnd","makeSpanScoped","span","addFinalizer","withParentSpan","spanTag","provideSomeLayer","acquireUseRelease","provideSomeContext","provideSomeRuntime","rt","patchRefs","diff","defaultRuntime","fiberRefs","patchFlags","withFiberRuntime","fiber","oldRefs","getFiberRefs","newRefs","id","oldFlags","_runtimeFlags","newFlags","rollbackRefs","rollbackFlags","setFiberRefs","ensuring","effect_provide","source","isContext"],"sources":["../../../src/internal/layer.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -0,0 +1,62 @@
1
+ import { pipeArguments } from "../Pipeable.js";
2
+ import * as Scope from "../Scope.js";
3
+ import * as effect from "./core-effect.js";
4
+ import * as core from "./core.js";
5
+ import * as fiberRuntime from "./fiberRuntime.js";
6
+ import * as internalLayer from "./layer.js";
7
+ import * as internalRuntime from "./runtime.js";
8
+ function provide(managed, effect) {
9
+ return core.flatMap(managed.runtimeEffect, rt => core.withFiberRuntime(fiber => {
10
+ fiber.setFiberRefs(rt.fiberRefs);
11
+ fiber._runtimeFlags = rt.runtimeFlags;
12
+ return core.provideContext(effect, rt.context);
13
+ }));
14
+ }
15
+ /** @internal */
16
+ export const make = (layer, memoMap) => {
17
+ memoMap = memoMap ?? internalLayer.unsafeMakeMemoMap();
18
+ const scope = internalRuntime.unsafeRunSyncEffect(fiberRuntime.scopeMake());
19
+ const self = {
20
+ memoMap,
21
+ scope,
22
+ runtimeEffect: internalRuntime.unsafeRunSyncEffect(effect.memoize(core.tap(Scope.extend(internalLayer.toRuntimeWithMemoMap(layer, memoMap), scope), rt => {
23
+ self.cachedRuntime = rt;
24
+ }))),
25
+ cachedRuntime: undefined,
26
+ pipe() {
27
+ return pipeArguments(this, arguments);
28
+ },
29
+ runtime() {
30
+ return self.cachedRuntime === undefined ? internalRuntime.unsafeRunPromiseEffect(self.runtimeEffect) : Promise.resolve(self.cachedRuntime);
31
+ },
32
+ dispose() {
33
+ return internalRuntime.unsafeRunPromiseEffect(self.disposeEffect);
34
+ },
35
+ disposeEffect: core.suspend(() => {
36
+ ;
37
+ self.runtime = core.die("ManagedRuntime disposed");
38
+ self.cachedRuntime = undefined;
39
+ return Scope.close(self.scope, core.exitUnit);
40
+ }),
41
+ runFork(effect, options) {
42
+ return self.cachedRuntime === undefined ? internalRuntime.unsafeForkEffect(provide(self, effect), options) : internalRuntime.unsafeFork(self.cachedRuntime)(effect, options);
43
+ },
44
+ runSyncExit(effect) {
45
+ return self.cachedRuntime === undefined ? internalRuntime.unsafeRunSyncExitEffect(provide(self, effect)) : internalRuntime.unsafeRunSyncExit(self.cachedRuntime)(effect);
46
+ },
47
+ runSync(effect) {
48
+ return self.cachedRuntime === undefined ? internalRuntime.unsafeRunSyncEffect(provide(self, effect)) : internalRuntime.unsafeRunSync(self.cachedRuntime)(effect);
49
+ },
50
+ runPromiseExit(effect) {
51
+ return self.cachedRuntime === undefined ? internalRuntime.unsafeRunPromiseExitEffect(provide(self, effect)) : internalRuntime.unsafeRunPromiseExit(self.cachedRuntime)(effect);
52
+ },
53
+ runCallback(effect, options) {
54
+ return self.cachedRuntime === undefined ? internalRuntime.unsafeRunCallback(internalRuntime.defaultRuntime)(provide(self, effect), options) : internalRuntime.unsafeRunCallback(self.cachedRuntime)(effect, options);
55
+ },
56
+ runPromise(effect) {
57
+ return self.cachedRuntime === undefined ? internalRuntime.unsafeRunPromiseEffect(provide(self, effect)) : internalRuntime.unsafeRunPromise(self.cachedRuntime)(effect);
58
+ }
59
+ };
60
+ return self;
61
+ };
62
+ //# sourceMappingURL=managedRuntime.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"managedRuntime.js","names":["pipeArguments","Scope","effect","core","fiberRuntime","internalLayer","internalRuntime","provide","managed","flatMap","runtimeEffect","rt","withFiberRuntime","fiber","setFiberRefs","fiberRefs","_runtimeFlags","runtimeFlags","provideContext","context","make","layer","memoMap","unsafeMakeMemoMap","scope","unsafeRunSyncEffect","scopeMake","self","memoize","tap","extend","toRuntimeWithMemoMap","cachedRuntime","undefined","pipe","arguments","runtime","unsafeRunPromiseEffect","Promise","resolve","dispose","disposeEffect","suspend","die","close","exitUnit","runFork","options","unsafeForkEffect","unsafeFork","runSyncExit","unsafeRunSyncExitEffect","unsafeRunSyncExit","runSync","unsafeRunSync","runPromiseExit","unsafeRunPromiseExitEffect","unsafeRunPromiseExit","runCallback","unsafeRunCallback","defaultRuntime","runPromise","unsafeRunPromise"],"sources":["../../../src/internal/managedRuntime.ts"],"sourcesContent":[null],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- let moduleVersion = "2.4.2";
1
+ let moduleVersion = "2.4.3";
2
2
  export const getCurrentVersion = () => moduleVersion;
3
3
  export const setCurrentVersion = version => {
4
4
  moduleVersion = version;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "effect",
3
- "version": "2.4.2",
3
+ "version": "2.4.3",
4
4
  "description": "The missing standard library for TypeScript, for writing production-grade software.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -279,6 +279,11 @@
279
279
  "import": "./dist/esm/Logger.js",
280
280
  "default": "./dist/cjs/Logger.js"
281
281
  },
282
+ "./ManagedRuntime": {
283
+ "types": "./dist/dts/ManagedRuntime.d.ts",
284
+ "import": "./dist/esm/ManagedRuntime.js",
285
+ "default": "./dist/cjs/ManagedRuntime.js"
286
+ },
282
287
  "./Match": {
283
288
  "types": "./dist/dts/Match.d.ts",
284
289
  "import": "./dist/esm/Match.js",
@@ -928,6 +933,9 @@
928
933
  "Logger": [
929
934
  "./dist/dts/Logger.d.ts"
930
935
  ],
936
+ "ManagedRuntime": [
937
+ "./dist/dts/ManagedRuntime.d.ts"
938
+ ],
931
939
  "Match": [
932
940
  "./dist/dts/Match.d.ts"
933
941
  ],
package/src/Layer.ts CHANGED
@@ -784,6 +784,23 @@ export const toRuntime: <RIn, E, ROut>(
784
784
  self: Layer<ROut, E, RIn>
785
785
  ) => Effect.Effect<Runtime.Runtime<ROut>, E, Scope.Scope | RIn> = internal.toRuntime
786
786
 
787
+ /**
788
+ * Converts a layer that requires no services into a scoped runtime, which can
789
+ * be used to execute effects.
790
+ *
791
+ * @since 2.0.0
792
+ * @category conversions
793
+ */
794
+ export const toRuntimeWithMemoMap: {
795
+ (
796
+ memoMap: MemoMap
797
+ ): <RIn, E, ROut>(self: Layer<ROut, E, RIn>) => Effect.Effect<Runtime.Runtime<ROut>, E, Scope.Scope | RIn>
798
+ <RIn, E, ROut>(
799
+ self: Layer<ROut, E, RIn>,
800
+ memoMap: MemoMap
801
+ ): Effect.Effect<Runtime.Runtime<ROut>, E, Scope.Scope | RIn>
802
+ } = internal.toRuntimeWithMemoMap
803
+
787
804
  /**
788
805
  * Feeds the output services of this builder into the input of the specified
789
806
  * builder, resulting in a new builder with the inputs of this builder as
@@ -0,0 +1,115 @@
1
+ /**
2
+ * @since 2.0.0
3
+ */
4
+ import type * as Effect from "./Effect.js"
5
+ import type * as Exit from "./Exit.js"
6
+ import type * as Fiber from "./Fiber.js"
7
+ import * as internal from "./internal/managedRuntime.js"
8
+ import type * as Layer from "./Layer.js"
9
+ import type { Pipeable } from "./Pipeable.js"
10
+ import type * as Runtime from "./Runtime.js"
11
+
12
+ /**
13
+ * @since 2.0.0
14
+ * @category models
15
+ */
16
+ export interface ManagedRuntime<in R, out ER> extends Pipeable {
17
+ readonly memoMap: Layer.MemoMap
18
+ readonly runtimeEffect: Effect.Effect<Runtime.Runtime<R>, ER>
19
+ readonly runtime: () => Promise<Runtime.Runtime<R>>
20
+
21
+ /**
22
+ * Executes the effect using the provided Scheduler or using the global
23
+ * Scheduler if not provided
24
+ */
25
+ readonly runFork: <A, E>(
26
+ self: Effect.Effect<A, E, R>,
27
+ options?: Runtime.RunForkOptions
28
+ ) => Fiber.RuntimeFiber<A, E | ER>
29
+
30
+ /**
31
+ * Executes the effect synchronously returning the exit.
32
+ *
33
+ * This method is effectful and should only be invoked at the edges of your
34
+ * program.
35
+ */
36
+ readonly runSyncExit: <A, E>(effect: Effect.Effect<A, E, R>) => Exit.Exit<A, ER | E>
37
+
38
+ /**
39
+ * Executes the effect synchronously throwing in case of errors or async boundaries.
40
+ *
41
+ * This method is effectful and should only be invoked at the edges of your
42
+ * program.
43
+ */
44
+ readonly runSync: <A, E>(effect: Effect.Effect<A, E, R>) => A
45
+
46
+ /**
47
+ * Executes the effect asynchronously, eventually passing the exit value to
48
+ * the specified callback.
49
+ *
50
+ * This method is effectful and should only be invoked at the edges of your
51
+ * program.
52
+ */
53
+ readonly runCallback: <A, E>(
54
+ effect: Effect.Effect<A, E, R>,
55
+ options?: Runtime.RunCallbackOptions<A, E | ER> | undefined
56
+ ) => Runtime.Cancel<A, E | ER>
57
+
58
+ /**
59
+ * Runs the `Effect`, returning a JavaScript `Promise` that will be resolved
60
+ * with the value of the effect once the effect has been executed, or will be
61
+ * rejected with the first error or exception throw by the effect.
62
+ *
63
+ * This method is effectful and should only be used at the edges of your
64
+ * program.
65
+ */
66
+ readonly runPromise: <A, E>(effect: Effect.Effect<A, E, R>) => Promise<A>
67
+
68
+ /**
69
+ * Runs the `Effect`, returning a JavaScript `Promise` that will be resolved
70
+ * with the `Exit` state of the effect once the effect has been executed.
71
+ *
72
+ * This method is effectful and should only be used at the edges of your
73
+ * program.
74
+ */
75
+ readonly runPromiseExit: <A, E>(effect: Effect.Effect<A, E, R>) => Promise<Exit.Exit<A, ER | E>>
76
+
77
+ /**
78
+ * Dispose of the resources associated with the runtime.
79
+ */
80
+ readonly dispose: () => Promise<void>
81
+
82
+ /**
83
+ * Dispose of the resources associated with the runtime.
84
+ */
85
+ readonly disposeEffect: Effect.Effect<void, never, never>
86
+ }
87
+
88
+ /**
89
+ * Convert a Layer into an ManagedRuntime, that can be used to run Effect's using
90
+ * your services.
91
+ *
92
+ * @since 2.0.0
93
+ * @category runtime class
94
+ * @example
95
+ * import { Console, Effect, Layer, ManagedRuntime } from "effect"
96
+ *
97
+ * class Notifications extends Effect.Tag("Notifications")<
98
+ * Notifications,
99
+ * { readonly notify: (message: string) => Effect.Effect<void> }
100
+ * >() {
101
+ * static Live = Layer.succeed(this, { notify: (message) => Console.log(message) })
102
+ * }
103
+ *
104
+ * async function main() {
105
+ * const runtime = ManagedRuntime.make(Notifications.Live)
106
+ * await runtime.runPromise(Notifications.notify("Hello, world!"))
107
+ * await runtime.dispose()
108
+ * }
109
+ *
110
+ * main()
111
+ */
112
+ export const make: <R, E>(
113
+ layer: Layer.Layer<R, E, never>,
114
+ memoMap?: Layer.MemoMap | undefined
115
+ ) => ManagedRuntime<R, E> = internal.make
package/src/index.ts CHANGED
@@ -385,6 +385,11 @@ export * as LogSpan from "./LogSpan.js"
385
385
  */
386
386
  export * as Logger from "./Logger.js"
387
387
 
388
+ /**
389
+ * @since 2.0.0
390
+ */
391
+ export * as ManagedRuntime from "./ManagedRuntime.js"
392
+
388
393
  /**
389
394
  * @since 1.0.0
390
395
  */
@@ -312,6 +312,9 @@ export const makeMemoMap: Effect.Effect<Layer.MemoMap> = core.suspend(() =>
312
312
  )
313
313
  )
314
314
 
315
+ /** @internal */
316
+ export const unsafeMakeMemoMap = (): Layer.MemoMap => new MemoMapImpl(circular.unsafeMakeSynchronized(new Map()))
317
+
315
318
  /** @internal */
316
319
  export const build = <RIn, E, ROut>(
317
320
  self: Layer.Layer<ROut, E, RIn>
@@ -988,9 +991,9 @@ export const tapErrorCause = dual<
988
991
  /** @internal */
989
992
  export const toRuntime = <RIn, E, ROut>(
990
993
  self: Layer.Layer<ROut, E, RIn>
991
- ): Effect.Effect<Runtime.Runtime<ROut>, E, RIn | Scope.Scope> => {
992
- return pipe(
993
- fiberRuntime.scopeWith((scope) => pipe(self, buildWithScope(scope))),
994
+ ): Effect.Effect<Runtime.Runtime<ROut>, E, RIn | Scope.Scope> =>
995
+ pipe(
996
+ fiberRuntime.scopeWith((scope) => buildWithScope(self, scope)),
994
997
  core.flatMap((context) =>
995
998
  pipe(
996
999
  runtime.runtime<ROut>(),
@@ -998,7 +1001,25 @@ export const toRuntime = <RIn, E, ROut>(
998
1001
  )
999
1002
  )
1000
1003
  )
1001
- }
1004
+
1005
+ /** @internal */
1006
+ export const toRuntimeWithMemoMap = dual<
1007
+ (
1008
+ memoMap: Layer.MemoMap
1009
+ ) => <RIn, E, ROut>(self: Layer.Layer<ROut, E, RIn>) => Effect.Effect<Runtime.Runtime<ROut>, E, RIn | Scope.Scope>,
1010
+ <RIn, E, ROut>(
1011
+ self: Layer.Layer<ROut, E, RIn>,
1012
+ memoMap: Layer.MemoMap
1013
+ ) => Effect.Effect<Runtime.Runtime<ROut>, E, RIn | Scope.Scope>
1014
+ >(2, (self, memoMap) =>
1015
+ core.flatMap(
1016
+ fiberRuntime.scopeWith((scope) => buildWithMemoMap(self, memoMap, scope)),
1017
+ (context) =>
1018
+ pipe(
1019
+ runtime.runtime<any>(),
1020
+ core.provideContext(context)
1021
+ )
1022
+ ))
1002
1023
 
1003
1024
  /** @internal */
1004
1025
  export const provide = dual<
@@ -0,0 +1,111 @@
1
+ import type * as Effect from "../Effect.js"
2
+ import type { Exit } from "../Exit.js"
3
+ import type * as Fiber from "../Fiber.js"
4
+ import type * as Layer from "../Layer.js"
5
+ import type { ManagedRuntime } from "../ManagedRuntime.js"
6
+ import { pipeArguments } from "../Pipeable.js"
7
+ import type * as Runtime from "../Runtime.js"
8
+ import * as Scope from "../Scope.js"
9
+ import * as effect from "./core-effect.js"
10
+ import * as core from "./core.js"
11
+ import * as fiberRuntime from "./fiberRuntime.js"
12
+ import * as internalLayer from "./layer.js"
13
+ import * as internalRuntime from "./runtime.js"
14
+
15
+ interface ManagedRuntimeImpl<R, E> extends ManagedRuntime<R, E> {
16
+ readonly scope: Scope.CloseableScope
17
+ cachedRuntime: Runtime.Runtime<R> | undefined
18
+ }
19
+
20
+ function provide<R, ER, A, E>(
21
+ managed: ManagedRuntimeImpl<R, ER>,
22
+ effect: Effect.Effect<A, E, R>
23
+ ): Effect.Effect<A, E | ER> {
24
+ return core.flatMap(
25
+ managed.runtimeEffect,
26
+ (rt) =>
27
+ core.withFiberRuntime((fiber) => {
28
+ fiber.setFiberRefs(rt.fiberRefs)
29
+ fiber._runtimeFlags = rt.runtimeFlags
30
+ return core.provideContext(effect, rt.context)
31
+ })
32
+ )
33
+ }
34
+
35
+ /** @internal */
36
+ export const make = <R, ER>(
37
+ layer: Layer.Layer<R, ER, never>,
38
+ memoMap?: Layer.MemoMap
39
+ ): ManagedRuntime<R, ER> => {
40
+ memoMap = memoMap ?? internalLayer.unsafeMakeMemoMap()
41
+ const scope = internalRuntime.unsafeRunSyncEffect(fiberRuntime.scopeMake())
42
+ const self: ManagedRuntimeImpl<R, ER> = {
43
+ memoMap,
44
+ scope,
45
+ runtimeEffect: internalRuntime
46
+ .unsafeRunSyncEffect(
47
+ effect.memoize(
48
+ core.tap(
49
+ Scope.extend(
50
+ internalLayer.toRuntimeWithMemoMap(layer, memoMap),
51
+ scope
52
+ ),
53
+ (rt) => {
54
+ self.cachedRuntime = rt
55
+ }
56
+ )
57
+ )
58
+ ),
59
+ cachedRuntime: undefined,
60
+ pipe() {
61
+ return pipeArguments(this, arguments)
62
+ },
63
+ runtime() {
64
+ return self.cachedRuntime === undefined ?
65
+ internalRuntime.unsafeRunPromiseEffect(self.runtimeEffect) :
66
+ Promise.resolve(self.cachedRuntime)
67
+ },
68
+ dispose(): Promise<void> {
69
+ return internalRuntime.unsafeRunPromiseEffect(self.disposeEffect)
70
+ },
71
+ disposeEffect: core.suspend(() => {
72
+ ;(self as any).runtime = core.die("ManagedRuntime disposed")
73
+ self.cachedRuntime = undefined
74
+ return Scope.close(self.scope, core.exitUnit)
75
+ }),
76
+ runFork<A, E>(effect: Effect.Effect<A, E, R>, options?: Runtime.RunForkOptions): Fiber.RuntimeFiber<A, E | ER> {
77
+ return self.cachedRuntime === undefined ?
78
+ internalRuntime.unsafeForkEffect(provide(self, effect), options) :
79
+ internalRuntime.unsafeFork(self.cachedRuntime)(effect, options)
80
+ },
81
+ runSyncExit<A, E>(effect: Effect.Effect<A, E, R>): Exit<A, E | ER> {
82
+ return self.cachedRuntime === undefined ?
83
+ internalRuntime.unsafeRunSyncExitEffect(provide(self, effect)) :
84
+ internalRuntime.unsafeRunSyncExit(self.cachedRuntime)(effect)
85
+ },
86
+ runSync<A, E>(effect: Effect.Effect<A, E, R>): A {
87
+ return self.cachedRuntime === undefined ?
88
+ internalRuntime.unsafeRunSyncEffect(provide(self, effect)) :
89
+ internalRuntime.unsafeRunSync(self.cachedRuntime)(effect)
90
+ },
91
+ runPromiseExit<A, E>(effect: Effect.Effect<A, E, R>): Promise<Exit<A, E | ER>> {
92
+ return self.cachedRuntime === undefined ?
93
+ internalRuntime.unsafeRunPromiseExitEffect(provide(self, effect)) :
94
+ internalRuntime.unsafeRunPromiseExit(self.cachedRuntime)(effect)
95
+ },
96
+ runCallback<A, E>(
97
+ effect: Effect.Effect<A, E, R>,
98
+ options?: Runtime.RunCallbackOptions<A, E | ER> | undefined
99
+ ): Runtime.Cancel<A, E | ER> {
100
+ return self.cachedRuntime === undefined ?
101
+ internalRuntime.unsafeRunCallback(internalRuntime.defaultRuntime)(provide(self, effect), options) :
102
+ internalRuntime.unsafeRunCallback(self.cachedRuntime)(effect, options)
103
+ },
104
+ runPromise<A, E>(effect: Effect.Effect<A, E, R>): Promise<A> {
105
+ return self.cachedRuntime === undefined ?
106
+ internalRuntime.unsafeRunPromiseEffect(provide(self, effect)) :
107
+ internalRuntime.unsafeRunPromise(self.cachedRuntime)(effect)
108
+ }
109
+ }
110
+ return self
111
+ }
@@ -1,4 +1,4 @@
1
- let moduleVersion = "2.4.2"
1
+ let moduleVersion = "2.4.3"
2
2
 
3
3
  export const getCurrentVersion = () => moduleVersion
4
4