pub struct WorkflowGraph {
nodes: HashMap<String, Node>,
edges: Vec<Edge>,
adjacency: HashMap<String, Vec<String>>,
in_degree: HashMap<String, usize>,
}Fields§
§nodes: HashMap<String, Node>§edges: Vec<Edge>§adjacency: HashMap<String, Vec<String>>§in_degree: HashMap<String, usize>Implementations§
Source§impl WorkflowGraph
impl WorkflowGraph
pub fn from_workflow(workflow: &Workflow) -> Self
pub fn get_execution_order(&self) -> Result<Vec<String>>
pub fn get_parallel_groups(&self) -> Result<Vec<Vec<String>>>
pub fn get_node(&self, node_id: &str) -> Option<&Node>
pub fn get_dependencies(&self, node_id: &str) -> Vec<String>
pub fn get_nodes_with_no_dependencies(&self) -> Vec<String>
pub fn get_downstream_nodes(&self, node_id: &str) -> Vec<String>
Auto Trait Implementations§
impl Freeze for WorkflowGraph
impl RefUnwindSafe for WorkflowGraph
impl Send for WorkflowGraph
impl Sync for WorkflowGraph
impl Unpin for WorkflowGraph
impl UnwindSafe for WorkflowGraph
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