Scc

Trait Scc 

Source
pub trait Scc {
    // Required methods
    fn on_scc_found(&mut self, root: usize, scc_components: &[usize]);
    fn get_next(&mut self, root: usize) -> FxHashSet<usize>;
    fn get_size(&mut self) -> usize;

    // Provided methods
    fn find_scc(&mut self) { ... }
    fn tarjan(
        &mut self,
        index: usize,
        stack: &mut Vec<usize>,
        instack: &mut FxHashSet<usize>,
        dfn: &mut Vec<usize>,
        low: &mut Vec<usize>,
        time: &mut usize,
    ) { ... }
}

Required Methods§

Source

fn on_scc_found(&mut self, root: usize, scc_components: &[usize])

Source

fn get_next(&mut self, root: usize) -> FxHashSet<usize>

Source

fn get_size(&mut self) -> usize

Provided Methods§

Source

fn find_scc(&mut self)

Source

fn tarjan( &mut self, index: usize, stack: &mut Vec<usize>, instack: &mut FxHashSet<usize>, dfn: &mut Vec<usize>, low: &mut Vec<usize>, time: &mut usize, )

Implementors§

Source§

impl<'tcx> Scc for MopGraph<'tcx>