pub struct Mmap { /* private fields */ }
Expand description
A simple struct consisting of a page-aligned pointer to page-aligned and initially-zeroed memory and a length.
Implementations§
source§impl Mmap
impl Mmap
sourcepub fn with_at_least(size: usize) -> Result<Self, String>
pub fn with_at_least(size: usize) -> Result<Self, String>
Create a new Mmap
pointing to at least size
bytes of page-aligned accessible memory.
sourcepub fn accessible_reserved(
accessible_size: usize,
mapping_size: usize
) -> Result<Self, String>
pub fn accessible_reserved(
accessible_size: usize,
mapping_size: usize
) -> Result<Self, String>
Create a new Mmap
pointing to accessible_size
bytes of page-aligned accessible memory,
within a reserved mapping of mapping_size
bytes. accessible_size
and mapping_size
must be native page-size multiples.
sourcepub fn make_accessible(&mut self, start: usize, len: usize) -> Result<(), String>
pub fn make_accessible(&mut self, start: usize, len: usize) -> Result<(), String>
Make the memory starting at start
and extending for len
bytes accessible.
start
and len
must be native page-size multiples and describe a range within
self
’s reserved memory.
sourcepub fn as_slice_accessible(&self) -> &[u8] ⓘ
pub fn as_slice_accessible(&self) -> &[u8] ⓘ
Return the allocated memory as a slice of u8.
sourcepub fn as_mut_slice(&mut self) -> &mut [u8] ⓘ
pub fn as_mut_slice(&mut self) -> &mut [u8] ⓘ
Return the allocated memory as a mutable slice of u8.
sourcepub fn as_mut_slice_accessible(&mut self) -> &mut [u8] ⓘ
pub fn as_mut_slice_accessible(&mut self) -> &mut [u8] ⓘ
Return the allocated memory as a mutable slice of u8.
sourcepub fn as_mut_ptr(&mut self) -> *mut u8
pub fn as_mut_ptr(&mut self) -> *mut u8
Return the allocated memory as a mutable pointer to u8.