[][src]Struct llvm_ir_analysis::Analysis

pub struct Analysis<'m> { /* fields omitted */ }

Computes (and caches the results of) various analyses on a given Module

Implementations

impl<'m> Analysis<'m>[src]

pub fn new(module: &'m Module) -> Self[src]

Create a new Analysis for the given Module.

This method itself is cheap; individual analyses will be computed lazily on demand.

pub fn call_graph(&self) -> Ref<'_, CallGraph<'m>>[src]

Get the CallGraph for the Module.

pub fn functions_by_type(&self) -> Ref<'_, FunctionsByType<'m>>[src]

Get the FunctionsByType for the Module.

pub fn control_flow_graph(
    &self,
    func_name: &'m str
) -> Ref<'_, ControlFlowGraph<'m>>
[src]

Get the ControlFlowGraph for the function with the given name.

Panics if no function of that name exists in the Module.

pub fn dominator_tree(&self, func_name: &'m str) -> Ref<'_, DominatorTree<'m>>[src]

Get the DominatorTree for the function with the given name.

Panics if no function of that name exists in the Module.

pub fn postdominator_tree(
    &self,
    func_name: &'m str
) -> Ref<'_, PostDominatorTree<'m>>
[src]

Get the PostDominatorTree for the function with the given name.

Panics if no function of that name exists in the Module.

pub fn control_dependence_graph(
    &self,
    func_name: &'m str
) -> Ref<'_, ControlDependenceGraph<'m>>
[src]

Get the ControlDependenceGraph for the function with the given name.

Panics if no function of that name exists in the Module.

Auto Trait Implementations

impl<'m> !RefUnwindSafe for Analysis<'m>

impl<'m> Send for Analysis<'m>

impl<'m> !Sync for Analysis<'m>

impl<'m> Unpin for Analysis<'m>

impl<'m> UnwindSafe for Analysis<'m>

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.