Enum time::Weekday

source ·
pub enum Weekday {
    Monday,
    Tuesday,
    Wednesday,
    Thursday,
    Friday,
    Saturday,
    Sunday,
}
Expand description

Days of the week.

As order is dependent on context (Sunday could be either two days after or five days before Friday), this type does not implement PartialOrd or Ord.

Variants§

§

Monday

§

Tuesday

§

Wednesday

§

Thursday

§

Friday

§

Saturday

§

Sunday

Implementations§

source§

impl Weekday

source

pub const fn previous(self) -> Self

Get the previous weekday.

assert_eq!(Weekday::Tuesday.previous(), Weekday::Monday);
Run
source

pub const fn next(self) -> Self

Get the next weekday.

assert_eq!(Weekday::Monday.next(), Weekday::Tuesday);
Run
source

pub const fn nth_next(self, n: u8) -> Self

Get n-th next day.

assert_eq!(Weekday::Monday.nth_next(1), Weekday::Tuesday);
assert_eq!(Weekday::Sunday.nth_next(10), Weekday::Wednesday);
Run
source

pub const fn nth_prev(self, n: u8) -> Self

Get n-th previous day.

assert_eq!(Weekday::Monday.nth_prev(1), Weekday::Sunday);
assert_eq!(Weekday::Sunday.nth_prev(10), Weekday::Thursday);
Run
source

pub const fn number_from_monday(self) -> u8

Get the one-indexed number of days from Monday.

assert_eq!(Weekday::Monday.number_from_monday(), 1);
Run
source

pub const fn number_from_sunday(self) -> u8

Get the one-indexed number of days from Sunday.

assert_eq!(Weekday::Monday.number_from_sunday(), 2);
Run
source

pub const fn number_days_from_monday(self) -> u8

Get the zero-indexed number of days from Monday.

assert_eq!(Weekday::Monday.number_days_from_monday(), 0);
Run
source

pub const fn number_days_from_sunday(self) -> u8

Get the zero-indexed number of days from Sunday.

assert_eq!(Weekday::Monday.number_days_from_sunday(), 1);
Run

Trait Implementations§

source§

impl Arbitrary for Weekday

Available on crate feature quickcheck only.
source§

fn arbitrary(g: &mut Gen) -> Self

Return an arbitrary value. Read more
source§

fn shrink(&self) -> Box<dyn Iterator<Item = Self>>

Return an iterator of values that are smaller than itself. Read more
source§

impl Clone for Weekday

source§

fn clone(&self) -> Weekday

Returns a copy of the value. Read more
1.0.0 · source§

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

Performs copy-assignment from source. Read more
source§

impl Debug for Weekday

source§

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

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

impl<'a> Deserialize<'a> for Weekday

Available on crate feature serde only.
source§

fn deserialize<D: Deserializer<'a>>(deserializer: D) -> Result<Self, D::Error>

Deserialize this value from the given Serde deserializer. Read more
source§

impl Display for Weekday

source§

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

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

impl Distribution<Weekday> for Standard

Available on crate feature rand only.
source§

fn sample<R: Rng + ?Sized>(&self, rng: &mut R) -> Weekday

Generate a random value of T, using rng as the source of randomness.
source§

fn sample_iter<R>(self, rng: R) -> DistIter<Self, R, T>
where R: Rng, Self: Sized,

Create an iterator that generates random values of T, using rng as the source of randomness. Read more
source§

fn map<F, S>(self, func: F) -> DistMap<Self, F, T, S>
where F: Fn(T) -> S, Self: Sized,

Create a distribution of values of ‘S’ by mapping the output of Self through the closure F Read more
source§

impl FromStr for Weekday

§

type Err = InvalidVariant

The associated error which can be returned from parsing.
source§

fn from_str(s: &str) -> Result<Self, Self::Err>

Parses a string s to return a value of this type. Read more
source§

impl Hash for Weekday

source§

fn hash<__H: Hasher>(&self, state: &mut __H)

Feeds this value into the given Hasher. Read more
1.3.0 · source§

fn hash_slice<H>(data: &[Self], state: &mut H)
where H: Hasher, Self: Sized,

Feeds a slice of this type into the given Hasher. Read more
source§

impl PartialEq for Weekday

source§

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

This method tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

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

This method tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for Weekday

Available on crate feature serde only.
source§

fn serialize<S: Serializer>(&self, serializer: S) -> Result<S::Ok, S::Error>

Serialize this value into the given Serde serializer. Read more
source§

impl SmartDisplay for Weekday

§

type Metadata = WeekdayMetadata

User-provided metadata type.
source§

fn metadata(&self, _: FormatterOptions) -> Metadata<'_, Self>

Compute any information needed to format the value. This must, at a minimum, determine the width of the value before any padding is added by the formatter. Read more
source§

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

Format the value using the given formatter. This is the same as Display::fmt. Read more
source§

fn fmt_with_metadata( &self, f: &mut Formatter<'_>, _metadata: Metadata<'_, Self> ) -> Result<(), Error>

Format the value using the given formatter and metadata. The formatted output should have the width indicated by the metadata. This is before any padding is added by the formatter. Read more
source§

impl Copy for Weekday

source§

impl Eq for Weekday

source§

impl StructuralPartialEq for Weekday

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> 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,

§

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> ToString for T
where T: Display + ?Sized,

source§

default fn to_string(&self) -> String

Converts the given value to a String. Read more
source§

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

§

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>,

§

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<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,