pub struct AtomicSlotable;Trait Implementations§
Source§impl<T: Copyable> Slotable<T> for AtomicSlotable
impl<T: Copyable> Slotable<T> for AtomicSlotable
Source§type SlotArrayItem = SlotItem<T>
type SlotArrayItem = SlotItem<T>
Type for array/slice element where multiple
Ts are keptSource§fn boxed_uninit_single() -> Box<Self::Slot>
fn boxed_uninit_single() -> Box<Self::Slot>
Create a single slot with no value.
Source§fn read(slot: &Self::Slot, ordering: Ordering) -> MaybeUninit<T>
fn read(slot: &Self::Slot, ordering: Ordering) -> MaybeUninit<T>
Read the slot atomically. Whether a correct
T is read must be determined elsewhere.Source§fn write(slot: &Self::Slot, value: T, ordering: Ordering)
fn write(slot: &Self::Slot, value: T, ordering: Ordering)
Write a single
T into the slot, overwriting (without drop) what was there.Source§fn boxed_uninit_multiple(n: usize) -> Box<[Self::SlotArrayItem]>
fn boxed_uninit_multiple(n: usize) -> Box<[Self::SlotArrayItem]>
Create a slice of slot items capable of holding
n Ts.Source§fn index_in_array(items: &[Self::SlotArrayItem], index: usize) -> &Self::Slot
fn index_in_array(items: &[Self::SlotArrayItem], index: usize) -> &Self::Slot
Given a slice as returned from
Self::boxed_uninit_multiple, access one of the elements.Source§fn create_boxed(value: T) -> Box<Self::Slot>
fn create_boxed(value: T) -> Box<Self::Slot>
Create a single slot with known value.
Auto Trait Implementations§
impl Freeze for AtomicSlotable
impl RefUnwindSafe for AtomicSlotable
impl Send for AtomicSlotable
impl Sync for AtomicSlotable
impl Unpin for AtomicSlotable
impl UnsafeUnpin for AtomicSlotable
impl UnwindSafe for AtomicSlotable
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