1 2 3 4 5 6 7 8 9 10 11 12
use std::io::{self, Seek, SeekFrom}; pub trait SeekExt { fn stream_position_ext(&mut self) -> io::Result<u64>; } impl<S: Seek> SeekExt for S { // copy/paste of unstable `Seek::stream_position` fn stream_position_ext(&mut self) -> io::Result<u64> { self.seek(SeekFrom::Current(0)) } }