Hide some irrelevant detail from de::value::Error's Debug impl

This commit is contained in:
David Tolnay 2021-01-23 22:48:54 -08:00
parent 82d0fe00fd
commit 86c88bea12
No known key found for this signature in database
GPG Key ID: F9BA143B95FF6D82

View File

@ -48,7 +48,7 @@ macro_rules! impl_copy_clone {
/// A minimal representation of all possible errors that can occur using the
/// `IntoDeserializer` trait.
#[derive(Clone, Debug, PartialEq)]
#[derive(Clone, PartialEq)]
pub struct Error {
err: ErrorImpl,
}
@ -103,6 +103,15 @@ impl Display for Error {
}
}
impl Debug for Error {
fn fmt(&self, formatter: &mut fmt::Formatter) -> Result<(), fmt::Error> {
let mut debug = formatter.debug_tuple("Error");
#[cfg(any(feature = "std", feature = "alloc"))]
debug.field(&self.err);
debug.finish()
}
}
#[cfg(feature = "std")]
impl error::Error for Error {
fn description(&self) -> &str {