pub enum StepIR {
Action(ActionStepIR),
Assert(AssertStepIR),
Call(CallStepIR),
Human(HumanStepIR),
If(IfStepIR),
Foreach(ForeachStepIR),
Let(LetStepIR),
}Expand description
The closed step union (7 kinds, spine A.4), discriminated by kind on
the wire. See the module docs for why this is untagged in serde while
remaining a kind-tagged union on the wire.
Variants§
Action(ActionStepIR)
kind: "action" — fixed pipeline preflight? → act → observe → assert.
Assert(AssertStepIR)
kind: "assert" — side-effect-free observation and judgment.
Call(CallStepIR)
kind: "call" — subflow invocation, pinned by content hash.
Human(HumanStepIR)
kind: "human" — human collaboration node (principle 8).
If(IfStepIR)
kind: "if" — conditional container.
Foreach(ForeachStepIR)
kind: "foreach" — iteration container.
Let(LetStepIR)
kind: "let" — pure bindings into vars.* (SSA).
Implementations§
Trait Implementations§
Source§impl<'de> Deserialize<'de> for StepIR
impl<'de> Deserialize<'de> for StepIR
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl JsonSchema for StepIR
impl JsonSchema for StepIR
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Returns a string that uniquely identifies the schema produced by this type. Read more
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Generates a JSON Schema for this type. Read more
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
Whether JSON Schemas generated for this type should be included directly in parent schemas,
rather than being re-used where possible using the
$ref keyword. Read moreimpl StructuralPartialEq for StepIR
Auto Trait Implementations§
impl Freeze for StepIR
impl RefUnwindSafe for StepIR
impl Send for StepIR
impl Sync for StepIR
impl Unpin for StepIR
impl UnsafeUnpin for StepIR
impl UnwindSafe for StepIR
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
Mutably borrows from an owned value. Read more