pub struct DominatorTree {
pub idom: Vec<i32>,
pub tree: Graph,
pub leftout: Vec<VertexId>,
}Expand description
Result of dominator_tree.
Fields§
§idom: Vec<i32>Immediate-dominator vector of length vcount.
idom[root] == -1,idom[v] == -2for every vertexvunreachable fromroot,idom[v] == idom_vertex_idotherwise (always>= 0and< vcount).
tree: GraphDirected graph on the same vertex set as the input. Contains
exactly one edge per non-root reachable vertex; orientation is
dictated by mode (Out ⇒ idom(w) → w, In ⇒ w → idom(w)).
Vertices in Self::leftout appear as isolates.
leftout: Vec<VertexId>Vertex ids unreachable from root, in ascending order. Empty
when the graph is a proper flowgraph (every vertex reachable
from root).
Trait Implementations§
Source§impl Clone for DominatorTree
impl Clone for DominatorTree
Source§fn clone(&self) -> DominatorTree
fn clone(&self) -> DominatorTree
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 moreAuto Trait Implementations§
impl !Freeze for DominatorTree
impl !RefUnwindSafe for DominatorTree
impl Send for DominatorTree
impl !Sync for DominatorTree
impl Unpin for DominatorTree
impl UnsafeUnpin for DominatorTree
impl UnwindSafe for DominatorTree
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