1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
//! Implementation of `core::fmt::Write` for the HAL's `serial::Write`.
//!
//! TODO write example of usage
use core::fmt::{Result, Write};
impl<Word, Error> Write for dyn (::serial::Write<Word, Error = Error>)
where
    Word: From<u8>,
{
    fn write_str(&mut self, s: &str) -> Result {
        let _ = s
            .as_bytes()
            .into_iter()
            .map(|c| block!(self.write(Word::from(*c))))
            .last();
        Ok(())
    }
}