Skip to main content

CleanOptions

Struct CleanOptions 

Source
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: bool

CACHE-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: bool

AUX-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: u64

Reference “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

Source§

fn clone(&self) -> CleanOptions

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for CleanOptions

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for CleanOptions

Source§

fn default() -> CleanOptions

Returns the “default value” for a type. Read more
Source§

impl PartialEq for CleanOptions

Source§

fn eq(&self, other: &CleanOptions) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for CleanOptions

Source§

impl Eq for CleanOptions

Source§

impl StructuralPartialEq for CleanOptions

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V