pub struct Japanese { /* private fields */ }
Expand description
The Japanese Calendar (with modern eras only)
The Japanese calendar is a solar calendar used in Japan, with twelve months. The months and days are identical to that of the Gregorian calendar, however the years are counted differently using the Japanese era system.
This calendar only contains eras after Meiji, for all historical eras, check out JapaneseExtended
.
This type can be used with Date
or DateTime
to represent dates in this calendar.
Era codes
This calendar currently supports seven era codes. It supports the five post-Meiji eras
("meiji"
, "taisho"
, "showa"
, "heisei"
, "reiwa"
), as well as using the Gregorian
"bce"
and "ce"
for dates before the Meiji era.
Future eras will also be added to this type when they are decided.
These eras are loaded from data, requiring a data provider capable of providing JapaneseErasV1Marker
data (calendar/japanese@1
).
Implementations
sourceimpl Japanese
impl Japanese
sourcepub fn try_new_unstable<D>(data_provider: &D) -> Result<Japanese, CalendarError> where
D: DataProvider<JapaneseErasV1Marker> + ?Sized,
pub fn try_new_unstable<D>(data_provider: &D) -> Result<Japanese, CalendarError> where
D: DataProvider<JapaneseErasV1Marker> + ?Sized,
Creates a new Japanese
from locale data using only modern eras (post-meiji).
sourcepub fn try_new_with_any_provider(
provider: &impl AnyProvider
) -> Result<Japanese, CalendarError>
pub fn try_new_with_any_provider(
provider: &impl AnyProvider
) -> Result<Japanese, CalendarError>
Creates a new instance using an AnyProvider
.
For details on the behavior of this function, see: Self::try_new_unstable
sourcepub fn try_new_with_buffer_provider(
provider: &impl BufferProvider
) -> Result<Japanese, CalendarError>
pub fn try_new_with_buffer_provider(
provider: &impl BufferProvider
) -> Result<Japanese, CalendarError>
✨ Enabled with the "serde"
feature.
Creates a new instance using a BufferProvider
.
For details on the behavior of this function, see: Self::try_new_unstable
Trait Implementations
sourceimpl Calendar for Japanese
impl Calendar for Japanese
sourcefn year(&self, date: &<Japanese as Calendar>::DateInner) -> FormattableYear
fn year(&self, date: &<Japanese as Calendar>::DateInner) -> FormattableYear
The calendar-specific year represented by date
sourcefn month(&self, date: &<Japanese as Calendar>::DateInner) -> FormattableMonth
fn month(&self, date: &<Japanese as Calendar>::DateInner) -> FormattableMonth
The calendar-specific month represented by date
sourcefn day_of_month(&self, date: &<Japanese as Calendar>::DateInner) -> DayOfMonth
fn day_of_month(&self, date: &<Japanese as Calendar>::DateInner) -> DayOfMonth
The calendar-specific day-of-month represented by date
sourcefn day_of_year_info(
&self,
date: &<Japanese as Calendar>::DateInner
) -> DayOfYearInfo
fn day_of_year_info(
&self,
date: &<Japanese as Calendar>::DateInner
) -> DayOfYearInfo
Information of the day of the year
type DateInner = JapaneseDateInner
type DateInner = JapaneseDateInner
The internal type used to represent dates
sourcefn date_from_codes(
&self,
era: Era,
year: i32,
month_code: MonthCode,
day: u8
) -> Result<<Japanese as Calendar>::DateInner, CalendarError>
fn date_from_codes(
&self,
era: Era,
year: i32,
month_code: MonthCode,
day: u8
) -> Result<<Japanese as Calendar>::DateInner, CalendarError>
Construct a date from era/month codes and fields
sourcefn date_from_iso(&self, iso: Date<Iso>) -> JapaneseDateInner
fn date_from_iso(&self, iso: Date<Iso>) -> JapaneseDateInner
Construct the date from an ISO date
sourcefn date_to_iso(&self, date: &<Japanese as Calendar>::DateInner) -> Date<Iso>
fn date_to_iso(&self, date: &<Japanese as Calendar>::DateInner) -> Date<Iso>
Obtain an ISO date from this date
sourcefn months_in_year(&self, date: &<Japanese as Calendar>::DateInner) -> u8
fn months_in_year(&self, date: &<Japanese as Calendar>::DateInner) -> u8
Count the number of months in a given year, specified by providing a date from that year Read more
sourcefn days_in_year(&self, date: &<Japanese as Calendar>::DateInner) -> u32
fn days_in_year(&self, date: &<Japanese as Calendar>::DateInner) -> u32
Count the number of days in a given year, specified by providing a date from that year Read more
sourcefn days_in_month(&self, date: &<Japanese as Calendar>::DateInner) -> u8
fn days_in_month(&self, date: &<Japanese as Calendar>::DateInner) -> u8
Count the number of days in a given month, specified by providing a date from that year/month Read more
fn offset_date(
&self,
date: &mut <Japanese as Calendar>::DateInner,
offset: DateDuration<Japanese>
)
fn until(
&self,
date1: &<Japanese as Calendar>::DateInner,
date2: &<Japanese as Calendar>::DateInner,
_calendar2: &Japanese,
largest_unit: DateDurationUnit,
smallest_unit: DateDurationUnit
) -> DateDuration<Japanese>
sourcefn debug_name(&self) -> &'static str
fn debug_name(&self) -> &'static str
Obtain a name for the calendar for debug printing
sourcefn 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 None Read more
sourcefn 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
sourceimpl CldrCalendar for Japanese
impl CldrCalendar for Japanese
sourceconst DEFAULT_BCP_47_IDENTIFIER: Value
const DEFAULT_BCP_47_IDENTIFIER: Value
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 Read more
type DateSymbolsV1Marker = JapaneseDateSymbolsV1Marker
type DateSymbolsV1Marker = JapaneseDateSymbolsV1Marker
The data marker for loading symbols for this calendar.
type DateLengthsV1Marker = JapaneseDateLengthsV1Marker
type DateLengthsV1Marker = JapaneseDateLengthsV1Marker
The data marker for loading length-patterns for this calendar.
sourcefn is_identifier_allowed_for_calendar(value: &Value) -> bool
fn is_identifier_allowed_for_calendar(value: &Value) -> bool
Checks if a given BCP 47 identifier is allowed to be used with this calendar Read more
sourceimpl IntoAnyCalendar for Japanese
impl IntoAnyCalendar for Japanese
sourcefn to_any(self) -> AnyCalendar
fn to_any(self) -> AnyCalendar
Convert this calendar into an AnyCalendar
, moving it Read more
sourcefn to_any_cloned(&self) -> AnyCalendar
fn to_any_cloned(&self) -> AnyCalendar
Convert this calendar into an AnyCalendar
, cloning it Read more
sourcefn date_to_any(&self, d: &<Japanese as Calendar>::DateInner) -> AnyDateInner
fn date_to_any(&self, d: &<Japanese as Calendar>::DateInner) -> AnyDateInner
Convert a date for this calendar into an AnyDateInner
Read more
Auto Trait Implementations
impl RefUnwindSafe for Japanese
impl Send for Japanese
impl Sync for Japanese
impl Unpin for Japanese
impl UnwindSafe for Japanese
Blanket Implementations
sourceimpl<C> AsCalendar for C where
C: Calendar,
impl<C> AsCalendar for C where
C: Calendar,
type Calendar = C
type Calendar = C
The calendar being wrapped
sourcefn as_calendar(&self) -> &C
fn as_calendar(&self) -> &C
Obtain the inner calendar
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> ToOwned for T where
T: Clone,
impl<T> ToOwned for T where
T: Clone,
type Owned = T
type Owned = T
The resulting type after obtaining ownership.
sourcefn clone_into(&self, target: &mut T)
fn clone_into(&self, target: &mut T)
toowned_clone_into
)Uses borrowed data to replace owned data, usually by cloning. Read more