@@ -22,10 +22,6 @@ use icu_time::{
22
22
DateTime , Time , TimeZoneInfo , ZonedDateTime ,
23
23
} ;
24
24
25
- mod private {
26
- pub trait Sealed { }
27
- }
28
-
29
25
/// A calendar that can be found in CLDR.
30
26
///
31
27
/// New implementors of this trait will likely also wish to modify `get_era_code_map()`
@@ -35,7 +31,7 @@ mod private {
35
31
/// 🚫 This trait is sealed; it cannot be implemented by user code. If an API requests an item that implements this
36
32
/// trait, please consider using a type from the implementors listed below.
37
33
/// </div>
38
- pub trait CldrCalendar : private :: Sealed {
34
+ pub trait CldrCalendar : UnstableSealed {
39
35
/// The data marker for loading year symbols for this calendar.
40
36
type YearNamesV1 : DataMarker < DataStruct = YearNames < ' static > > ;
41
37
@@ -46,112 +42,96 @@ pub trait CldrCalendar: private::Sealed {
46
42
type SkeletaV1 : DataMarker < DataStruct = PackedPatterns < ' static > > ;
47
43
}
48
44
49
- impl private:: Sealed for ( ) { }
50
45
impl CldrCalendar for ( ) {
51
46
type YearNamesV1 = NeverMarker < YearNames < ' static > > ;
52
47
type MonthNamesV1 = NeverMarker < MonthNames < ' static > > ;
53
48
type SkeletaV1 = NeverMarker < PackedPatterns < ' static > > ;
54
49
}
55
50
56
- impl private:: Sealed for Buddhist { }
57
51
impl CldrCalendar for Buddhist {
58
52
type YearNamesV1 = DatetimeNamesYearBuddhistV1 ;
59
53
type MonthNamesV1 = DatetimeNamesMonthBuddhistV1 ;
60
54
type SkeletaV1 = DatetimePatternsDateBuddhistV1 ;
61
55
}
62
56
63
- impl private:: Sealed for Chinese { }
64
57
impl CldrCalendar for Chinese {
65
58
type YearNamesV1 = DatetimeNamesYearChineseV1 ;
66
59
type MonthNamesV1 = DatetimeNamesMonthChineseV1 ;
67
60
type SkeletaV1 = DatetimePatternsDateChineseV1 ;
68
61
}
69
62
70
- impl private:: Sealed for Coptic { }
71
63
impl CldrCalendar for Coptic {
72
64
type YearNamesV1 = DatetimeNamesYearCopticV1 ;
73
65
type MonthNamesV1 = DatetimeNamesMonthCopticV1 ;
74
66
type SkeletaV1 = DatetimePatternsDateCopticV1 ;
75
67
}
76
68
77
- impl private:: Sealed for Dangi { }
78
69
impl CldrCalendar for Dangi {
79
70
type YearNamesV1 = DatetimeNamesYearDangiV1 ;
80
71
type MonthNamesV1 = DatetimeNamesMonthDangiV1 ;
81
72
type SkeletaV1 = DatetimePatternsDateDangiV1 ;
82
73
}
83
74
84
- impl private:: Sealed for Ethiopian { }
85
75
impl CldrCalendar for Ethiopian {
86
76
type YearNamesV1 = DatetimeNamesYearEthiopianV1 ;
87
77
type MonthNamesV1 = DatetimeNamesMonthEthiopianV1 ;
88
78
type SkeletaV1 = DatetimePatternsDateEthiopianV1 ;
89
79
}
90
80
91
- impl private:: Sealed for Gregorian { }
92
81
impl CldrCalendar for Gregorian {
93
82
type YearNamesV1 = DatetimeNamesYearGregorianV1 ;
94
83
type MonthNamesV1 = DatetimeNamesMonthGregorianV1 ;
95
84
type SkeletaV1 = DatetimePatternsDateGregorianV1 ;
96
85
}
97
86
98
- impl private:: Sealed for Hebrew { }
99
87
impl CldrCalendar for Hebrew {
100
88
type YearNamesV1 = DatetimeNamesYearHebrewV1 ;
101
89
type MonthNamesV1 = DatetimeNamesMonthHebrewV1 ;
102
90
type SkeletaV1 = DatetimePatternsDateHebrewV1 ;
103
91
}
104
92
105
- impl private:: Sealed for Indian { }
106
93
impl CldrCalendar for Indian {
107
94
type YearNamesV1 = DatetimeNamesYearIndianV1 ;
108
95
type MonthNamesV1 = DatetimeNamesMonthIndianV1 ;
109
96
type SkeletaV1 = DatetimePatternsDateIndianV1 ;
110
97
}
111
98
112
- impl private:: Sealed for HijriTabular { }
113
99
impl CldrCalendar for HijriTabular {
114
100
type YearNamesV1 = DatetimeNamesYearHijriV1 ;
115
101
type MonthNamesV1 = DatetimeNamesMonthHijriV1 ;
116
102
type SkeletaV1 = DatetimePatternsDateHijriV1 ;
117
103
}
118
104
119
- impl private:: Sealed for HijriSimulated { }
120
105
impl CldrCalendar for HijriSimulated {
121
106
type YearNamesV1 = DatetimeNamesYearHijriV1 ;
122
107
type MonthNamesV1 = DatetimeNamesMonthHijriV1 ;
123
108
type SkeletaV1 = DatetimePatternsDateHijriV1 ;
124
109
}
125
110
126
- impl private:: Sealed for HijriUmmAlQura { }
127
111
impl CldrCalendar for HijriUmmAlQura {
128
112
type YearNamesV1 = DatetimeNamesYearHijriV1 ;
129
113
type MonthNamesV1 = DatetimeNamesMonthHijriV1 ;
130
114
type SkeletaV1 = DatetimePatternsDateHijriV1 ;
131
115
}
132
116
133
- impl private:: Sealed for Japanese { }
134
117
impl CldrCalendar for Japanese {
135
118
type YearNamesV1 = DatetimeNamesYearJapaneseV1 ;
136
119
type MonthNamesV1 = DatetimeNamesMonthJapaneseV1 ;
137
120
type SkeletaV1 = DatetimePatternsDateJapaneseV1 ;
138
121
}
139
122
140
- impl private:: Sealed for JapaneseExtended { }
141
123
impl CldrCalendar for JapaneseExtended {
142
124
type YearNamesV1 = DatetimeNamesYearJapanextV1 ;
143
125
type MonthNamesV1 = DatetimeNamesMonthJapanextV1 ;
144
126
type SkeletaV1 = DatetimePatternsDateJapanextV1 ;
145
127
}
146
128
147
- impl private:: Sealed for Persian { }
148
129
impl CldrCalendar for Persian {
149
130
type YearNamesV1 = DatetimeNamesYearPersianV1 ;
150
131
type MonthNamesV1 = DatetimeNamesMonthPersianV1 ;
151
132
type SkeletaV1 = DatetimePatternsDatePersianV1 ;
152
133
}
153
134
154
- impl private:: Sealed for Roc { }
155
135
impl CldrCalendar for Roc {
156
136
type YearNamesV1 = DatetimeNamesYearRocV1 ;
157
137
type MonthNamesV1 = DatetimeNamesMonthRocV1 ;
0 commit comments