pub trait FormattableHijriRules: Rules + UnstableSealed {
type YearNamesV1: DataMarker<DataStruct = YearNames<'static>>;
type MonthNamesV1: DataMarker<DataStruct = MonthNames<'static>>;
type SkeletaV1: DataMarker<DataStruct = PackedPatterns<'static>>;
}Expand description
[hijri::Rules]-specific formatting options.
See CldrCalendar.
The simplest implementation of this uses the same names
as some provided [hijri::Rules]:
use icu::calendar::cal::hijri;
use icu::datetime::scaffold::FormattableHijriRules;
#[derive(Clone, Debug)]
struct MyRules;
impl icu::calendar::cal::scaffold::UnstableSealed for MyRules {}
impl icu::datetime::scaffold::UnstableSealed for MyRules {}
impl hijri::Rules for MyRules {
fn year_data(&self, _year: i32) -> hijri::HijriYearData {
todo!()
}
}
impl FormattableHijriRules for MyRules {
type YearNamesV1 =
<hijri::UmmAlQura as FormattableHijriRules>::YearNamesV1;
type MonthNamesV1 =
<hijri::UmmAlQura as FormattableHijriRules>::MonthNamesV1;
type SkeletaV1 = <hijri::UmmAlQura as FormattableHijriRules>::SkeletaV1;
}Required Associated Types§
Sourcetype YearNamesV1: DataMarker<DataStruct = YearNames<'static>>
type YearNamesV1: DataMarker<DataStruct = YearNames<'static>>
The data marker for loading year symbols for this calendar.
Sourcetype MonthNamesV1: DataMarker<DataStruct = MonthNames<'static>>
type MonthNamesV1: DataMarker<DataStruct = MonthNames<'static>>
The data marker for loading month symbols for this calendar.
Sourcetype SkeletaV1: DataMarker<DataStruct = PackedPatterns<'static>>
type SkeletaV1: DataMarker<DataStruct = PackedPatterns<'static>>
The data marker for loading skeleton patterns for this calendar.
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.