Hyperlinkv0.8.0-beta.28

Scope

Scope.makeconsteffect/Scope.ts:251
(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 make: (finalizerStrategy?: "sequential" | "parallel") => Effect<Closeable> = effect.scopeMake