pub enum CorruptionPattern {
ZeroFill,
RandomNoise,
TornWrite,
HeaderOnly,
Bitrot,
Unknown,
}Expand description
Classification of corruption damage patterns.
Variants§
ZeroFill
90% of data area is zero bytes — firmware bug or partial write
RandomNoise
Shannon entropy >7.5 bits/byte — random overwrite or uninitialized memory
TornWrite
Valid prefix then zeros/0xFF at sector boundary — interrupted I/O
HeaderOnly
Only the FIL header area has invalid data — metadata corruption
Bitrot
Small Hamming distance (<8 bits) between stored and calculated checksum — single-bit errors
Unknown
Does not match any known pattern
Implementations§
Trait Implementations§
Source§impl Clone for CorruptionPattern
impl Clone for CorruptionPattern
Source§fn clone(&self) -> CorruptionPattern
fn clone(&self) -> CorruptionPattern
Returns a duplicate of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for CorruptionPattern
impl Debug for CorruptionPattern
Source§impl PartialEq for CorruptionPattern
impl PartialEq for CorruptionPattern
Source§impl Serialize for CorruptionPattern
impl Serialize for CorruptionPattern
impl Copy for CorruptionPattern
impl Eq for CorruptionPattern
impl StructuralPartialEq for CorruptionPattern
Auto Trait Implementations§
impl Freeze for CorruptionPattern
impl RefUnwindSafe for CorruptionPattern
impl Send for CorruptionPattern
impl Sync for CorruptionPattern
impl Unpin for CorruptionPattern
impl UnsafeUnpin for CorruptionPattern
impl UnwindSafe for CorruptionPattern
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more