diff options
| author | kennytm <kennytm@gmail.com> | 2017-10-10 20:08:20 +0800 |
|---|---|---|
| committer | kennytm <kennytm@gmail.com> | 2017-10-10 22:43:57 +0800 |
| commit | 23a99f4e0e47025e949c6a68796afdf3a0d441ad (patch) | |
| tree | 744eb8e8d28bdc35beda4baa037c8e547f02a7ee /src/libstd/sys_common | |
| parent | 0217315bf23edee385a7042b5a23b3e7e376820c (diff) | |
| parent | 679457ad2a0f33aed6b206107afedcccf5124374 (diff) | |
| download | rust-23a99f4e0e47025e949c6a68796afdf3a0d441ad.tar.gz rust-23a99f4e0e47025e949c6a68796afdf3a0d441ad.zip | |
Rollup merge of #44775 - MaloJaffre:debug-struct, r=sfackler
Refactor to use `debug_struct` in several Debug impls Also use `pad` and derive `Debug` for `Edge`. Fixes #44771.
Diffstat (limited to 'src/libstd/sys_common')
| -rw-r--r-- | src/libstd/sys_common/remutex.rs | 13 |
1 files changed, 10 insertions, 3 deletions
diff --git a/src/libstd/sys_common/remutex.rs b/src/libstd/sys_common/remutex.rs index 4d0407ccf6c..ce43ec6d9ab 100644 --- a/src/libstd/sys_common/remutex.rs +++ b/src/libstd/sys_common/remutex.rs @@ -116,11 +116,18 @@ impl<T> Drop for ReentrantMutex<T> { impl<T: fmt::Debug + 'static> fmt::Debug for ReentrantMutex<T> { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { match self.try_lock() { - Ok(guard) => write!(f, "ReentrantMutex {{ data: {:?} }}", &*guard), + Ok(guard) => f.debug_struct("ReentrantMutex").field("data", &*guard).finish(), Err(TryLockError::Poisoned(err)) => { - write!(f, "ReentrantMutex {{ data: Poisoned({:?}) }}", &**err.get_ref()) + f.debug_struct("ReentrantMutex").field("data", &**err.get_ref()).finish() }, - Err(TryLockError::WouldBlock) => write!(f, "ReentrantMutex {{ <locked> }}") + Err(TryLockError::WouldBlock) => { + struct LockedPlaceholder; + impl fmt::Debug for LockedPlaceholder { + fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { f.write_str("<locked>") } + } + + f.debug_struct("ReentrantMutex").field("data", &LockedPlaceholder).finish() + } } } } |
