From 08246520c0fef902b169233e26e15cf58ef1cd8b Mon Sep 17 00:00:00 2001 From: Alex Crichton Date: Fri, 23 Jan 2015 10:38:50 -0800 Subject: std: Relax Result::unwrap() to Debug This commit relaxes the bound on `Result::unwrap` and `Result::unwrap_err` from the `Display` trait to the `Debug` trait for generating an error message about the unwrapping operation. This commit is a breaking change and any breakage should be mitigated by ensuring that `Debug` is implemented on the relevant type. [breaking-change] --- src/libstd/sync/mpsc/mod.rs | 21 +++++++++++++++++++-- 1 file changed, 19 insertions(+), 2 deletions(-) (limited to 'src/libstd/sync/mpsc') diff --git a/src/libstd/sync/mpsc/mod.rs b/src/libstd/sync/mpsc/mod.rs index 062bdf346cd..893f353b1a7 100644 --- a/src/libstd/sync/mpsc/mod.rs +++ b/src/libstd/sync/mpsc/mod.rs @@ -382,7 +382,7 @@ impl !Sync for SyncSender {} /// A `send` operation can only fail if the receiving end of a channel is /// disconnected, implying that the data could never be received. The error /// contains the data being sent as a payload so it can be recovered. -#[derive(PartialEq, Eq, Show)] +#[derive(PartialEq, Eq)] #[stable] pub struct SendError(pub T); @@ -412,7 +412,7 @@ pub enum TryRecvError { /// This enumeration is the list of the possible error outcomes for the /// `SyncSender::try_send` method. -#[derive(PartialEq, Clone, Show)] +#[derive(PartialEq, Clone)] #[stable] pub enum TrySendError { /// The data could not be sent on the channel because it would require that @@ -961,6 +961,13 @@ impl Drop for Receiver { } } +#[stable] +impl fmt::Debug for SendError { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + "SendError(..)".fmt(f) + } +} + #[stable] impl fmt::Display for SendError { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { @@ -968,6 +975,16 @@ impl fmt::Display for SendError { } } +#[stable] +impl fmt::Debug for TrySendError { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match *self { + TrySendError::Full(..) => "Full(..)".fmt(f), + TrySendError::Disconnected(..) => "Disconnected(..)".fmt(f), + } + } +} + #[stable] impl fmt::Display for TrySendError { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { -- cgit 1.4.1-3-g733a5