pub trait Seek { // Required method fn seek(&mut self, pos: SeekFrom) -> Result<u64>; // Provided methods fn rewind(&mut self) -> Result<()> { ... } fn stream_position(&mut self) -> Result<u64> { ... } }