W3cubDocs

/Rust

Trait collections::fmt::Debug

pub trait Debug {
    fn fmt(&self, &mut Formatter) -> Result<(), Error>;
}

Format trait for the ? character.

Debug should format the output in a programmer-facing, debugging context.

Generally speaking, you should just derive a Debug implementation.

When used with the alternate format specifier #?, the output is pretty-printed.

For more information on formatters, see the module-level documentation.

This trait can be used with #[derive] if all fields implement Debug. When derived for structs, it will use the name of the struct, then {, then a comma-separated list of each field's name and Debug value, then }. For enums, it will use the name of the variant and, if applicable, (, then the Debug values of the fields, then ).

Examples

Deriving an implementation:

#[derive(Debug)]
struct Point {
    x: i32,
    y: i32,
}

let origin = Point { x: 0, y: 0 };

println!("The origin is: {:?}", origin);

Manually implementing:

use std::fmt;

struct Point {
    x: i32,
    y: i32,
}

impl fmt::Debug for Point {
    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
        write!(f, "Point {{ x: {}, y: {} }}", self.x, self.y)
    }
}

let origin = Point { x: 0, y: 0 };

println!("The origin is: {:?}", origin);

This outputs:

The origin is: Point { x: 0, y: 0 }

There are a number of debug_* methods on Formatter to help you with manual implementations, such as debug_struct.

