pub enum Holiday {
    WeekDay(Weekday),
    YearlyDay {
        month: u32,
        day: u32,
        first: Option<i32>,
        last: Option<i32>,
    },
    MovableYearlyDay {
        month: u32,
        day: u32,
        first: Option<i32>,
        last: Option<i32>,
    },
    ModifiedMovableYearlyDay {
        month: u32,
        day: u32,
        first: Option<i32>,
        last: Option<i32>,
    },
    SingularDay(NaiveDate),
    EasterOffset {
        offset: i32,
        first: Option<i32>,
        last: Option<i32>,
    },
    MonthWeekday {
        month: u32,
        weekday: Weekday,
        nth: NthWeek,
        first: Option<i32>,
        last: Option<i32>,
    },
}

Variants

WeekDay(Weekday)

Though weekends are no holidays, they need to be specified in the calendar. Weekends are assumed to be non-business days. In most countries, weekends include Saturday (Sat) and Sunday (Sun). Unfortunately, there are a few exceptions.

YearlyDay

Fields

month: u32
day: u32
first: Option<i32>
last: Option<i32>

A holiday that occurs every year on the same day. first and last are the first and last year this day is a holiday (inclusively).

MovableYearlyDay

Fields

month: u32
day: u32
first: Option<i32>
last: Option<i32>

Occurs every year, but is moved to next non-weekend day if it falls on a weekday. Note that Saturday and Sunday here assumed to be weekend days, even if these days are not defined as weekends in this calendar. If the next Monday is already a holiday, the date will be moved to the next available business day. first and last are the first and last year this day is a holiday (inclusively).

ModifiedMovableYearlyDay

Fields

month: u32
day: u32
first: Option<i32>
last: Option<i32>

Occurs every year, but is moved to previous Friday if it falls on Saturday and to the next Monday if it falls on a Sunday. first and last are the first and last year this day is a holiday (inclusively).

SingularDay(NaiveDate)

A single holiday which is valid only once in time.

EasterOffset

Fields

offset: i32
first: Option<i32>
last: Option<i32>

A holiday that is defined in relative days (e.g. -2 for Good Friday) to Easter (Sunday).

MonthWeekday

Fields

month: u32
weekday: Weekday
nth: NthWeek
first: Option<i32>
last: Option<i32>

A holiday that falls on the nth (or last) weekday of a specific month, e.g. the first Monday in May. first and last are the first and last year this day is a holiday (inclusively).

Trait Implementations

Formats the value using the given formatter. Read more

Deserialize this value from the given Serde deserializer. Read more

This method tests for self and other values to be equal, and is used by ==. Read more

This method tests for !=.

Serialize this value into the given Serde serializer. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Returns the argument unchanged.

Calls U::from(self).

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

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.