pub struct DominanceAnalysis {
pub idom: HashMap<usize, usize>,
pub dominance_frontier: HashMap<usize, HashSet<usize>>,
pub post_dominators: HashMap<usize, HashSet<usize>>,
}Expand description
Dominance analysis result.
Fields§
§idom: HashMap<usize, usize>Immediate dominator of each node
dominance_frontier: HashMap<usize, HashSet<usize>>Dominance frontiers
post_dominators: HashMap<usize, HashSet<usize>>Post-dominators
Implementations§
Source§impl DominanceAnalysis
impl DominanceAnalysis
Sourcepub fn get_frontier(&self, node: usize) -> HashSet<usize>
pub fn get_frontier(&self, node: usize) -> HashSet<usize>
Get dominance frontier of a node.
Sourcepub fn get_post_dominators(&self, node: usize) -> HashSet<usize>
pub fn get_post_dominators(&self, node: usize) -> HashSet<usize>
Get post-dominators of a node.
Trait Implementations§
Source§impl Clone for DominanceAnalysis
impl Clone for DominanceAnalysis
Source§fn clone(&self) -> DominanceAnalysis
fn clone(&self) -> DominanceAnalysis
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for DominanceAnalysis
impl Debug for DominanceAnalysis
Auto Trait Implementations§
impl Freeze for DominanceAnalysis
impl RefUnwindSafe for DominanceAnalysis
impl Send for DominanceAnalysis
impl Sync for DominanceAnalysis
impl Unpin for DominanceAnalysis
impl UnwindSafe for DominanceAnalysis
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more