Struct color_backtrace::BacktracePrinter[][src]

pub struct BacktracePrinter { /* fields omitted */ }

Pretty-printer for backtraces and PanicInfo structs.

Implementations

impl BacktracePrinter[src]

Builder functions.

pub fn new() -> Self[src]

Alias for BacktracePrinter::default.

pub fn color_scheme(self, colors: ColorScheme) -> Self[src]

Alter the color scheme.

Defaults to ColorScheme::classic().

pub fn message(self, message: impl Into<String>) -> Self[src]

Controls the “greeting” message of the panic.

Defaults to "The application panicked (crashed)".

pub fn verbosity(self, v: Verbosity) -> Self[src]

Controls the verbosity level used when installed as panic handler.

Defaults to Verbosity::from_env().

pub fn lib_verbosity(self, v: Verbosity) -> Self[src]

Controls the lib verbosity level used when formatting user provided traces.

Defaults to Verbosity::lib_from_env().

pub fn strip_function_hash(self, strip: bool) -> Self[src]

Controls whether the hash part of functions is stripped.

Defaults to false.

pub fn print_addresses(self, val: bool) -> Self[src]

Controls whether addresses (or module offsets if available) should be printed.

Defaults to false.

pub fn add_frame_filter(self, filter: Box<FilterCallback>) -> Self[src]

Add a custom filter to the set of frame filters

Filters are run in the order they are added.

Example

use color_backtrace::{default_output_stream, BacktracePrinter};

BacktracePrinter::new()
    .add_frame_filter(Box::new(|frames| {
        frames.retain(|x| matches!(&x.name, Some(n) if !n.starts_with("blabla")))
    }))
    .install(default_output_stream());

pub fn clear_frame_filters(self) -> Self[src]

Clears all filters associated with this printer, including the default filter

impl BacktracePrinter[src]

Routines for putting the panic printer to use.

pub fn install(self, out: impl WriteColor + Sync + Send + 'static)[src]

Install the color_backtrace handler with default settings.

Output streams can be created via default_output_stream() or using any other stream that implements termcolor::WriteColor.

pub fn into_panic_handler(
    self,
    out: impl WriteColor + Sync + Send + 'static
) -> Box<dyn Fn(&PanicInfo<'_>) + Sync + Send + 'static>
[src]

Create a color_backtrace panic handler from this panic printer.

This can be used if you want to combine the handler with other handlers.

pub fn print_trace(
    &self,
    trace: &Backtrace,
    out: &mut impl WriteColor
) -> Result<(), Error>
[src]

Pretty-prints a backtrace::Backtrace to an output stream.

pub fn format_trace_to_string(&self, trace: &Backtrace) -> Result<String, Error>[src]

Pretty-print a backtrace to a String, using VT100 color codes.

pub fn print_panic_info(
    &self,
    pi: &PanicInfo<'_>,
    out: &mut impl WriteColor
) -> Result<(), Error>
[src]

Pretty-prints a PanicInfo struct to an output stream.

Trait Implementations

impl Clone for BacktracePrinter[src]

impl Debug for BacktracePrinter[src]

impl Default for BacktracePrinter[src]

Auto Trait Implementations

Blanket Implementations

impl<T> Any for T where
    T: 'static + ?Sized
[src]

impl<T> Borrow<T> for T where
    T: ?Sized
[src]

impl<T> BorrowMut<T> for T where
    T: ?Sized
[src]

impl<T> From<T> for T[src]

impl<T, U> Into<U> for T where
    U: From<T>, 
[src]

impl<T> ToOwned for T where
    T: Clone
[src]

type Owned = T

The resulting type after obtaining ownership.

impl<T, U> TryFrom<U> for T where
    U: Into<T>, 
[src]

type Error = Infallible

The type returned in the event of a conversion error.

impl<T, U> TryInto<U> for T where
    U: TryFrom<T>, 
[src]

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.