Trait esp_idf_hal::io::ErrorType

source ·
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<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

Implementors§

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>>,