diff options
| author | Brian Anderson <banderson@mozilla.com> | 2015-01-25 19:03:10 -0800 |
|---|---|---|
| committer | Brian Anderson <banderson@mozilla.com> | 2015-01-25 22:14:06 -0800 |
| commit | d179ba3b8eb65c951b68f6c52da3aba82806a3a1 (patch) | |
| tree | fa8b3475117a5d145a48f200b44f75eebf9f1b9b /src/libstd/sync/poison.rs | |
| parent | de5498650a4702a9552951d28f344229f37e7ae3 (diff) | |
| parent | c80e556e159af38f86eea5ee2ba796d7c724c92b (diff) | |
| download | rust-d179ba3b8eb65c951b68f6c52da3aba82806a3a1.tar.gz rust-d179ba3b8eb65c951b68f6c52da3aba82806a3a1.zip | |
Merge remote-tracking branch 'rust-lang/master'
Conflicts: src/libcore/cmp.rs src/libcore/fmt/mod.rs src/libcore/iter.rs src/libcore/marker.rs src/libcore/num/f32.rs src/libcore/num/f64.rs src/libcore/result.rs src/libcore/str/mod.rs src/librustc/lint/builtin.rs src/librustc/lint/context.rs src/libstd/sync/mpsc/mod.rs src/libstd/sync/poison.rs
Diffstat (limited to 'src/libstd/sync/poison.rs')
| -rw-r--r-- | src/libstd/sync/poison.rs | 19 |
1 files changed, 17 insertions, 2 deletions
diff --git a/src/libstd/sync/poison.rs b/src/libstd/sync/poison.rs index b04c2310fc0..18680b96592 100644 --- a/src/libstd/sync/poison.rs +++ b/src/libstd/sync/poison.rs @@ -53,7 +53,6 @@ pub struct Guard { /// is held. The precise semantics for when a lock is poisoned is documented on /// each lock, but once a lock is poisoned then all future acquisitions will /// return this error. -#[derive(Show)] #[stable(feature = "rust1", since = "1.0.0")] pub struct PoisonError<T> { guard: T, @@ -61,7 +60,6 @@ pub struct PoisonError<T> { /// An enumeration of possible errors which can occur while calling the /// `try_lock` method. -#[derive(Show)] #[stable(feature = "rust1", since = "1.0.0")] pub enum TryLockError<T> { /// The lock could not be acquired because another task failed while holding @@ -93,6 +91,13 @@ pub type LockResult<Guard> = Result<Guard, PoisonError<Guard>>; pub type TryLockResult<Guard> = Result<Guard, TryLockError<Guard>>; #[stable(feature = "rust1", since = "1.0.0")] +impl<T> fmt::Debug for PoisonError<T> { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + "PoisonError { inner: .. }".fmt(f) + } +} + +#[stable(feature = "rust1", since = "1.0.0")] impl<T> fmt::Display for PoisonError<T> { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.description().fmt(f) @@ -135,6 +140,16 @@ impl<T> FromError<PoisonError<T>> for TryLockError<T> { } #[stable(feature = "rust1", since = "1.0.0")] +impl<T> fmt::Debug for TryLockError<T> { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + match *self { + TryLockError::Poisoned(..) => "Poisoned(..)".fmt(f), + TryLockError::WouldBlock => "WouldBlock".fmt(f) + } + } +} + +#[stable(feature = "rust1", since = "1.0.0")] impl<T> fmt::Display for TryLockError<T> { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { self.description().fmt(f) |
