Skip to main content

When

Enum When 

Source
pub enum When {
    Always,
    Unset,
    AlreadySet,
    Later,
    Earlier,
    EarlierAndAlreadySet,
}
Expand description

Whether a deadline is allowed to move, which is EXPIRE’s NX, XX, GT and LT.

The condition is checked before the moment is, so a deadline that has already gone and a condition that says no leaves the key alone rather than deleting it.

Variants§

§

Always

Whatever is there now. Plain EXPIRE.

§

Unset

Only if the key has no deadline yet. NX.

§

AlreadySet

Only if it already has one. XX.

§

Later

Only if this pushes the deadline further out. GT.

A key with no deadline is refused, because no deadline reads as infinitely far away and nothing is further out than that.

§

Earlier

Only if this brings the deadline in. LT.

A key with no deadline is accepted, by the same reading.

§

EarlierAndAlreadySet

Only if there is one now and this brings it in. XX LT.

The one combination the other five cannot say. XX GT is just GT, since GT already refuses a key with no deadline.

Trait Implementations§

Source§

impl Clone for When

Source§

fn clone(&self) -> When

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 Copy for When

Source§

impl Debug for When

Source§

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

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

impl Default for When

Source§

fn default() -> When

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

impl Eq for When

Source§

impl From<When> for Cond

Source§

fn from(when: When) -> Cond

Converts to this type from the input type.
Source§

impl PartialEq for When

Source§

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

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

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

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for When

Auto Trait Implementations§

§

impl Freeze for When

§

impl RefUnwindSafe for When

§

impl Send for When

§

impl Sync for When

§

impl Unpin for When

§

impl UnsafeUnpin for When

§

impl UnwindSafe for When

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> 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 = !

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

fn try_from(value: U) -> Result<T, !>

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.