#[repr(transparent)]
pub struct Formatter<'a> { /* private fields */ }
Expand description

Tool for formatting, used within DebugPls implementations

Implementations

Writes a wrap expression into the formatter. This is typically reserved for more advanced uses

Creates a DebugStruct builder designed to assist with creation of DebugPls implementations for structs.

Examples
use dbg_pls::{pretty, DebugPls, Formatter};

struct Foo {
    bar: i32,
    baz: String,
}

impl DebugPls for Foo {
    fn fmt(&self, f: Formatter) {
        f.debug_struct("Foo")
            .field("bar", &self.bar)
            .field("baz", &self.baz)
            .finish()
    }
}
let value = Foo {
    bar: 10,
    baz: "Hello World".to_string(),
};
assert_eq!(
    format!("{}", pretty(&value)),
    "Foo { bar: 10, baz: \"Hello World\" }",
);

Creates a DebugTuple builder designed to assist with creation of DebugPls implementations for tuples.

Examples
use dbg_pls::{pretty, DebugPls, Formatter};

struct Foo(i32, String);

impl DebugPls for Foo {
    fn fmt(&self, f: Formatter) {
        f.debug_tuple()
            .field(&self.0)
            .field(&self.1)
            .finish()
    }
}

let value = Foo(10, "Hello".to_string());
assert_eq!(format!("{}", pretty(&value)), "(10, \"Hello\")");

Creates a DebugTupleStruct builder designed to assist with creation of DebugPls implementations for tuple structs.

Examples
use dbg_pls::{pretty, DebugPls, Formatter};

struct Foo(i32, String);

impl DebugPls for Foo {
    fn fmt(&self, f: Formatter) {
        f.debug_tuple_struct("Foo")
            .field(&self.0)
            .field(&self.1)
            .finish()
    }
}

let value = Foo(10, "Hello".to_string());
assert_eq!(format!("{}", pretty(&value)), "Foo(10, \"Hello\")");

Creates a DebugList builder designed to assist with creation of DebugPls implementations for list-like structures.

Examples
use dbg_pls::{pretty, DebugPls, Formatter};

struct Foo(Vec<i32>);

impl DebugPls for Foo {
    fn fmt(&self, f: Formatter<'_>) {
        f.debug_list().entries(&self.0).finish()
    }
}

let value = Foo(vec![10, 11]);
assert_eq!(format!("{}", pretty(&value)), "[10, 11]");

Creates a DebugMap builder designed to assist with creation of DebugPls implementations for maps.

Examples
use dbg_pls::{pretty, DebugPls, Formatter};
use std::collections::BTreeMap;

struct Foo(BTreeMap<String, i32>);

impl DebugPls for Foo {
    fn fmt(&self, f: Formatter) {
        f.debug_map().entries(&self.0).finish()
    }
}
let mut value = Foo(BTreeMap::from([
    ("Hello".to_string(), 5),
    ("World".to_string(), 10),
]));
assert_eq!(
    format!("{}", pretty(&value)),
"{
    [\"Hello\"] = 5;
    [\"World\"] = 10;
}",
);

Creates a DebugSet builder designed to assist with creation of DebugPls implementations for sets.

Examples
use dbg_pls::{pretty, DebugPls, Formatter};
use std::collections::BTreeSet;

struct Foo(BTreeSet<String>);

impl DebugPls for Foo {
    fn fmt(&self, f: Formatter) {
        f.debug_set().entries(&self.0).finish()
    }
}
let mut value = Foo(BTreeSet::from([
    "Hello".to_string(),
    "World".to_string(),
]));
assert_eq!(
    format!("{}", pretty(&value)),
"{
    \"Hello\";
    \"World\"
}",
);

Writes an identifier into the formatter. Useful for unit structs/variants

Examples
use dbg_pls::{pretty, DebugPls, Formatter};

struct Foo;

impl DebugPls for Foo {
    fn fmt(&self, f: Formatter<'_>) {
        f.debug_ident("Foo");
    }
}

assert_eq!(format!("{}", pretty(&Foo)), "Foo");

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.