Hyperlinkv0.8.0-beta.28

ShardMap

ShardMap.layerconstsrc/ShardMap.ts:588
<
  Self,
  Key extends Schema.Top,
  Value extends Schema.Top,
  Error extends Schema.Top
>(
  tag: ShardMapTag<Self, Key, Value, Error>,
  options?: ShardMapOptions
): Layer.Layer<
  Self | Local<Self>,
  never,
  PeersId<Self> | SelfNodeId<Self>
>

Local layer — SQL-backed shard + routed/fleet members. Opens SQLite (:memory: by default; override with { filename }). Requires the mesh capability (Hyperlink.peersLayer, or Hyperlink.peersFrom + Hyperlink.selfNodeLayer).

Source src/ShardMap.ts:58816 lines
export const layer = <
  Self,
  Key extends Schema.Top,
  Value extends Schema.Top,
  Error extends Schema.Top,
>(
  tag: ShardMapTag<Self, Key, Value, Error>,
  options?: ShardMapOptions,
): Layer.Layer<Self | Local<Self>, never, PeersId<Self> | SelfNodeId<Self>> =>
  withSqlite(
    options,
    buildImpl(tag, options).pipe(
      Effect.map((impl) => Hyperlink.layer(tag, asImpl(impl))),
      Layer.unwrap,
    ),
  );