Trait alloc::fmt::Debug 1.0.0
[−]
[src]
#[lang = "debug_trait"]pub trait Debug { fn fmt(&self, f: &mut Formatter) -> Result<(), Error>; }
? formatting.
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
fn fmt(&self, f: &mut Formatter) -> Result<(), Error>
Formats the value using the given formatter.
Examples
use std::fmt; struct Position { longitude: f32, latitude: f32, } impl fmt::Debug for Position { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { write!(f, "({:?}, {:?})", self.longitude, self.latitude) } } assert_eq!("(1.987, 2.983)".to_owned(), format!("{:?}", Position { longitude: 1.987, latitude: 2.983, }));
Implementations on Foreign Types
impl Debug for UnicodeVersion[src]
impl Debug for ToUppercase[src]
impl Debug for Utf8Lossy[src]
impl Debug for DecodeUtf16Error[src]
impl<I> Debug for DecodeUtf16<I> where
I: Debug + Iterator<Item = u16>, [src]
I: Debug + Iterator<Item = u16>,
impl<'a> Debug for Utf8LossyChunk<'a>[src]
impl Debug for ToLowercase[src]
impl Debug for Ordering[src]
impl Debug for AtomicU64[src]
impl<I> Debug for Cycle<I> where
I: Debug, [src]
I: Debug,
impl<T> Debug for Cell<T> where
T: Copy + Debug, [src]
T: Copy + Debug,
impl<A, B> Debug for Zip<A, B> where
A: Debug,
B: Debug, [src]
A: Debug,
B: Debug,
impl<I> Debug for Cloned<I> where
I: Debug, [src]
I: Debug,
impl<I, P> Debug for SkipWhile<I, P> where
I: Debug, [src]
I: Debug,
impl Debug for AtomicI16[src]
impl Debug for TypeId[src]
impl<T> Debug for UnsafeCell<T> where
T: Debug + ?Sized, [src]
T: Debug + ?Sized,
impl<I, St, F> Debug for Scan<I, St, F> where
I: Debug,
St: Debug, [src]
I: Debug,
St: Debug,
impl Debug for AtomicUsize[src]
impl Debug for BorrowError[src]
impl Debug for TryFromSliceError[src]
impl<'a, A> Debug for IterMut<'a, A> where
A: 'a + Debug, [src]
A: 'a + Debug,
impl Debug for Any + 'static + Send[src]
impl Debug for InvalidSequence[src]
impl<T> Debug for RefCell<T> where
T: Debug + ?Sized, [src]
T: Debug + ?Sized,
impl<H> Debug for BuildHasherDefault<H>[src]
impl Debug for EscapeDebug[src]
impl Debug for CharTryFromError[src]
impl Debug for AtomicU8[src]
impl Debug for Alignment[src]
impl<I, P> Debug for Filter<I, P> where
I: Debug, [src]
I: Debug,
impl<I> Debug for Skip<I> where
I: Debug, [src]
I: Debug,
impl Debug for NoneError[src]
impl Debug for BorrowMutError[src]
impl<I, F> Debug for Map<I, F> where
I: Debug, [src]
I: Debug,
impl Debug for AtomicIsize[src]
impl<T, E> Debug for Result<T, E> where
E: Debug,
T: Debug, [src]
E: Debug,
T: Debug,
impl Debug for TryFromIntError[src]
impl Debug for EscapeDefault[src]
impl Debug for FpCategory[src]
impl<I, F> Debug for FilterMap<I, F> where
I: Debug, [src]
I: Debug,
impl<'a, T> Debug for IterMut<'a, T> where
T: 'a + Debug, [src]
T: 'a + Debug,
impl Debug for AtomicU32[src]
impl Debug for SipHasher[src]
impl<I, U, F> Debug for FlatMap<I, U, F> where
I: Debug,
U: IntoIterator,
<U as IntoIterator>::IntoIter: Debug, [src]
I: Debug,
U: IntoIterator,
<U as IntoIterator>::IntoIter: Debug,
impl Debug for SipHasher13[src]
impl Debug for EscapeUnicode[src]
impl<T> Debug for AtomicPtr<T>[src]
impl<T> Debug for Discriminant<T>[src]
impl Debug for ParseIntError[src]
impl<T> Debug for Wrapping<T> where
T: Debug, [src]
T: Debug,
impl<I> Debug for DecodeUtf8<I> where
I: Iterator<Item = u8> + Debug, [src]
I: Iterator<Item = u8> + Debug,
impl<I, F> Debug for Inspect<I, F> where
I: Debug, [src]
I: Debug,
impl Debug for ParseFloatError[src]
impl Debug for AtomicI32[src]
impl<T> Debug for Once<T> where
T: Debug, [src]
T: Debug,
impl<'b, T> Debug for Ref<'b, T> where
T: Debug + ?Sized, [src]
T: Debug + ?Sized,
impl<Idx> Debug for RangeInclusive<Idx> where
Idx: Debug, [src]
Idx: Debug,
impl Debug for SipHasher24[src]
impl Debug for ParseCharError[src]
impl<T> Debug for NonZero<T> where
T: Zeroable + Debug, [src]
T: Zeroable + Debug,
impl<I> Debug for StepBy<I> where
I: Debug, [src]
I: Debug,
impl Debug for AtomicU16[src]
impl<I> Debug for Enumerate<I> where
I: Debug, [src]
I: Debug,
impl<A, B> Debug for Chain<A, B> where
A: Debug,
B: Debug, [src]
A: Debug,
B: Debug,
impl Debug for AtomicBool[src]
impl<Idx> Debug for RangeToInclusive<Idx> where
Idx: Debug, [src]
Idx: Debug,
impl<T> Debug for Rev<T> where
T: Debug, [src]
T: Debug,
impl<'a, T> Debug for Iter<'a, T> where
T: 'a + Debug, [src]
T: 'a + Debug,
impl<T> Debug for Reverse<T> where
T: Debug, [src]
T: Debug,
impl<T> Debug for IntoIter<T> where
T: Debug, [src]
T: Debug,
impl Debug for Any + 'static[src]
impl Debug for RangeFull[src]
impl Debug for Ordering[src]
impl Debug for AtomicI8[src]
impl<Idx> Debug for RangeFrom<Idx> where
Idx: Debug, [src]
Idx: Debug,
impl<T> Debug for ManuallyDrop<T> where
T: Debug, [src]
T: Debug,
impl<'b, T> Debug for RefMut<'b, T> where
T: Debug + ?Sized, [src]
T: Debug + ?Sized,
impl<I, P> Debug for TakeWhile<I, P> where
I: Debug, [src]
I: Debug,
impl<I> Debug for Take<I> where
I: Debug, [src]
I: Debug,
impl<I> Debug for Peekable<I> where
I: Iterator + Debug,
<I as Iterator>::Item: Debug, [src]
I: Iterator + Debug,
<I as Iterator>::Item: Debug,
impl<Y, R> Debug for GeneratorState<Y, R> where
R: Debug,
Y: Debug, [src]
R: Debug,
Y: Debug,
impl<A> Debug for Repeat<A> where
A: Debug, [src]
A: Debug,
impl<T> Debug for Option<T> where
T: Debug, [src]
T: Debug,
impl<Idx> Debug for Range<Idx> where
Idx: Debug, [src]
Idx: Debug,
impl<T> Debug for PhantomData<T> where
T: ?Sized, [src]
T: ?Sized,
impl<I> Debug for Fuse<I> where
I: Debug, [src]
I: Debug,
impl<A> Debug for IntoIter<A> where
A: Debug, [src]
A: Debug,
impl<'a, A> Debug for Iter<'a, A> where
A: 'a + Debug, [src]
A: 'a + Debug,
impl<T> Debug for Empty<T>[src]
impl Debug for Infallible[src]
impl<Idx> Debug for RangeTo<Idx> where
Idx: Debug, [src]
Idx: Debug,
impl Debug for AtomicI64[src]
Implementors
impl Debug for Excessimpl Debug for Layoutimpl Debug for AllocErrimpl Debug for CannotReallocInPlaceimpl Debug for Heapimpl<T: Debug + ?Sized> Debug for Box<T>impl<T: ?Sized + Debug> Debug for alloc::arc::Weak<T>impl<T: ?Sized + Debug> Debug for Arc<T>impl<T: ?Sized + Debug> Debug for Rc<T>impl<T: ?Sized + Debug> Debug for alloc::rc::Weak<T>impl<'a, T: Ord + Debug> Debug for PeekMut<'a, T>impl<T: Debug + Ord> Debug for BinaryHeap<T>impl<'a, T: 'a + Debug> Debug for alloc::binary_heap::Iter<'a, T>impl<T: Debug> Debug for alloc::binary_heap::IntoIter<T>impl<'a, T: Debug + 'a> Debug for alloc::binary_heap::Drain<'a, T>impl<'a, T: Clone + Ord + Debug> Debug for BinaryHeapPlace<'a, T>impl<'a, K: 'a + Debug, V: 'a + Debug> Debug for alloc::btree_map::Iter<'a, K, V>impl<'a, K: Debug + 'a, V: Debug + 'a> Debug for alloc::btree_map::IterMut<'a, K, V>impl<K: Debug, V: Debug> Debug for alloc::btree_map::IntoIter<K, V>impl<'a, K: 'a + Debug, V: 'a> Debug for Keys<'a, K, V>impl<'a, K: 'a, V: 'a + Debug> Debug for Values<'a, K, V>impl<'a, K: Debug + 'a, V: Debug + 'a> Debug for ValuesMut<'a, K, V>impl<'a, K: 'a + Debug, V: 'a + Debug> Debug for alloc::btree_map::Range<'a, K, V>impl<'a, K: 'a + Debug, V: 'a + Debug> Debug for RangeMut<'a, K, V>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<'a, T: 'a + Debug> Debug for alloc::btree_set::Iter<'a, T>impl<T: Debug> Debug for alloc::btree_set::IntoIter<T>impl<'a, T: Debug + 'a> Debug for alloc::btree_set::Range<'a, T>impl<'a, T: 'a + Debug> Debug for Difference<'a, T>impl<'a, T: 'a + Debug> Debug for SymmetricDifference<'a, T>impl<'a, T: 'a + Debug> Debug for Intersection<'a, T>impl<'a, T: 'a + Debug> Debug for Union<'a, T>impl<T: Debug> Debug for BTreeSet<T>impl<'a> Debug for SplitWhitespace<'a>impl<Ret, A, B, C, D> Debug for extern "C" fn(A, B, C, D, ...) -> Retimpl<Ret, A, B, C, D, E, F, G, H> Debug for extern "C" fn(A, B, C, D, E, F, G, H) -> Retimpl<T5, T6, T7, T8, T9, T10, T11> Debug for (T5, T6, T7, T8, T9, T10, T11) where
T10: Debug,
T11: Debug + ?Sized,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,impl<Ret, A, B, C> Debug for fn(A, B, C) -> Retimpl<T> Debug for [T; 25] where
T: Debug,impl<Ret, A, B, C, D, E, F> Debug for extern "C" fn(A, B, C, D, E, F, ...) -> Retimpl<'a> Debug for CharIndices<'a>impl<Ret, A, B, C, D, E, F, G> Debug for extern "C" fn(A, B, C, D, E, F, G) -> Retimpl<'a, P> Debug for RSplitTerminator<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,impl<Ret, A, B> Debug for unsafe extern "C" fn(A, B) -> Retimpl<T11> Debug for (T11,) where
T11: Debug + ?Sized,impl<Ret, A, B, C, D, E, F> Debug for fn(A, B, C, D, E, F) -> Retimpl<T> Debug for [T; 20] where
T: Debug,impl<Ret, A, B, C, D, E, F, G, H> Debug for extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Retimpl<T8, T9, T10, T11> Debug for (T8, T9, T10, T11) where
T10: Debug,
T11: Debug + ?Sized,
T8: Debug,
T9: Debug,impl<T7, T8, T9, T10, T11> Debug for (T7, T8, T9, T10, T11) where
T10: Debug,
T11: Debug + ?Sized,
T7: Debug,
T8: Debug,
T9: Debug,impl<'a> Debug for Lines<'a>impl<'a, T> Debug for ChunksMut<'a, T> where
T: 'a + Debug,impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Retimpl<'a, T, P> Debug for RSplitNMut<'a, T, P> where
P: FnMut(&T) -> bool,
T: 'a + Debug,impl<Ret, A, B> Debug for extern "C" fn(A, B, ...) -> Retimpl<'a, T> Debug for alloc::slice::IterMut<'a, T> where
T: 'a + Debug,impl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe fn(A, B, C, D, E, F, G, H) -> Retimpl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Retimpl<T> Debug for [T; 0] where
T: Debug,impl<'a> Debug for Arguments<'a>impl<Ret, A, B, C, D> Debug for unsafe fn(A, B, C, D) -> Retimpl<Ret, A, B, C> Debug for unsafe extern "C" fn(A, B, C, ...) -> Retimpl<T> Debug for [T; 30] where
T: Debug,impl<Ret, A, B, C, D, E, F, G, H> Debug for fn(A, B, C, D, E, F, G, H) -> Retimpl<'a, P> Debug for alloc::str::SplitN<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,impl<Ret> Debug for unsafe extern "C" fn() -> Retimpl<T> Debug for [T; 28] where
T: Debug,impl Debug for i8impl<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 + ?Sized,
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,impl<T> Debug for [T; 14] where
T: Debug,impl Debug for SearchStepimpl<Ret, A, B> Debug for extern "C" fn(A, B) -> Retimpl Debug for ()impl<'a, T> Debug for Chunks<'a, T> where
T: 'a + Debug,impl<Ret, A, B, C, D, E> Debug for extern "C" fn(A, B, C, D, E, ...) -> Retimpl<T> Debug for [T; 22] where
T: Debug,impl<'a> Debug for CharSearcher<'a>impl<Ret, A, B, C> Debug for unsafe fn(A, B, C) -> Retimpl<Ret> Debug for fn() -> Retimpl<'a, T, P> Debug for alloc::slice::Split<'a, T, P> where
P: FnMut(&T) -> bool,
T: 'a + Debug,impl<'a, P> Debug for MatchIndices<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,impl<T> Debug for [T; 27] where
T: Debug,impl<Ret, A, B, C, D> Debug for extern "C" fn(A, B, C, D) -> Retimpl<Ret> Debug for unsafe fn() -> Retimpl<Ret, A, B> Debug for unsafe extern "C" fn(A, B, ...) -> Retimpl<T> Debug for [T; 15] where
T: Debug,impl<Ret, A> Debug for unsafe extern "C" fn(A, ...) -> Retimpl<T> Debug for [T; 31] where
T: Debug,impl<T> Debug for [T; 11] where
T: Debug,impl<T> Debug for [T; 17] where
T: Debug,impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, ...) -> Retimpl<Ret, A, B, C, D, E, F> Debug for unsafe fn(A, B, C, D, E, F) -> Retimpl<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) -> Retimpl<'a, T, P> Debug for RSplitMut<'a, T, P> where
P: FnMut(&T) -> bool,
T: 'a + Debug,impl<T> Debug for *const T where
T: ?Sized,impl Debug for u8impl<Ret, A, B, C, D> Debug for unsafe extern "C" fn(A, B, C, D) -> Retimpl<'a, 'b> Debug for StrSearcher<'a, 'b>impl<'a, P> Debug for RMatchIndices<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Retimpl<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 + ?Sized,
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,impl Debug for u16impl<T> Debug for [T; 16] where
T: Debug,impl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Retimpl<'a, P> Debug for SplitTerminator<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,impl<T> Debug for [T; 2] where
T: Debug,impl<T> Debug for [T] where
T: Debug,impl<T> Debug for [T; 32] where
T: Debug,impl<'a, T, P> Debug for alloc::slice::RSplit<'a, T, P> where
P: FnMut(&T) -> bool,
T: 'a + Debug,impl<T> Debug for [T; 13] where
T: Debug,impl Debug for boolimpl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, ...) -> Retimpl<'a> Debug for LinesAny<'a>impl Debug for i128impl<T10, T11> Debug for (T10, T11) where
T10: Debug,
T11: Debug + ?Sized,impl<Ret, A, B, C, D, E, F> Debug for extern "C" fn(A, B, C, D, E, F) -> Retimpl<Ret, A> Debug for unsafe extern "C" fn(A) -> Retimpl Debug for usizeimpl Debug for !impl Debug for u128impl<T> Debug for [T; 23] where
T: Debug,impl Debug for isizeimpl<Ret, A, B, C, D, E, F, G> Debug for unsafe fn(A, B, C, D, E, F, G) -> Retimpl<Ret, A, B, C, D> Debug for fn(A, B, C, D) -> Retimpl<'a, T, P> Debug for alloc::slice::SplitN<'a, T, P> where
P: FnMut(&T) -> bool,
T: 'a + Debug,impl<T> Debug for [T; 12] where
T: Debug,impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Retimpl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, ...) -> Retimpl Debug for strimpl<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 + ?Sized,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,impl<Ret, A> Debug for extern "C" fn(A) -> Retimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for fn(A, B, C, D, E, F, G, H, I) -> Retimpl<Ret, A> Debug for extern "C" fn(A, ...) -> Retimpl<Ret, A, B, C, D, E, F> Debug for unsafe extern "C" fn(A, B, C, D, E, F) -> Retimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, ...) -> Retimpl<Ret, A, B, C, D, E> Debug for unsafe extern "C" fn(A, B, C, D, E) -> Retimpl<Ret, A, B> Debug for fn(A, B) -> Retimpl<Ret, A, B> Debug for unsafe fn(A, B) -> Retimpl<'a, F> Debug for CharPredicateSearcher<'a, F> where
F: FnMut(char) -> bool,impl<T> Debug for [T; 5] where
T: Debug,impl<T> Debug for [T; 10] where
T: Debug,impl<'a, T> Debug for Windows<'a, T> where
T: 'a + Debug,impl<T> Debug for [T; 18] where
T: Debug,impl<T> Debug for [T; 8] where
T: Debug,impl<'a, P> Debug for alloc::str::Split<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,impl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Retimpl<'a, T> Debug for &'a mut T where
T: Debug + ?Sized,impl Debug for Utf8Errorimpl<Ret, A> Debug for unsafe fn(A) -> Retimpl<Ret, A, B, C> Debug for extern "C" fn(A, B, C) -> Retimpl<T> Debug for [T; 24] where
T: Debug,impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I) -> Retimpl<'a, P> Debug for alloc::str::RSplit<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,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) -> Retimpl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L) -> Retimpl Debug for i32impl Debug for i16impl<'a, T, P> Debug for SplitMut<'a, T, P> where
P: FnMut(&T) -> bool,
T: 'a + Debug,impl Debug for i64impl<Ret, A, B, C, D, E, F, G> Debug for extern "C" fn(A, B, C, D, E, F, G, ...) -> Retimpl<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) -> Retimpl<Ret, A, B, C> Debug for unsafe extern "C" fn(A, B, C) -> Retimpl<T> Debug for [T; 9] where
T: Debug,impl Debug for u64impl<'a> Debug for Chars<'a>impl Debug for u32impl<Ret, A, B, C, D, E, F, G, H, I, J, K, L> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K, L, ...) -> Retimpl<T> Debug for [T; 26] where
T: Debug,impl<T> Debug for [T; 7] where
T: Debug,impl<Ret> Debug for extern "C" fn() -> Retimpl<'a, T, P> Debug for alloc::slice::RSplitN<'a, T, P> where
P: FnMut(&T) -> bool,
T: 'a + Debug,impl<'a, P> Debug for RMatches<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,impl<'a, P> Debug for Matches<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,impl<Ret, A> Debug for fn(A) -> Retimpl<Ret, A, B, C, D, E, F, G> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G) -> Retimpl Debug for ParseBoolErrorimpl<Ret, A, B, C> Debug for extern "C" fn(A, B, C, ...) -> Retimpl<T> Debug for [T; 3] where
T: Debug,impl<Ret, A, B, C, D, E, F> Debug for unsafe extern "C" fn(A, B, C, D, E, F, ...) -> Retimpl<T> Debug for [T; 29] where
T: Debug,impl<Ret, A, B, C, D, E, F, G> Debug for fn(A, B, C, D, E, F, G) -> Retimpl<Ret, A, B, C, D, E, F, G, H, I> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I) -> Retimpl<'a, 'b> Debug for CharSliceSearcher<'a, 'b>impl<Ret, A, B, C, D, E> Debug for unsafe fn(A, B, C, D, E) -> Retimpl<'a> Debug for Bytes<'a>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) -> Retimpl<'a, T> Debug for &'a T where
T: Debug + ?Sized,impl<Ret, A, B, C, D, E> Debug for unsafe extern "C" fn(A, B, C, D, E, ...) -> Retimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Retimpl<T> Debug for [T; 4] where
T: Debug,impl<'a, P> Debug for alloc::str::RSplitN<'a, P> where
P: Pattern<'a>,
<P as Pattern<'a>>::Searcher: Debug,impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, ...) -> Retimpl<T4, T5, T6, T7, T8, T9, T10, T11> Debug for (T4, T5, T6, T7, T8, T9, T10, T11) where
T10: Debug,
T11: Debug + ?Sized,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,impl<T> Debug for [T; 21] where
T: Debug,impl<Ret, A, B, C, D, E> Debug for extern "C" fn(A, B, C, D, E) -> Retimpl<Ret, A, B, C, D, E, F, G, H, I, J, K> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H, I, J, K) -> Retimpl<Ret, A, B, C, D, E> Debug for fn(A, B, C, D, E) -> Retimpl<Ret, A, B, C, D> Debug for unsafe extern "C" fn(A, B, C, D, ...) -> Retimpl<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 + ?Sized,
T2: Debug,
T3: Debug,
T4: Debug,
T5: Debug,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,impl<Ret, A, B, C, D, E, F, G, H, I> Debug for unsafe fn(A, B, C, D, E, F, G, H, I) -> Retimpl Debug for charimpl Debug for f32impl<T9, T10, T11> Debug for (T9, T10, T11) where
T10: Debug,
T11: Debug + ?Sized,
T9: Debug,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) -> Retimpl<T> Debug for *mut T where
T: ?Sized,impl Debug for Errorimpl<Ret, A, B, C, D, E, F, G, H> Debug for unsafe extern "C" fn(A, B, C, D, E, F, G, H) -> Retimpl<'a, T> Debug for alloc::slice::Iter<'a, T> where
T: 'a + Debug,impl Debug for f64impl<'a, T, P> Debug for SplitNMut<'a, T, P> where
P: FnMut(&T) -> bool,
T: 'a + Debug,impl<T> Debug for [T; 6] where
T: Debug,impl<Ret, A, B, C, D, E, F, G, H, I, J> Debug for extern "C" fn(A, B, C, D, E, F, G, H, I, J) -> Retimpl<T> Debug for [T; 19] where
T: Debug,impl<T> Debug for [T; 1] where
T: Debug,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) -> Retimpl<T6, T7, T8, T9, T10, T11> Debug for (T6, T7, T8, T9, T10, T11) where
T10: Debug,
T11: Debug + ?Sized,
T6: Debug,
T7: Debug,
T8: Debug,
T9: Debug,impl<'a, B: ?Sized> Debug for Cow<'a, B> where
B: Debug + ToOwned,
<B as ToOwned>::Owned: Debug,impl<'a, T: 'a + Debug> Debug for alloc::linked_list::Iter<'a, T>impl<'a, T: 'a + Debug> Debug for alloc::linked_list::IterMut<'a, T>impl<T: Debug> Debug for alloc::linked_list::IntoIter<T>impl<'a, T: 'a + Debug, F> Debug for alloc::linked_list::DrainFilter<'a, T, F> where
F: FnMut(&mut T) -> bool,impl<T: Debug> Debug for LinkedList<T>impl<'a, T: 'a + Debug> Debug for FrontPlace<'a, T>impl<'a, T: 'a + Debug> Debug for BackPlace<'a, T>impl<'a> Debug for EncodeUtf16<'a>impl Debug for FromUtf8Errorimpl Debug for FromUtf16Errorimpl Debug for Stringimpl Debug for ParseErrorimpl<'a> Debug for alloc::string::Drain<'a>impl<T: Debug> Debug for Vec<T>impl<T: Debug> Debug for alloc::vec::IntoIter<T>impl<'a, T: 'a + Debug> Debug for alloc::vec::Drain<'a, T>impl<'a, T: Debug + 'a> Debug for alloc::vec::PlaceBack<'a, T>impl<'a, I: Debug + Iterator + 'a> Debug for Splice<'a, I> where
I::Item: Debug,impl<'a, T: Debug + 'a, F: Debug> Debug for alloc::vec::DrainFilter<'a, T, F> where
F: FnMut(&mut T) -> bool,impl<'a, T: 'a + Debug> Debug for alloc::vec_deque::Iter<'a, T>impl<'a, T: 'a + Debug> Debug for alloc::vec_deque::IterMut<'a, T>impl<T: Debug> Debug for alloc::vec_deque::IntoIter<T>impl<'a, T: 'a + Debug> Debug for alloc::vec_deque::Drain<'a, T>impl<T: Debug> Debug for VecDeque<T>impl<'a, T: Debug + 'a> Debug for alloc::vec_deque::PlaceBack<'a, T>impl<'a, T: Debug + 'a> Debug for PlaceFront<'a, T>impl<T: Debug> Debug for Bound<T>