MCPcopy Create free account
hub / github.com/Effect-TS/effect / fromRecord

Function fromRecord

packages/effect/src/LayerMap.ts:242–263  ·  view source on GitHub ↗
(
  layers: Layers,
  options?: {
    readonly idleTimeToLive?: IdleTimeToLiveInput<keyof Layers> | undefined
    readonly preload?: Preload | undefined
  } | undefined
)

Source from the content-addressed store, hash-verified

240 * @since 3.14.0
241 */
242export const fromRecord = <
243 const Layers extends Record<string, Layer.Layer<any, any, any>>,
244 const Preload extends boolean = false
245>(
246 layers: Layers,
247 options?: {
248 readonly idleTimeToLive?: IdleTimeToLiveInput<keyof Layers> | undefined
249 readonly preload?: Preload | undefined
250 } | undefined
251): Effect.Effect<
252 LayerMap<
253 keyof Layers,
254 Layer.Success<Layers[keyof Layers]>,
255 Layer.Error<Layers[keyof Layers]>
256 >,
257 Preload extends true ? Layer.Error<Layers[keyof Layers]> : never,
258 Scope.Scope | (Layers[keyof Layers] extends Layer.Layer<infer _A, infer _E, infer _R> ? _R : never)
259> =>
260 make((key: keyof Layers) => layers[key], {
261 ...options,
262 preloadKeys: options?.preload ? Object.keys(layers) : undefined
263 }) as any
264
265/**
266 * Service class shape produced by `LayerMap.Service`.

Callers 1

ServiceFunction · 0.70

Calls 1

makeFunction · 0.70

Tested by

no test coverage detected