positioned_io2/
unix.rs

1use std::fs::File;
2use std::io;
3use std::io::Write;
4use std::os::unix::fs::FileExt;
5
6use super::{ReadAt, WriteAt};
7
8impl ReadAt for File {
9    #[inline]
10    fn read_at(&self, pos: u64, buf: &mut [u8]) -> io::Result<usize> {
11        FileExt::read_at(self, buf, pos)
12    }
13}
14
15impl WriteAt for File {
16    fn write_at(&mut self, pos: u64, buf: &[u8]) -> io::Result<usize> {
17        FileExt::write_at(self, buf, pos)
18    }
19
20    fn flush(&mut self) -> io::Result<()> {
21        Write::flush(self)
22    }
23}