embedded_shadow/types.rs
1use crate::ShadowError;
2
3pub trait StagingBuffer {
4 fn any_staged(&self) -> bool;
5 fn apply_overlay(&self, addr: u16, out: &mut [u8]) -> Result<(), ShadowError>;
6 fn write_staged(&mut self, addr: u16, data: &[u8]) -> Result<(), ShadowError>;
7 fn clear_staged(&mut self) -> Result<(), ShadowError>;
8 fn for_each_staged<F>(&self, f: F) -> Result<(), ShadowError>
9 where
10 F: FnMut(u16, &[u8]) -> Result<(), ShadowError>;
11}