pub struct DagFlow<Input = (), Output = ()> { /* private fields */ }Expand description
Directed Acyclic Graph (DAG) workflow builder
Implementations§
Source§impl DagFlow
impl DagFlow
Sourcepub fn add_node<S, Input>(
&self,
name: &str,
service: S,
) -> NodeBuilder<'_, Input, S::Response>
pub fn add_node<S, Input>( &self, name: &str, service: S, ) -> NodeBuilder<'_, Input, S::Response>
Add a node to the DAG
Sourcepub fn node<F, Input, O, FnArgs>(&self, node: F) -> NodeBuilder<'_, Input, O>
pub fn node<F, Input, O, FnArgs>(&self, node: F) -> NodeBuilder<'_, Input, O>
Add a task function node to the DAG
Sourcepub fn route<F, Input, O, FnArgs>(&self, router: F) -> NodeBuilder<'_, Input, O>
pub fn route<F, Input, O, FnArgs>(&self, router: F) -> NodeBuilder<'_, Input, O>
Add a routing node to the DAG
Sourcepub fn build(self) -> Result<DagExecutor, String>
pub fn build(self) -> Result<DagExecutor, String>
Build the DAG executor
Trait Implementations§
Auto Trait Implementations§
impl<Input = (), Output = ()> !Freeze for DagFlow<Input, Output>
impl<Input, Output> RefUnwindSafe for DagFlow<Input, Output>where
Input: RefUnwindSafe,
Output: RefUnwindSafe,
impl<Input, Output> Send for DagFlow<Input, Output>
impl<Input, Output> Sync for DagFlow<Input, Output>
impl<Input, Output> Unpin for DagFlow<Input, Output>
impl<Input, Output> UnwindSafe for DagFlow<Input, Output>where
Input: UnwindSafe,
Output: UnwindSafe,
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