Debug implementations using either derive or the debug builder API on Formatter support pretty printing using the alternate flag: {:#?}.

Pretty printing with #?:

#[derive(Debug)]
struct Point {
    x: i32,
    y: i32,
}

let origin = Point { x: 0, y: 0 };

println!("The origin is: {:#?}", origin);

This outputs:

The origin is: Point {
    x: 0,
    y: 0
}

Required Methods

Formats the value using the given formatter.

Implementors

  • impl Debug for DecodeUtf16Error
  • impl<T> Debug for Wrapping<T> where T: Debug
  • impl<T> Debug for Discriminant<T>
  • impl Debug for RangeFull
  • impl<Idx> Debug for Range<Idx> where Idx: Debug
  • impl<Idx> Debug for RangeFrom<Idx> where Idx: Debug
  • impl<Idx> Debug for RangeTo<Idx> where Idx: Debug
  • impl<Idx> Debug for RangeInclusive<Idx> where Idx: Debug
  • impl<Idx> Debug for RangeToInclusive<Idx> where Idx: Debug
  • impl Debug for core::any::Any + 'static
  • impl Debug for core::any::Any + 'static + Send
  • impl Debug for AtomicBool
  • impl<T> Debug for AtomicPtr<T>
  • impl Debug for BorrowError
  • impl Debug for BorrowMutError
  • impl<T> Debug for Empty<T>
  • impl<I, F> Debug for Map<I, F> where I: Debug
  • impl<I, P> Debug for Filter<I, P> where I: Debug
  • impl<I, F> Debug for FilterMap<I, F> where I: Debug
  • impl<I, P> Debug for SkipWhile<I, P> where I: Debug
  • impl<I, P> Debug for TakeWhile<I, P> where I: Debug
  • impl<I, St, F> Debug for Scan<I, St, F> where I: Debug, St: Debug
  • impl<I, U, F> Debug for FlatMap<I, U, F> where I: Debug,
            U: IntoIterator,
            U::IntoIter: Debug
  • impl<I, F> Debug for Inspect<I, F> where I: Debug
  • impl<'a, T> Debug for collections::slice::Iter<'a, T> where T: 'a + Debug
  • impl<'a, T> Debug for collections::slice::IterMut<'a, T> where T: 'a + Debug
  • impl<'a, T, P> Debug for collections::slice::Split<'a, T, P> where P: FnMut(&T) -> bool,
            T: 'a + Debug
  • impl<'a, T, P> Debug for SplitMut<'a, T, P> where P: FnMut(&T) -> bool,
            T: 'a + Debug
  • impl<'a, T, P> Debug for collections::slice::SplitN<'a, T, P> where P: FnMut(&T) -> bool,
            T: 'a + Debug
  • impl<'a, T, P> Debug for collections::slice::RSplitN<'a, T, P> where P: FnMut(&T) -> bool,
            T: 'a + Debug
  • impl<'a, T, P> Debug for SplitNMut<'a, T, P> where P: FnMut(&T) -> bool,
            T: 'a + Debug
  • impl<'a, T, P> Debug for RSplitNMut<'a, T, P> where P: FnMut(&T) -> bool,
            T: 'a + Debug
  • impl<'a, F> Debug for CharPredicateSearcher<'a, F> where F: FnMut(char) -> bool
  • impl<H> Debug for BuildHasherDefault<H>
  • impl<'a> Debug for Arguments<'a>
  • impl Debug for !
  • impl Debug for bool
  • impl Debug for str
  • impl Debug for char
  • impl<T> Debug for *const T where T: ?Sized
  • impl<T> Debug for *mut T where T: ?Sized
  • impl<T> Debug for [T] where T: Debug
  • impl Debug for ()
  • impl<T> Debug for PhantomData<T> where T: ?Sized
  • impl<T> Debug for Cell<T> where T: Copy + Debug
  • impl<T> Debug for RefCell<T> where T: Debug + ?Sized
  • impl<'b, T> Debug for Ref<'b, T> where T: Debug + ?Sized
  • impl<'b, T> Debug for RefMut<'b, T> where T: Debug + ?Sized
  • impl<T> Debug for UnsafeCell<T> where T: Debug + ?Sized
  • impl Debug for ParseFloatError
  • impl Debug for FpCategory
  • impl Debug for TryFromIntError
  • impl Debug for ParseIntError
  • impl<T> Debug for NonZero<T> where T: Zeroable + Debug
  • impl<Ret> Debug for fn() -> Ret
  • impl<Ret> Debug for extern fn() -> Ret
  • impl<Ret> Debug for unsafe fn() -> Ret
  • impl<Ret> Debug for unsafe extern fn() -> Ret
  • impl<Ret, A> Debug for fn(A) -> Ret
  • impl<Ret, A> Debug for extern fn(A) -> Ret
  • impl<Ret, A> Debug for extern fn(A, ...) -> Ret
  • impl<Ret, A> Debug for unsafe fn(A) -> Ret
  • impl<Ret, A> Debug for unsafe extern fn(A) -> Ret
  • impl<Ret, A> Debug for unsafe extern fn(A, ...) -> Ret
  • impl<Ret, A, B> Debug for fn(A, B) -> Ret
  • impl<Ret, A, B> Debug for extern fn(A, B) -> Ret
  • impl<Ret, A, B> Debug for extern fn(A, B, ...) -> Ret
  • impl<Ret, A, B> Debug for unsafe fn(A, B) -> Ret
  • impl<Ret, A, B> Debug for unsafe extern fn(A, B) -> Ret
  • impl<Ret, A, B> Debug for unsafe extern fn(A, B, ...) -> Ret
  • impl<Ret, A, B, C> Debug for fn(A, B, C) -> Ret
  • impl<Ret, A, B, C> Debug for extern fn(A, B, C) -> Ret
  • impl<Ret, A, B, C> Debug for extern fn(A, B, C, ...) -> Ret
  • impl<Ret, A, B, C> Debug for unsafe fn(A, B, C) -> Ret
  • impl<Ret, A, B, C> Debug for unsafe extern fn(A, B, C) -> Ret
  • impl<Ret, A, B, C> Debug for unsafe extern fn(A, B, C, ...) -> Ret
  • impl<Ret, A, B, C, D> Debug for fn(A, B, C, D) -> Ret
  • impl<Ret, A, B, C, D> Debug for extern fn(A, B, C, D) -> Ret
  • impl<Ret, A, B, C, D> Debug for extern fn(A, B, C, D, ...) -> Ret
  • impl<Ret, A, B, C, D> Debug for unsafe fn(A, B, C, D) -> Ret
  • impl<Ret, A, B, C, D> Debug for unsafe extern fn(A, B, C, D) -> Ret
  • impl<Ret, A, B, C, D> Debug for unsafe extern fn(A, B, C, D, ...) -> Ret
  • impl<Ret, A, B, C, D, E> Debug for fn(A, B, C, D, E) -> Ret
  • impl<Ret, A, B, C, D, E> Debug for extern fn(A, B, C, D, E) -> Ret
  • impl<Ret, A, B, C, D, E> Debug for extern fn(A, B, C, D, E, ...) -> Ret
  • impl<Ret, A, B, C, D, E> Debug for unsafe fn(A, B, C, D, E) -> Ret
  • impl<Ret, A, B, C, D, E> Debug for unsafe extern fn(A, B, C, D, E) -> Ret
  • impl<Ret, A, B, C, D, E> Debug for unsafe extern fn(A, B, C, D, E, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F> Debug for fn(A, B, C, D, E, F) -> Ret
  • impl<Ret, A, B, C, D, E, F> Debug for extern fn(A, B, C, D, E, F) -> Ret
  • impl<Ret, A, B, C, D, E, F> Debug for extern fn(A, B, C, D, E, F, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F> Debug for unsafe fn(A, B, C, D, E, F) -> Ret
  • impl<Ret, A, B, C, D, E, F> Debug for unsafe extern fn(A, B, C, D, E, F) -> Ret
  • impl<Ret, A, B, C, D, E, F> Debug for unsafe extern fn(A, B, C, D, E, F, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G> Debug for fn(A, B, C, D, E, F, G) -> Ret
  • impl<Ret, A, B, C, D, E, F, G> Debug for extern fn(A, B, C, D, E, F, G) -> Ret
  • impl<Ret, A, B, C, D, E, F, G> Debug for extern fn(A, B, C, D, E, F, G, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G> Debug for unsafe fn(A, B, C, D, E, F, G) -> Ret
  • impl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern fn(A, B, C, D, E, F, G) -> Ret
  • impl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern fn(A, B, C, D, E, F, G, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H> Debug for fn(A, B, C, D, E, F, G, H) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H> Debug for extern fn(A, B, C, D, E, F, G, H) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H> Debug for extern fn(A, B, C, D, E, F, G, H, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe fn(A, B, C, D, E, F, G, H) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern fn(A, B, C, D, E, F, G, H) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern fn(A, B, C, D, E, F, G, H, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I> Debug for fn(A, B, C, D, E, F, G, H, I) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern fn(A, B, C, D, E, F, G, H, I) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe fn(A, B, C, D, E, F, G, H, I) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern fn(A, B, C, D, E, F, G, H, I) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern fn(A, B, C, D, E, F, G, H, I, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for fn(A, B, C, D, E, F, G, H, I, J) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern fn(A, B, C, D, E, F, G, H, I, J) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern fn(A, B, C, D, E, F, G, H, I, J) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern fn(A, B, C, D, E, F, G, H, I, J, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern fn(A, B, C, D, E, F, G, H, I, J, K) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Ret
  • impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Ret
  • impl Debug for core::cmp::Ordering
  • impl Debug for TypeId
  • impl<T> Debug for [T; 0] where T: Debug
  • impl<T> Debug for [T; 1] where T: Debug
  • impl<T> Debug for [T; 2] where T: Debug
  • impl<T> Debug for [T; 3] where T: Debug
  • impl<T> Debug for [T; 4] where T: Debug
  • impl<T> Debug for [T; 5] where T: Debug
  • impl<T> Debug for [T; 6] where T: Debug
  • impl<T> Debug for [T; 7] where T: Debug
  • impl<T> Debug for [T; 8] where T: Debug
  • impl<T> Debug for [T; 9] where T: Debug
  • impl<T> Debug for [T; 10] where T: Debug
  • impl<T> Debug for [T; 11] where T: Debug
  • impl<T> Debug for [T; 12] where T: Debug
  • impl<T> Debug for [T; 13] where T: Debug
  • impl<T> Debug for [T; 14] where T: Debug
  • impl<T> Debug for [T; 15] where T: Debug
  • impl<T> Debug for [T; 16] where T: Debug
  • impl<T> Debug for [T; 17] where T: Debug
  • impl<T> Debug for [T; 18] where T: Debug
  • impl<T> Debug for [T; 19] where T: Debug
  • impl<T> Debug for [T; 20] where T: Debug
  • impl<T> Debug for [T; 21] where T: Debug
  • impl<T> Debug for [T; 22] where T: Debug
  • impl<T> Debug for [T; 23] where T: Debug
  • impl<T> Debug for [T; 24] where T: Debug
  • impl<T> Debug for [T; 25] where T: Debug
  • impl<T> Debug for [T; 26] where T: Debug
  • impl<T> Debug for [T; 27] where T: Debug
  • impl<T> Debug for [T; 28] where T: Debug
  • impl<T> Debug for [T; 29] where T: Debug
  • impl<T> Debug for [T; 30] where T: Debug
  • impl<T> Debug for [T; 31] where T: Debug
  • impl<T> Debug for [T; 32] where T: Debug
  • impl Debug for core::sync::atomic::Ordering
  • impl Debug for AtomicI8
  • impl Debug for AtomicU8
  • impl Debug for AtomicI16
  • impl Debug for AtomicU16
  • impl Debug for AtomicI32
  • impl Debug for AtomicU32
  • impl Debug for AtomicI64
  • impl Debug for AtomicU64
  • impl Debug for AtomicIsize
  • impl Debug for AtomicUsize
  • impl Debug for BorrowState
  • impl Debug for CharTryFromError
  • impl Debug for EscapeUnicode
  • impl Debug for EscapeDefault
  • impl Debug for EscapeDebug
  • impl<I> Debug for DecodeUtf8<I> where I: Iterator<Item=u8> + Debug
  • impl Debug for InvalidSequence
  • impl<A, R> Debug for StepBy<A, R> where A: Debug, R: Debug
  • impl<A> Debug for Repeat<A> where A: Debug
  • impl<T> Debug for Once<T> where T: Debug
  • impl<T> Debug for Rev<T> where T: Debug
  • impl<I> Debug for Cloned<I> where I: Debug
  • impl<I> Debug for Cycle<I> where I: Debug
  • impl<A, B> Debug for Chain<A, B> where A: Debug, B: Debug
  • impl<A, B> Debug for Zip<A, B> where A: Debug, B: Debug
  • impl<I> Debug for Enumerate<I> where I: Debug
  • impl<I> Debug for Peekable<I> where I: Iterator + Debug, I::Item: Debug
  • impl<I> Debug for Skip<I> where I: Debug
  • impl<I> Debug for Take<I> where I: Debug
  • impl<I> Debug for Fuse<I> where I: Debug
  • impl<T> Debug for Option<T> where T: Debug
  • impl<'a, A> Debug for core::option::Iter<'a, A> where A: 'a + Debug
  • impl<'a, A> Debug for core::option::IterMut<'a, A> where A: 'a + Debug
  • impl<A> Debug for core::option::IntoIter<A> where A: Debug
  • impl<T, E> Debug for Result<T, E> where E: Debug, T: Debug
  • impl<'a, T> Debug for core::result::Iter<'a, T> where T: 'a + Debug
  • impl<'a, T> Debug for core::result::IterMut<'a, T> where T: 'a + Debug
  • impl<T> Debug for core::result::IntoIter<T> where T: Debug
  • impl<'a, T> Debug for Windows<'a, T> where T: 'a + Debug
  • impl<'a, T> Debug for Chunks<'a, T> where T: 'a + Debug
  • impl<'a, T> Debug for ChunksMut<'a, T> where T: 'a + Debug
  • impl Debug for SearchStep
  • impl<'a> Debug for CharSearcher<'a>
  • impl<'a, 'b> Debug for CharSliceSearcher<'a, 'b>
  • impl<'a, 'b> Debug for StrSearcher<'a, 'b>
  • impl Debug for ParseBoolError
  • impl Debug for Utf8Error
  • impl<'a> Debug for Chars<'a>
  • impl<'a> Debug for CharIndices<'a>
  • impl<'a> Debug for Bytes<'a>
  • impl<'a, P> Debug for collections::str::Split<'a, P> where P: Pattern<'a>, P::Searcher: Debug
  • impl<'a, P> Debug for RSplit<'a, P> where P: Pattern<'a>, P::Searcher: Debug
  • impl<'a, P> Debug for SplitTerminator<'a, P> where P: Pattern<'a>,
            P::Searcher: Debug
  • impl<'a, P> Debug for RSplitTerminator<'a, P> where P: Pattern<'a>,
            P::Searcher: Debug
  • impl<'a, P> Debug for collections::str::SplitN<'a, P> where P: Pattern<'a>, P::Searcher: Debug
  • impl<'a, P> Debug for collections::str::RSplitN<'a, P> where P: Pattern<'a>, P::Searcher: Debug
  • impl<'a, P> Debug for MatchIndices<'a, P> where P: Pattern<'a>,
            P::Searcher: Debug
  • impl<'a, P> Debug for RMatchIndices<'a, P> where P: Pattern<'a>,
            P::Searcher: Debug
  • impl<'a, P> Debug for Matches<'a, P> where P: Pattern<'a>, P::Searcher: Debug
  • impl<'a, P> Debug for RMatches<'a, P> where P: Pattern<'a>, P::Searcher: Debug
  • impl<'a> Debug for Lines<'a>
  • impl<'a> Debug for LinesAny<'a>
  • impl Debug for SipHasher13
  • impl Debug for SipHasher24
  • impl Debug for SipHasher
  • impl Debug for Alignment
  • impl Debug for isize
  • impl Debug for usize
  • impl Debug for i8
  • impl Debug for u8
  • impl Debug for i16
  • impl Debug for u16
  • impl Debug for i32
  • impl Debug for u32
  • impl Debug for i64
  • impl Debug for u64
  • impl Debug for i128
  • impl Debug for u128
  • impl Debug for Error
  • impl<'a, T> Debug for &'a T where T: Debug + ?Sized
  • impl<'a, T> Debug for &'a mut T where T: Debug + ?Sized
  • impl Debug for f32
  • impl Debug for f64
  • impl<T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T0, T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where T0: Debug,
            T1: Debug,
            T10: Debug,
            T11: Debug,
            T2: Debug,
            T3: Debug,
            T4: Debug,
            T5: Debug,
            T6: Debug,
            T7: Debug,
            T8: Debug,
            T9: Debug
  • impl<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where T1: Debug,
            T10: Debug,
            T11: Debug,
            T2: Debug,
            T3: Debug,
            T4: Debug,
            T5: Debug,
            T6: Debug,
            T7: Debug,
            T8: Debug,
            T9: Debug
  • impl<T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T2, T3, T4, T5, T6, T7, T8, T9, T10, T11) where T10: Debug,
            T11: Debug,
            T2: Debug,
            T3: Debug,
            T4: Debug,
            T5: Debug,
            T6: Debug,
            T7: Debug,
            T8: Debug,
            T9: Debug
  • impl<T3, T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T3, T4, T5, T6, T7, T8, T9, T10, T11) where T10: Debug,
            T11: Debug,
            T3: Debug,
            T4: Debug,
            T5: Debug,
            T6: Debug,
            T7: Debug,
            T8: Debug,
            T9: Debug
  • impl<T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T4, T5, T6, T7, T8, T9, T10, T11) where T10: Debug,
            T11: Debug,
            T4: Debug,
            T5: Debug,
            T6: Debug,
            T7: Debug,
            T8: Debug,
            T9: Debug
  • impl<T5, T6, T7, T8, T9, T10, T11> Debug for (T5, T6, T7, T8, T9, T10, T11) where T10: Debug,
            T11: Debug,
            T5: Debug,
            T6: Debug,
            T7: Debug,
            T8: Debug,
            T9: Debug
  • impl<T6, T7, T8, T9, T10, T11> Debug for (T6, T7, T8, T9, T10, T11) where T10: Debug,
            T11: Debug,
            T6: Debug,
            T7: Debug,
            T8: Debug,
            T9: Debug
  • impl<T7, T8, T9, T10, T11> Debug for (T7, T8, T9, T10, T11) where T10: Debug,
            T11: Debug,
            T7: Debug,
            T8: Debug,
            T9: Debug
  • impl<T8, T9, T10, T11> Debug for (T8, T9, T10, T11) where T10: Debug,
            T11: Debug,
            T8: Debug,
            T9: Debug
  • impl<T9, T10, T11> Debug for (T9, T10, T11) where T10: Debug,
            T11: Debug,
            T9: Debug
  • impl<T10, T11> Debug for (T10, T11) where T10: Debug, T11: Debug
  • impl<T11> Debug for (T11,) where T11: Debug
  • impl<T> Debug for Box<T> where T: Debug + ?Sized
  • impl<T> Debug for alloc::arc::Weak<T> where T: Debug + ?Sized
  • impl<T> Debug for Arc<T> where T: Debug + ?Sized
  • impl<T> Debug for Rc<T> where T: Debug + ?Sized
  • impl<T> Debug for alloc::rc::Weak<T> where T: Debug + ?Sized
  • impl<T: Debug + Ord> Debug for BinaryHeap<T>
  • impl<'a, K: 'a + Debug + Ord, V: 'a + Debug> Debug for Entry<'a, K, V>
  • impl<'a, K: 'a + Debug + Ord, V: 'a> Debug for VacantEntry<'a, K, V>
  • impl<'a, K: 'a + Debug + Ord, V: 'a + Debug> Debug for OccupiedEntry<'a, K, V>
  • impl<K: Debug, V: Debug> Debug for BTreeMap<K, V>
  • impl<T: Debug> Debug for BTreeSet<T>
  • impl<'a, B: ?Sized> Debug for Cow<'a, B> where B: Debug + ToOwned,
            B::Owned: Debug
  • impl<E: CLike + Debug> Debug for EnumSet<E>
  • impl<T: Debug> Debug for LinkedList<T>
  • impl Debug for FromUtf8Error
  • impl Debug for FromUtf16Error
  • impl Debug for String
  • impl Debug for ParseError
  • impl<T: Debug> Debug for Vec<T>
  • impl<T: Debug> Debug for collections::vec::IntoIter<T>
  • impl<T: Debug> Debug for VecDeque<T>
  • impl<T: Debug> Debug for Bound<T>

© 2010 The Rust Project Developers
Licensed under the Apache License, Version 2.0 or the MIT license, at your option.
https://doc.rust-lang.org/collections/fmt/trait.Debug.html