(finalizerStrategy?: "sequential" | "parallel"): Effect<Closeable>Creates a new Scope with the specified finalizer strategy.
Example (Creating a scope)
import { Console, Effect, Exit, Scope } from "effect"
const program = Effect.gen(function*() {
// Create a scope with sequential cleanup
const scope = yield* Scope.make("sequential")
// Add finalizers
yield* Scope.addFinalizer(scope, Console.log("Cleanup 1"))
yield* Scope.addFinalizer(scope, Console.log("Cleanup 2"))
// Close the scope (finalizers run in reverse order)
yield* Scope.close(scope, Exit.void)
// Output: "Cleanup 2", then "Cleanup 1"
})constructors
Source effect/Scope.ts:2511 lines
export const const make: (
finalizerStrategy?: "sequential" | "parallel"
) => Effect<Closeable>
Creates a new Scope with the specified finalizer strategy.
Example (Creating a scope)
import { Console, Effect, Exit, Scope } from "effect"
const program = Effect.gen(function*() {
// Create a scope with sequential cleanup
const scope = yield* Scope.make("sequential")
// Add finalizers
yield* Scope.addFinalizer(scope, Console.log("Cleanup 1"))
yield* Scope.addFinalizer(scope, Console.log("Cleanup 2"))
// Close the scope (finalizers run in reverse order)
yield* Scope.close(scope, Exit.void)
// Output: "Cleanup 2", then "Cleanup 1"
})
make: (finalizerStrategy: "sequential" | "parallel" | undefinedfinalizerStrategy?: "sequential" | "parallel") => import EffectEffect<Closeable> = import effecteffect.const scopeMake: (
finalizerStrategy?: "sequential" | "parallel"
) => Effect.Effect<Scope.Closeable>
scopeMake