Struct winsafe::guard::CoLockObjectExternalGuard
source · pub struct CoLockObjectExternalGuard<'a, T>where
T: ole_IUnknown,{ /* private fields */ }
Available on crate features
kernel
and ole
only.Expand description
RAII implementation which automatically calls
CoLockObjectExternal
to unlock the COM pointer.
Implementations§
source§impl<'a, T> CoLockObjectExternalGuard<'a, T>where
T: ole_IUnknown,
impl<'a, T> CoLockObjectExternalGuard<'a, T>where
T: ole_IUnknown,
sourcepub const unsafe fn new(com_obj: &'a T) -> Self
pub const unsafe fn new(com_obj: &'a T) -> Self
Constructs the guard by keeping the reference to the COM pointer.
§Safety
Be sure the COM pointer has been locked with a previous call to
CoLockObjectExternal
.
Trait Implementations§
source§impl<'a, T> Drop for CoLockObjectExternalGuard<'a, T>where
T: ole_IUnknown,
impl<'a, T> Drop for CoLockObjectExternalGuard<'a, T>where
T: ole_IUnknown,
Auto Trait Implementations§
impl<'a, T> Freeze for CoLockObjectExternalGuard<'a, T>
impl<'a, T> RefUnwindSafe for CoLockObjectExternalGuard<'a, T>where
T: RefUnwindSafe,
impl<'a, T> Send for CoLockObjectExternalGuard<'a, T>where
T: Sync,
impl<'a, T> Sync for CoLockObjectExternalGuard<'a, T>where
T: Sync,
impl<'a, T> Unpin for CoLockObjectExternalGuard<'a, T>
impl<'a, T> UnwindSafe for CoLockObjectExternalGuard<'a, T>where
T: RefUnwindSafe,
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more