Module date

Source
Expand description

ISO 8601 calendar date without timezone.

The implementation is optimized for determining year, month, day and day of week.

Format of NaiveDate: YYYY_YYYY_YYYY_YYYY_YYYO_OOOO_OOOO_LWWW Y: Year O: Ordinal L: leap year flag (1 = common year, 0 is leap year) W: weekday before the first day of the year LWWW: will also be referred to as the year flags (F)

Modulesยง

serde ๐Ÿ”’

Structsยง

NaiveDate
ISO 8601 calendar date without timezone. Allows for every proleptic Gregorian date from Jan 1, 262145 BCE to Dec 31, 262143 CE. Also supports the conversion from ISO 8601 ordinal and week date.
NaiveDateDaysIterator
Iterator over NaiveDate with a step size of one day.
NaiveDateWeeksIterator
Iterator over NaiveDate with a step size of one week.

Constantsยง

LEAP_YEAR_MASK ๐Ÿ”’
MAX_DATEDeprecated
The maximum possible NaiveDate (December 31, 262143 CE).
MAX_OL ๐Ÿ”’
MAX_YEAR ๐Ÿ”’
MAX_YEAR is one year less than the type is capable of representing. Internally we may sometimes use the headroom, notably to handle cases where the offset of a DateTime constructed with NaiveDate::MAX pushes it beyond the valid, representable range.
MIN_DATEDeprecated
The minimum possible NaiveDate (January 1, 262145 BCE).
MIN_YEAR ๐Ÿ”’
MIN_YEAR is one year more than the type is capable of representing. Internally we may sometimes use the headroom, notably to handle cases where the offset of a DateTime constructed with NaiveDate::MIN pushes it beyond the valid, representable range.
OL_MASK ๐Ÿ”’
ORDINAL_MASK ๐Ÿ”’
WEEKDAY_FLAGS_MASK ๐Ÿ”’
YEAR_DELTAS ๐Ÿ”’
YEAR_FLAGS_MASK ๐Ÿ”’

Functionsยง

cycle_to_yo ๐Ÿ”’
div_mod_floor ๐Ÿ”’
yo_to_cycle ๐Ÿ”’