pub trait SerialIO {
type Error;
// Required methods
fn write(&mut self, data: &[u8]) -> Result<usize, Self::Error>;
fn read(&mut self, buffer: &mut [u8]) -> Result<usize, Self::Error>;
fn flush(&mut self) -> Result<(), Self::Error>;
// Provided method
fn available(&self) -> Result<bool, Self::Error> { ... }
}Expand description
Serial I/O abstraction for embedded platforms