pub struct NetworkGraph {
pub nodes: HashMap<String, GraphNode>,
pub edges: Vec<GraphEdge>,
pub inputs: Vec<String>,
pub outputs: Vec<String>,
pub metadata: HashMap<String, String>,
}Expand description
Complete network graph representation
Fields§
§nodes: HashMap<String, GraphNode>All nodes in the graph
edges: Vec<GraphEdge>All edges in the graph
inputs: Vec<String>Input node IDs
outputs: Vec<String>Output node IDs
metadata: HashMap<String, String>Graph metadata
Implementations§
Source§impl NetworkGraph
impl NetworkGraph
Sourcepub fn set_inputs(&mut self, inputs: Vec<String>)
pub fn set_inputs(&mut self, inputs: Vec<String>)
Set input nodes
Sourcepub fn set_outputs(&mut self, outputs: Vec<String>)
pub fn set_outputs(&mut self, outputs: Vec<String>)
Set output nodes
Sourcepub fn topological_sort(&self) -> Result<Vec<String>>
pub fn topological_sort(&self) -> Result<Vec<String>>
Get topological ordering of nodes
Sourcepub fn calculate_statistics(&self) -> GraphStatistics
pub fn calculate_statistics(&self) -> GraphStatistics
Calculate graph statistics
Trait Implementations§
Source§impl Clone for NetworkGraph
impl Clone for NetworkGraph
Source§fn clone(&self) -> NetworkGraph
fn clone(&self) -> NetworkGraph
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 NetworkGraph
impl Debug for NetworkGraph
Auto Trait Implementations§
impl Freeze for NetworkGraph
impl RefUnwindSafe for NetworkGraph
impl Send for NetworkGraph
impl Sync for NetworkGraph
impl Unpin for NetworkGraph
impl UnsafeUnpin for NetworkGraph
impl UnwindSafe for NetworkGraph
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
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,
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