diff --git a/glib/src/thread_guard.rs b/glib/src/thread_guard.rs index 916dffffdab0..bdc511d9b846 100644 --- a/glib/src/thread_guard.rs +++ b/glib/src/thread_guard.rs @@ -113,3 +113,17 @@ impl Drop for ThreadGuard { unsafe impl Send for ThreadGuard {} unsafe impl Sync for ThreadGuard {} + +impl std::ops::Deref for ThreadGuard { + type Target = T; + + fn deref(&self) -> &Self::Target { + self.get_ref() + } +} + +impl std::ops::DerefMut for ThreadGuard { + fn deref_mut(&mut self) -> &mut Self::Target { + self.get_mut() + } +}