pub trait IDiaStackWalkHelper_Impl: Sized {
// Required methods
fn get_registerValue(&self, index: u32) -> Result<u64>;
fn put_registerValue(&self, index: u32, newval: u64) -> Result<()>;
fn readMemory(
&self,
type: MemoryTypeEnum,
va: u64,
cbdata: u32,
pcbdata: *mut u32,
pbdata: *mut u8
) -> Result<()>;
fn searchForReturnAddress(
&self,
frame: Option<&IDiaFrameData>
) -> Result<u64>;
fn searchForReturnAddressStart(
&self,
frame: Option<&IDiaFrameData>,
startaddress: u64
) -> Result<u64>;
fn frameForVA(&self, va: u64) -> Result<IDiaFrameData>;
fn symbolForVA(&self, va: u64) -> Result<IDiaSymbol>;
fn pdataForVA(
&self,
va: u64,
cbdata: u32,
pcbdata: *mut u32,
pbdata: *mut u8
) -> Result<()>;
fn imageForVA(&self, vacontext: u64) -> Result<u64>;
fn addressForVA(
&self,
va: u64,
pisect: *mut u32,
poffset: *mut u32
) -> Result<()>;
fn numberOfFunctionFragmentsForVA(
&self,
vafunc: u64,
cbfunc: u32
) -> Result<u32>;
fn functionFragmentsForVA(
&self,
vafunc: u64,
cbfunc: u32,
cfragments: u32,
pvafragment: *mut u64,
plenfragment: *mut u32
) -> Result<()>;
}