pub struct CleanOptions {
pub soft: bool,
pub max_age: Option<MaxAge>,
pub max_size: Option<MaxSize>,
pub dry_run: bool,
pub now_unix: u64,
}Expand description
Composable mode flags for Cache::clean per AUX-022.
At least one of soft, max_age, max_size MUST be supplied
for the call to remove anything; the CLI layer enforces the
“must supply a mode” rule per AUX-022, so a Cache::clean
call with all-false / all-None mode fields is a well-defined
no-op (the report shows zero counts).
Fields§
§soft: boolCACHE-022 / --soft: reclaim objectively-stale state
(manifest missing, unparseable, or schema-mismatched, plus
orphan .tmp- and .restore- staging directories).
max_age: Option<MaxAge>AUX-022 / --max-age <DURATION>: evict well-formed
entries whose created_at is strictly older than
now_unix - max_age. The cutoff is computed via
u64::saturating_sub, so a workspace clock that has not
advanced past the threshold yields an empty eviction set
rather than an overflow.
max_size: Option<MaxSize>AUX-022 / --max-size <BYTES>: after soft and
max_age have run, evict oldest-created_at-first
well-formed survivors until the residual footprint is at
or below max_size.
dry_run: boolAUX-024 / --dry-run: compute the eviction set but DO
NOT remove anything from disk. The returned CleanReport
mirrors the non-dry-run report exactly, modulo the absence
of on-disk changes.
now_unix: u64Reference “now” in Unix seconds since the epoch. Used as
the right-hand side of the AUX-023 step 4 cutoff
(now_unix - max_age). Required to be non-zero when
max_age is set; ignored otherwise. The injected value
makes the operation deterministic under test.
Trait Implementations§
Source§impl Clone for CleanOptions
impl Clone for CleanOptions
Source§fn clone(&self) -> CleanOptions
fn clone(&self) -> CleanOptions
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for CleanOptions
impl Debug for CleanOptions
Source§impl Default for CleanOptions
impl Default for CleanOptions
Source§fn default() -> CleanOptions
fn default() -> CleanOptions
Source§impl PartialEq for CleanOptions
impl PartialEq for CleanOptions
Source§fn eq(&self, other: &CleanOptions) -> bool
fn eq(&self, other: &CleanOptions) -> bool
self and other values to be equal, and is used by ==.