pub struct Buddhist;
Expand description
The Thai Solar Buddhist Calendar
The Thai Solar Buddhist Calendar is a solar calendar used in Thailand, with twelve months. The months and days are identical to that of the Gregorian calendar, however the years are counted differently using the Buddhist Era.
This type can be used with Date
or DateTime
to represent dates in this calendar.
Era codes
This calendar supports one era, "be"
, with 1 B.E. being 543 BCE
Trait Implementations§
source§impl Calendar for Buddhist
impl Calendar for Buddhist
source§fn year(&self, date: &<Buddhist as Calendar>::DateInner) -> FormattableYear
fn year(&self, date: &<Buddhist as Calendar>::DateInner) -> FormattableYear
The calendar-specific year represented by date
source§fn month(&self, date: &<Buddhist as Calendar>::DateInner) -> FormattableMonth
fn month(&self, date: &<Buddhist as Calendar>::DateInner) -> FormattableMonth
The calendar-specific month represented by date
source§fn day_of_month(&self, date: &<Buddhist as Calendar>::DateInner) -> DayOfMonth
fn day_of_month(&self, date: &<Buddhist as Calendar>::DateInner) -> DayOfMonth
The calendar-specific day-of-month represented by date
source§fn day_of_year_info(
&self,
date: &<Buddhist as Calendar>::DateInner
) -> DayOfYearInfo
fn day_of_year_info( &self, date: &<Buddhist as Calendar>::DateInner ) -> DayOfYearInfo
Information of the day of the year
§type DateInner = IsoDateInner
type DateInner = IsoDateInner
The internal type used to represent dates
source§fn date_from_codes(
&self,
era: Era,
year: i32,
month_code: MonthCode,
day: u8
) -> Result<<Buddhist as Calendar>::DateInner, CalendarError>
fn date_from_codes( &self, era: Era, year: i32, month_code: MonthCode, day: u8 ) -> Result<<Buddhist as Calendar>::DateInner, CalendarError>
Construct a date from era/month codes and fields
source§fn date_from_iso(&self, iso: Date<Iso>) -> IsoDateInner
fn date_from_iso(&self, iso: Date<Iso>) -> IsoDateInner
Construct the date from an ISO date
source§fn date_to_iso(&self, date: &<Buddhist as Calendar>::DateInner) -> Date<Iso>
fn date_to_iso(&self, date: &<Buddhist as Calendar>::DateInner) -> Date<Iso>
Obtain an ISO date from this date
source§fn months_in_year(&self, date: &<Buddhist as Calendar>::DateInner) -> u8
fn months_in_year(&self, date: &<Buddhist as Calendar>::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: &<Buddhist as Calendar>::DateInner) -> u32
fn days_in_year(&self, date: &<Buddhist as Calendar>::DateInner) -> u32
Count the number of days in a given year, specified by providing a date
from that year
source§fn days_in_month(&self, date: &<Buddhist as Calendar>::DateInner) -> u8
fn days_in_month(&self, date: &<Buddhist as Calendar>::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 any_calendar_kind(&self) -> Option<AnyCalendarKind>
fn any_calendar_kind(&self) -> Option<AnyCalendarKind>
The
AnyCalendarKind
corresponding to this calendar,
if one exists. Implementors outside of icu_calendar should return Nonesource§fn day_of_week(&self, date: &Self::DateInner) -> IsoWeekday
fn day_of_week(&self, date: &Self::DateInner) -> IsoWeekday
Calculate the day of the week and return it
source§impl CldrCalendar for Buddhist
impl CldrCalendar for Buddhist
source§const DEFAULT_BCP_47_IDENTIFIER: Value = {
const R: ::icu_locid::extensions::unicode::Value =
::icu_locid::extensions::unicode::Value::from_tinystr(match ::icu_locid::extensions::unicode::Value::subtag_from_bytes("buddhist".as_bytes())
{
Ok(r) => r,
_ =>
::core::panicking::panic_fmt(<#[lang = "format_arguments"]>::new_const(&["Invalid Unicode extension value: buddhist"])),
});
R
}
const DEFAULT_BCP_47_IDENTIFIER: Value = { const R: ::icu_locid::extensions::unicode::Value = ::icu_locid::extensions::unicode::Value::from_tinystr(match ::icu_locid::extensions::unicode::Value::subtag_from_bytes("buddhist".as_bytes()) { Ok(r) => r, _ => ::core::panicking::panic_fmt(<#[lang = "format_arguments"]>::new_const(&["Invalid Unicode extension value: buddhist"])), }); R }
The Unicode BCP 47 identifier for the calendar
If multiple BCP 47 identifiers work, this should be
the default one when no others are provided
§type DateSymbolsV1Marker = BuddhistDateSymbolsV1Marker
type DateSymbolsV1Marker = BuddhistDateSymbolsV1Marker
The data marker for loading symbols for this calendar.
§type DateLengthsV1Marker = BuddhistDateLengthsV1Marker
type DateLengthsV1Marker = BuddhistDateLengthsV1Marker
The data marker for loading length-patterns for this calendar.
source§impl IntoAnyCalendar for Buddhist
impl IntoAnyCalendar for Buddhist
source§fn to_any(self) -> AnyCalendar
fn to_any(self) -> AnyCalendar
Convert this calendar into an
AnyCalendar
, moving it Read moresource§fn to_any_cloned(&self) -> AnyCalendar
fn to_any_cloned(&self) -> AnyCalendar
Convert this calendar into an
AnyCalendar
, cloning it Read moresource§fn date_to_any(&self, d: &<Buddhist as Calendar>::DateInner) -> AnyDateInner
fn date_to_any(&self, d: &<Buddhist as Calendar>::DateInner) -> AnyDateInner
Convert a date for this calendar into an
AnyDateInner
Read more