pub struct InputDef {
pub name: String,
pub default: Value,
pub port_type: PortType,
pub kind: InputKind,
}Expand description
Definition of a named input to the Polydat graph.
All inputs — coordinates, iteration externs, and external-write ports
— are defined uniformly. Coordinates default to Value::U64(0),
captures default to Value::None (unset until a capture writes
to them) or to their declared default. The kind field carries
the lifecycle classification used by the init-binding contract
(see SRD 11 §“Init Binding Contract”).
Fields§
§name: StringInput name (e.g., “cycle”, “username”).
default: ValueDefault value. Coordinates default to U64(0), captures to their declared default (or None if unset).
port_type: PortTypeThe declared port type for this input. Used by the assembler for type checking when wiring nodes to this input.
kind: InputKindLifecycle classification. Defaults to Coordinate so
existing call sites that construct InputDef directly
(tests, legacy paths) keep their previous semantics.
The DSL compiler sets this explicitly for iteration
externs and external-write ports.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for InputDef
impl !UnwindSafe for InputDef
impl Freeze for InputDef
impl Send for InputDef
impl Sync for InputDef
impl Unpin for InputDef
impl UnsafeUnpin for InputDef
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
Source§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more