diff options
| author | Mica White <botahamec@outlook.com> | 2024-03-10 20:42:37 -0400 |
|---|---|---|
| committer | Mica White <botahamec@outlook.com> | 2024-03-10 20:42:37 -0400 |
| commit | 815c0adedd6207eb406c67ea09c2634f304f8adf (patch) | |
| tree | ab3f8291f2315c6c46ea472260023c14a2880261 /src/mutex/mutex_ref.rs | |
| parent | fe67aa262f1b04fb6c38683d9221c3a2fafcc35a (diff) | |
More reorganization
Diffstat (limited to 'src/mutex/mutex_ref.rs')
| -rw-r--r-- | src/mutex/mutex_ref.rs | 33 |
1 files changed, 0 insertions, 33 deletions
diff --git a/src/mutex/mutex_ref.rs b/src/mutex/mutex_ref.rs deleted file mode 100644 index 5222719..0000000 --- a/src/mutex/mutex_ref.rs +++ /dev/null @@ -1,33 +0,0 @@ -use std::ops::{Deref, DerefMut}; - -use lock_api::RawMutex; - -use super::MutexRef; - -impl<'a, T: ?Sized + 'a, R: RawMutex> Drop for MutexRef<'a, T, R> { - fn drop(&mut self) { - // safety: this guard is being destroyed, so the data cannot be - // accessed without locking again - unsafe { self.0.force_unlock() } - } -} - -impl<'a, T: ?Sized + 'a, R: RawMutex> Deref for MutexRef<'a, T, R> { - type Target = T; - - fn deref(&self) -> &Self::Target { - // safety: this is the only type that can use `value`, and there's - // a reference to this type, so there cannot be any mutable - // references to this value. - unsafe { &*self.0.value.get() } - } -} - -impl<'a, T: ?Sized + 'a, R: RawMutex> DerefMut for MutexRef<'a, T, R> { - fn deref_mut(&mut self) -> &mut Self::Target { - // safety: this is the only type that can use `value`, and we have a - // mutable reference to this type, so there cannot be any other - // references to this value. - unsafe { &mut *self.0.value.get() } - } -} |
