Struct fst::raw::MmapReadOnly
[−]
[src]
pub struct MmapReadOnly { /* fields omitted */ }A read only view into a memory map.
Reading a memory map is unsafe because we cannot guarantee that its underlying memory is not mutated by external processes. This read only memory map guarantees that consumers can at least never modify the underlying data.
It is principally useful for controlling which region of a file an Fst
reads. Taking a slice from it is still considered unsafe.
Methods
impl MmapReadOnly[src]
pub fn open(file: &File) -> Result<MmapReadOnly>[src]
Create a new memory map from an existing file handle.
pub fn open_path<P: AsRef<Path>>(path: P) -> Result<MmapReadOnly>[src]
Open a new memory map from the path given.
pub fn len(&self) -> usize[src]
Returns the size in byte of the memory map.
If it is a range, the size is the size of the range.
pub fn range(&self, offset: usize, len: usize) -> MmapReadOnly[src]
Slice this memory map to a new offset and len.
If the new range is outside the bounds of self, then this method
panics.
pub unsafe fn as_slice(&self) -> &[u8][src]
Read the memory map as a &[u8].
Trait Implementations
impl Clone for MmapReadOnly[src]
fn clone(&self) -> MmapReadOnly[src]
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)1.0.0[src]
Performs copy-assignment from source. Read more
impl From<Mmap> for MmapReadOnly[src]
fn from(mmap: Mmap) -> MmapReadOnly[src]
Performs the conversion.
impl From<Arc<Mmap>> for MmapReadOnly[src]
fn from(mmap_arc: Arc<Mmap>) -> MmapReadOnly[src]
Performs the conversion.