pub struct Backtrace { /* private fields */ }Expand description
A captured stack backtrace.
This type stores the backtrace of a captured stack at a certain point in time. The backtrace is represented as a list of instruction pointers.
§Platform Support
The Backtrace API is only functional on the armv7a-vex-v5 platform target.
Additionally, backtraces will be unsupported if vexide is compiled without the backtrace
feature.
§Example
use vexide::backtrace::Backtrace;
let backtrace = Backtrace::capture();
println!("{backtrace}");§Symbolication
The number stored in each frame is not particularly meaningful to humans on its own. Using a
tool such as llvm-symbolizer or addr2line, it can be turned into a function name and line
number to show what functions were being run at the time of the backtrace’s capture.
$ llvm-symbolizer -p -e ./target/armv7a-vex-v5/debug/program_name 0x380217b 0x380209b
my_function at /path/to/project/src/main.rs:30:14
main at /path/to/project/src/main.rs:21:9Implementations§
Source§impl Backtrace
impl Backtrace
Trait Implementations§
impl Eq for Backtrace
impl StructuralPartialEq for Backtrace
Auto Trait Implementations§
impl Freeze for Backtrace
impl RefUnwindSafe for Backtrace
impl !Send for Backtrace
impl !Sync for Backtrace
impl Unpin for Backtrace
impl UnwindSafe for Backtrace
Blanket Implementations§
§impl<T> Any for Twhere
T: 'static + ?Sized,
impl<T> Any for Twhere
T: 'static + ?Sized,
§impl<T> Borrow<T> for Twhere
T: ?Sized,
impl<T> Borrow<T> for Twhere
T: ?Sized,
§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§unsafe fn clone_to_uninit(&self, dest: *mut u8)
unsafe fn clone_to_uninit(&self, dest: *mut u8)
🔬This is a nightly-only experimental API. (
clone_to_uninit)