145
145
//! to `into_iter()` for boxed slices will defer to the slice implementation on editions before
146
146
//! 2024:
147
147
//!
148
- #![ cfg_attr( bootstrap, doc = "```rust,edition2021,ignore" ) ]
149
- #![ cfg_attr( not( bootstrap) , doc = "```rust,edition2021" ) ]
148
+ //! ```rust,edition2021
150
149
//! // Rust 2015, 2018, and 2021:
151
150
//!
152
151
//! # #![allow(boxed_slice_into_iter)] // override our `deny(warnings)`
@@ -2123,23 +2122,23 @@ impl<I> FromIterator<I> for Box<[I]> {
2123
2122
2124
2123
/// This implementation is required to make sure that the `Box<[I]>: IntoIterator`
2125
2124
/// implementation doesn't overlap with `IntoIterator for T where T: Iterator` blanket.
2126
- #[ stable( feature = "boxed_slice_into_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2125
+ #[ stable( feature = "boxed_slice_into_iter" , since = "1.80.0 " ) ]
2127
2126
impl < I , A : Allocator > !Iterator for Box < [ I ] , A > { }
2128
2127
2129
2128
/// This implementation is required to make sure that the `&Box<[I]>: IntoIterator`
2130
2129
/// implementation doesn't overlap with `IntoIterator for T where T: Iterator` blanket.
2131
- #[ stable( feature = "boxed_slice_into_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2130
+ #[ stable( feature = "boxed_slice_into_iter" , since = "1.80.0 " ) ]
2132
2131
impl < ' a , I , A : Allocator > !Iterator for & ' a Box < [ I ] , A > { }
2133
2132
2134
2133
/// This implementation is required to make sure that the `&mut Box<[I]>: IntoIterator`
2135
2134
/// implementation doesn't overlap with `IntoIterator for T where T: Iterator` blanket.
2136
- #[ stable( feature = "boxed_slice_into_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2135
+ #[ stable( feature = "boxed_slice_into_iter" , since = "1.80.0 " ) ]
2137
2136
impl < ' a , I , A : Allocator > !Iterator for & ' a mut Box < [ I ] , A > { }
2138
2137
2139
2138
// Note: the `#[rustc_skip_during_method_dispatch(boxed_slice)]` on `trait IntoIterator`
2140
2139
// hides this implementation from explicit `.into_iter()` calls on editions < 2024,
2141
2140
// so those calls will still resolve to the slice implementation, by reference.
2142
- #[ stable( feature = "boxed_slice_into_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2141
+ #[ stable( feature = "boxed_slice_into_iter" , since = "1.80.0 " ) ]
2143
2142
impl < I , A : Allocator > IntoIterator for Box < [ I ] , A > {
2144
2143
type IntoIter = vec:: IntoIter < I , A > ;
2145
2144
type Item = I ;
@@ -2148,7 +2147,7 @@ impl<I, A: Allocator> IntoIterator for Box<[I], A> {
2148
2147
}
2149
2148
}
2150
2149
2151
- #[ stable( feature = "boxed_slice_into_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2150
+ #[ stable( feature = "boxed_slice_into_iter" , since = "1.80.0 " ) ]
2152
2151
impl < ' a , I , A : Allocator > IntoIterator for & ' a Box < [ I ] , A > {
2153
2152
type IntoIter = slice:: Iter < ' a , I > ;
2154
2153
type Item = & ' a I ;
@@ -2157,7 +2156,7 @@ impl<'a, I, A: Allocator> IntoIterator for &'a Box<[I], A> {
2157
2156
}
2158
2157
}
2159
2158
2160
- #[ stable( feature = "boxed_slice_into_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2159
+ #[ stable( feature = "boxed_slice_into_iter" , since = "1.80.0 " ) ]
2161
2160
impl < ' a , I , A : Allocator > IntoIterator for & ' a mut Box < [ I ] , A > {
2162
2161
type IntoIter = slice:: IterMut < ' a , I > ;
2163
2162
type Item = & ' a mut I ;
@@ -2167,47 +2166,47 @@ impl<'a, I, A: Allocator> IntoIterator for &'a mut Box<[I], A> {
2167
2166
}
2168
2167
2169
2168
#[ cfg( not( no_global_oom_handling) ) ]
2170
- #[ stable( feature = "boxed_str_from_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2169
+ #[ stable( feature = "boxed_str_from_iter" , since = "1.80.0 " ) ]
2171
2170
impl FromIterator < char > for Box < str > {
2172
2171
fn from_iter < T : IntoIterator < Item = char > > ( iter : T ) -> Self {
2173
2172
String :: from_iter ( iter) . into_boxed_str ( )
2174
2173
}
2175
2174
}
2176
2175
2177
2176
#[ cfg( not( no_global_oom_handling) ) ]
2178
- #[ stable( feature = "boxed_str_from_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2177
+ #[ stable( feature = "boxed_str_from_iter" , since = "1.80.0 " ) ]
2179
2178
impl < ' a > FromIterator < & ' a char > for Box < str > {
2180
2179
fn from_iter < T : IntoIterator < Item = & ' a char > > ( iter : T ) -> Self {
2181
2180
String :: from_iter ( iter) . into_boxed_str ( )
2182
2181
}
2183
2182
}
2184
2183
2185
2184
#[ cfg( not( no_global_oom_handling) ) ]
2186
- #[ stable( feature = "boxed_str_from_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2185
+ #[ stable( feature = "boxed_str_from_iter" , since = "1.80.0 " ) ]
2187
2186
impl < ' a > FromIterator < & ' a str > for Box < str > {
2188
2187
fn from_iter < T : IntoIterator < Item = & ' a str > > ( iter : T ) -> Self {
2189
2188
String :: from_iter ( iter) . into_boxed_str ( )
2190
2189
}
2191
2190
}
2192
2191
2193
2192
#[ cfg( not( no_global_oom_handling) ) ]
2194
- #[ stable( feature = "boxed_str_from_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2193
+ #[ stable( feature = "boxed_str_from_iter" , since = "1.80.0 " ) ]
2195
2194
impl FromIterator < String > for Box < str > {
2196
2195
fn from_iter < T : IntoIterator < Item = String > > ( iter : T ) -> Self {
2197
2196
String :: from_iter ( iter) . into_boxed_str ( )
2198
2197
}
2199
2198
}
2200
2199
2201
2200
#[ cfg( not( no_global_oom_handling) ) ]
2202
- #[ stable( feature = "boxed_str_from_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2201
+ #[ stable( feature = "boxed_str_from_iter" , since = "1.80.0 " ) ]
2203
2202
impl < A : Allocator > FromIterator < Box < str , A > > for Box < str > {
2204
2203
fn from_iter < T : IntoIterator < Item = Box < str , A > > > ( iter : T ) -> Self {
2205
2204
String :: from_iter ( iter) . into_boxed_str ( )
2206
2205
}
2207
2206
}
2208
2207
2209
2208
#[ cfg( not( no_global_oom_handling) ) ]
2210
- #[ stable( feature = "boxed_str_from_iter" , since = "CURRENT_RUSTC_VERSION " ) ]
2209
+ #[ stable( feature = "boxed_str_from_iter" , since = "1.80.0 " ) ]
2211
2210
impl < ' a > FromIterator < Cow < ' a , str > > for Box < str > {
2212
2211
fn from_iter < T : IntoIterator < Item = Cow < ' a , str > > > ( iter : T ) -> Self {
2213
2212
String :: from_iter ( iter) . into_boxed_str ( )
0 commit comments