他のトレイト
ここではDebug
トレイトを導出しました。この他にもいくつかのトレイトを実装すると良いでしょう。
use core::fmt::{self, Write}; impl Write for Uart { fn write_str(&mut self, s: &str) -> fmt::Result { for c in s.as_bytes() { self.write_byte(*c); } Ok(()) } } // SAFETY: `Uart` just contains a pointer to device memory, which can be // accessed from any context. unsafe impl Send for Uart {}
Write
を実装すると、Uart
タイプに対してwrite!
とwriteln!
マクロが利用できるようになります。- この例を
src/bare-metal/aps/examples
においてmake qemu_minimal
とすることで、QEMUにより実行してみましょう。