pub struct CallGraph<'m> { /* private fields */ }Expand description
The call graph for the analyzed Module(s): which functions may call which
other functions.
To construct a CallGraph, use ModuleAnalysis
or CrossModuleAnalysis.
Implementations§
Source§impl<'m> CallGraph<'m>
impl<'m> CallGraph<'m>
Sourcepub fn callers<'s>(
&'s self,
func_name: &'m str,
) -> impl Iterator<Item = &'m str> + 's
pub fn callers<'s>( &'s self, func_name: &'m str, ) -> impl Iterator<Item = &'m str> + 's
Get the names of functions in the analyzed Module(s) which may call the
given function.
This analysis conservatively assumes that function pointers may point to
any function in the analyzed Module(s) that has the appropriate type.
Panics if the given function is not found in the analyzed Module(s).
Sourcepub fn callees<'s>(
&'s self,
func_name: &'m str,
) -> impl Iterator<Item = &'m str> + 's
pub fn callees<'s>( &'s self, func_name: &'m str, ) -> impl Iterator<Item = &'m str> + 's
Get the names of functions in the analyzed Module(s) which may be
called by the given function.
This analysis conservatively assumes that function pointers may point to
any function in the analyzed Module(s) that has the appropriate type.
Panics if the given function is not found in the analyzed Module(s).
Auto Trait Implementations§
impl<'m> Freeze for CallGraph<'m>
impl<'m> RefUnwindSafe for CallGraph<'m>
impl<'m> Send for CallGraph<'m>
impl<'m> Sync for CallGraph<'m>
impl<'m> Unpin for CallGraph<'m>
impl<'m> UnwindSafe for CallGraph<'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
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>
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>
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