pub trait Encoder: Unpin { // Required methods fn write_u8(&mut self, byte: u8) -> Result<()>; fn write_all(&mut self, bytes: &[u8]) -> Result<()>; }