pub struct HijriTabular { /* private fields */ }
Expand description
See HijriTabularEpoch
and HijriTabularLeapYears
for customization.
The most common version of this calendar uses HijriTabularEpoch::Friday
and HijriTabularLeapYears::TypeII
.
§Era codes
This calendar uses two era codes: ah
, and bh
, corresponding to the Anno Hegirae and Before Hijrah eras
§Month codes
This calendar is a pure lunar calendar with no leap months. It uses month codes
"M01" - "M12"
.
Implementations§
Source§impl HijriTabular
impl HijriTabular
Sourcepub const fn new(
leap_years: HijriTabularLeapYears,
epoch: HijriTabularEpoch,
) -> Self
pub const fn new( leap_years: HijriTabularLeapYears, epoch: HijriTabularEpoch, ) -> Self
Construct a new HijriTabular
with the given leap year rule and epoch.
Trait Implementations§
Source§impl Calendar for HijriTabular
impl Calendar for HijriTabular
Source§fn from_codes(
&self,
era: Option<&str>,
year: i32,
month_code: MonthCode,
day: u8,
) -> Result<Self::DateInner, DateError>
fn from_codes( &self, era: Option<&str>, year: i32, month_code: MonthCode, day: u8, ) -> Result<Self::DateInner, DateError>
Construct a date from era/month codes and fields Read more
Source§fn months_in_year(&self, date: &Self::DateInner) -> u8
fn months_in_year(&self, date: &Self::DateInner) -> u8
Count the number of months in a given year, specified by providing a date
from that year
Source§fn days_in_year(&self, date: &Self::DateInner) -> u16
fn days_in_year(&self, date: &Self::DateInner) -> u16
Count the number of days in a given year, specified by providing a date
from that year
Source§fn days_in_month(&self, date: &Self::DateInner) -> u8
fn days_in_month(&self, date: &Self::DateInner) -> u8
Count the number of days in a given month, specified by providing a date
from that year/month
Source§fn debug_name(&self) -> &'static str
fn debug_name(&self) -> &'static str
Obtain a name for the calendar for debug printing
Source§fn extended_year(&self, date: &Self::DateInner) -> i32
fn extended_year(&self, date: &Self::DateInner) -> i32
The extended year value
Source§fn is_in_leap_year(&self, date: &Self::DateInner) -> bool
fn is_in_leap_year(&self, date: &Self::DateInner) -> bool
Calculate if a date is in a leap year
Source§fn month(&self, date: &Self::DateInner) -> MonthInfo
fn month(&self, date: &Self::DateInner) -> MonthInfo
The calendar-specific month represented by
date
Source§fn day_of_month(&self, date: &Self::DateInner) -> DayOfMonth
fn day_of_month(&self, date: &Self::DateInner) -> DayOfMonth
The calendar-specific day-of-month represented by
date
Source§fn day_of_year(&self, date: &Self::DateInner) -> DayOfYear
fn day_of_year(&self, date: &Self::DateInner) -> DayOfYear
Information of the day of the year
Source§fn calendar_algorithm(&self) -> Option<CalendarAlgorithm>
fn calendar_algorithm(&self) -> Option<CalendarAlgorithm>
Returns the
CalendarAlgorithm
that is required to match
when parsing into this calendar. Read moreSource§impl Clone for HijriTabular
impl Clone for HijriTabular
Source§fn clone(&self) -> HijriTabular
fn clone(&self) -> HijriTabular
Returns a copy of the value. Read more
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source
. Read moreSource§impl Debug for HijriTabular
impl Debug for HijriTabular
Source§impl From<HijriTabular> for AnyCalendar
impl From<HijriTabular> for AnyCalendar
Source§fn from(value: HijriTabular) -> AnyCalendar
fn from(value: HijriTabular) -> AnyCalendar
Converts to this type from the input type.
Source§impl Hash for HijriTabular
impl Hash for HijriTabular
Source§impl IntoAnyCalendar for HijriTabular
impl IntoAnyCalendar for HijriTabular
Source§fn to_any(self) -> AnyCalendar
fn to_any(self) -> AnyCalendar
Convert this calendar into an
AnyCalendar
, moving it Read moreSource§fn kind(&self) -> AnyCalendarKind
fn kind(&self) -> AnyCalendarKind
The
AnyCalendarKind
enum variant associated with this calendarSource§fn from_any(any: AnyCalendar) -> Result<Self, AnyCalendar>
fn from_any(any: AnyCalendar) -> Result<Self, AnyCalendar>
Source§fn from_any_ref(any: &AnyCalendar) -> Option<&Self>
fn from_any_ref(any: &AnyCalendar) -> Option<&Self>
Source§fn date_to_any(&self, d: &Self::DateInner) -> AnyDateInner
fn date_to_any(&self, d: &Self::DateInner) -> AnyDateInner
Convert a date for this calendar into an
AnyDateInner
Read moreSource§impl Ord for HijriTabular
impl Ord for HijriTabular
Source§fn cmp(&self, other: &HijriTabular) -> Ordering
fn cmp(&self, other: &HijriTabular) -> Ordering
1.21.0 · Source§fn max(self, other: Self) -> Selfwhere
Self: Sized,
fn max(self, other: Self) -> Selfwhere
Self: Sized,
Compares and returns the maximum of two values. Read more
Source§impl PartialEq for HijriTabular
impl PartialEq for HijriTabular
Source§impl PartialOrd for HijriTabular
impl PartialOrd for HijriTabular
impl Copy for HijriTabular
impl Eq for HijriTabular
impl StructuralPartialEq for HijriTabular
impl UnstableSealed for HijriTabular
Auto Trait Implementations§
impl Freeze for HijriTabular
impl RefUnwindSafe for HijriTabular
impl Send for HijriTabular
impl Sync for HijriTabular
impl Unpin for HijriTabular
impl UnwindSafe for HijriTabular
Blanket Implementations§
Source§impl<C> AsCalendar for Cwhere
C: Calendar,
impl<C> AsCalendar for Cwhere
C: Calendar,
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left
is true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self
into a Left
variant of Either<Self, Self>
if into_left(&self)
returns true
.
Converts self
into a Right
variant of Either<Self, Self>
otherwise. Read more