Trait Buffer

Source
pub trait Buffer {
    // Required methods
    fn bytes(&self) -> &[u8];
    fn len(&self) -> usize;
    fn read_bytes_at(
        &self,
        offset: usize,
        length: usize,
    ) -> Result<&[u8], BufferError>;
}

Required Methods§

Source

fn bytes(&self) -> &[u8]

The whole buffer as a slice.

Source

fn len(&self) -> usize

The length of the data in the buffer.

Source

fn read_bytes_at( &self, offset: usize, length: usize, ) -> Result<&[u8], BufferError>

Reads a given number of bytes at the given offset.

Implementations on Foreign Types§

Source§

impl Buffer for &[u8]

Source§

fn bytes(&self) -> &[u8]

Source§

fn len(&self) -> usize

Source§

fn read_bytes_at( &self, offset: usize, length: usize, ) -> Result<&[u8], BufferError>

Source§

impl<T: Buffer> Buffer for &T

Source§

fn bytes(&self) -> &[u8]

Source§

fn len(&self) -> usize

Source§

fn read_bytes_at( &self, offset: usize, length: usize, ) -> Result<&[u8], BufferError>

Source§

impl<T: Buffer> Buffer for &mut T

Source§

fn bytes(&self) -> &[u8]

Source§

fn len(&self) -> usize

Source§

fn read_bytes_at( &self, offset: usize, length: usize, ) -> Result<&[u8], BufferError>

Source§

impl<const SIZE: usize> Buffer for ArrayVec<u8, SIZE>

Source§

fn bytes(&self) -> &[u8]

Source§

fn len(&self) -> usize

Source§

fn read_bytes_at( &self, offset: usize, length: usize, ) -> Result<&[u8], BufferError>

Source§

impl<const SIZE: usize> Buffer for Vec<u8, SIZE>

Source§

fn bytes(&self) -> &[u8]

Source§

fn len(&self) -> usize

Source§

fn read_bytes_at( &self, offset: usize, length: usize, ) -> Result<&[u8], BufferError>

Implementors§