Trait RandomReadBlob

Source
pub trait RandomReadBlob {
    // Required method
    fn read(&self, pos: u64, buf: &mut [MaybeUninit<u8>]) -> Result<usize>;

    // Provided methods
    fn readv(&self, offs: u64, iovecs: &mut [IoSliceMut<'_>]) -> Result<usize> { ... }
    fn read_exact(&self, offs: u64, buf: &mut [MaybeUninit<u8>]) -> Result<()> { ... }
    fn readv_all<'a, 'b, 'bb>(
        &'a self,
        offs: u64,
        iovecs: &'b mut [IoSliceMut<'bb>],
    ) -> Result<()> { ... }
    fn read_to_end(&self, offs: u64) -> Result<Vec<u8>> { ... }
}
Expand description

Read-only random accessible Blob operations(synchronous).

Required Methods§

Source

fn read(&self, pos: u64, buf: &mut [MaybeUninit<u8>]) -> Result<usize>

Provided Methods§

Source

fn readv(&self, offs: u64, iovecs: &mut [IoSliceMut<'_>]) -> Result<usize>

Source

fn read_exact(&self, offs: u64, buf: &mut [MaybeUninit<u8>]) -> Result<()>

Source

fn readv_all<'a, 'b, 'bb>( &'a self, offs: u64, iovecs: &'b mut [IoSliceMut<'bb>], ) -> Result<()>

Source

fn read_to_end(&self, offs: u64) -> Result<Vec<u8>>

Implementations on Foreign Types§

Source§

impl<'t, T> RandomReadBlob for &'t T
where T: RandomReadBlob + ?Sized + 't,

Source§

fn read(&self, pos: u64, buf: &mut [MaybeUninit<u8>]) -> Result<usize>

Source§

fn readv(&self, offs: u64, iovecs: &mut [IoSliceMut<'_>]) -> Result<usize>

Source§

fn read_exact(&self, offs: u64, buf: &mut [MaybeUninit<u8>]) -> Result<()>

Source§

fn read_to_end(&self, offs: u64) -> Result<Vec<u8>>

Source§

fn readv_all<'a, 'b, 'bb>( &'a self, offs: u64, iovecs: &'b mut [IoSliceMut<'bb>], ) -> Result<()>

Implementors§