pub struct MmapFile { /* private fields */ }Implementations§
Source§impl MmapFile
impl MmapFile
Sourcepub fn new(file: File, len: usize) -> Result<Self>
pub fn new(file: File, len: usize) -> Result<Self>
Memory-map a file for reading using raw syscalls
Sourcepub fn new_mut(file: File, len: usize) -> Result<Self>
pub fn new_mut(file: File, len: usize) -> Result<Self>
Memory-map a file for read-write using raw syscalls
Sourcepub fn as_mut_slice(&mut self) -> Result<&mut [u8]>
pub fn as_mut_slice(&mut self) -> Result<&mut [u8]>
Get mutable slice view (only if writable)
Sourcepub fn read_struct<T: Copy>(&self, offset: usize) -> Result<&T>
pub fn read_struct<T: Copy>(&self, offset: usize) -> Result<&T>
Read struct at offset (zero-copy)
Sourcepub fn read_struct_mut<T: Copy>(&mut self, offset: usize) -> Result<&mut T>
pub fn read_struct_mut<T: Copy>(&mut self, offset: usize) -> Result<&mut T>
Read mutable struct at offset (zero-copy)
Sourcepub fn flush_async(&self) -> Result<()>
pub fn flush_async(&self) -> Result<()>
Flush changes to disk (async)
Sourcepub fn advise(&self, advice: MadviseAdvice) -> Result<()>
pub fn advise(&self, advice: MadviseAdvice) -> Result<()>
Advise kernel about access pattern
Trait Implementations§
Auto Trait Implementations§
impl Freeze for MmapFile
impl RefUnwindSafe for MmapFile
impl !Send for MmapFile
impl !Sync for MmapFile
impl Unpin for MmapFile
impl UnsafeUnpin for MmapFile
impl UnwindSafe for MmapFile
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
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
Wrap the input message
T in a tonic::Request