[−][src]Struct backtrace::BacktraceFmt
A formatter for backtraces.
This type can be used to print a backtrace regardless of where the backtrace
itself comes from. If you have a Backtrace
type then its Debug
implementation already uses this printing format.
Implementations
impl<'a, 'b> BacktraceFmt<'a, 'b>
[src]
pub fn new(
fmt: &'a mut Formatter<'b>,
format: PrintFmt,
print_path: &'a mut (dyn FnMut(&mut Formatter<'_>, BytesOrWideString<'_>) -> Result + 'b)
) -> Self
[src]
fmt: &'a mut Formatter<'b>,
format: PrintFmt,
print_path: &'a mut (dyn FnMut(&mut Formatter<'_>, BytesOrWideString<'_>) -> Result + 'b)
) -> Self
Create a new BacktraceFmt
which will write output to the provided
fmt
.
The format
argument will control the style in which the backtrace is
printed, and the print_path
argument will be used to print the
BytesOrWideString
instances of filenames. This type itself doesn't do
any printing of filenames, but this callback is required to do so.
pub fn add_context(&mut self) -> Result
[src]
Prints a preamble for the backtrace about to be printed.
This is required on some platforms for backtraces to be fully
sumbolicated later, and otherwise this should just be the first method
you call after creating a BacktraceFmt
.
pub fn frame(&mut self) -> BacktraceFrameFmt<'_, 'a, 'b>
[src]
Adds a frame to the backtrace output.
This commit returns an RAII instance of a BacktraceFrameFmt
which can be used
to actually print a frame, and on destruction it will increment the
frame counter.
pub fn finish(&mut self) -> Result
[src]
Completes the backtrace output.
This is currently a no-op but is added for future compatibility with backtrace formats.
Auto Trait Implementations
impl<'a, 'b> !RefUnwindSafe for BacktraceFmt<'a, 'b>
impl<'a, 'b> !Send for BacktraceFmt<'a, 'b>
impl<'a, 'b> !Sync for BacktraceFmt<'a, 'b>
impl<'a, 'b> Unpin for BacktraceFmt<'a, 'b> where
'b: 'a,
'b: 'a,
impl<'a, 'b> !UnwindSafe for BacktraceFmt<'a, 'b>
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,