pub trait ErrorType {
    type Error: Error;
}
Expand description

Base trait for all IO traits, defining the error type.

All IO operations of all traits return the error defined in this trait.

Having a shared trait instead of having every trait define its own Error associated type enforces all impls on the same type use the same error. This is very convenient when writing generic code, it means you have to handle a single error type T::Error, instead of <T as Read>::Error and <T as Write>::Error which might be different types.

Required Associated Types§

source

type Error: Error

Error type of all the IO operations on this type.

Implementations on Foreign Types§

source§

impl ErrorType for &[u8]

§

type Error = Infallible

source§

impl ErrorType for &mut [u8]

source§

impl ErrorType for Vec<u8>

§

type Error = Infallible

source§

impl<C> ErrorType for Client<C>
where C: ErrorType,

§

type Error = <C as ErrorType>::Error

source§

impl<C> ErrorType for Request<C>
where C: ErrorType,

§

type Error = <C as ErrorType>::Error

source§

impl<C> ErrorType for Response<C>
where C: ErrorType,

§

type Error = <C as ErrorType>::Error

source§

impl<C> ErrorType for Client<C>
where C: ErrorType,

§

type Error = <C as ErrorType>::Error

source§

impl<C> ErrorType for Request<C>
where C: ErrorType,

§

type Error = <C as ErrorType>::Error

source§

impl<C> ErrorType for Response<C>
where C: ErrorType,

§

type Error = <C as ErrorType>::Error

source§

impl<M, const N: usize> ErrorType for &Pipe<M, N>
where M: RawMutex,

§

type Error = Infallible

source§

impl<M, const N: usize> ErrorType for Pipe<M, N>
where M: RawMutex,

§

type Error = Infallible

source§

impl<M, const N: usize> ErrorType for Reader<'_, M, N>
where M: RawMutex,

§

type Error = Infallible

source§

impl<M, const N: usize> ErrorType for Writer<'_, M, N>
where M: RawMutex,

§

type Error = Infallible

source§

impl<T> ErrorType for &mut T
where T: ErrorType + ?Sized,

§

type Error = <T as ErrorType>::Error

source§

impl<T> ErrorType for Box<T>
where T: ErrorType + ?Sized,

§

type Error = <T as ErrorType>::Error

Implementors§

source§

impl ErrorType for esp_idf_svc::http::client::EspHttpConnection

source§

impl ErrorType for EspFirmwareInfoLoader

source§

impl ErrorType for EspOta

source§

impl<'a> ErrorType for esp_idf_svc::http::server::EspHttpConnection<'a>

source§

impl<'a> ErrorType for EspHttpRawConnection<'a>

source§

impl<'a> ErrorType for EspOtaUpdate<'a>

source§

impl<'a> ErrorType for EspOtaUpdateFinished<'a>

source§

impl<'d> ErrorType for AdcDriver<'d>

source§

impl<'d> ErrorType for UartDriver<'d>

source§

impl<'d> ErrorType for UartRxDriver<'d>

source§

impl<'d> ErrorType for UartTxDriver<'d>

source§

impl<'d, Dir> ErrorType for I2sDriver<'d, Dir>

source§

impl<'d, T> ErrorType for AsyncUartDriver<'d, T>
where T: BorrowMut<UartDriver<'d>>,

source§

impl<'d, T> ErrorType for AsyncUartRxDriver<'d, T>
where T: BorrowMut<UartRxDriver<'d>>,

source§

impl<'d, T> ErrorType for AsyncUartTxDriver<'d, T>
where T: BorrowMut<UartTxDriver<'d>>,

source§

impl<C> ErrorType for esp_idf_svc::http::client::Request<C>
where C: ErrorType,

§

type Error = <C as ErrorType>::Error

source§

impl<C> ErrorType for esp_idf_svc::http::client::Response<C>
where C: ErrorType,

§

type Error = <C as ErrorType>::Error

source§

impl<C> ErrorType for esp_idf_svc::http::server::Request<C>
where C: ErrorType,

§

type Error = <C as ErrorType>::Error

source§

impl<C> ErrorType for esp_idf_svc::http::server::Response<C>
where C: ErrorType,

§

type Error = <C as ErrorType>::Error

source§

impl<S> ErrorType for EspAsyncTls<S>
where S: PollableSocket,

source§

impl<S> ErrorType for EspTls<S>
where S: Socket,