diff options
Diffstat (limited to 'src/libstd')
| -rw-r--r-- | src/libstd/sync/condvar.rs | 7 | ||||
| -rw-r--r-- | src/libstd/sync/mutex.rs | 7 | ||||
| -rw-r--r-- | src/libstd/sync/rwlock.rs | 7 |
3 files changed, 21 insertions, 0 deletions
diff --git a/src/libstd/sync/condvar.rs b/src/libstd/sync/condvar.rs index 64468be396f..57932f03796 100644 --- a/src/libstd/sync/condvar.rs +++ b/src/libstd/sync/condvar.rs @@ -220,6 +220,13 @@ impl Condvar { pub fn notify_all(&self) { unsafe { self.inner.inner.notify_all() } } } +#[stable(feature = "condvar_default", since = "1.9.0")] +impl Default for Condvar { + fn default() -> Condvar { + Condvar::new() + } +} + #[stable(feature = "rust1", since = "1.0.0")] impl Drop for Condvar { fn drop(&mut self) { diff --git a/src/libstd/sync/mutex.rs b/src/libstd/sync/mutex.rs index e0946a5c12a..857a4cba9c7 100644 --- a/src/libstd/sync/mutex.rs +++ b/src/libstd/sync/mutex.rs @@ -310,6 +310,13 @@ impl<T: ?Sized> Drop for Mutex<T> { } } +#[stable(feature = "mutex_default", since = "1.9.0")] +impl<T: ?Sized + Default> Default for Mutex<T> { + fn default() -> Mutex<T> { + Mutex::new(Default::default()) + } +} + #[stable(feature = "rust1", since = "1.0.0")] impl<T: ?Sized + fmt::Debug> fmt::Debug for Mutex<T> { fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { diff --git a/src/libstd/sync/rwlock.rs b/src/libstd/sync/rwlock.rs index a37c1c16a45..09b1b0a939d 100644 --- a/src/libstd/sync/rwlock.rs +++ b/src/libstd/sync/rwlock.rs @@ -346,6 +346,13 @@ impl<T: ?Sized + fmt::Debug> fmt::Debug for RwLock<T> { } } +#[stable(feature = "rw_lock_default", since = "1.9.0")] +impl<T: Default> Default for RwLock<T> { + fn default() -> RwLock<T> { + RwLock::new(Default::default()) + } +} + struct Dummy(UnsafeCell<()>); unsafe impl Sync for Dummy {} static DUMMY: Dummy = Dummy(UnsafeCell::new(())); |
