pub struct SlabNode {
pub addr: usize,
pub size_class: SizeClass,
}Fields§
§addr: usize§size_class: SizeClassImplementations§
Source§impl SlabNode
impl SlabNode
pub const MAX_OBJECTS: usize
pub const fn new(addr: usize, size_class: SizeClass) -> Self
pub fn init_header(&mut self, slab_bytes: usize)
pub fn is_valid_for_size_class(&self) -> bool
pub fn in_use(&self) -> u32
pub fn free_count(&self) -> u32
pub fn is_full(&self) -> bool
pub fn is_empty(&self) -> bool
pub fn alloc_object(&mut self) -> Option<usize>
pub fn dealloc_object(&mut self, object_index: usize) -> bool
pub fn object_addr(&self, object_index: usize) -> usize
pub fn object_index_from_addr(&self, obj_addr: usize) -> Option<usize>
pub fn page_count(&self, page_size: usize) -> usize
pub fn prev(&self) -> Option<usize>
pub fn next(&self) -> Option<usize>
pub fn set_prev(&mut self, prev: Option<usize>)
pub fn set_next(&mut self, next: Option<usize>)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SlabNode
impl RefUnwindSafe for SlabNode
impl Send for SlabNode
impl Sync for SlabNode
impl Unpin for SlabNode
impl UnwindSafe for SlabNode
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