Struct rkyv::validation::SharedArchiveValidator [−][src]
pub struct SharedArchiveValidator<C> { /* fields omitted */ }
An adapter that adds shared memory validation.
Implementations
impl<C> SharedArchiveValidator<C>
[src]
impl<C> SharedArchiveValidator<C>
[src]pub fn new(inner: C) -> Self
[src]
Wraps the given context and adds shared memory validation.
pub fn into_inner(self) -> C
[src]
Consumes the adapter and returns the underlying validator.
Trait Implementations
impl<C: ArchiveBoundsContext> ArchiveBoundsContext for SharedArchiveValidator<C>
[src]
impl<C: ArchiveBoundsContext> ArchiveBoundsContext for SharedArchiveValidator<C>
[src]impl<C: ArchiveMemoryContext> ArchiveMemoryContext for SharedArchiveValidator<C>
[src]
impl<C: ArchiveMemoryContext> ArchiveMemoryContext for SharedArchiveValidator<C>
[src]unsafe fn claim_bytes(
&mut self,
start: *const u8,
len: usize
) -> Result<(), Self::Error>
[src]
&mut self,
start: *const u8,
len: usize
) -> Result<(), Self::Error>
unsafe fn claim_owned_ptr<T: ArchivePointee + ?Sized>(
&mut self,
ptr: *const T
) -> Result<(), Self::Error> where
Self: ArchiveBoundsContext,
<T as Pointee>::Metadata: LayoutMetadata<T>,
[src]
&mut self,
ptr: *const T
) -> Result<(), Self::Error> where
Self: ArchiveBoundsContext,
<T as Pointee>::Metadata: LayoutMetadata<T>,
fn claim_owned_rel_ptr<T: ArchivePointee + ?Sized>(
&mut self,
rel_ptr: &RelPtr<T>
) -> Result<*const T, Self::Error> where
Self: ArchiveBoundsContext,
<T as Pointee>::Metadata: LayoutMetadata<T>,
[src]
&mut self,
rel_ptr: &RelPtr<T>
) -> Result<*const T, Self::Error> where
Self: ArchiveBoundsContext,
<T as Pointee>::Metadata: LayoutMetadata<T>,
impl<C: Fallible> Fallible for SharedArchiveValidator<C>
[src]
impl<C: Fallible> Fallible for SharedArchiveValidator<C>
[src]type Error = SharedArchiveError<C::Error>
The error produced by any failing methods
impl<C: ArchiveMemoryContext> SharedArchiveContext for SharedArchiveValidator<C>
[src]
impl<C: ArchiveMemoryContext> SharedArchiveContext for SharedArchiveValidator<C>
[src]unsafe fn claim_shared_bytes(
&mut self,
start: *const u8,
len: usize,
type_id: TypeId
) -> Result<bool, Self::Error>
[src]
&mut self,
start: *const u8,
len: usize,
type_id: TypeId
) -> Result<bool, Self::Error>
fn claim_shared_ptr<T: ArchivePointee + CheckBytes<Self> + ?Sized>(
&mut self,
rel_ptr: &RelPtr<T>,
type_id: TypeId
) -> Result<Option<*const T>, Self::Error> where
Self: ArchiveBoundsContext,
<T as Pointee>::Metadata: LayoutMetadata<T>,
[src]
&mut self,
rel_ptr: &RelPtr<T>,
type_id: TypeId
) -> Result<Option<*const T>, Self::Error> where
Self: ArchiveBoundsContext,
<T as Pointee>::Metadata: LayoutMetadata<T>,
Auto Trait Implementations
impl<C> RefUnwindSafe for SharedArchiveValidator<C> where
C: RefUnwindSafe,
impl<C> RefUnwindSafe for SharedArchiveValidator<C> where
C: RefUnwindSafe,
impl<C> !Send for SharedArchiveValidator<C>
impl<C> !Send for SharedArchiveValidator<C>
impl<C> !Sync for SharedArchiveValidator<C>
impl<C> !Sync for SharedArchiveValidator<C>
impl<C> Unpin for SharedArchiveValidator<C> where
C: Unpin,
impl<C> Unpin for SharedArchiveValidator<C> where
C: Unpin,
impl<C> UnwindSafe for SharedArchiveValidator<C> where
C: UnwindSafe,
impl<C> UnwindSafe for SharedArchiveValidator<C> where
C: UnwindSafe,
Blanket Implementations
impl<T> ArchivePointee for T
[src]
impl<T> ArchivePointee for T
[src]type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
pub fn pointer_metadata(
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata
[src]
&<T as ArchivePointee>::ArchivedMetadata
) -> <T as Pointee>::Metadata