class UnwinderBase

Defined at line 21 of file ../../src/lib/unwinder/unwinder_base.h

Base class for all unwinders.

Public Methods

Error Step (Memory * stack, const Frame & current, Frame & next)

Unwind one frame, populating |next| with the new register values. |next| is invalid if an error

is returned.

void AsyncStep (AsyncMemory * stack, const Frame & current, fit::callback<void (Error, Registers)> cb)

Unwind one frame, possibly asynchronously. The callback is issued with the resulting registers

for the new frame on success. If the error is populated, the registers are not valid.

void UnwinderBase (const ElfModuleCache & module_cache)

Defined at line 23 of file ../../src/lib/unwinder/unwinder_base.h

void ~UnwinderBase ()

Defined at line 24 of file ../../src/lib/unwinder/unwinder_base.h

const ElfModuleCache & module_cache ()

Defined at line 52 of file ../../src/lib/unwinder/unwinder_base.h

std::vector<Frame> Unwind (Memory * stack, const Registers & registers, size_t max_depth)

Unwind the entire stack using only this unwinder.

Defined at line 194 of file ../../src/lib/unwinder/unwinder_base.cc

void AsyncUnwind (AsyncMemory * stack, const Registers & registers, size_t max_depth, fit::callback<void (std::vector<Frame>)> on_done)

Unwind the entire stack asynchronously using only this unwinder.

Defined at line 170 of file ../../src/lib/unwinder/unwinder_base.cc

void AsyncUnwind (AsyncMemory * stack, const Registers & registers, size_t max_depth, AsyncStepFunc step_func, fit::callback<void (std::vector<Frame>)> on_done)

Unwind the entire stack asynchronously using a custom step function.

Defined at line 180 of file ../../src/lib/unwinder/unwinder_base.cc

Frame::Trust trust ()

The trust that should be associated with this unwinder.