diff --git a/src/mapped.rs b/src/mapped.rs index 83491c1..c94b919 100644 --- a/src/mapped.rs +++ b/src/mapped.rs @@ -1,4 +1,8 @@ -use std::mem::{align_of, size_of}; +use std::{ + mem::{align_of, size_of}, + ops::Deref, + sync::Arc, +}; use zerocopy::{FromBytes, FromZeroes, Ref}; @@ -20,3 +24,12 @@ pub trait ReaderTrait { .into_ref() } } + +impl ReaderTrait for Arc +where + T: ReaderTrait, +{ + fn read_raw(&self, range: FileRange) -> &[u8] { + self.deref().read_raw(range) + } +}