Trait frame_support::dispatch::fmt::Debug 1.0.0[−][src]
Expand description
?
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
derive
d 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
enum
s, it will use the name of the variant and, if applicable, (
, then the
Debug
values of the fields, then )
.
Stability
Derived Debug
formats are not stable, and so may change with future Rust
versions. Additionally, Debug
implementations of types provided by the
standard library (libstd
, libcore
, liballoc
, etc.) are not stable, and
may also change with future Rust versions.
Examples
Deriving an implementation:
#[derive(Debug)] struct Point { x: i32, y: i32, } let origin = Point { x: 0, y: 0 }; assert_eq!(format!("The origin is: {:?}", origin), "The origin is: Point { x: 0, y: 0 }");
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 { f.debug_struct("Point") .field("x", &self.x) .field("y", &self.y) .finish() } } let origin = Point { x: 0, y: 0 }; assert_eq!(format!("The origin is: {:?}", origin), "The origin is: Point { x: 0, y: 0 }");
There are a number of helper methods on the Formatter
struct 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 }; assert_eq!(format!("The origin is: {:#?}", origin), "The origin is: Point { x: 0, y: 0, }");
Required methods
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 { f.debug_tuple("") .field(&self.longitude) .field(&self.latitude) .finish() } } let position = Position { longitude: 1.987, latitude: 2.983 }; assert_eq!(format!("{:?}", position), "(1.987, 2.983)"); assert_eq!(format!("{:#?}", position), "( 1.987, 2.983, )");
Trait Implementations
Implementations on Foreign Types
1.16.0[src]impl<'_, T, S> Debug for Difference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for Difference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
1.16.0[src]impl<'_, T, S> Debug for SymmetricDifference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for SymmetricDifference<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
1.16.0[src]impl<'_, T, S> Debug for Intersection<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
impl<'_, T, S> Debug for Intersection<'_, T, S> where
T: Debug + Eq + Hash,
S: BuildHasher,
1.9.0[src]impl<I, U, F> Debug for FlatMap<I, U, F> where
I: Debug,
U: IntoIterator,
<U as IntoIterator>::IntoIter: Debug,
impl<I, U, F> Debug for FlatMap<I, U, F> where
I: Debug,
U: IntoIterator,
<U as IntoIterator>::IntoIter: Debug,
impl<'a, R> Debug for SpanRef<'a, R> where
R: Debug + LookupSpan<'a>,
<R as LookupSpan<'a>>::Data: Debug,
impl<'a, R> Debug for SpanRef<'a, R> where
R: Debug + LookupSpan<'a>,
<R as LookupSpan<'a>>::Data: Debug,
impl<'r, 't> Debug for CaptureMatches<'r, 't>
impl<'r, 't> Debug for CaptureMatches<'r, 't>
impl Debug for Regex
impl Debug for Regex
impl<'r, 't> Debug for CaptureMatches<'r, 't>
impl<'r, 't> Debug for CaptureMatches<'r, 't>
impl<'c, 't> Debug for SubCaptureMatches<'c, 't> where
't: 'c,
impl<'c, 't> Debug for SubCaptureMatches<'c, 't> where
't: 'c,
impl<'c, 't> Debug for SubCaptureMatches<'c, 't> where
't: 'c,
impl<'c, 't> Debug for SubCaptureMatches<'c, 't> where
't: 'c,
impl Debug for Regex
impl Debug for Regex
impl<'s, 'h> Debug for FindIter<'s, 'h>
impl<'s, 'h> Debug for FindIter<'s, 'h>
impl<'a> Debug for ClassUnicodeIter<'a>
impl<'a> Debug for ClassUnicodeIter<'a>
impl Debug for Style
impl Debug for Style
Styles have a special Debug
implementation that only shows the fields that
are set. Fields that haven’t been touched aren’t included in the output.
This behaviour gets bypassed when using the alternate formatting mode
format!("{:#?}")
.
use ansi_term::Colour::{Red, Blue}; assert_eq!("Style { fg(Red), on(Blue), bold, italic }", format!("{:?}", Red.on(Blue).bold().italic()));
impl<S> Debug for SerdeMapVisitor<S> where
S: Debug + SerializeMap,
<S as SerializeMap>::Error: Debug,
impl<S> Debug for SerdeMapVisitor<S> where
S: Debug + SerializeMap,
<S as SerializeMap>::Error: Debug,
impl<S> Debug for SerdeStructVisitor<S> where
S: Debug + SerializeStruct,
<S as SerializeStruct>::Error: Debug,
impl<S> Debug for SerdeStructVisitor<S> where
S: Debug + SerializeStruct,
<S as SerializeStruct>::Error: Debug,
The Debug
output of the ISO week w
is the same as
d.format("%G-W%V")
where d
is any NaiveDate
value in that week.
Example
use chrono::{NaiveDate, Datelike}; assert_eq!(format!("{:?}", NaiveDate::from_ymd(2015, 9, 5).iso_week()), "2015-W36"); assert_eq!(format!("{:?}", NaiveDate::from_ymd( 0, 1, 3).iso_week()), "0000-W01"); assert_eq!(format!("{:?}", NaiveDate::from_ymd(9999, 12, 31).iso_week()), "9999-W52");
ISO 8601 requires an explicit sign for years before 1 BCE or after 9999 CE.
assert_eq!(format!("{:?}", NaiveDate::from_ymd( 0, 1, 2).iso_week()), "-0001-W52"); assert_eq!(format!("{:?}", NaiveDate::from_ymd(10000, 12, 31).iso_week()), "+10000-W52");
The Debug
output of the naive date and time dt
is the same as
dt.format("%Y-%m-%dT%H:%M:%S%.f")
.
The string printed can be readily parsed via the parse
method on str
.
It should be noted that, for leap seconds not on the minute boundary, it may print a representation not distinguishable from non-leap seconds. This doesn’t matter in practice, since such leap seconds never happened. (By the time of the first leap second on 1972-06-30, every time zone offset around the world has standardized to the 5-minute alignment.)
Example
use chrono::NaiveDate; let dt = NaiveDate::from_ymd(2016, 11, 15).and_hms(7, 39, 24); assert_eq!(format!("{:?}", dt), "2016-11-15T07:39:24");
Leap seconds may also be used.
let dt = NaiveDate::from_ymd(2015, 6, 30).and_hms_milli(23, 59, 59, 1_500); assert_eq!(format!("{:?}", dt), "2015-06-30T23:59:60.500");
The Debug
output of the naive date d
is the same as
d.format("%Y-%m-%d")
.
The string printed can be readily parsed via the parse
method on str
.
Example
use chrono::NaiveDate; assert_eq!(format!("{:?}", NaiveDate::from_ymd(2015, 9, 5)), "2015-09-05"); assert_eq!(format!("{:?}", NaiveDate::from_ymd( 0, 1, 1)), "0000-01-01"); assert_eq!(format!("{:?}", NaiveDate::from_ymd(9999, 12, 31)), "9999-12-31");
ISO 8601 requires an explicit sign for years before 1 BCE or after 9999 CE.
assert_eq!(format!("{:?}", NaiveDate::from_ymd( -1, 1, 1)), "-0001-01-01"); assert_eq!(format!("{:?}", NaiveDate::from_ymd(10000, 12, 31)), "+10000-12-31");
The Debug
output of the naive time t
is the same as
t.format("%H:%M:%S%.f")
.
The string printed can be readily parsed via the parse
method on str
.
It should be noted that, for leap seconds not on the minute boundary, it may print a representation not distinguishable from non-leap seconds. This doesn’t matter in practice, since such leap seconds never happened. (By the time of the first leap second on 1972-06-30, every time zone offset around the world has standardized to the 5-minute alignment.)
Example
use chrono::NaiveTime; assert_eq!(format!("{:?}", NaiveTime::from_hms(23, 56, 4)), "23:56:04"); assert_eq!(format!("{:?}", NaiveTime::from_hms_milli(23, 56, 4, 12)), "23:56:04.012"); assert_eq!(format!("{:?}", NaiveTime::from_hms_micro(23, 56, 4, 1234)), "23:56:04.001234"); assert_eq!(format!("{:?}", NaiveTime::from_hms_nano(23, 56, 4, 123456)), "23:56:04.000123456");
Leap seconds may also be used.
assert_eq!(format!("{:?}", NaiveTime::from_hms_milli(6, 59, 59, 1_500)), "06:59:60.500");
impl<Number, Hash> Debug for ChangesTrieConfigurationRange<Number, Hash> where
Hash: Debug,
Number: Debug,
impl<Number, Hash> Debug for ChangesTrieConfigurationRange<Number, Hash> where
Hash: Debug,
Number: Debug,
impl<I, T> Debug for CountedListWriter<I, T> where
I: Serialize<Error = Error> + Debug,
T: Debug + IntoIterator<Item = I>,
impl<I, T> Debug for CountedListWriter<I, T> where
I: Serialize<Error = Error> + Debug,
T: Debug + IntoIterator<Item = I>,
impl<X> Debug for WeightedIndex<X> where
X: Debug + SampleUniform + PartialOrd<X>,
<X as SampleUniform>::Sampler: Debug,
impl<X> Debug for WeightedIndex<X> where
X: Debug + SampleUniform + PartialOrd<X>,
<X as SampleUniform>::Sampler: Debug,
impl<X> Debug for Uniform<X> where
X: Debug + SampleUniform,
<X as SampleUniform>::Sampler: Debug,
impl<X> Debug for Uniform<X> where
X: Debug + SampleUniform,
<X as SampleUniform>::Sampler: Debug,
impl<R, Rsdr> Debug for ReseedingRng<R, Rsdr> where
R: Debug + BlockRngCore + SeedableRng,
Rsdr: Debug + RngCore,
impl<R, Rsdr> Debug for ReseedingRng<R, Rsdr> where
R: Debug + BlockRngCore + SeedableRng,
Rsdr: Debug + RngCore,
impl<R, Rsdr> Debug for ReseedingRng<R, Rsdr> where
R: Debug + BlockRngCore + SeedableRng,
Rsdr: Debug + RngCore,
impl<R, Rsdr> Debug for ReseedingRng<R, Rsdr> where
R: Debug + BlockRngCore + SeedableRng,
Rsdr: Debug + RngCore,
impl<X> Debug for Uniform<X> where
X: Debug + SampleUniform,
<X as SampleUniform>::Sampler: Debug,
impl<X> Debug for Uniform<X> where
X: Debug + SampleUniform,
<X as SampleUniform>::Sampler: Debug,
impl<X> Debug for WeightedIndex<X> where
X: Debug + SampleUniform + PartialOrd<X>,
<X as SampleUniform>::Sampler: Debug,
impl<X> Debug for WeightedIndex<X> where
X: Debug + SampleUniform + PartialOrd<X>,
<X as SampleUniform>::Sampler: Debug,
impl<Fut1, Fut2, Fut3, Fut4, Fut5> Debug for TryJoin5<Fut1, Fut2, Fut3, Fut4, Fut5> where
Fut1: TryFuture + Debug,
Fut2: TryFuture + Debug,
Fut3: TryFuture + Debug,
Fut4: TryFuture + Debug,
Fut5: TryFuture + Debug,
<Fut1 as TryFuture>::Ok: Debug,
<Fut1 as TryFuture>::Error: Debug,
<Fut2 as TryFuture>::Ok: Debug,
<Fut2 as TryFuture>::Error: Debug,
<Fut3 as TryFuture>::Ok: Debug,
<Fut3 as TryFuture>::Error: Debug,
<Fut4 as TryFuture>::Ok: Debug,
<Fut4 as TryFuture>::Error: Debug,
<Fut5 as TryFuture>::Ok: Debug,
<Fut5 as TryFuture>::Error: Debug,
impl<Fut1, Fut2, Fut3, Fut4, Fut5> Debug for TryJoin5<Fut1, Fut2, Fut3, Fut4, Fut5> where
Fut1: TryFuture + Debug,
Fut2: TryFuture + Debug,
Fut3: TryFuture + Debug,
Fut4: TryFuture + Debug,
Fut5: TryFuture + Debug,
<Fut1 as TryFuture>::Ok: Debug,
<Fut1 as TryFuture>::Error: Debug,
<Fut2 as TryFuture>::Ok: Debug,
<Fut2 as TryFuture>::Error: Debug,
<Fut3 as TryFuture>::Ok: Debug,
<Fut3 as TryFuture>::Error: Debug,
<Fut4 as TryFuture>::Ok: Debug,
<Fut4 as TryFuture>::Error: Debug,
<Fut5 as TryFuture>::Ok: Debug,
<Fut5 as TryFuture>::Error: Debug,
impl<T, Item> Debug for ReuniteError<T, Item>
impl<T, Item> Debug for ReuniteError<T, Item>
impl<Fut1, Fut2, Fut3, Fut4> Debug for TryJoin4<Fut1, Fut2, Fut3, Fut4> where
Fut1: TryFuture + Debug,
Fut2: TryFuture + Debug,
Fut3: TryFuture + Debug,
Fut4: TryFuture + Debug,
<Fut1 as TryFuture>::Ok: Debug,
<Fut1 as TryFuture>::Error: Debug,
<Fut2 as TryFuture>::Ok: Debug,
<Fut2 as TryFuture>::Error: Debug,
<Fut3 as TryFuture>::Ok: Debug,
<Fut3 as TryFuture>::Error: Debug,
<Fut4 as TryFuture>::Ok: Debug,
<Fut4 as TryFuture>::Error: Debug,
impl<Fut1, Fut2, Fut3, Fut4> Debug for TryJoin4<Fut1, Fut2, Fut3, Fut4> where
Fut1: TryFuture + Debug,
Fut2: TryFuture + Debug,
Fut3: TryFuture + Debug,
Fut4: TryFuture + Debug,
<Fut1 as TryFuture>::Ok: Debug,
<Fut1 as TryFuture>::Error: Debug,
<Fut2 as TryFuture>::Ok: Debug,
<Fut2 as TryFuture>::Error: Debug,
<Fut3 as TryFuture>::Ok: Debug,
<Fut3 as TryFuture>::Error: Debug,
<Fut4 as TryFuture>::Ok: Debug,
<Fut4 as TryFuture>::Error: Debug,
impl<Fut1, Fut2, Fut3> Debug for TryJoin3<Fut1, Fut2, Fut3> where
Fut1: TryFuture + Debug,
Fut2: TryFuture + Debug,
Fut3: TryFuture + Debug,
<Fut1 as TryFuture>::Ok: Debug,
<Fut1 as TryFuture>::Error: Debug,
<Fut2 as TryFuture>::Ok: Debug,
<Fut2 as TryFuture>::Error: Debug,
<Fut3 as TryFuture>::Ok: Debug,
<Fut3 as TryFuture>::Error: Debug,
impl<Fut1, Fut2, Fut3> Debug for TryJoin3<Fut1, Fut2, Fut3> where
Fut1: TryFuture + Debug,
Fut2: TryFuture + Debug,
Fut3: TryFuture + Debug,
<Fut1 as TryFuture>::Ok: Debug,
<Fut1 as TryFuture>::Error: Debug,
<Fut2 as TryFuture>::Ok: Debug,
<Fut2 as TryFuture>::Error: Debug,
<Fut3 as TryFuture>::Ok: Debug,
<Fut3 as TryFuture>::Error: Debug,
impl<Fut1, Fut2, Fut3, Fut4, Fut5> Debug for Join5<Fut1, Fut2, Fut3, Fut4, Fut5> where
Fut1: Future + Debug,
Fut2: Future + Debug,
Fut3: Future + Debug,
Fut4: Future + Debug,
Fut5: Future + Debug,
<Fut1 as Future>::Output: Debug,
<Fut2 as Future>::Output: Debug,
<Fut3 as Future>::Output: Debug,
<Fut4 as Future>::Output: Debug,
<Fut5 as Future>::Output: Debug,
impl<Fut1, Fut2, Fut3, Fut4, Fut5> Debug for Join5<Fut1, Fut2, Fut3, Fut4, Fut5> where
Fut1: Future + Debug,
Fut2: Future + Debug,
Fut3: Future + Debug,
Fut4: Future + Debug,
Fut5: Future + Debug,
<Fut1 as Future>::Output: Debug,
<Fut2 as Future>::Output: Debug,
<Fut3 as Future>::Output: Debug,
<Fut4 as Future>::Output: Debug,
<Fut5 as Future>::Output: Debug,
impl<Fut> Debug for NeverError<Fut> where
Map<Fut, OkFn<Infallible>>: Debug,
impl<Fut> Debug for NeverError<Fut> where
Map<Fut, OkFn<Infallible>>: Debug,
impl<Fut> Debug for FuturesUnordered<Fut>
impl<Fut> Debug for FuturesUnordered<Fut>
impl<'_, T> Debug for LocalFutureObj<'_, T>
impl<'_, T> Debug for LocalFutureObj<'_, T>
impl<A, F> Debug for LoopFn<A, F> where
A: Debug + IntoFuture,
F: Debug,
<A as IntoFuture>::Future: Debug,
impl<A, F> Debug for LoopFn<A, F> where
A: Debug + IntoFuture,
F: Debug,
<A as IntoFuture>::Future: Debug,
impl<T, F, Fut> Debug for Unfold<T, F, Fut> where
T: Debug,
F: Debug,
Fut: Debug + IntoFuture,
<Fut as IntoFuture>::Future: Debug,
impl<T, F, Fut> Debug for Unfold<T, F, Fut> where
T: Debug,
F: Debug,
Fut: Debug + IntoFuture,
<Fut as IntoFuture>::Future: Debug,
impl<A, B, C, D, E> Debug for Join5<A, B, C, D, E> where
C: Future<Error = <A as Future>::Error> + Debug,
A: Future + Debug,
E: Future<Error = <A as Future>::Error> + Debug,
B: Future<Error = <A as Future>::Error> + Debug,
D: Future<Error = <A as Future>::Error> + Debug,
<A as Future>::Item: Debug,
<B as Future>::Item: Debug,
<C as Future>::Item: Debug,
<D as Future>::Item: Debug,
<E as Future>::Item: Debug,
impl<A, B, C, D, E> Debug for Join5<A, B, C, D, E> where
C: Future<Error = <A as Future>::Error> + Debug,
A: Future + Debug,
E: Future<Error = <A as Future>::Error> + Debug,
B: Future<Error = <A as Future>::Error> + Debug,
D: Future<Error = <A as Future>::Error> + Debug,
<A as Future>::Item: Debug,
<B as Future>::Item: Debug,
<C as Future>::Item: Debug,
<D as Future>::Item: Debug,
<E as Future>::Item: Debug,
impl<S, F, U> Debug for ForEach<S, F, U> where
F: Debug,
S: Debug,
U: Debug + IntoFuture,
<U as IntoFuture>::Future: Debug,
impl<S, F, U> Debug for ForEach<S, F, U> where
F: Debug,
S: Debug,
U: Debug + IntoFuture,
<U as IntoFuture>::Future: Debug,
impl<I> Debug for JoinAll<I> where
I: IntoIterator,
<I as IntoIterator>::Item: IntoFuture,
<<I as IntoIterator>::Item as IntoFuture>::Future: Debug,
<<I as IntoIterator>::Item as IntoFuture>::Item: Debug,
impl<I> Debug for JoinAll<I> where
I: IntoIterator,
<I as IntoIterator>::Item: IntoFuture,
<<I as IntoIterator>::Item as IntoFuture>::Future: Debug,
<<I as IntoIterator>::Item as IntoFuture>::Item: Debug,
impl<S, F, U> Debug for Then<S, F, U> where
F: Debug,
S: Debug,
U: Debug + IntoFuture,
<U as IntoFuture>::Future: Debug,
impl<S, F, U> Debug for Then<S, F, U> where
F: Debug,
S: Debug,
U: Debug + IntoFuture,
<U as IntoFuture>::Future: Debug,
impl<F, R> Debug for Lazy<F, R> where
R: Debug + IntoFuture,
F: Debug,
<R as IntoFuture>::Future: Debug,
impl<F, R> Debug for Lazy<F, R> where
R: Debug + IntoFuture,
F: Debug,
<R as IntoFuture>::Future: Debug,
impl<A, B, C, D> Debug for Join4<A, B, C, D> where
C: Future<Error = <A as Future>::Error> + Debug,
A: Future + Debug,
B: Future<Error = <A as Future>::Error> + Debug,
D: Future<Error = <A as Future>::Error> + Debug,
<A as Future>::Item: Debug,
<B as Future>::Item: Debug,
<C as Future>::Item: Debug,
<D as Future>::Item: Debug,
impl<A, B, C, D> Debug for Join4<A, B, C, D> where
C: Future<Error = <A as Future>::Error> + Debug,
A: Future + Debug,
B: Future<Error = <A as Future>::Error> + Debug,
D: Future<Error = <A as Future>::Error> + Debug,
<A as Future>::Item: Debug,
<B as Future>::Item: Debug,
<C as Future>::Item: Debug,
<D as Future>::Item: Debug,
impl<S, F, U> Debug for OrElse<S, F, U> where
F: Debug,
S: Debug,
U: Debug + IntoFuture,
<U as IntoFuture>::Future: Debug,
impl<S, F, U> Debug for OrElse<S, F, U> where
F: Debug,
S: Debug,
U: Debug + IntoFuture,
<U as IntoFuture>::Future: Debug,
impl<S> Debug for BufferUnordered<S> where
S: Stream + Debug,
<S as Stream>::Item: IntoFuture,
<<S as Stream>::Item as IntoFuture>::Future: Debug,
impl<S> Debug for BufferUnordered<S> where
S: Stream + Debug,
<S as Stream>::Item: IntoFuture,
<<S as Stream>::Item as IntoFuture>::Future: Debug,
impl<S, F, U> Debug for AndThen<S, F, U> where
F: Debug,
S: Debug,
U: Debug + IntoFuture,
<U as IntoFuture>::Future: Debug,
impl<S, F, U> Debug for AndThen<S, F, U> where
F: Debug,
S: Debug,
U: Debug + IntoFuture,
<U as IntoFuture>::Future: Debug,
impl<A> Debug for Flatten<A> where
A: Future + Debug,
<A as Future>::Item: IntoFuture,
<<A as IntoFuture>::Item as IntoFuture>::Future: Debug,
impl<A> Debug for Flatten<A> where
A: Future + Debug,
<A as Future>::Item: IntoFuture,
<<A as IntoFuture>::Item as IntoFuture>::Future: Debug,
impl<'db, L> Debug for TrieDB<'db, L> where
L: TrieLayout,
impl<'db, L> Debug for TrieDB<'db, L> where
L: TrieLayout,
impl<'a, S, H> Debug for ProvingBackend<'a, S, H> where
H: 'a + Hasher,
S: 'a + TrieBackendStorage<H>,
impl<'a, S, H> Debug for ProvingBackend<'a, S, H> where
H: 'a + Hasher,
S: 'a + TrieBackendStorage<H>,
impl<H, N> Debug for TestExternalities<H, N> where
H: Hasher,
N: BlockNumber,
<H as Hasher>::Out: Ord,
<H as Hasher>::Out: Codec,
impl<H, N> Debug for TestExternalities<H, N> where
H: Hasher,
N: BlockNumber,
<H as Hasher>::Out: Ord,
<H as Hasher>::Out: Codec,
impl<Hash, Number> Debug for AnchorBlockId<Hash, Number> where
Hash: Debug,
Number: Debug + BlockNumber,
impl<Hash, Number> Debug for AnchorBlockId<Hash, Number> where
Hash: Debug,
Number: Debug + BlockNumber,
impl<'data, 'file> Debug for ComdatIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for ComdatIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for CoffSegmentIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for CoffSegmentIterator<'data, 'file> where
'data: 'file,
impl Debug for ImageDynamicRelocation64
impl Debug for ImageDynamicRelocation64
impl Debug for ImageLoadConfigDirectory32
impl Debug for ImageLoadConfigDirectory32
impl<E> Debug for I32Bytes<E> where
E: Endian,
impl<E> Debug for I32Bytes<E> where
E: Endian,
impl Debug for ImageSeparateDebugHeader
impl Debug for ImageSeparateDebugHeader
impl<E> Debug for U32Bytes<E> where
E: Endian,
impl<E> Debug for U32Bytes<E> where
E: Endian,
impl Debug for ImageArchiveMemberHeader
impl Debug for ImageArchiveMemberHeader
impl<'data, 'file> Debug for CoffSection<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for CoffSection<'data, 'file> where
'data: 'file,
impl Debug for ImageLoadConfigCodeIntegrity
impl Debug for ImageLoadConfigCodeIntegrity
impl Debug for ImageAlpha64RuntimeFunctionEntry
impl Debug for ImageAlpha64RuntimeFunctionEntry
impl<'data, 'file, Mach> Debug for MachOSectionIterator<'data, 'file, Mach> where
Mach: MachHeader,
impl<'data, 'file, Mach> Debug for MachOSectionIterator<'data, 'file, Mach> where
Mach: MachHeader,
impl<'data, 'file> Debug for SectionRelocationIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for SectionRelocationIterator<'data, 'file> where
'data: 'file,
impl Debug for ImageBoundImportDescriptor
impl Debug for ImageBoundImportDescriptor
impl<'data> Debug for ObjectMapEntry<'data>
impl<'data> Debug for ObjectMapEntry<'data>
impl<'data, 'file, Elf> Debug for ElfSymbolIterator<'data, 'file, Elf> where
Elf: FileHeader,
impl<'data, 'file, Elf> Debug for ElfSymbolIterator<'data, 'file, Elf> where
Elf: FileHeader,
impl<'data> Debug for CompressedData<'data>
impl<'data> Debug for CompressedData<'data>
impl<'data, 'file> Debug for CoffSymbolIterator<'data, 'file>
impl<'data, 'file> Debug for CoffSymbolIterator<'data, 'file>
impl<'data> Debug for ArchiveMember<'data>
impl<'data> Debug for ArchiveMember<'data>
impl Debug for ImageEpilogueDynamicRelocationHeader
impl Debug for ImageEpilogueDynamicRelocationHeader
impl<E> Debug for I64Bytes<E> where
E: Endian,
impl<E> Debug for I64Bytes<E> where
E: Endian,
impl<'data, 'file, Mach> Debug for MachOSymbolIterator<'data, 'file, Mach> where
Mach: MachHeader,
impl<'data, 'file, Mach> Debug for MachOSymbolIterator<'data, 'file, Mach> where
Mach: MachHeader,
impl Debug for ImageDynamicRelocationTable
impl Debug for ImageDynamicRelocationTable
impl Debug for ImageDynamicRelocation32V2
impl Debug for ImageDynamicRelocation32V2
impl<'data, 'file, Elf> Debug for ElfDynamicRelocationIterator<'data, 'file, Elf> where
Elf: FileHeader,
impl<'data, 'file, Elf> Debug for ElfDynamicRelocationIterator<'data, 'file, Elf> where
Elf: FileHeader,
impl<'data> Debug for SymbolTable<'data>
impl<'data> Debug for SymbolTable<'data>
impl<E> Debug for U64Bytes<E> where
E: Endian,
impl<E> Debug for U64Bytes<E> where
E: Endian,
impl Debug for ImageLoadConfigDirectory64
impl Debug for ImageLoadConfigDirectory64
impl<'data, 'file> Debug for SymbolTable<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for SymbolTable<'data, 'file> where
'data: 'file,
impl Debug for ImageAlphaRuntimeFunctionEntry
impl Debug for ImageAlphaRuntimeFunctionEntry
impl<'data, 'file> Debug for CoffRelocationIterator<'data, 'file>
impl<'data, 'file> Debug for CoffRelocationIterator<'data, 'file>
impl<'data, 'file> Debug for CoffSectionIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for CoffSectionIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for PeRelocationIterator<'data, 'file>
impl<'data, 'file> Debug for PeRelocationIterator<'data, 'file>
impl<'data, 'file> Debug for CoffComdatSectionIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for CoffComdatSectionIterator<'data, 'file> where
'data: 'file,
impl<E> Debug for U16Bytes<E> where
E: Endian,
impl<E> Debug for U16Bytes<E> where
E: Endian,
impl<'data, 'file> Debug for ComdatSectionIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for ComdatSectionIterator<'data, 'file> where
'data: 'file,
impl Debug for ImageResourceDirectoryString
impl Debug for ImageResourceDirectoryString
impl<'data, 'file> Debug for SymbolIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for SymbolIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for Section<'data, 'file>
impl<'data, 'file> Debug for Section<'data, 'file>
impl<'data> Debug for SymbolMapName<'data>
impl<'data> Debug for SymbolMapName<'data>
impl Debug for ImageAuxSymbolFunctionBeginEnd
impl Debug for ImageAuxSymbolFunctionBeginEnd
impl Debug for ImageResourceDirectoryEntry
impl Debug for ImageResourceDirectoryEntry
impl Debug for ImageDelayloadDescriptor
impl Debug for ImageDelayloadDescriptor
impl<'data, 'file> Debug for CoffSegment<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for CoffSegment<'data, 'file> where
'data: 'file,
impl Debug for ImageArm64RuntimeFunctionEntry
impl Debug for ImageArm64RuntimeFunctionEntry
impl<'data, 'file> Debug for SegmentIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for SegmentIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for CoffComdatIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for CoffComdatIterator<'data, 'file> where
'data: 'file,
impl<'data> Debug for StringTable<'data>
impl<'data> Debug for StringTable<'data>
impl Debug for ImageArmRuntimeFunctionEntry
impl Debug for ImageArmRuntimeFunctionEntry
impl<E> Debug for I16Bytes<E> where
E: Endian,
impl<E> Debug for I16Bytes<E> where
E: Endian,
impl Debug for NoDynamicRelocationIterator
impl Debug for NoDynamicRelocationIterator
impl<'data, 'file, Mach> Debug for MachORelocationIterator<'data, 'file, Mach> where
Mach: MachHeader,
impl<'data, 'file, Mach> Debug for MachORelocationIterator<'data, 'file, Mach> where
Mach: MachHeader,
impl<'data, 'file> Debug for SectionIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for SectionIterator<'data, 'file> where
'data: 'file,
impl<'data> Debug for ArchiveMemberIterator<'data>
impl<'data> Debug for ArchiveMemberIterator<'data>
impl<'data, 'file> Debug for CoffComdat<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for CoffComdat<'data, 'file> where
'data: 'file,
impl Debug for ImageRuntimeFunctionEntry
impl Debug for ImageRuntimeFunctionEntry
impl<'data, 'file> Debug for DynamicRelocationIterator<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for DynamicRelocationIterator<'data, 'file> where
'data: 'file,
impl Debug for ImageDynamicRelocation64V2
impl Debug for ImageDynamicRelocation64V2
impl<'data> Debug for ArchiveFile<'data>
impl<'data> Debug for ArchiveFile<'data>
impl<'data, 'file> Debug for Symbol<'data, 'file>
impl<'data, 'file> Debug for Symbol<'data, 'file>
impl Debug for ImageDynamicRelocation32
impl Debug for ImageDynamicRelocation32
impl<'data> Debug for SectionTable<'data>
impl<'data> Debug for SectionTable<'data>
impl Debug for ImagePrologueDynamicRelocationHeader
impl Debug for ImagePrologueDynamicRelocationHeader
impl<'data, 'file> Debug for Comdat<'data, 'file>
impl<'data, 'file> Debug for Comdat<'data, 'file>
impl<'data, 'file> Debug for CoffSymbolTable<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for CoffSymbolTable<'data, 'file> where
'data: 'file,
impl<'data, 'file, Elf> Debug for ElfSectionRelocationIterator<'data, 'file, Elf> where
Elf: FileHeader,
impl<'data, 'file, Elf> Debug for ElfSectionRelocationIterator<'data, 'file, Elf> where
Elf: FileHeader,
impl<'data, 'file> Debug for CoffSymbol<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for CoffSymbol<'data, 'file> where
'data: 'file,
impl<'data, 'file> Debug for Segment<'data, 'file>
impl<'data, 'file> Debug for Segment<'data, 'file>
impl<AccountId, AccountIndex> Debug for MultiAddress<AccountId, AccountIndex> where
AccountId: Debug,
AccountIndex: Debug,
impl<AccountId, AccountIndex> Debug for MultiAddress<AccountId, AccountIndex> where
AccountId: Debug,
AccountIndex: Debug,
impl<B> Debug for BlockAndTimeDeadline<B> where
B: BlockNumberProvider,
<B as BlockNumberProvider>::BlockNumber: Debug,
impl<B> Debug for BlockAndTimeDeadline<B> where
B: BlockNumberProvider,
<B as BlockNumberProvider>::BlockNumber: Debug,
impl<Address, Call, Signature, Extra> Debug for UncheckedExtrinsic<Address, Call, Signature, Extra> where
Call: Debug,
Extra: SignedExtension,
Address: Debug,
impl<Address, Call, Signature, Extra> Debug for UncheckedExtrinsic<Address, Call, Signature, Extra> where
Call: Debug,
Extra: SignedExtension,
Address: Debug,
impl<Reporter, Offender> Debug for OffenceDetails<Reporter, Offender> where
Reporter: Debug,
Offender: Debug,
impl<Reporter, Offender> Debug for OffenceDetails<Reporter, Offender> where
Reporter: Debug,
Offender: Debug,
Implementors
impl<A: AssetId, B: Balance, OnDrop: HandleImbalanceDrop<A, B>, OppositeOnDrop: HandleImbalanceDrop<A, B>> Debug for frame_support::traits::tokens::fungibles::Imbalance<A, B, OnDrop, OppositeOnDrop> where
A: Debug,
B: Debug,
OnDrop: Debug,
OppositeOnDrop: Debug,
impl<B: Balance, OnDrop: HandleImbalanceDrop<B>, OppositeOnDrop: HandleImbalanceDrop<B>> Debug for frame_support::traits::tokens::fungible::Imbalance<B, OnDrop, OppositeOnDrop> where
B: Debug,
OnDrop: Debug,
OppositeOnDrop: Debug,