pub enum CacheFill {
CacheEager,
CacheLazy,
}Expand description
A blob’s Remote story: how a device gets the bytes once the blob is Remote.
A cache-mechanism setting — it describes a blob only while Remote — that applies
to ANY blob regardless of Provenance. Orthogonal to provenance; a blob
declares both.
Both classes are declared per blob and are global (every device reads the same
class from the blob’s BlobRef); the difference is what a device does with
the blob on pull. The distinction has to be a declared property and not a
per-device choice: device B, deciding during its own pull whether to fetch a
blob, can only read the blob’s declared class — it cannot see what device A
chose locally.
Variants§
CacheEager
Fetched into the cache on pull, right away, on every device — part of “having the store” (e.g. cover art, so the grid renders from local bytes without a fetch). The cache copy is evictable + re-fetchable, not pinned.
CacheLazy
Not fetched on pull: a pulling device skips it and fetches it into the cache on first read — e.g. audio, which is big and streams on demand.
Trait Implementations§
Source§impl<'de> Deserialize<'de> for CacheFill
impl<'de> Deserialize<'de> for CacheFill
Source§fn deserialize<__D>(
__deserializer: __D,
) -> Result<CacheFill, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
fn deserialize<__D>(
__deserializer: __D,
) -> Result<CacheFill, <__D as Deserializer<'de>>::Error>where
__D: Deserializer<'de>,
Source§impl Serialize for CacheFill
impl Serialize for CacheFill
Source§fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
fn serialize<__S>(
&self,
__serializer: __S,
) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>where
__S: Serializer,
impl Copy for CacheFill
impl Eq for CacheFill
impl StructuralPartialEq for CacheFill
Auto Trait Implementations§
impl Freeze for CacheFill
impl RefUnwindSafe for CacheFill
impl Send for CacheFill
impl Sync for CacheFill
impl Unpin for CacheFill
impl UnsafeUnpin for CacheFill
impl UnwindSafe for CacheFill
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
key and return true if they are equal.§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
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>
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>
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