about summary refs log tree commit diff
path: root/src/libstd/sys_common
diff options
context:
space:
mode:
authorkennytm <kennytm@gmail.com>2017-10-10 20:08:20 +0800
committerkennytm <kennytm@gmail.com>2017-10-10 22:43:57 +0800
commit23a99f4e0e47025e949c6a68796afdf3a0d441ad (patch)
tree744eb8e8d28bdc35beda4baa037c8e547f02a7ee /src/libstd/sys_common
parent0217315bf23edee385a7042b5a23b3e7e376820c (diff)
parent679457ad2a0f33aed6b206107afedcccf5124374 (diff)
downloadrust-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.rs13
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()
+            }
         }
     }
 }