Hyperlinkv0.9.0-beta.0

Gate

Gate.serveconstsrc/Gate.ts:999
<
  Self,
  I extends Schema.Top,
  A extends Schema.Top,
  E extends Schema.Top = Schema.Never,
  R = never
>(
  tag: HyperlinkTag<Self, InstanceSpec<I, A, E>, any>,
  config: LayerConfig<
    Schema.Schema.Type<I>,
    Schema.Schema.Type<A>,
    Schema.Schema.Type<E>,
    R
  >
): Layer.Layer<
  | Self
  | Local<Self>
  | HandlerContextOf<InstanceSpec<I, A, E>>
  | Store.Storage,
  never,
  R
>

Serve this gate and grant its local instance from one materialization.

Soft-defaults Store.Storage. Override with Layer.provide / provideMerge(AppStore).

layers & servingStore.Storage
Source src/Gate.ts:99924 lines
export const serve = <
  Self,
  I extends Schema.Top,
  A extends Schema.Top,
  E extends Schema.Top = typeof Schema.Never,
  R = never,
>(
  tag: HyperlinkTag<Self, InstanceSpec<I, A, E>, any>,
  config: LayerConfig<Schema.Schema.Type<I>, Schema.Schema.Type<A>, Schema.Schema.Type<E>, R>,
): Layer.Layer<
  Self | Local<Self> | HandlerContextOf<InstanceSpec<I, A, E>> | Store.Storage,
  never,
  R
> =>
  // Same deferred-`ValueErrorsOf` restatement as {@link layer} — Gate has no materialize leaves.
  withDefaultStoreBridge(
    Layer.unwrap(
      Effect.map(buildRunImpl(tag, config), (built) => Hyperlink.serve(tag, built)),
    ),
  ) as Layer.Layer<
    Self | Local<Self> | HandlerContextOf<InstanceSpec<I, A, E>> | Store.Storage,
    never,
    R
  >;
Referenced by 1 symbols