pub trait EndpointOut: Endpoint {
// Required method
async fn read(&mut self, buf: &mut [u8]) -> Result<usize, EndpointError>;
// Provided method
async fn read_transfer(
&mut self,
buf: &mut [u8],
) -> Result<usize, EndpointError> { ... }
}
Expand description
OUT Endpoint trait.
Required Methods§
Provided Methods§
Sourceasync fn read_transfer(
&mut self,
buf: &mut [u8],
) -> Result<usize, EndpointError>
async fn read_transfer( &mut self, buf: &mut [u8], ) -> Result<usize, EndpointError>
Read until the buffer is full or we receive a short packet from the USB host returning the actual length of the entire data block.
This should also clear any NAK flags and prepare the endpoint to receive the next packet or data block.
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.