Struct debug3::builders::DebugTuple
source · pub struct DebugTuple<'a> { /* private fields */ }
Expand description
A struct to help with Debug
implementations.
This is useful when you wish to output a formatted tuple as a part of your
Debug::fmt
implementation.
This can be constructed by the Formatter::debug_tuple
method.
Examples
use debug3::{Debug, Formatter};
struct Foo(i32, String);
impl Debug for Foo {
fn fmt(&self, fmt: &mut Formatter) {
fmt.debug_tuple("Foo")
.field(&self.0)
.field(&self.1)
.finish()
}
}
assert_eq!(
debug3::pprint(Foo(10, "Hello World".to_string())),
"Foo(10, \"Hello World\")",
);
Implementations§
source§impl<'a> DebugTuple<'a>
impl<'a> DebugTuple<'a>
sourcepub fn field(&mut self, value: &dyn Debug) -> &mut Self
pub fn field(&mut self, value: &dyn Debug) -> &mut Self
Adds a new field to the generated tuple struct output.
Examples
use debug3::{Debug, Formatter};
struct Foo(i32, String);
impl Debug for Foo {
fn fmt(&self, fmt: &mut Formatter) {
fmt.debug_tuple("Foo")
.field(&self.0) // We add the first field.
.field(&self.1) // We add the second field.
.finish() // We're good to go!
}
}
assert_eq!(
debug3::pprint(Foo(10, "Hello World".to_string())),
"Foo(10, \"Hello World\")",
);
sourcepub fn finish(&mut self)
pub fn finish(&mut self)
Finishes output and returns any error encountered.
Examples
use debug3::{Debug, Formatter};
struct Foo(i32, String);
impl Debug for Foo {
fn fmt(&self, fmt: &mut Formatter) {
fmt.debug_tuple("Foo")
.field(&self.0)
.field(&self.1)
.finish() // You need to call it to "finish" the
// tuple formatting.
}
}
assert_eq!(
debug3::pprint(Foo(10, "Hello World".to_string())),
"Foo(10, \"Hello World\")",
);
Auto Trait Implementations§
impl<'a> RefUnwindSafe for DebugTuple<'a>
impl<'a> Send for DebugTuple<'a>
impl<'a> Sync for DebugTuple<'a>
impl<'a> Unpin for DebugTuple<'a>
impl<'a> !UnwindSafe for DebugTuple<'a>
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more