Hyperlinkv0.8.0-beta.28

Effect

Effect.scopeconsteffect/Effect.ts:6391
Effect<Scope, never, Scope>

Returns the current scope for resource management.

Example (Accessing the current scope)

import { Console, Effect } from "effect"

const program = Effect.gen(function*() {
  const currentScope = yield* Effect.scope
  yield* Console.log("Got scope for resource management")

  // Use the scope to manually manage resources if needed
  const resource = yield* Effect.acquireRelease(
    Console.log("Acquiring resource").pipe(Effect.as("resource")),
    () => Console.log("Releasing resource")
  )

  return resource
})

Effect.runPromise(Effect.scoped(program)).then(console.log)
// Output:
// Got scope for resource management
// Acquiring resource
// resource
// Releasing resource
resource management
Source effect/Effect.ts:63911 lines
export const scope: Effect<Scope, never, Scope> = internal.scope
Referenced by 5 symbols