pub trait Labeled<'a>: Graph<'a> {
// Required methods
fn label_same(&self, node: &Self::Node, label: &Self::Node) -> bool;
fn get_label(&'a self, node: &'a Self::Node) -> &'a impl Label;
fn get_edges_pair_label(
&'a self,
) -> impl Iterator<Item = (&'a Self::Node, &'a Self::Node, &'a impl Label)>;
fn edge_label_same(&self, edge1: &Self::Edge, edge2: &Self::Edge) -> bool;
fn edge_node_label_same(
&self,
src1: &Self::Node,
edge1: &Self::Edge,
dst1: &Self::Node,
src2: &Self::Node,
edge2: &Self::Edge,
dst2: &Self::Node,
) -> bool;
}
Required Methods§
fn label_same(&self, node: &Self::Node, label: &Self::Node) -> bool
fn get_label(&'a self, node: &'a Self::Node) -> &'a impl Label
fn get_edges_pair_label( &'a self, ) -> impl Iterator<Item = (&'a Self::Node, &'a Self::Node, &'a impl Label)>
fn edge_label_same(&self, edge1: &Self::Edge, edge2: &Self::Edge) -> bool
fn edge_node_label_same( &self, src1: &Self::Node, edge1: &Self::Edge, dst1: &Self::Node, src2: &Self::Node, edge2: &Self::Edge, dst2: &Self::Node, ) -> bool
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.