[−][src]Crate indenter
A wrapper for the fmt::Write
objects that efficiently appends indentation after every newline
Setup
Add this to your Cargo.toml
:
[dependencies]
indenter = "0.2"
Example
use std::error::Error; use core::fmt::{self, Write}; use indenter::indented; struct ErrorReporter<'a>(&'a dyn Error); impl fmt::Debug for ErrorReporter<'_> { fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { let mut source = Some(self.0); let mut i = 0; while let Some(error) = source { writeln!(f)?; write!(indented(f).ind(i), "{}", error)?; source = error.source(); i += 1; } Ok(()) } }
Structs
Indented | Helper struct for efficiently indenting multi line display implementations |
Enums
Format | The set of supported formats for indentation |
Functions
indented | Helper function for creating a default indenter |
Type Definitions
Inserter | A callback for |