Trait buffer::Buffer
[−]
[src]
pub trait Buffer<'data> { type Intermediate: ToBufferRef<'data>; fn to_to_buffer_ref(self) -> Self::Intermediate; fn cap_at(self, len: usize) -> CapAt<'data, Self>
where
Self: Sized, { ... } }
Trait for types that can act as buffer for bytes.
It should be accepted as trait bound for functions that accept buffers, and
should immediately be converted to BufferRef
using the with_buffer
function.
Associated Types
type Intermediate: ToBufferRef<'data>
Intermediate result of converting the T: Buffer
into a BufferRef
.
Required Methods
fn to_to_buffer_ref(self) -> Self::Intermediate
Converts the T: Buffer
into the intermediate step to BufferRef
.
Provided Methods
fn cap_at(self, len: usize) -> CapAt<'data, Self> where
Self: Sized,
Self: Sized,
Caps the buffer at the specified byte index.
This means that no more than len
bytes will be written to the buffer.
Implementors
impl<'d, A: Array<Item = u8>> Buffer<'d> for &'d mut ArrayVec<A>
impl<'r, 'd, 's> Buffer<'d> for &'r mut BufferRef<'d, 's>
impl<'data, T: Buffer<'data>> Buffer<'data> for CapAt<'data, T>
impl<'d> Buffer<'d> for &'d mut [u8]
impl<'d> Buffer<'d> for &'d mut &'d mut [u8]
impl<'data> Buffer<'data> for &'data mut Vec<u8>