Struct fst::raw::MmapReadOnly [−][src]
pub struct MmapReadOnly { /* fields omitted */ }
A read only view into a memory map.
Opening 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.
Methods
impl MmapReadOnly
[src]
impl MmapReadOnly
pub unsafe fn open(file: &File) -> Result<MmapReadOnly>
[src]
pub unsafe fn open(file: &File) -> Result<MmapReadOnly>
Create a new memory map from an existing file handle.
This is unsafe because Rust programs cannot guarantee that memory backed by a memory mapped file won't be mutably aliased. It is up to the caller to enforce that the memory map is not modified while it is opened.
pub unsafe fn open_path<P: AsRef<Path>>(path: P) -> Result<MmapReadOnly>
[src]
pub unsafe fn open_path<P: AsRef<Path>>(path: P) -> Result<MmapReadOnly>
Open a new memory map from the path given.
This is unsafe because Rust programs cannot guarantee that memory backed by a memory mapped file won't be mutably aliased. It is up to the caller to enforce that the memory map is not modified while it is opened.
pub fn len(&self) -> usize
[src]
pub fn len(&self) -> usize
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]
pub fn range(&self, offset: usize, len: usize) -> MmapReadOnly
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 fn as_slice(&self) -> &[u8]
[src]
pub fn as_slice(&self) -> &[u8]
Read the memory map as a &[u8]
.
Trait Implementations
impl Clone for MmapReadOnly
[src]
impl Clone for MmapReadOnly
fn clone(&self) -> MmapReadOnly
[src]
fn clone(&self) -> MmapReadOnly
Returns a copy of the value. Read more
fn clone_from(&mut self, source: &Self)
1.0.0[src]
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source
. Read more
Auto Trait Implementations
impl Send for MmapReadOnly
impl Send for MmapReadOnly
impl Sync for MmapReadOnly
impl Sync for MmapReadOnly