#[repr(transparent)]pub struct AtomicFnPtr {
inner: AtomicPtr<c_void>,
}Fields§
§inner: AtomicPtr<c_void>§Safety
See the module docs:
- The actual type must never change.
- The actual type must be a function pointer implementing
super::FnPtrLike.
Implementations§
Source§impl AtomicFnPtr
impl AtomicFnPtr
pub(super) const fn new(f: ErasedFnPtr) -> Self
Sourcepub(super) unsafe fn store_relaxed(&self, f: ErasedFnPtr)
pub(super) unsafe fn store_relaxed(&self, f: ErasedFnPtr)
§SAFETY
The passed argument must have the same actual type as self.
pub(super) fn load_relaxed(&self) -> ErasedFnPtr
Auto Trait Implementations§
impl !Freeze for AtomicFnPtr
impl RefUnwindSafe for AtomicFnPtr
impl Send for AtomicFnPtr
impl Sync for AtomicFnPtr
impl Unpin for AtomicFnPtr
impl UnsafeUnpin for AtomicFnPtr
impl UnwindSafe for AtomicFnPtr
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