Trait base::FileReadWriteVolatile 
source · pub trait FileReadWriteVolatile {
    // Required methods
    fn read_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<usize>;
    fn write_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<usize>;
    // Provided methods
    fn read_vectored_volatile(
        &mut self,
        bufs: &[VolatileSlice<'_>],
    ) -> Result<usize> { ... }
    fn read_exact_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<()> { ... }
    fn write_vectored_volatile(
        &mut self,
        bufs: &[VolatileSlice<'_>],
    ) -> Result<usize> { ... }
    fn write_all_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<()> { ... }
}Expand description
A trait similar to Read and Write, but uses volatile memory as buffers.
Required Methods§
sourcefn read_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<usize>
 
fn read_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<usize>
Read bytes from this file into the given slice, returning the number of bytes read on success.
sourcefn write_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<usize>
 
fn write_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<usize>
Write bytes from the slice to the given file, returning the number of bytes written on success.
Provided Methods§
sourcefn read_vectored_volatile(
    &mut self,
    bufs: &[VolatileSlice<'_>],
) -> Result<usize>
 
fn read_vectored_volatile( &mut self, bufs: &[VolatileSlice<'_>], ) -> Result<usize>
Like read_volatile, except it reads to a slice of buffers. Data is copied to fill each
buffer in order, with the final buffer written to possibly being only partially filled. This
method must behave as a single call to read_volatile with the buffers concatenated would.
The default implementation calls read_volatile with either the first nonempty buffer
provided, or returns Ok(0) if none exists.
sourcefn read_exact_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<()>
 
fn read_exact_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<()>
Reads bytes from this into the given slice until all bytes in the slice are written, or an error is returned.
sourcefn write_vectored_volatile(
    &mut self,
    bufs: &[VolatileSlice<'_>],
) -> Result<usize>
 
fn write_vectored_volatile( &mut self, bufs: &[VolatileSlice<'_>], ) -> Result<usize>
Like write_volatile, except that it writes from a slice of buffers. Data is copied from
each buffer in order, with the final buffer read from possibly being only partially
consumed. This method must behave as a call to write_volatile with the buffers
concatenated would. The default implementation calls write_volatile with either the first
nonempty buffer provided, or returns Ok(0) if none exists.
sourcefn write_all_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<()>
 
fn write_all_volatile(&mut self, slice: VolatileSlice<'_>) -> Result<()>
Write bytes from the slice to the given file until all the bytes from the slice have been written, or an error is returned.