pub enum PHashError {
InsufficientStability {
unstable_bits: usize,
threshold: f32,
},
RecoveryFailed,
KdfError(String),
}Expand description
Every way perceptual hashing can fail.
Variants§
InsufficientStability
Too many coefficients sit within DELTA_MIN of the median for the
hash to be reproducible after embedding.
Fields
RecoveryFailed
Neither hypothesis for the uncertain bit produced a key that matches the extracted payload. The image, the password or the payload is wrong.
KdfError(String)
Key derivation failed while testing a hypothesis.
Trait Implementations§
Source§impl Debug for PHashError
impl Debug for PHashError
Source§impl Display for PHashError
impl Display for PHashError
Source§impl Error for PHashError
impl Error for PHashError
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more
1.0.0 · Source§fn description(&self) -> &str
fn description(&self) -> &str
👎Deprecated since 1.42.0:
use the Display impl or to_string()
Source§impl From<PHashError> for PipelineError
impl From<PHashError> for PipelineError
Source§fn from(err: PHashError) -> Self
fn from(err: PHashError) -> Self
Converts to this type from the input type.
Auto Trait Implementations§
impl Freeze for PHashError
impl RefUnwindSafe for PHashError
impl Send for PHashError
impl Sync for PHashError
impl Unpin for PHashError
impl UnsafeUnpin for PHashError
impl UnwindSafe for PHashError
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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