pub struct WorkflowStep {
pub id: String,
pub name: String,
pub description: String,
pub agent: String,
pub actions: Vec<String>,
pub condition: Option<String>,
pub branches: Vec<WorkflowBranch>,
pub is_checkpoint: bool,
}Expand description
A step in a workflow
Fields§
§id: StringUnique identifier within the workflow
name: StringDisplay name
description: StringDescription of what this step does
agent: StringAgent responsible for this step
actions: Vec<String>Actions to perform in this step
condition: Option<String>Condition for executing this step
branches: Vec<WorkflowBranch>Branches from this step
is_checkpoint: boolWhether this is a checkpoint step
Implementations§
Source§impl WorkflowStep
impl WorkflowStep
Sourcepub fn new(
id: impl Into<String>,
name: impl Into<String>,
description: impl Into<String>,
agent: impl Into<String>,
) -> Self
pub fn new( id: impl Into<String>, name: impl Into<String>, description: impl Into<String>, agent: impl Into<String>, ) -> Self
Create a new workflow step
Sourcepub fn with_action(self, action: impl Into<String>) -> Self
pub fn with_action(self, action: impl Into<String>) -> Self
Add an action to this step
Sourcepub fn with_actions(self, actions: Vec<String>) -> Self
pub fn with_actions(self, actions: Vec<String>) -> Self
Add multiple actions
Sourcepub fn with_condition(self, condition: impl Into<String>) -> Self
pub fn with_condition(self, condition: impl Into<String>) -> Self
Set a condition for this step
Sourcepub fn with_branch(
self,
condition: impl Into<String>,
next_step: impl Into<String>,
) -> Self
pub fn with_branch( self, condition: impl Into<String>, next_step: impl Into<String>, ) -> Self
Add a branch
Sourcepub fn as_checkpoint(self) -> Self
pub fn as_checkpoint(self) -> Self
Mark as checkpoint
Trait Implementations§
Source§impl Clone for WorkflowStep
impl Clone for WorkflowStep
Source§fn clone(&self) -> WorkflowStep
fn clone(&self) -> WorkflowStep
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for WorkflowStep
impl Debug for WorkflowStep
Source§impl<'de> Deserialize<'de> for WorkflowStep
impl<'de> Deserialize<'de> for WorkflowStep
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
Auto Trait Implementations§
impl Freeze for WorkflowStep
impl RefUnwindSafe for WorkflowStep
impl Send for WorkflowStep
impl Sync for WorkflowStep
impl Unpin for WorkflowStep
impl UnsafeUnpin for WorkflowStep
impl UnwindSafe for WorkflowStep
Blanket Implementations§
Source§impl<T> ArchivePointee for T
impl<T> ArchivePointee for T
Source§type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Source§fn pointer_metadata(
_: &<T as ArchivePointee>::ArchivedMetadata,
) -> <T as Pointee>::Metadata
fn pointer_metadata( _: &<T as ArchivePointee>::ArchivedMetadata, ) -> <T as Pointee>::Metadata
Converts some archived metadata to the pointer metadata for itself.
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
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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>
Converts
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>
Converts
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 moreSource§impl<T> LayoutRaw for T
impl<T> LayoutRaw for T
Source§fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
fn layout_raw(_: <T as Pointee>::Metadata) -> Result<Layout, LayoutError>
Returns the layout of the type.
Source§impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
impl<T, N1, N2> Niching<NichedOption<T, N1>> for N2
Source§unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
unsafe fn is_niched(niched: *const NichedOption<T, N1>) -> bool
Returns whether the given value has been niched. Read more
Source§fn resolve_niched(out: Place<NichedOption<T, N1>>)
fn resolve_niched(out: Place<NichedOption<T, N1>>)
Writes data to
out indicating that a T is niched.