pub trait IoVectoredBuf: 'static {
// Required method
unsafe fn iter_io_buffer(&self) -> impl Iterator<Item = IoBuffer>;
// Provided methods
unsafe fn io_slices(&self) -> Vec<IoSlice> { ... }
unsafe fn iter_io_slice(&self) -> impl Iterator<Item = IoSlice> { ... }
fn iter_slice(&self) -> impl Iterator<Item = &[u8]> { ... }
fn total_len(&self) -> usize { ... }
fn total_capacity(&self) -> usize { ... }
fn owned_iter(self) -> Result<VectoredBufIter<Self>, Self>
where Self: Sized { ... }
fn slice(self, begin: usize) -> VectoredSlice<Self>
where Self: Sized { ... }
}
Expand description
A trait for vectored buffers.
Required Methods§
Provided Methods§
Sourceunsafe fn iter_io_slice(&self) -> impl Iterator<Item = IoSlice>
unsafe fn iter_io_slice(&self) -> impl Iterator<Item = IoSlice>
Sourcefn iter_slice(&self) -> impl Iterator<Item = &[u8]>
fn iter_slice(&self) -> impl Iterator<Item = &[u8]>
An iterator over slices.
Sourcefn total_capacity(&self) -> usize
fn total_capacity(&self) -> usize
The total capacity of all buffers.
Sourcefn owned_iter(self) -> Result<VectoredBufIter<Self>, Self>where
Self: Sized,
fn owned_iter(self) -> Result<VectoredBufIter<Self>, Self>where
Self: Sized,
Wrap self into an owned iterator.
Sourcefn slice(self, begin: usize) -> VectoredSlice<Self>where
Self: Sized,
fn slice(self, begin: usize) -> VectoredSlice<Self>where
Self: Sized,
Get an owned view with a specific offset.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.
Implementations on Foreign Types§
Source§impl IoVectoredBuf for ()
impl IoVectoredBuf for ()
unsafe fn iter_io_buffer(&self) -> impl Iterator<Item = IoBuffer>
Source§impl<T: IoBuf> IoVectoredBuf for &'static [T]
impl<T: IoBuf> IoVectoredBuf for &'static [T]
unsafe fn iter_io_buffer(&self) -> impl Iterator<Item = IoBuffer>
Source§impl<T: IoBuf> IoVectoredBuf for &'static mut [T]
impl<T: IoBuf> IoVectoredBuf for &'static mut [T]
unsafe fn iter_io_buffer(&self) -> impl Iterator<Item = IoBuffer>
Source§impl<T: IoBuf> IoVectoredBuf for (T,)
impl<T: IoBuf> IoVectoredBuf for (T,)
unsafe fn iter_io_buffer(&self) -> impl Iterator<Item = IoBuffer>
Source§impl<T: IoBuf, A: Allocator + 'static> IoVectoredBuf for Vec<T, A>
impl<T: IoBuf, A: Allocator + 'static> IoVectoredBuf for Vec<T, A>
unsafe fn iter_io_buffer(&self) -> impl Iterator<Item = IoBuffer>
Source§impl<T: IoBuf, Rest: IoVectoredBuf> IoVectoredBuf for (T, Rest)
impl<T: IoBuf, Rest: IoVectoredBuf> IoVectoredBuf for (T, Rest)
unsafe fn iter_io_buffer(&self) -> impl Iterator<Item = IoBuffer>
Source§impl<T: IoBuf, const N: usize> IoVectoredBuf for [T; N]
impl<T: IoBuf, const N: usize> IoVectoredBuf for [T; N]
unsafe fn iter_io_buffer(&self) -> impl Iterator<Item = IoBuffer>
Source§impl<T: IoBuf, const N: usize> IoVectoredBuf for ArrayVec<T, N>
Available on crate feature arrayvec
only.
impl<T: IoBuf, const N: usize> IoVectoredBuf for ArrayVec<T, N>
Available on crate feature
arrayvec
only.unsafe fn iter_io_buffer(&self) -> impl Iterator<Item = IoBuffer>
Source§impl<T: IoBuf, const N: usize> IoVectoredBuf for SmallVec<[T; N]>
Available on crate feature smallvec
only.
impl<T: IoBuf, const N: usize> IoVectoredBuf for SmallVec<[T; N]>
Available on crate feature
smallvec
only.