Enum rkyv::validation::validators::ArchiveError [−][src]
pub enum ArchiveError { Overflow { base: *const u8, offset: isize, }, Underaligned { expected_align: usize, actual_align: usize, }, OutOfBounds { base: *const u8, offset: isize, range: Range<*const u8>, }, Overrun { ptr: *const u8, size: usize, range: Range<*const u8>, }, Unaligned { ptr: *const u8, align: usize, }, SubtreePointerOutOfBounds { ptr: *const u8, subtree_range: Range<*const u8>, }, SubtreePointerOverrun { ptr: *const u8, size: usize, subtree_range: Range<*const u8>, }, RangePoppedOutOfOrder { expected_depth: usize, actual_depth: usize, }, UnpoppedSubtreeRanges { last_range: usize, }, ExceededMaximumSubtreeDepth { max_subtree_depth: usize, }, }
Expand description
Errors that can occur when checking archive memory.
Variants
Computing the target of a relative pointer overflowed
The archive is under-aligned for one of the types inside
Show fields
A pointer pointed outside the bounds of the archive
Show fields
There wasn’t enough space for the desired type at the pointed location
Show fields
The pointer wasn’t aligned properly for the desired type
Show fields
The pointer wasn’t within the subtree range
Show fields
There wasn’t enough space in the subtree range for the desired type at the pointed location
Show fields
A subtree range was popped out of order.
Subtree ranges must be popped in the reverse of the order they are pushed.
Show fields
A subtree range was not popped before validation concluded.
Show fields
Fields of UnpoppedSubtreeRanges
last_range: usize
The depth of the last subtree that was pushed
The maximum subtree depth was reached or exceeded.
Show fields
Fields of ExceededMaximumSubtreeDepth
max_subtree_depth: usize
The maximum depth that subtrees may be validated down to
Trait Implementations
Auto Trait Implementations
impl RefUnwindSafe for ArchiveError
impl !Send for ArchiveError
impl !Sync for ArchiveError
impl Unpin for ArchiveError
impl UnwindSafe for ArchiveError
Blanket Implementations
type ArchivedMetadata = ()
type ArchivedMetadata = ()
The archived version of the pointer metadata for this type.
Converts some archived metadata to the pointer metadata for itself.
Mutably borrows from an owned value. Read more
impl<F, W, T, D> Deserialize<With<T, W>, D> for F where
D: Fallible + ?Sized,
F: ?Sized,
W: DeserializeWith<F, T, D>,
impl<F, W, T, D> Deserialize<With<T, W>, D> for F where
D: Fallible + ?Sized,
F: ?Sized,
W: DeserializeWith<F, T, D>,