Struct avrox_storage::PageBuffer
source · pub struct PageBuffer<const PAGE_SIZE: usize, SD> { /* private fields */ }
Implementations§
source§impl<const PAGE_SIZE: usize, SD> PageBuffer<PAGE_SIZE, SD>where
SD: RandomRead + RandomWrite,
impl<const PAGE_SIZE: usize, SD> PageBuffer<PAGE_SIZE, SD>where
SD: RandomRead + RandomWrite,
pub fn with_driver(driver: SD) -> Self
Trait Implementations§
source§impl<const PAGE_SIZE: usize, SD> RandomRead for PageBuffer<PAGE_SIZE, SD>where
SD: RandomRead + RandomWrite,
impl<const PAGE_SIZE: usize, SD> RandomRead for PageBuffer<PAGE_SIZE, SD>where
SD: RandomRead + RandomWrite,
source§fn read_at_hinted(
&self,
addr: SAddr,
buf: &mut [u8],
hint: AccessHint
) -> Result<usize>
fn read_at_hinted( &self, addr: SAddr, buf: &mut [u8], hint: AccessHint ) -> Result<usize>
Read into the given buffer, from the given device address. Read more
source§fn read_at(&self, addr: SAddr, buf: &mut [u8]) -> Result<usize>
fn read_at(&self, addr: SAddr, buf: &mut [u8]) -> Result<usize>
Read into the given buffer, from the given device address. Read more
source§fn read_full_at_hinted(
&self,
addr: SAddr,
buf: &mut [u8],
hint: AccessHint
) -> Result<()>
fn read_full_at_hinted( &self, addr: SAddr, buf: &mut [u8], hint: AccessHint ) -> Result<()>
Read into the given buffer, from the given device address.
The entire buffer will be filled unless an error condition occurs (e.g.
attempting to read off the end of device memory). If an error does
occur, the state (partially written, not written at all) of the buffer
is undefined.
source§fn read_full_at(&self, addr: SAddr, buf: &mut [u8]) -> Result<()>
fn read_full_at(&self, addr: SAddr, buf: &mut [u8]) -> Result<()>
Read into the given buffer, from the given device address.
The entire buffer will be filled unless an error condition occurs (e.g.
attempting to read off the end of device memory). If an error does
occur, the state (partially written, not written at all) of the buffer
is undefined.
source§impl<const PAGE_SIZE: usize, SD> RandomWrite for PageBuffer<PAGE_SIZE, SD>where
SD: RandomRead + RandomWrite,
impl<const PAGE_SIZE: usize, SD> RandomWrite for PageBuffer<PAGE_SIZE, SD>where
SD: RandomRead + RandomWrite,
source§fn write_at_hinted(
&mut self,
addr: SAddr,
buf: &[u8],
hint: AccessHint
) -> Result<usize>
fn write_at_hinted( &mut self, addr: SAddr, buf: &[u8], hint: AccessHint ) -> Result<usize>
Write the contents of the given buffer at the given device address.
Depending on the nature of the underlying device, the write may not
complete. The number of bytes actually written will be returned in the
Ok() result, and it is the caller’s responsibility to resume writing
the remainder.
source§fn flush(&mut self) -> Result<()>
fn flush(&mut self) -> Result<()>
Flush the write to the device. Writes are not guaranteed to have been
completed unless this method has been called.
source§fn write_all_at_hinted(
&mut self,
addr: SAddr,
buf: &[u8],
hint: AccessHint
) -> Result<()>
fn write_all_at_hinted( &mut self, addr: SAddr, buf: &[u8], hint: AccessHint ) -> Result<()>
Write the contents of the given buffer at the given device address.
THe entire buffer will be written unless an error condition occurs.
If an error does occur, the state (partially written, not written at all)
is undefined.
source§fn write_all_at(&mut self, addr: SAddr, buf: &[u8]) -> Result<()>
fn write_all_at(&mut self, addr: SAddr, buf: &[u8]) -> Result<()>
Write the contents of the given buffer at the given device address.
THe entire buffer will be written unless an error condition occurs.
If an error does occur, the state (partially written, not written at all)
is undefined.
source§fn write_at(&mut self, addr: SAddr, buf: &[u8]) -> Result<usize>
fn write_at(&mut self, addr: SAddr, buf: &[u8]) -> Result<usize>
Write the contents of the given buffer at the given device address.
Depending on the nature of the underlying device, the write may not
complete. The number of bytes actually written will be returned in the
Ok() result, and it is the caller’s responsibility to resume writing
the remainder.
Auto Trait Implementations§
impl<const PAGE_SIZE: usize, SD> !Freeze for PageBuffer<PAGE_SIZE, SD>
impl<const PAGE_SIZE: usize, SD> !RefUnwindSafe for PageBuffer<PAGE_SIZE, SD>
impl<const PAGE_SIZE: usize, SD> Send for PageBuffer<PAGE_SIZE, SD>where
SD: Send,
impl<const PAGE_SIZE: usize, SD> !Sync for PageBuffer<PAGE_SIZE, SD>
impl<const PAGE_SIZE: usize, SD> Unpin for PageBuffer<PAGE_SIZE, SD>where
SD: Unpin,
impl<const PAGE_SIZE: usize, SD> UnwindSafe for PageBuffer<PAGE_SIZE, SD>where
SD: UnwindSafe,
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