Hyperlinkv0.8.0-beta.28

CustomQueueHyperlink

CustomQueueHyperlink.serveconstsrc/CustomQueueHyperlink.ts:660
<
  Self,
  F extends CustomQueueItemFields = CustomQueueItemFields,
  E = never,
  R = never,
  RR = never
>(
  tag: HyperlinkTag<Self, CustomQueueInstanceSpec<F>>,
  config: CustomQueueLayerConfig<Schema.Struct<F>["Type"], E, R, RR>
): Layer.Layer<
  | Self
  | Local<Self>
  | HandlerContextOf<CustomQueueInstanceSpec<F>>
  | Store.Storage,
  never,
  R | RR
>

Serve this custom queue and grant its local instance from one materialization — the engine-running counterpart to Hyperlink.serve. Mounts the queue's RPC handlers, registers into Hyperlink.servedHyperlinksLayer, and grants Self | Local<Self> so co-located code can yield* Tag; the served cells are the in-process instance. A served-only gateway uses serveRemote.

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

export const serve = <
  Self,
  F extends CustomQueueItemFields = CustomQueueItemFields,
  E = never,
  R = never,
  RR = never,
>(
  tag: HyperlinkTag<Self, CustomQueueInstanceSpec<F>>,
  config: CustomQueueLayerConfig<Schema.Struct<F>["Type"], E, R, RR>,
): Layer.Layer<
  Self | Local<Self> | HandlerContextOf<CustomQueueInstanceSpec<F>> | Store.Storage,
  never,
  R | RR
> =>
  withDefaultMemory(
    Layer.unwrap(
      Effect.map(buildCustomQueueImpl(tag, config), (built) =>
        Hyperlink.serve(tag, built as any),
      ),
    ),
  );
Referenced by 1 symbols