pub trait Scc {
type Vertex: Copy + Eq + Hash;
// Required methods
fn vertices(&self) -> impl '_ + IntoIterator<Item = Self::Vertex>;
fn successors(
&self,
v: Self::Vertex,
) -> impl '_ + IntoIterator<Item = Self::Vertex>;
// Provided method
fn strongly_connected_components(&self) -> Components<Self::Vertex> { ... }
}Expand description
Graph on which strongly connected components can be computed.
Required Associated Types§
Required Methods§
Sourcefn vertices(&self) -> impl '_ + IntoIterator<Item = Self::Vertex>
fn vertices(&self) -> impl '_ + IntoIterator<Item = Self::Vertex>
Returns an iterator over the vertices of the graph.
Sourcefn successors(
&self,
v: Self::Vertex,
) -> impl '_ + IntoIterator<Item = Self::Vertex>
fn successors( &self, v: Self::Vertex, ) -> impl '_ + IntoIterator<Item = Self::Vertex>
Returns an iterator over the successors of the given vertex.
Provided Methods§
Sourcefn strongly_connected_components(&self) -> Components<Self::Vertex>
fn strongly_connected_components(&self) -> Components<Self::Vertex>
Computes the strongly connected components of the graph.
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.