Struct lief::dwarf::debug_info::DebugInfo
pub struct DebugInfo<'a> { /* private fields */ }
Expand description
This class represents a DWARF debug information. It can embed different
compilation units which can be accessed through DebugInfo::compilation_units
.
This class can be instantiated from crate::generic::Binary::debug_info
or using the
function crate::dwarf::load
Implementations§
§impl DebugInfo<'_>
impl DebugInfo<'_>
pub fn compilation_units(&self) -> CompilationUnits<'_> ⓘ
pub fn compilation_units(&self) -> CompilationUnits<'_> ⓘ
Iterator on the crate::dwarf::CompilationUnit
embedded in this dwarf
pub fn function_by_name(&self, name: &str) -> Option<Function<'_>>
pub fn function_by_name(&self, name: &str) -> Option<Function<'_>>
Try to find the function with the given name (mangled or not)
if let Some(func) = info.function_by_name("_ZNSt6localeD1Ev") {
// Found
}
if let Some(func) = info.function_by_name("std::locale::~locale()") {
// Found
}
pub fn function_by_addr(&self, addr: u64) -> Option<Function<'_>>
pub fn function_by_addr(&self, addr: u64) -> Option<Function<'_>>
Try to find the function at the given virtual address
pub fn variable_by_name(&self, name: &str) -> Option<Variable<'_>>
pub fn variable_by_name(&self, name: &str) -> Option<Variable<'_>>
Try to find the variable with the given name. This name can be mangled or not.
pub fn variable_by_addr(&self, addr: u64) -> Option<Variable<'_>>
pub fn variable_by_addr(&self, addr: u64) -> Option<Variable<'_>>
Try to find the (static) variable at the given virtual address
pub fn type_by_name(&self, name: &str) -> Option<Type<'_>>
pub fn type_by_name(&self, name: &str) -> Option<Type<'_>>
Try to find the (static) variable at the given virtual address
Trait Implementations§
Auto Trait Implementations§
impl<'a> RefUnwindSafe for DebugInfo<'a>
impl<'a> !Send for DebugInfo<'a>
impl<'a> !Sync for DebugInfo<'a>
impl<'a> Unpin for DebugInfo<'a>
impl<'a> UnwindSafe for DebugInfo<'a>
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