Hyperlinkv0.8.0-beta.28

Layer

Layer.makeMemoMapUnsafeconsteffect/Layer.ts:478
(): MemoMap

Constructs a MemoMap synchronously so it can be used to build additional layers.

Example (Creating a memo map unsafely)

import { Context, Effect, Layer } from "effect"

class Database extends Context.Service<Database, {
  readonly query: (sql: string) => Effect.Effect<string>
}>()("Database") {}

// Create a memo map for manual layer building
const program = Effect.gen(function*() {
  const memoMap = Layer.makeMemoMapUnsafe()
  const scope = yield* Effect.scope

  const dbLayer = Layer.succeed(Database, {
    query: Effect.fn("Database.query")((sql: string) => Effect.succeed("result"))
  })
  const context = yield* Layer.buildWithMemoMap(dbLayer, memoMap, scope)

  return Context.get(context, Database)
})
memo map
Source effect/Layer.ts:4781 lines
export const makeMemoMapUnsafe = (): MemoMap => new MemoMapImpl()
Referenced by 5 symbols