pub enum Elem {
Task(ElemTask),
Commit(ElemCommit),
Branch(ElemBranch),
Parallel(ElemParallel),
Loop(ElemLoop),
Next,
Stop(HashSet<Dataset>),
}
Expand description
Defines an element in the graph. This is either a Node, which defines a task execution, or an Edge, which defines how next tasks may be reached.
Variants§
Task(ElemTask)
Defines a task that is executed, accessing and potentially producing data.
Commit(ElemCommit)
Defines the commiting of a result into a dataset, which will linger beyong the workflow with a specific name.
Branch(ElemBranch)
Defines an edge that connects to multiple next graph-branches of which only one must be taken. Note that, because we don’t include dynamic control flow information, we don’t know which will be taken.
Parallel(ElemParallel)
Defines an edge that connects to multiple next graph-branches of which all must be taken concurrently.
Loop(ElemLoop)
Defines an edge that repeats a particular branch an unknown amount of times.
Next
Defines that the next element to execute is given by the parent next
-field.
Stop(HashSet<Dataset>)
Defines that no more execution takes place.
The option indicates if any data is carried to the remaining code.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for Elem
impl<'de> Deserialize<'de> for Elem
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>,
Source§impl EnumDebug for Elem
impl EnumDebug for Elem
Source§fn type_name() -> &'static str
fn type_name() -> &'static str
Source§fn variant_names() -> &'static [&'static str]
fn variant_names() -> &'static [&'static str]
Source§fn variant_name(&self) -> &'static str
fn variant_name(&self) -> &'static str
Source§fn variant(&self) -> EnumDebugFormatter<'_, Self>
fn variant(&self) -> EnumDebugFormatter<'_, Self>
Auto Trait Implementations§
impl Freeze for Elem
impl RefUnwindSafe for Elem
impl Send for Elem
impl Sync for Elem
impl Unpin for Elem
impl UnwindSafe for Elem
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
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> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request