@@ -3043,10 +3043,10 @@ pub fn repeat<T: Clone>(elt: T) -> Repeat<T> {
3043
3043
}
3044
3044
3045
3045
/// An iterator that yields nothing.
3046
- #[ unstable ( feature= "iter_empty" , reason = "new addition " ) ]
3046
+ #[ stable ( feature = "iter_empty" , since = "1.2.0 " ) ]
3047
3047
pub struct Empty < T > ( marker:: PhantomData < T > ) ;
3048
3048
3049
- #[ unstable ( feature= "iter_empty" , reason = "new addition " ) ]
3049
+ #[ stable ( feature = "iter_empty" , since = "1.2.0 " ) ]
3050
3050
impl < T > Iterator for Empty < T > {
3051
3051
type Item = T ;
3052
3052
@@ -3059,14 +3059,14 @@ impl<T> Iterator for Empty<T> {
3059
3059
}
3060
3060
}
3061
3061
3062
- #[ unstable ( feature= "iter_empty" , reason = "new addition " ) ]
3062
+ #[ stable ( feature = "iter_empty" , since = "1.2.0 " ) ]
3063
3063
impl < T > DoubleEndedIterator for Empty < T > {
3064
3064
fn next_back ( & mut self ) -> Option < T > {
3065
3065
None
3066
3066
}
3067
3067
}
3068
3068
3069
- #[ unstable ( feature= "iter_empty" , reason = "new addition " ) ]
3069
+ #[ stable ( feature = "iter_empty" , since = "1.2.0 " ) ]
3070
3070
impl < T > ExactSizeIterator for Empty < T > {
3071
3071
fn len ( & self ) -> usize {
3072
3072
0
@@ -3075,7 +3075,7 @@ impl<T> ExactSizeIterator for Empty<T> {
3075
3075
3076
3076
// not #[derive] because that adds a Clone bound on T,
3077
3077
// which isn't necessary.
3078
- #[ unstable ( feature= "iter_empty" , reason = "new addition " ) ]
3078
+ #[ stable ( feature = "iter_empty" , since = "1.2.0 " ) ]
3079
3079
impl < T > Clone for Empty < T > {
3080
3080
fn clone ( & self ) -> Empty < T > {
3081
3081
Empty ( marker:: PhantomData )
@@ -3084,27 +3084,27 @@ impl<T> Clone for Empty<T> {
3084
3084
3085
3085
// not #[derive] because that adds a Default bound on T,
3086
3086
// which isn't necessary.
3087
- #[ unstable ( feature= "iter_empty" , reason = "new addition " ) ]
3087
+ #[ stable ( feature = "iter_empty" , since = "1.2.0 " ) ]
3088
3088
impl < T > Default for Empty < T > {
3089
3089
fn default ( ) -> Empty < T > {
3090
3090
Empty ( marker:: PhantomData )
3091
3091
}
3092
3092
}
3093
3093
3094
3094
/// Creates an iterator that yields nothing.
3095
- #[ unstable ( feature= "iter_empty" , reason = "new addition " ) ]
3095
+ #[ stable ( feature = "iter_empty" , since = "1.2.0 " ) ]
3096
3096
pub fn empty < T > ( ) -> Empty < T > {
3097
3097
Empty ( marker:: PhantomData )
3098
3098
}
3099
3099
3100
3100
/// An iterator that yields an element exactly once.
3101
3101
#[ derive( Clone ) ]
3102
- #[ unstable ( feature= "iter_once" , reason = "new addition " ) ]
3102
+ #[ stable ( feature = "iter_once" , since = "1.2.0 " ) ]
3103
3103
pub struct Once < T > {
3104
3104
inner : :: option:: IntoIter < T >
3105
3105
}
3106
3106
3107
- #[ unstable ( feature= "iter_once" , reason = "new addition " ) ]
3107
+ #[ stable ( feature = "iter_once" , since = "1.2.0 " ) ]
3108
3108
impl < T > Iterator for Once < T > {
3109
3109
type Item = T ;
3110
3110
@@ -3117,22 +3117,22 @@ impl<T> Iterator for Once<T> {
3117
3117
}
3118
3118
}
3119
3119
3120
- #[ unstable ( feature= "iter_once" , reason = "new addition " ) ]
3120
+ #[ stable ( feature = "iter_once" , since = "1.2.0 " ) ]
3121
3121
impl < T > DoubleEndedIterator for Once < T > {
3122
3122
fn next_back ( & mut self ) -> Option < T > {
3123
3123
self . inner . next_back ( )
3124
3124
}
3125
3125
}
3126
3126
3127
- #[ unstable ( feature= "iter_once" , reason = "new addition " ) ]
3127
+ #[ stable ( feature = "iter_once" , since = "1.2.0 " ) ]
3128
3128
impl < T > ExactSizeIterator for Once < T > {
3129
3129
fn len ( & self ) -> usize {
3130
3130
self . inner . len ( )
3131
3131
}
3132
3132
}
3133
3133
3134
3134
/// Creates an iterator that yields an element exactly once.
3135
- #[ unstable ( feature= "iter_once" , reason = "new addition " ) ]
3135
+ #[ stable ( feature = "iter_once" , since = "1.2.0 " ) ]
3136
3136
pub fn once < T > ( value : T ) -> Once < T > {
3137
3137
Once { inner : Some ( value) . into_iter ( ) }
3138
3138
}
0 commit comments