pub enum ContentDigestMode {
Strong,
Strongish,
Weak,
}Expand description
Represents the supported modes for calculating content digests.
Variants§
Strong
Use a strong digest for file content.
Strong digests require hashing all of the contents of a file; this may noticeably impact performance for very large files.
This setting guarantees that a modified file will be detected.
Strongish
Use a “strongish” digest for file content.
A strongish digest is based off of the file’s size, last modified
time, and a hash of only the first 10 MiB of the file’s contents;
this is similar to Cromwell’s fingerprint call caching strategy.
This setting cannot guarantee the detection of modified files (e.g. a modification beyond the first 10 MiB of a file without a change to its size or last modified time will not be detected), but it is faster than using a strong digest for large files while still taking file content into account.
Weak
Use a weak digest for file content.
A weak digest is based solely off of file metadata, such as size and last modified time.
This setting cannot guarantee the detection of modified files and may result in a modified file not causing a call cache entry to be invalidated.
However, it is substantially faster than using a strong digest.
Trait Implementations§
Source§impl Clone for ContentDigestMode
impl Clone for ContentDigestMode
Source§fn clone(&self) -> ContentDigestMode
fn clone(&self) -> ContentDigestMode
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreimpl Copy for ContentDigestMode
Source§impl Debug for ContentDigestMode
impl Debug for ContentDigestMode
Source§impl Default for ContentDigestMode
impl Default for ContentDigestMode
Source§fn default() -> ContentDigestMode
fn default() -> ContentDigestMode
impl Eq for ContentDigestMode
Source§impl<'de> FromToml<'de> for ContentDigestMode
impl<'de> FromToml<'de> for ContentDigestMode
Source§impl Hash for ContentDigestMode
impl Hash for ContentDigestMode
Source§impl JsonSchema for ContentDigestMode
impl JsonSchema for ContentDigestMode
Source§fn schema_id() -> Cow<'static, str>
fn schema_id() -> Cow<'static, str>
Source§fn json_schema(generator: &mut SchemaGenerator) -> Schema
fn json_schema(generator: &mut SchemaGenerator) -> Schema
Source§fn inline_schema() -> bool
fn inline_schema() -> bool
$ref keyword. Read moreSource§impl PartialEq for ContentDigestMode
impl PartialEq for ContentDigestMode
impl StructuralPartialEq for ContentDigestMode
Source§impl ToToml for ContentDigestMode
impl ToToml for ContentDigestMode
Source§fn to_optional_toml<'a>(
&'a self,
arena: &'a Arena,
) -> Result<Option<Item<'a>>, ToTomlError>
fn to_optional_toml<'a>( &'a self, arena: &'a Arena, ) -> Result<Option<Item<'a>>, ToTomlError>
Auto Trait Implementations§
impl Freeze for ContentDigestMode
impl RefUnwindSafe for ContentDigestMode
impl Send for ContentDigestMode
impl Sync for ContentDigestMode
impl Unpin for ContentDigestMode
impl UnsafeUnpin for ContentDigestMode
impl UnwindSafe for ContentDigestMode
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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§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
key and return true if they are equal.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§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§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