Hyperlinkv0.9.0-beta.0

Hyperlink

Hyperlink.valuefunctionsrc/Hyperlink.ts:1327
<Su extends Schema.Top>(success: Su): ValueField<
  Method<undefined, Su, typeof Schema.Never>
>
<Su extends Schema.Top, E extends Schema.Top>(
  success: Su,
  error: E
): ValueField<Method<undefined, Su, E>>

Define a value field — materialize a plain property (p.x: A, no yield*) once when the resource is acquired, identical local and remote. The impl supplies an Effect<A, E> (run once at acquire; use Effect.succeed for a literal). A non-never error schema fails layer/client acquire (all-or-nothing) — after a successful acquire every value leaf is plain A. Live state is ref; on-demand reads are effect.

maxSize: Hyperlink.value(Schema.Number),
name: Hyperlink.value(Schema.String, Schema.String), // fallible at acquire
spec fieldsrefeffect
Source src/Hyperlink.ts:132713 lines
export function value<Su extends Schema.Top>(
  success: Su,
): ValueField<Method<undefined, Su, typeof Schema.Never>>;
export function value<Su extends Schema.Top, E extends Schema.Top>(
  success: Su,
  error: E,
): ValueField<Method<undefined, Su, E>>;
export function value(
  success: Schema.Top,
  error: Schema.Top = Schema.Never,
): ValueField<AnyMethod> {
  return marked(effect(success, error), { _tag: "value" as const });
}