Struct std::backtrace::Backtrace
pub struct Backtrace { /* fields omitted */ }
A captured OS thread stack backtrace.
This type represents a stack backtrace for an OS thread captured at a previous point in time. In some instances the Backtrace
type may internally be empty due to configuration. For more information see Backtrace::capture
.
Implementations
impl Backtrace
pub fn capture() -> Backtrace
Capture a stack backtrace of the current thread.
This function will capture a stack backtrace of the current OS thread of execution, returning a Backtrace
type which can be later used to print the entire stack trace or render it to a string.
This function will be a noop if the RUST_BACKTRACE
or RUST_LIB_BACKTRACE
backtrace variables are both not set. If either environment variable is set and enabled then this function will actually capture a backtrace. Capturing a backtrace can be both memory intensive and slow, so these environment variables allow liberally using Backtrace::capture
and only incurring a slowdown when the environment variables are set.
To forcibly capture a backtrace regardless of environment variables, use the Backtrace::force_capture
function.
pub fn force_capture() -> Backtrace
Forcibly captures a full backtrace, regardless of environment variable configuration.
This function behaves the same as capture
except that it ignores the values of the RUST_BACKTRACE
and RUST_LIB_BACKTRACE
environment variables, always capturing a backtrace.
Note that capturing a backtrace can be an expensive operation on some platforms, so this should be used with caution in performance-sensitive parts of code.
pub const fn disabled() -> Backtrace
Forcibly captures a disabled backtrace, regardless of environment variable configuration.
pub fn status(&self) -> BacktraceStatus
Returns the status of this backtrace, indicating whether this backtrace request was unsupported, disabled, or a stack trace was actually captured.
impl<'a> Backtrace
pub fn frames(&'a self) -> &'a [BacktraceFrame]
Returns an iterator over the backtrace frames.
Trait Implementations
impl Debug for Backtrace
fn fmt(&self, fmt: &mut Formatter<'_>) -> Result
Formats the value using the given formatter. Read more
impl Display for Backtrace
Auto Trait Implementations
impl !RefUnwindSafe for Backtrace
impl Send for Backtrace
impl Sync for Backtrace
impl Unpin for Backtrace
impl !UnwindSafe for Backtrace
Blanket Implementations
impl<T> From<T> for T
pub fn from(t: T) -> T
Performs the conversion.
pub fn into(self) -> U
Performs the conversion.
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
Performs the conversion.
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
Performs the conversion.
© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/std/backtrace/struct.Backtrace.html