use futures::Future;
pub trait SyncFileReader {
fn read(&self, offset: u64, length: u64) -> Result<Vec<u8>, std::io::Error>;
}
pub trait AsyncFileReader {
fn read_async(
&self,
offset: u64,
length: u64,
) -> Box<Future<Item = Vec<u8>, Error = std::io::Error> + Send>;
}