Handle to a composed Behavior — a derived node.

Created via Graph.derived. Realises the composed Behavior primitive: derived(f, b₁, …, bₙ) : Behavior a where derived(t) = f(b₁(t), …, bₙ(t)). Dependencies are captured by ref-counting get() calls inside f rather than declared up front, which lets conditional reads track input-set changes naturally.

interface DerivedNode<T> {
    _phantom?: {
        polarity: "derived";
        tag: typeof _NODE_BRAND_TAG;
        value: T;
    };
    id: string;
}

Type Parameters

  • T

    Value type produced by the compute function.

Properties

Properties

_phantom?: { polarity: "derived"; tag: typeof _NODE_BRAND_TAG; value: T }

Phantom brand carrying the value type and derived polarity. Never present at runtime; the polarity is type-system-only and is not observable on a constructed handle (the engine constructs handles via Object.freeze({ id }) with no _phantom field).

id: string

Stable identifier.