pub struct ModuleAnalysis<'m> { /* private fields */ }Expand description
Computes (and caches the results of) various analyses on a given Module
Implementations§
Source§impl<'m> ModuleAnalysis<'m>
impl<'m> ModuleAnalysis<'m>
Sourcepub fn new(module: &'m Module) -> Self
pub fn new(module: &'m Module) -> Self
Create a new ModuleAnalysis for the given Module.
This method itself is cheap; individual analyses will be computed lazily on demand.
Sourcepub fn module(&self) -> &'m Module
pub fn module(&self) -> &'m Module
Get a reference to the Module which the ModuleAnalysis was created
with.
Sourcepub fn call_graph(&self) -> Ref<'_, CallGraph<'m>>
pub fn call_graph(&self) -> Ref<'_, CallGraph<'m>>
Get the CallGraph for the Module.
Sourcepub fn functions_by_type(&self) -> Ref<'_, FunctionsByType<'m>>
pub fn functions_by_type(&self) -> Ref<'_, FunctionsByType<'m>>
Get the FunctionsByType for the Module.
Sourcepub fn fn_analysis<'s>(&'s self, func_name: &str) -> &'s FunctionAnalysis<'m>
pub fn fn_analysis<'s>(&'s self, func_name: &str) -> &'s FunctionAnalysis<'m>
Get the FunctionAnalysis for the function with the given name.
Panics if no function of that name exists in the Module which the
ModuleAnalysis was created with.
Auto Trait Implementations§
impl<'m> !Freeze for ModuleAnalysis<'m>
impl<'m> !RefUnwindSafe for ModuleAnalysis<'m>
impl<'m> Send for ModuleAnalysis<'m>
impl<'m> !Sync for ModuleAnalysis<'m>
impl<'m> Unpin for ModuleAnalysis<'m>
impl<'m> UnwindSafe for ModuleAnalysis<'m>
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more