pub trait DataResolver {
// Provided methods
fn read_memory(&self, address: u64, size: usize) -> Result<Vec<u8>> { ... }
fn read_address(&self, address: u64) -> Result<u64> { ... }
fn get_register(&self, idx: usize) -> Result<u64> { ... }
fn get_stack_pointer(&self) -> Result<u64> { ... }
fn allocate_memory(&self, size: usize) -> Result<u64> { ... }
fn write_memory(&self, address: u64, data: &[u8]) -> Result<()> { ... }
}Expand description
Trait for resolving data from memory during debugging.
Implementors provide access to the target process’s memory and registers, allowing the debug info library to read variable values and follow pointers.
NOTE: All of the addresses passed to/return from this trait will be relative to the target binary and does not account for ASLR (Address Space Layout Randomization).