pub trait WriteErase {
type Error;
type Status;
// Required methods
fn status(&self) -> Result<Self::Status, Self::Error>;
fn erase_page(&mut self, address: usize) -> Result<(), Self::Error>;
fn program_word(
&mut self,
address: usize,
value: u32,
) -> Result<(), Self::Error>;
}