pub struct SlabBox<T, LOCK, const SLAB_SIZE: usize>where
LOCK: LockTrait,{ /* private fields */ }Expand description
A smart pointer to an object of type T allocated in a slab.
When this struct goes out of scope, the memory is automatically returned to the originating slab.
Implementations§
Trait Implementations§
Source§impl<T, LOCK, const SLAB_SIZE: usize> Deref for SlabBox<T, LOCK, SLAB_SIZE>where
LOCK: LockTrait,
impl<T, LOCK, const SLAB_SIZE: usize> Deref for SlabBox<T, LOCK, SLAB_SIZE>where
LOCK: LockTrait,
Source§impl<T, LOCK, const SLAB_SIZE: usize> DerefMut for SlabBox<T, LOCK, SLAB_SIZE>where
LOCK: LockTrait,
impl<T, LOCK, const SLAB_SIZE: usize> DerefMut for SlabBox<T, LOCK, SLAB_SIZE>where
LOCK: LockTrait,
Source§impl<T, LOCK, const SLAB_SIZE: usize> Drop for SlabBox<T, LOCK, SLAB_SIZE>where
LOCK: LockTrait,
impl<T, LOCK, const SLAB_SIZE: usize> Drop for SlabBox<T, LOCK, SLAB_SIZE>where
LOCK: LockTrait,
impl<T, LOCK, const SLAB_SIZE: usize> Send for SlabBox<T, LOCK, SLAB_SIZE>
impl<T, LOCK, const SLAB_SIZE: usize> Sync for SlabBox<T, LOCK, SLAB_SIZE>
Auto Trait Implementations§
impl<T, LOCK, const SLAB_SIZE: usize> Freeze for SlabBox<T, LOCK, SLAB_SIZE>
impl<T, LOCK, const SLAB_SIZE: usize> RefUnwindSafe for SlabBox<T, LOCK, SLAB_SIZE>where
LOCK: RefUnwindSafe,
T: RefUnwindSafe,
impl<T, LOCK, const SLAB_SIZE: usize> Unpin for SlabBox<T, LOCK, SLAB_SIZE>where
LOCK: Unpin,
impl<T, LOCK, const SLAB_SIZE: usize> UnsafeUnpin for SlabBox<T, LOCK, SLAB_SIZE>
impl<T, LOCK, const SLAB_SIZE: usize> UnwindSafe for SlabBox<T, LOCK, SLAB_SIZE>where
T: RefUnwindSafe,
LOCK: UnwindSafe,
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