Trait color_eyre::section::SectionExt
source · pub trait SectionExt: Sized {
// Required method
fn header<C>(self, header: C) -> IndentedSection<C, Self>
where C: Display + Send + Sync + 'static;
}
Expand description
Extension trait for constructing sections with commonly used formats
Required Methods§
sourcefn header<C>(self, header: C) -> IndentedSection<C, Self>
fn header<C>(self, header: C) -> IndentedSection<C, Self>
Add a header to a Section
and indent the body
Details
Bodies are always indented to the same level as error messages and spans. The header is not printed if the display impl of the body produces no output.
Examples
use color_eyre::{eyre::eyre, Section, SectionExt, eyre::Report};
let all_in_header = "header\n body\n body";
let report = Err::<(), Report>(eyre!("an error occurred"))
.section(all_in_header)
.unwrap_err();
let just_header = "header";
let just_body = "body\nbody";
let report2 = Err::<(), Report>(eyre!("an error occurred"))
.section(just_body.header(just_header))
.unwrap_err();
assert_eq!(format!("{:?}", report), format!("{:?}", report2))
Object Safety§
This trait is not object safe.