[−][src]Struct rustc_data_structures::graph::scc::Sccs
Strongly connected components (SCC) of a graph. The type N
is
the index type for the graph nodes and S
is the index type for
the SCCs. We can map from each node to the SCC that it
participates in, and we also have the successors of each SCC.
Methods
impl<N: Idx, S: Idx> Sccs<N, S>
[src]
pub fn new(
graph: &impl DirectedGraph<Node = N> + WithNumNodes + WithSuccessors
) -> Self
[src]
graph: &impl DirectedGraph<Node = N> + WithNumNodes + WithSuccessors
) -> Self
pub fn num_sccs(&self) -> usize
[src]
Returns the number of SCCs in the graph.
pub fn all_sccs(&self) -> impl Iterator<Item = S>
[src]
Returns an iterator over the SCCs in the graph.
pub fn scc(&self, r: N) -> S
[src]
Returns the SCC to which a node r
belongs.
pub fn successors(&self, scc: S) -> &[S]
[src]
Returns the successors of the given SCC.
Auto Trait Implementations
Blanket Implementations
impl<T> Erased for T
[src]
impl<T> Send for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Sync for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T, U> Into for T where
U: From<T>,
[src]
U: From<T>,
impl<T> From for T
[src]
impl<T, U> TryFrom for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T> Borrow for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> BorrowMut for T where
T: ?Sized,
[src]
T: ?Sized,
ⓘImportant traits for &'_ mut Ifn borrow_mut(&mut self) -> &mut T
[src]
ⓘImportant traits for &'_ mut I
impl<T, U> TryInto for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.