pub trait Calendar {
    type DateInner: PartialEq + Eq + Clone + Debug;

Show 15 methods fn date_from_codes(
        &self,
        era: Era,
        year: i32,
        month_code: MonthCode,
        day: u8
    ) -> Result<Self::DateInner, DateTimeError>; fn date_from_iso(&self, iso: Date<Iso>) -> Self::DateInner; fn date_to_iso(&self, date: &Self::DateInner) -> Date<Iso>; fn months_in_year(&self, date: &Self::DateInner) -> u8; fn days_in_year(&self, date: &Self::DateInner) -> u32; fn days_in_month(&self, date: &Self::DateInner) -> u8; fn offset_date(&self, date: &mut Self::DateInner, offset: DateDuration<Self>); fn until(
        &self,
        date1: &Self::DateInner,
        date2: &Self::DateInner,
        calendar2: &Self,
        largest_unit: DateDurationUnit,
        smallest_unit: DateDurationUnit
    ) -> DateDuration<Self>; fn debug_name(&self) -> &'static str; fn year(&self, date: &Self::DateInner) -> FormattableYear; fn month(&self, date: &Self::DateInner) -> FormattableMonth; fn day_of_month(&self, date: &Self::DateInner) -> DayOfMonth; fn day_of_year_info(&self, date: &Self::DateInner) -> DayOfYearInfo; fn day_of_week(&self, date: &Self::DateInner) -> IsoWeekday { ... } fn any_calendar_kind(&self) -> Option<AnyCalendarKind> { ... }
}
Expand description

A calendar implementation

Only implementors of Calendar should care about these methods, in general users of these calendars should use the methods on Date instead.

Individual Calendar implementations may have inherent utility methods allowing for direct construction, etc.

For ICU4X 1.0, implementing this trait or calling methods directly is considered unstable and prone to change, especially for offset_date() and until().

Required Associated Types

The internal type used to represent dates

Required Methods

Construct a date from era/month codes and fields

Construct the date from an ISO date

Obtain an ISO date from this date

Count the number of months in a given year, specified by providing a date from that year

Count the number of days in a given year, specified by providing a date from that year

Count the number of days in a given month, specified by providing a date from that year/month

Add offset to date

Calculate date2 - date as a duration

calendar2 is the calendar object associated with date2. In case the specific calendar objects differ on data, the data for the first calendar is used, and date2 may be converted if necessary.

Obtain a name for the calendar for debug printing

The calendar-specific year represented by date

The calendar-specific month represented by date

The calendar-specific day-of-month represented by date

Information of the day of the year

Provided Methods

Calculate the day of the week and return it

The AnyCalendarKind corresponding to this calendar, if one exists. Implementors outside of icu_calendar should return None

Implementors