Struct std::fmt::DebugMap 1.2.0
[−]
[src]
#[must_use]pub struct DebugMap<'a, 'b> where
'b: 'a, { /* fields omitted */ }
A struct to help with fmt::Debug
implementations.
This is useful when you wish to output a formatted map as a part of your
Debug::fmt
implementation.
This can be constructed by the
Formatter::debug_map
method.
Examples
use std::fmt; struct Foo(Vec<(String, i32)>); impl fmt::Debug for Foo { fn fmt(&self, fmt: &mut fmt::Formatter) -> fmt::Result { fmt.debug_map().entries(self.0.iter().map(|&(ref k, ref v)| (k, v))).finish() } } // prints "{"A": 10, "B": 11}" println!("{:?}", Foo(vec![("A".to_string(), 10), ("B".to_string(), 11)]));Run
Methods
impl<'a, 'b> DebugMap<'a, 'b> where
'b: 'a,
[src]
'b: 'a,
pub fn entry(&mut self, key: &Debug, value: &Debug) -> &mut DebugMap<'a, 'b>
[src]
Adds a new entry to the map output.
pub fn entries<K, V, I>(&mut self, entries: I) -> &mut DebugMap<'a, 'b> where
I: IntoIterator<Item = (K, V)>,
K: Debug,
V: Debug,
[src]
I: IntoIterator<Item = (K, V)>,
K: Debug,
V: Debug,
Adds the contents of an iterator of entries to the map output.
pub fn finish(&mut self) -> Result<(), Error>
[src]
Finishes output and returns any error encountered.