cow_file/src/mapped.rs
2023-08-03 00:36:14 +02:00

15 lines
365 B
Rust

use std::mem::size_of;
use zerocopy::{FromBytes, FromZeroes, Ref};
use crate::{FilePointer, FileRange, RawFilePointer};
pub trait ReaderTrait {
fn read_raw(&self, ptr: FileRange) -> &[u8];
fn read<T: FromBytes>(&self, ptr: FilePointer<T>) -> &T {
Ref::<_, T>::new(self.read_raw(ptr.range()))
.unwrap()
.into_ref()
}
}