pub struct WorkflowGraphBuilder<N: TreeNode = SyntaxNode> { /* private fields */ }Expand description
Represents a builder of workflow evaluation graphs.
Implementations§
Source§impl<N: TreeNode> WorkflowGraphBuilder<N>
impl<N: TreeNode> WorkflowGraphBuilder<N>
Sourcepub fn build(
self,
workflow: &WorkflowDefinition<N>,
diagnostics: &mut Diagnostics,
input_present: impl Fn(&str) -> bool,
custom_type_present: impl Fn(&str) -> bool,
) -> DiGraph<WorkflowGraphNode<N>, ()>
pub fn build( self, workflow: &WorkflowDefinition<N>, diagnostics: &mut Diagnostics, input_present: impl Fn(&str) -> bool, custom_type_present: impl Fn(&str) -> bool, ) -> DiGraph<WorkflowGraphNode<N>, ()>
Builds a new workflow evaluation graph.
The nodes are WorkflowGraphNode and the edges represent a reverse
dependency relationship (A -> B => “node A is depended on by B”).
Trait Implementations§
Auto Trait Implementations§
impl<N> Freeze for WorkflowGraphBuilder<N>
impl<N> RefUnwindSafe for WorkflowGraphBuilder<N>where
HashMap<TokenText<<N as TreeNode>::Token>, SmallVec<[NodeIndex; 10]>>: RefUnwindSafe,
Vec<Ident<<N as TreeNode>::Token>>: RefUnwindSafe,
HashMap<N, (NodeIndex, NodeIndex)>: RefUnwindSafe,
DfsSpace<NodeIndex, <Graph<WorkflowGraphNode<N>, ()> as Visitable>::Map>: RefUnwindSafe,
CommonAncestorFinder<N>: RefUnwindSafe,
impl<N> Send for WorkflowGraphBuilder<N>
impl<N> Sync for WorkflowGraphBuilder<N>
impl<N> Unpin for WorkflowGraphBuilder<N>
impl<N> UnsafeUnpin for WorkflowGraphBuilder<N>where
HashMap<TokenText<<N as TreeNode>::Token>, SmallVec<[NodeIndex; 10]>>: UnsafeUnpin,
Vec<Ident<<N as TreeNode>::Token>>: UnsafeUnpin,
HashMap<N, (NodeIndex, NodeIndex)>: UnsafeUnpin,
DfsSpace<NodeIndex, <Graph<WorkflowGraphNode<N>, ()> as Visitable>::Map>: UnsafeUnpin,
CommonAncestorFinder<N>: UnsafeUnpin,
impl<N> UnwindSafe for WorkflowGraphBuilder<N>where
HashMap<TokenText<<N as TreeNode>::Token>, SmallVec<[NodeIndex; 10]>>: UnwindSafe,
Vec<Ident<<N as TreeNode>::Token>>: UnwindSafe,
HashMap<N, (NodeIndex, NodeIndex)>: UnwindSafe,
DfsSpace<NodeIndex, <Graph<WorkflowGraphNode<N>, ()> as Visitable>::Map>: UnwindSafe,
CommonAncestorFinder<N>: 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
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 more