@@ -36,44 +36,44 @@ use crate::ops::{Sub, SubAssign};
3636#[ unstable( feature = "saturating_int_impl" , issue = "87920" ) ]
3737#[ derive( PartialEq , Eq , PartialOrd , Ord , Clone , Copy , Default , Hash ) ]
3838#[ repr( transparent) ]
39- pub struct Saturating < T > ( #[ stable ( feature = "rust1 " , since = "1.0.0 " ) ] pub T ) ;
39+ pub struct Saturating < T > ( #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ] pub T ) ;
4040
41- #[ stable ( feature = "rust1 " , since = "1.0.0 " ) ]
41+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
4242impl < T : fmt:: Debug > fmt:: Debug for Saturating < T > {
4343 fn fmt ( & self , f : & mut fmt:: Formatter < ' _ > ) -> fmt:: Result {
4444 self . 0 . fmt ( f)
4545 }
4646}
4747
48- #[ stable ( feature = "saturating_display " , since = "1.10.0 " ) ]
48+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
4949impl < T : fmt:: Display > fmt:: Display for Saturating < T > {
5050 fn fmt ( & self , f : & mut fmt:: Formatter < ' _ > ) -> fmt:: Result {
5151 self . 0 . fmt ( f)
5252 }
5353}
5454
55- #[ stable ( feature = "saturating_fmt " , since = "1.11.0 " ) ]
55+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
5656impl < T : fmt:: Binary > fmt:: Binary for Saturating < T > {
5757 fn fmt ( & self , f : & mut fmt:: Formatter < ' _ > ) -> fmt:: Result {
5858 self . 0 . fmt ( f)
5959 }
6060}
6161
62- #[ stable ( feature = "saturating_fmt " , since = "1.11.0 " ) ]
62+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
6363impl < T : fmt:: Octal > fmt:: Octal for Saturating < T > {
6464 fn fmt ( & self , f : & mut fmt:: Formatter < ' _ > ) -> fmt:: Result {
6565 self . 0 . fmt ( f)
6666 }
6767}
6868
69- #[ stable ( feature = "saturating_fmt " , since = "1.11.0 " ) ]
69+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
7070impl < T : fmt:: LowerHex > fmt:: LowerHex for Saturating < T > {
7171 fn fmt ( & self , f : & mut fmt:: Formatter < ' _ > ) -> fmt:: Result {
7272 self . 0 . fmt ( f)
7373 }
7474}
7575
76- #[ stable ( feature = "saturating_fmt " , since = "1.11.0 " ) ]
76+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
7777impl < T : fmt:: UpperHex > fmt:: UpperHex for Saturating < T > {
7878 fn fmt ( & self , f : & mut fmt:: Formatter < ' _ > ) -> fmt:: Result {
7979 self . 0 . fmt ( f)
@@ -83,7 +83,7 @@ impl<T: fmt::UpperHex> fmt::UpperHex for Saturating<T> {
8383// FIXME(30524): impl Op<T> for Saturating<T>, impl OpAssign<T> for Saturating<T>
8484macro_rules! saturating_impl {
8585 ( $( $t: ty) * ) => ( $(
86- #[ stable ( feature = "rust1 " , since = "1.0.0 " ) ]
86+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
8787 impl Add for Saturating <$t> {
8888 type Output = Saturating <$t>;
8989
@@ -93,9 +93,9 @@ macro_rules! saturating_impl {
9393 }
9494 }
9595 forward_ref_binop! { impl Add , add for Saturating <$t>, Saturating <$t>,
96- #[ stable ( feature = "saturating_ref " , since = "1.14.0 " ) ] }
96+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
9797
98- #[ stable ( feature = "op_assign_traits " , since = "1.8.0 " ) ]
98+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
9999 impl AddAssign for Saturating <$t> {
100100 #[ inline]
101101 fn add_assign( & mut self , other: Saturating <$t>) {
@@ -104,7 +104,7 @@ macro_rules! saturating_impl {
104104 }
105105 forward_ref_op_assign! { impl AddAssign , add_assign for Saturating <$t>, Saturating <$t> }
106106
107- #[ stable ( feature = "rust1 " , since = "1.0.0 " ) ]
107+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
108108 impl Sub for Saturating <$t> {
109109 type Output = Saturating <$t>;
110110
@@ -114,9 +114,9 @@ macro_rules! saturating_impl {
114114 }
115115 }
116116 forward_ref_binop! { impl Sub , sub for Saturating <$t>, Saturating <$t>,
117- #[ stable ( feature = "saturating_ref " , since = "1.14.0 " ) ] }
117+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ] }
118118
119- #[ stable ( feature = "op_assign_traits " , since = "1.8.0 " ) ]
119+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
120120 impl SubAssign for Saturating <$t> {
121121 #[ inline]
122122 fn sub_assign( & mut self , other: Saturating <$t>) {
@@ -125,7 +125,7 @@ macro_rules! saturating_impl {
125125 }
126126 forward_ref_op_assign! { impl SubAssign , sub_assign for Saturating <$t>, Saturating <$t> }
127127
128- #[ stable ( feature = "rust1 " , since = "1.0.0 " ) ]
128+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
129129 impl Mul for Saturating <$t> {
130130 type Output = Saturating <$t>;
131131
@@ -135,9 +135,9 @@ macro_rules! saturating_impl {
135135 }
136136 }
137137 forward_ref_binop! { impl Mul , mul for Saturating <$t>, Saturating <$t>,
138- #[ stable ( feature = "saturating_ref " , since = "1.14.0 " ) ] }
138+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ] }
139139
140- #[ stable ( feature = "op_assign_traits " , since = "1.8.0 " ) ]
140+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
141141 impl MulAssign for Saturating <$t> {
142142 #[ inline]
143143 fn mul_assign( & mut self , other: Saturating <$t>) {
@@ -146,7 +146,7 @@ macro_rules! saturating_impl {
146146 }
147147 forward_ref_op_assign! { impl MulAssign , mul_assign for Saturating <$t>, Saturating <$t> }
148148
149- #[ stable ( feature = "saturating_div " , since = "1.3.0 " ) ]
149+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
150150 impl Div for Saturating <$t> {
151151 type Output = Saturating <$t>;
152152
@@ -157,9 +157,9 @@ macro_rules! saturating_impl {
157157 }
158158 }
159159 forward_ref_binop! { impl Div , div for Saturating <$t>, Saturating <$t>,
160- #[ stable ( feature = "saturating_ref " , since = "1.14.0 " ) ] }
160+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ] }
161161
162- #[ stable ( feature = "op_assign_traits " , since = "1.8.0 " ) ]
162+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
163163 impl DivAssign for Saturating <$t> {
164164 #[ inline]
165165 fn div_assign( & mut self , other: Saturating <$t>) {
@@ -168,7 +168,7 @@ macro_rules! saturating_impl {
168168 }
169169 forward_ref_op_assign! { impl DivAssign , div_assign for Saturating <$t>, Saturating <$t> }
170170
171- #[ stable ( feature = "rust1 " , since = "1.0.0 " ) ]
171+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
172172 impl Not for Saturating <$t> {
173173 type Output = Saturating <$t>;
174174
@@ -178,9 +178,9 @@ macro_rules! saturating_impl {
178178 }
179179 }
180180 forward_ref_unop! { impl Not , not for Saturating <$t>,
181- #[ stable ( feature = "saturating_ref " , since = "1.14.0 " ) ] }
181+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ] }
182182
183- #[ stable ( feature = "rust1 " , since = "1.0.0 " ) ]
183+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
184184 impl BitXor for Saturating <$t> {
185185 type Output = Saturating <$t>;
186186
@@ -190,9 +190,9 @@ macro_rules! saturating_impl {
190190 }
191191 }
192192 forward_ref_binop! { impl BitXor , bitxor for Saturating <$t>, Saturating <$t>,
193- #[ stable ( feature = "saturating_ref " , since = "1.14.0 " ) ] }
193+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ] }
194194
195- #[ stable ( feature = "op_assign_traits " , since = "1.8.0 " ) ]
195+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
196196 impl BitXorAssign for Saturating <$t> {
197197 #[ inline]
198198 fn bitxor_assign( & mut self , other: Saturating <$t>) {
@@ -201,7 +201,7 @@ macro_rules! saturating_impl {
201201 }
202202 forward_ref_op_assign! { impl BitXorAssign , bitxor_assign for Saturating <$t>, Saturating <$t> }
203203
204- #[ stable ( feature = "rust1 " , since = "1.0.0 " ) ]
204+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
205205 impl BitOr for Saturating <$t> {
206206 type Output = Saturating <$t>;
207207
@@ -211,9 +211,9 @@ macro_rules! saturating_impl {
211211 }
212212 }
213213 forward_ref_binop! { impl BitOr , bitor for Saturating <$t>, Saturating <$t>,
214- #[ stable ( feature = "saturating_ref " , since = "1.14.0 " ) ] }
214+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ] }
215215
216- #[ stable ( feature = "op_assign_traits " , since = "1.8.0 " ) ]
216+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
217217 impl BitOrAssign for Saturating <$t> {
218218 #[ inline]
219219 fn bitor_assign( & mut self , other: Saturating <$t>) {
@@ -222,7 +222,7 @@ macro_rules! saturating_impl {
222222 }
223223 forward_ref_op_assign! { impl BitOrAssign , bitor_assign for Saturating <$t>, Saturating <$t> }
224224
225- #[ stable ( feature = "rust1 " , since = "1.0.0 " ) ]
225+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
226226 impl BitAnd for Saturating <$t> {
227227 type Output = Saturating <$t>;
228228
@@ -232,9 +232,9 @@ macro_rules! saturating_impl {
232232 }
233233 }
234234 forward_ref_binop! { impl BitAnd , bitand for Saturating <$t>, Saturating <$t>,
235- #[ stable ( feature = "saturating_ref " , since = "1.14.0 " ) ] }
235+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ] }
236236
237- #[ stable ( feature = "op_assign_traits " , since = "1.8.0 " ) ]
237+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
238238 impl BitAndAssign for Saturating <$t> {
239239 #[ inline]
240240 fn bitand_assign( & mut self , other: Saturating <$t>) {
@@ -243,7 +243,7 @@ macro_rules! saturating_impl {
243243 }
244244 forward_ref_op_assign! { impl BitAndAssign , bitand_assign for Saturating <$t>, Saturating <$t> }
245245
246- #[ stable ( feature = "saturating_neg " , since = "1.45.0 " ) ]
246+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
247247 impl Neg for Saturating <$t> {
248248 type Output = Self ;
249249 #[ inline]
@@ -252,7 +252,7 @@ macro_rules! saturating_impl {
252252 }
253253 }
254254 forward_ref_unop! { impl Neg , neg for Saturating <$t>,
255- #[ stable ( feature = "saturating_ref " , since = "1.14.0 " ) ] }
255+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ] }
256256
257257 ) * )
258258}
@@ -464,7 +464,7 @@ macro_rules! saturating_int_impl {
464464 /// assert_eq!(m.0 as u16, 0b10101010_00000000);
465465 /// assert_eq!(m, Saturating(-22016));
466466 /// ```
467- #[ stable ( feature = "reverse_bits " , since = "1.37.0 " ) ]
467+ #[ unstable ( feature = "saturating_int_impl " , issue = "87920 " ) ]
468468 #[ rustc_const_stable( feature = "const_reverse_bits" , since = "1.37.0" ) ]
469469 #[ inline]
470470 #[ must_use]
0 commit comments