Trait IterReadItem

Source
pub trait IterReadItem {
    type Buffer: Default;

    // Required method
    fn read<I: Iterator<Item = Self>>(
        target: &mut [u8],
        it: &mut I,
        buf: &mut Self::Buffer,
    ) -> Result<usize>
       where Self: Sized;
}
Expand description

Trait that should be implemented for any type which can be used in an iterator given to IterRead.

Required Associated Types§

Source

type Buffer: Default

Represents the type of buffer that the adapter will use. Can be () if no buffer is required.

Required Methods§

Source

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>
where Self: Sized,

Implements Read::read() for the specific type Self.

Implementations on Foreign Types§

Source§

impl<'a> IterReadItem for &'a str

Source§

type Buffer = Buf<&'a [u8]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a> IterReadItem for &'a u8

Source§

type Buffer = ()

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, _: &mut (), ) -> Result<usize>

Source§

impl<'a> IterReadItem for &'a String

Source§

type Buffer = Buf<&'a [u8]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a> IterReadItem for &'a Vec<u8>

Source§

type Buffer = Buf<&'a [u8]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a> IterReadItem for &'a [u8]

Source§

type Buffer = Buf<&'a [u8]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a> IterReadItem for u8

Source§

type Buffer = ()

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, _: &mut (), ) -> Result<usize>

Source§

impl<'a> IterReadItem for String

Source§

type Buffer = Buf<Vec<u8>>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a> IterReadItem for Vec<u8>

Source§

type Buffer = Buf<Vec<u8>>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a, E> IterReadItem for Result<&'a str, E>
where Error: From<E>,

Source§

type Buffer = Buf<&'a [u8]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a, E> IterReadItem for Result<&'a u8, E>
where Error: From<E>,

Source§

type Buffer = ()

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, _: &mut (), ) -> Result<usize>

Source§

impl<'a, E> IterReadItem for Result<&'a String, E>
where Error: From<E>,

Source§

type Buffer = Buf<&'a [u8]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a, E> IterReadItem for Result<&'a Vec<u8>, E>
where Error: From<E>,

Source§

type Buffer = Buf<&'a [u8]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a, E> IterReadItem for Result<&'a [u8], E>
where Error: From<E>,

Source§

type Buffer = Buf<&'a [u8]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a, E> IterReadItem for Result<u8, E>
where Error: From<E>,

Source§

type Buffer = ()

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, _: &mut (), ) -> Result<usize>

Source§

impl<'a, E> IterReadItem for Result<String, E>
where Error: From<E>,

Source§

type Buffer = Buf<Vec<u8>>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a, E> IterReadItem for Result<Vec<u8>, E>
where Error: From<E>,

Source§

type Buffer = Buf<Vec<u8>>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a, E, const N: usize> IterReadItem for Result<&'a [u8; N], E>
where Error: From<E>,

Source§

type Buffer = Buf<&'a [u8]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a, E, const N: usize> IterReadItem for Result<[u8; N], E>
where Error: From<E>,

Source§

type Buffer = Buf<[u8; N]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a, const N: usize> IterReadItem for &'a [u8; N]

Source§

type Buffer = Buf<&'a [u8]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Source§

impl<'a, const N: usize> IterReadItem for [u8; N]

Source§

type Buffer = Buf<[u8; N]>

Source§

fn read<I: Iterator<Item = Self>>( target: &mut [u8], it: &mut I, buf: &mut Self::Buffer, ) -> Result<usize>

Implementors§