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. The assembler’s coordinate inputs
are Coordinate; the DSL compiler sets IterationExtern for
iteration externs and ExternalWrite for extern 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