pub trait Build: Data + NodeCount {
// Required methods
fn add_node(&mut self, weight: Self::NodeWeight) -> Self::NodeId;
fn update_edge(
&mut self,
a: Self::NodeId,
b: Self::NodeId,
weight: Self::EdgeWeight
) -> Self::EdgeId;
// Provided method
fn add_edge(
&mut self,
a: Self::NodeId,
b: Self::NodeId,
weight: Self::EdgeWeight
) -> Option<Self::EdgeId> { ... }
}
Expand description
A graph that can be extended with further nodes and edges
Required Methods§
fn add_node(&mut self, weight: Self::NodeWeight) -> Self::NodeId
sourcefn update_edge(
&mut self,
a: Self::NodeId,
b: Self::NodeId,
weight: Self::EdgeWeight
) -> Self::EdgeId
fn update_edge( &mut self, a: Self::NodeId, b: Self::NodeId, weight: Self::EdgeWeight ) -> Self::EdgeId
Add or update the edge from a
to b
. Return the id of the affected
edge.