terminator

Crates.ioterminator
lib.rsterminator
version0.3.2
sourcesrc
created_at2019-09-17 00:12:32.831838
updated_at2024-11-17 10:57:48.147415
descriptionFormatter for pretty panics and errors
homepage
repositoryhttps://github.com/rkuklik/terminator
max_upload_size
id165326
size62,957
rkuklik (rkuklik)

documentation

README

terminator

Rust library to provide fancy formatting for errors and backtraces. Based of and inspired by color-eyre. It is intended to be used in binary applications, not as error type in libraries.

Usage

To display pretty errors from your main function, you can just switch your error type to terminator::Terminator. However, to customise the appearance and behaviour of errors or to pretty print panics, set up your main function as below:

fn main() -> Result<(), terminator::Terminator> {
    terminator::Config::new()
        // modify config if you so wish
        // and install config (setting up panic hook)
        .install()?;

    Ok(())
}

Feature flags

Terminator can bundle support for common error trait object libraries like anyhow and eyre. Setting respective flags will enable conversions and ? operator for Terminator. By default, Terminator is backed by Box<dyn Error>.

Following flags are provided:

  • anyhow: use anyhow::Error as backend for Terminator (conflicts with eyre feature)
  • eyre: use eyre::Report as backend for Terminator (conflicts with anyhow feature)
  • compat: enable Compat struct as bridge between eyre and anyhow if both are used
Commit count: 50

cargo fmt