pub trait InsnWrite: Write {
// Required methods
fn write_addr(
&mut self,
size: usize,
addr: Address,
rel: bool,
) -> Result<()>;
fn write_reloc(&mut self, reloc: Reloc) -> Result<()>;
fn offset(&self) -> usize;
// Provided method
fn write_zeroes(&mut self, count: usize) -> Result<()> { ... }
}