pub enum Step {
Invoke {
callable: CallableHandle,
mapping: InputMapping,
},
Branch {
predicate: Arc<dyn BranchPredicate>,
if_true: StepId,
if_false: StepId,
},
Parallel {
steps: Vec<StepId>,
join: JoinStrategy,
},
Loop {
body: StepId,
predicate: Arc<dyn BranchPredicate>,
},
Map {
body: StepId,
concurrency: Concurrency,
},
Human {
approval: HumanApproval,
},
}Expand description
One step in a workflow’s DAG.
Variants§
Invoke
Invoke a Callable (tool, agent, or other workflow).
Branch
Branch to one of two next steps based on predicate(output).
Parallel
Run several steps in parallel; aggregate via JoinStrategy.
Loop
Loop a step while the predicate evaluates true.
Map
Apply body once per element of an input array, with
bounded concurrency.
Human
Pause the workflow until a human approves. Persists the pending approval so a process restart resumes correctly.
Fields
§
approval: HumanApprovalImplementations§
Auto Trait Implementations§
impl Freeze for Step
impl !RefUnwindSafe for Step
impl Send for Step
impl Sync for Step
impl Unpin for Step
impl UnsafeUnpin for Step
impl !UnwindSafe for Step
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