Expand description
In<T> — a scalar node field that accepts an inline literal, a
$param reference (resolved against EvalCtx::params at eval
time), or a @node connection on a PortKind::Scalar input port.
Factories read fields through an InReader, which classifies each
value and accumulates the scalar PortSpecs / Connections /
param names the node must expose:
ⓘ
let mut r = InReader::new(fields, ctx, FIXED_PORTS.len());
let sigma = r.number(\"sigma\")?; // In<f64>
let color = r.color_or(\"color\", WHITE)?; // In<[f32; 4]>
let parts = r.finish();
// node stores `sigma`, `color`, `parts.ports` (appended after the
// fixed ports), returns `parts.param_refs` from `Node::param_refs`,
// and the factory returns `parts.connections` alongside any fixed
// ones.Cache correctness: In::param_hash feeds the static identity
(literal value / param name / port index) into Node::param_hash;
the runtime value of a $param is folded into the cache key by the
evaluator via Node::param_refs,
and a port-fed value arrives through the upstream node’s hash.
Structs§
- InParts
- What an
InReaderaccumulated: scalar input ports (to append after the node’s fixed ports), their connections, and the names of$paramreferences (returned fromNode::param_refs). - InReader
- Field reader used by node factories: classifies each field as
literal /
$param/@nodeand accumulates the node’s scalar port plumbing. See the module docs for the usage pattern. - Padding
In - A numeric field whose value decides how much canvas padding the graph needs — a blur’s sigma, a morphology radius, a warp amplitude.
Enums§
- In
- A node field whose value is an inline literal, a
$paramreference, or a scalar input port. Resolve withIn::getinsideNode::eval.
Constants§
- ACCEPTS_
SCALAR - Accepts-list for a scalar input port.
Traits§
- Scalar
Type - A scalar field type readable through
In<T>/InReader.
Functions§
- parse_
param_ value - Parse a caller-supplied parameter assignment (CLI
--param k=v, server query string) against the document’s declarations. Unknown names, type mismatches, and out-of-range numbers are errors — hosts report them up front instead of silently clamping at eval time.