pub struct CachedEntry {
pub path: String,
pub blake3_hex: String,
pub phash: u64,
pub thumbnail: Option<Vec<u8>>,
pub modified_secs: u64,
}Expand description
A single entry in the persistent fingerprint cache.
Fields§
§path: StringAbsolute path of the source media file.
blake3_hex: StringLower-case hex BLAKE3 digest (64 chars) of the file at cache time.
phash: u6464-bit perceptual hash.
thumbnail: Option<Vec<u8>>Optional 8×8 grayscale thumbnail bytes (64 bytes), stored as a Vec to
allow None when no thumbnail was computed.
modified_secs: u64Unix-second modification timestamp of the file at cache time.
Implementations§
Source§impl CachedEntry
impl CachedEntry
Sourcepub fn thumbnail_valid(&self) -> bool
pub fn thumbnail_valid(&self) -> bool
Return true if the thumbnail has the expected 8×8 = 64-byte size.
Trait Implementations§
Source§impl Clone for CachedEntry
impl Clone for CachedEntry
Source§fn clone(&self) -> CachedEntry
fn clone(&self) -> CachedEntry
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · 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 CachedEntry
impl Debug for CachedEntry
Source§impl<'de> Deserialize<'de> for CachedEntry
impl<'de> Deserialize<'de> for CachedEntry
Source§fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error>where
__D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Auto Trait Implementations§
impl Freeze for CachedEntry
impl RefUnwindSafe for CachedEntry
impl Send for CachedEntry
impl Sync for CachedEntry
impl Unpin for CachedEntry
impl UnsafeUnpin for CachedEntry
impl UnwindSafe for CachedEntry
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,
impl<T> DeserializeOwned for Twhere
T: for<'de> Deserialize<'de>,
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