pub trait Log { // Required methods fn write(&mut self, data: &[u8]) -> Result<(), usize>; fn read(&mut self) -> Result<Option<Response>, usize>; }