pub trait IntoIterator {
type Item;
type IntoIter: Iterator<Item = Self::Item>;
// Required method
fn into_iter(self) -> Self::IntoIter;
}
Expand description
Conversion into an Iterator
.
By implementing IntoIterator
for a type, you define how it will be
converted to an iterator. This is common for types which describe a
collection of some kind.
One benefit of implementing IntoIterator
is that your type will work
with Rust’s for
loop syntax.
See also: FromIterator
.
§Examples
Basic usage:
let v = [1, 2, 3];
let mut iter = v.into_iter();
assert_eq!(Some(1), iter.next());
assert_eq!(Some(2), iter.next());
assert_eq!(Some(3), iter.next());
assert_eq!(None, iter.next());
Implementing IntoIterator
for your type:
// A sample collection, that's just a wrapper over Vec<T>
#[derive(Debug)]
struct MyCollection(Vec<i32>);
// Let's give it some methods so we can create one and add things
// to it.
impl MyCollection {
fn new() -> MyCollection {
MyCollection(Vec::new())
}
fn add(&mut self, elem: i32) {
self.0.push(elem);
}
}
// and we'll implement IntoIterator
impl IntoIterator for MyCollection {
type Item = i32;
type IntoIter = std::vec::IntoIter<Self::Item>;
fn into_iter(self) -> Self::IntoIter {
self.0.into_iter()
}
}
// Now we can make a new collection...
let mut c = MyCollection::new();
// ... add some stuff to it ...
c.add(0);
c.add(1);
c.add(2);
// ... and then turn it into an Iterator:
for (i, n) in c.into_iter().enumerate() {
assert_eq!(i as i32, n);
}
It is common to use IntoIterator
as a trait bound. This allows
the input collection type to change, so long as it is still an
iterator. Additional bounds can be specified by restricting on
Item
:
fn collect_as_strings<T>(collection: T) -> Vec<String>
where
T: IntoIterator,
T::Item: std::fmt::Debug,
{
collection
.into_iter()
.map(|item| format!("{item:?}"))
.collect()
}
Required Associated Types§
Required Methods§
1.0.0 · sourcefn into_iter(self) -> Self::IntoIter
fn into_iter(self) -> Self::IntoIter
Creates an iterator from a value.
See the module-level documentation for more.
§Examples
let v = [1, 2, 3];
let mut iter = v.into_iter();
assert_eq!(Some(1), iter.next());
assert_eq!(Some(2), iter.next());
assert_eq!(Some(3), iter.next());
assert_eq!(None, iter.next());
Implementors§
source§impl IntoIterator for IndexVec
impl IntoIterator for IndexVec
§impl IntoIterator for Justifications
impl IntoIterator for Justifications
§impl IntoIterator for FallocateFlags
impl IntoIterator for FallocateFlags
§impl IntoIterator for MountPropagationFlags
impl IntoIterator for MountPropagationFlags
§impl IntoIterator for ReadWriteFlags
impl IntoIterator for ReadWriteFlags
§impl IntoIterator for StatVfsMountFlags
impl IntoIterator for StatVfsMountFlags
1.10.0 · source§impl<'a> IntoIterator for &'a UnixListener
impl<'a> IntoIterator for &'a UnixListener
§impl<'a> IntoIterator for &'a BorrowedCertRevocationList<'a>
impl<'a> IntoIterator for &'a BorrowedCertRevocationList<'a>
§impl<'a> IntoIterator for &'a Utf8Sequence
impl<'a> IntoIterator for &'a Utf8Sequence
§impl<'a> IntoIterator for &'a Utf8Sequence
impl<'a> IntoIterator for &'a Utf8Sequence
§impl<'a> IntoIterator for BatchRequestBuilder<'a>
impl<'a> IntoIterator for BatchRequestBuilder<'a>
§impl<'a> IntoIterator for BatchRequestBuilder<'a>
impl<'a> IntoIterator for BatchRequestBuilder<'a>
§impl<'a> IntoIterator for LocalsReader<'a>
impl<'a> IntoIterator for LocalsReader<'a>
§impl<'a> IntoIterator for LocalsReader<'a>
impl<'a> IntoIterator for LocalsReader<'a>
§impl<'a> IntoIterator for OperatorsReader<'a>
impl<'a> IntoIterator for OperatorsReader<'a>
§impl<'a> IntoIterator for OperatorsReader<'a>
impl<'a> IntoIterator for OperatorsReader<'a>
source§impl<'a, 'b, T> IntoIterator for &'b http::header::map::GetAll<'a, T>where
'b: 'a,
impl<'a, 'b, T> IntoIterator for &'b http::header::map::GetAll<'a, T>where
'b: 'a,
source§impl<'a, 'b, T> IntoIterator for &'b http::header::map::OccupiedEntry<'a, T>where
'b: 'a,
impl<'a, 'b, T> IntoIterator for &'b http::header::map::OccupiedEntry<'a, T>where
'b: 'a,
§impl<'a, 'b, T> IntoIterator for &'b GetAll<'a, T>where
'b: 'a,
impl<'a, 'b, T> IntoIterator for &'b GetAll<'a, T>where
'b: 'a,
§impl<'a, 'b, T> IntoIterator for &'b OccupiedEntry<'a, T>where
'b: 'a,
impl<'a, 'b, T> IntoIterator for &'b OccupiedEntry<'a, T>where
'b: 'a,
source§impl<'a, 'b, T> IntoIterator for &'b mut http::header::map::OccupiedEntry<'a, T>where
'b: 'a,
impl<'a, 'b, T> IntoIterator for &'b mut http::header::map::OccupiedEntry<'a, T>where
'b: 'a,
§impl<'a, 'b, T> IntoIterator for &'b mut OccupiedEntry<'a, T>where
'b: 'a,
impl<'a, 'b, T> IntoIterator for &'b mut OccupiedEntry<'a, T>where
'b: 'a,
§impl<'a, A> IntoIterator for &'a ArrayVec<A>where
A: Array,
impl<'a, A> IntoIterator for &'a ArrayVec<A>where
A: Array,
§impl<'a, A> IntoIterator for &'a SmallVec<A>where
A: Array,
impl<'a, A> IntoIterator for &'a SmallVec<A>where
A: Array,
§impl<'a, A> IntoIterator for &'a TinyVec<A>where
A: Array,
impl<'a, A> IntoIterator for &'a TinyVec<A>where
A: Array,
§impl<'a, A> IntoIterator for &'a mut ArrayVec<A>where
A: Array,
impl<'a, A> IntoIterator for &'a mut ArrayVec<A>where
A: Array,
§impl<'a, A> IntoIterator for &'a mut SmallVec<A>where
A: Array,
impl<'a, A> IntoIterator for &'a mut SmallVec<A>where
A: Array,
§impl<'a, A> IntoIterator for &'a mut TinyVec<A>where
A: Array,
impl<'a, A> IntoIterator for &'a mut TinyVec<A>where
A: Array,
§impl<'a, A, O> IntoIterator for &'a BitArray<A, O>where
O: BitOrder,
A: 'a + BitViewSized,
impl<'a, A, O> IntoIterator for &'a BitArray<A, O>where
O: BitOrder,
A: 'a + BitViewSized,
type IntoIter = <&'a BitSlice<<A as BitView>::Store, O> as IntoIterator>::IntoIter
type Item = <&'a BitSlice<<A as BitView>::Store, O> as IntoIterator>::Item
§impl<'a, A, O> IntoIterator for &'a mut BitArray<A, O>where
O: BitOrder,
A: 'a + BitViewSized,
impl<'a, A, O> IntoIterator for &'a mut BitArray<A, O>where
O: BitOrder,
A: 'a + BitViewSized,
type IntoIter = <&'a mut BitSlice<<A as BitView>::Store, O> as IntoIterator>::IntoIter
type Item = <&'a mut BitSlice<<A as BitView>::Store, O> as IntoIterator>::Item
§impl<'a, Fut> IntoIterator for &'a FuturesUnordered<Fut>where
Fut: Unpin,
impl<'a, Fut> IntoIterator for &'a FuturesUnordered<Fut>where
Fut: Unpin,
§impl<'a, Fut> IntoIterator for &'a mut FuturesUnordered<Fut>where
Fut: Unpin,
impl<'a, Fut> IntoIterator for &'a mut FuturesUnordered<Fut>where
Fut: Unpin,
type Item = &'a mut Fut
type IntoIter = IterMut<'a, Fut>
source§impl<'a, I> IntoIterator for &'a IntoChunks<I>
impl<'a, I> IntoIterator for &'a IntoChunks<I>
source§impl<'a, I> IntoIterator for &'a RcIter<I>where
I: Iterator,
impl<'a, I> IntoIterator for &'a RcIter<I>where
I: Iterator,
Return an iterator from &RcIter<I>
(by simply cloning it).
source§impl<'a, K, I, F> IntoIterator for &'a GroupBy<K, I, F>
impl<'a, K, I, F> IntoIterator for &'a GroupBy<K, I, F>
§impl<'a, K, V> IntoIterator for &'a BoxedSlice<K, V>where
K: EntityRef,
impl<'a, K, V> IntoIterator for &'a BoxedSlice<K, V>where
K: EntityRef,
§impl<'a, K, V> IntoIterator for &'a IndexMap<K, V>
impl<'a, K, V> IntoIterator for &'a IndexMap<K, V>
§impl<'a, K, V> IntoIterator for &'a PrimaryMap<K, V>where
K: EntityRef,
impl<'a, K, V> IntoIterator for &'a PrimaryMap<K, V>where
K: EntityRef,
§impl<'a, K, V> IntoIterator for &'a Slice<K, V>
impl<'a, K, V> IntoIterator for &'a Slice<K, V>
§impl<'a, K, V> IntoIterator for &'a SparseMap<K, V>where
K: EntityRef,
V: SparseMapValue<K>,
impl<'a, K, V> IntoIterator for &'a SparseMap<K, V>where
K: EntityRef,
V: SparseMapValue<K>,
Iterating over the elements of a set.
§impl<'a, K, V> IntoIterator for &'a mut BoxedSlice<K, V>where
K: EntityRef,
impl<'a, K, V> IntoIterator for &'a mut BoxedSlice<K, V>where
K: EntityRef,
§impl<'a, K, V> IntoIterator for &'a mut IndexMap<K, V>
impl<'a, K, V> IntoIterator for &'a mut IndexMap<K, V>
§impl<'a, K, V> IntoIterator for &'a mut PrimaryMap<K, V>where
K: EntityRef,
impl<'a, K, V> IntoIterator for &'a mut PrimaryMap<K, V>where
K: EntityRef,
§impl<'a, K, V> IntoIterator for &'a mut Slice<K, V>
impl<'a, K, V> IntoIterator for &'a mut Slice<K, V>
1.0.0 · source§impl<'a, K, V, A> IntoIterator for &'a BTreeMap<K, V, A>
impl<'a, K, V, A> IntoIterator for &'a BTreeMap<K, V, A>
1.0.0 · source§impl<'a, K, V, A> IntoIterator for &'a mut BTreeMap<K, V, A>
impl<'a, K, V, A> IntoIterator for &'a mut BTreeMap<K, V, A>
§impl<'a, K, V, S> IntoIterator for &'a BoundedBTreeMap<K, V, S>
impl<'a, K, V, S> IntoIterator for &'a BoundedBTreeMap<K, V, S>
1.0.0 · source§impl<'a, K, V, S> IntoIterator for &'a std::collections::hash::map::HashMap<K, V, S>
impl<'a, K, V, S> IntoIterator for &'a std::collections::hash::map::HashMap<K, V, S>
source§impl<'a, K, V, S> IntoIterator for &'a indexmap::map::IndexMap<K, V, S>
impl<'a, K, V, S> IntoIterator for &'a indexmap::map::IndexMap<K, V, S>
§impl<'a, K, V, S> IntoIterator for &'a AHashMap<K, V, S>
impl<'a, K, V, S> IntoIterator for &'a AHashMap<K, V, S>
§impl<'a, K, V, S> IntoIterator for &'a IndexMap<K, V, S>
impl<'a, K, V, S> IntoIterator for &'a IndexMap<K, V, S>
§impl<'a, K, V, S> IntoIterator for &'a mut BoundedBTreeMap<K, V, S>
impl<'a, K, V, S> IntoIterator for &'a mut BoundedBTreeMap<K, V, S>
1.0.0 · source§impl<'a, K, V, S> IntoIterator for &'a mut std::collections::hash::map::HashMap<K, V, S>
impl<'a, K, V, S> IntoIterator for &'a mut std::collections::hash::map::HashMap<K, V, S>
source§impl<'a, K, V, S> IntoIterator for &'a mut indexmap::map::IndexMap<K, V, S>
impl<'a, K, V, S> IntoIterator for &'a mut indexmap::map::IndexMap<K, V, S>
§impl<'a, K, V, S> IntoIterator for &'a mut AHashMap<K, V, S>
impl<'a, K, V, S> IntoIterator for &'a mut AHashMap<K, V, S>
§impl<'a, K, V, S> IntoIterator for &'a mut IndexMap<K, V, S>
impl<'a, K, V, S> IntoIterator for &'a mut IndexMap<K, V, S>
§impl<'a, K, V, S, A> IntoIterator for &'a HashMap<K, V, S, A>where
A: Allocator + Clone,
impl<'a, K, V, S, A> IntoIterator for &'a HashMap<K, V, S, A>where
A: Allocator + Clone,
§impl<'a, K, V, S, A> IntoIterator for &'a HashMap<K, V, S, A>where
A: Allocator + Clone,
impl<'a, K, V, S, A> IntoIterator for &'a HashMap<K, V, S, A>where
A: Allocator + Clone,
§impl<'a, K, V, S, A> IntoIterator for &'a HashMap<K, V, S, A>where
A: Allocator,
impl<'a, K, V, S, A> IntoIterator for &'a HashMap<K, V, S, A>where
A: Allocator,
§impl<'a, K, V, S, A> IntoIterator for &'a HashMap<K, V, S, A>where
A: Allocator,
impl<'a, K, V, S, A> IntoIterator for &'a HashMap<K, V, S, A>where
A: Allocator,
§impl<'a, K, V, S, A> IntoIterator for &'a mut HashMap<K, V, S, A>where
A: Allocator + Clone,
impl<'a, K, V, S, A> IntoIterator for &'a mut HashMap<K, V, S, A>where
A: Allocator + Clone,
§impl<'a, K, V, S, A> IntoIterator for &'a mut HashMap<K, V, S, A>where
A: Allocator + Clone,
impl<'a, K, V, S, A> IntoIterator for &'a mut HashMap<K, V, S, A>where
A: Allocator + Clone,
§impl<'a, K, V, S, A> IntoIterator for &'a mut HashMap<K, V, S, A>where
A: Allocator,
impl<'a, K, V, S, A> IntoIterator for &'a mut HashMap<K, V, S, A>where
A: Allocator,
§impl<'a, K, V, S, A> IntoIterator for &'a mut HashMap<K, V, S, A>where
A: Allocator,
impl<'a, K, V, S, A> IntoIterator for &'a mut HashMap<K, V, S, A>where
A: Allocator,
§impl<'a, R> IntoIterator for BatchResponse<'a, R>
impl<'a, R> IntoIterator for BatchResponse<'a, R>
§impl<'a, R> IntoIterator for BatchResponse<'a, R>
impl<'a, R> IntoIterator for BatchResponse<'a, R>
§impl<'a, St> IntoIterator for &'a SelectAll<St>where
St: Stream + Unpin,
impl<'a, St> IntoIterator for &'a SelectAll<St>where
St: Stream + Unpin,
§impl<'a, St> IntoIterator for &'a mut SelectAll<St>where
St: Stream + Unpin,
impl<'a, St> IntoIterator for &'a mut SelectAll<St>where
St: Stream + Unpin,
type Item = &'a mut St
type IntoIter = IterMut<'a, St>
1.4.0 · source§impl<'a, T> IntoIterator for &'a Option<T>
impl<'a, T> IntoIterator for &'a Option<T>
1.1.0 · source§impl<'a, T> IntoIterator for &'a Receiver<T>
impl<'a, T> IntoIterator for &'a Receiver<T>
source§impl<'a, T> IntoIterator for &'a http::header::map::HeaderMap<T>
impl<'a, T> IntoIterator for &'a http::header::map::HeaderMap<T>
§impl<'a, T> IntoIterator for &'a HeaderMap<T>
impl<'a, T> IntoIterator for &'a HeaderMap<T>
§impl<'a, T> IntoIterator for &'a IndexMap<T>where
T: 'static,
impl<'a, T> IntoIterator for &'a IndexMap<T>where
T: 'static,
§impl<'a, T> IntoIterator for &'a IndexMap<T>where
T: 'static,
impl<'a, T> IntoIterator for &'a IndexMap<T>where
T: 'static,
§impl<'a, T> IntoIterator for &'a NonEmpty<T>
impl<'a, T> IntoIterator for &'a NonEmpty<T>
§impl<'a, T> IntoIterator for &'a ThreadLocal<T>
impl<'a, T> IntoIterator for &'a ThreadLocal<T>
1.4.0 · source§impl<'a, T> IntoIterator for &'a mut Option<T>
impl<'a, T> IntoIterator for &'a mut Option<T>
1.0.0 · source§impl<'a, T> IntoIterator for &'a mut [T]
impl<'a, T> IntoIterator for &'a mut [T]
source§impl<'a, T> IntoIterator for &'a mut http::header::map::HeaderMap<T>
impl<'a, T> IntoIterator for &'a mut http::header::map::HeaderMap<T>
§impl<'a, T> IntoIterator for &'a mut CachedThreadLocal<T>where
T: Send + 'a,
impl<'a, T> IntoIterator for &'a mut CachedThreadLocal<T>where
T: Send + 'a,
§impl<'a, T> IntoIterator for &'a mut HeaderMap<T>
impl<'a, T> IntoIterator for &'a mut HeaderMap<T>
§impl<'a, T> IntoIterator for &'a mut Slab<T>
impl<'a, T> IntoIterator for &'a mut Slab<T>
§impl<'a, T> IntoIterator for &'a mut ThreadLocal<T>where
T: Send,
impl<'a, T> IntoIterator for &'a mut ThreadLocal<T>where
T: Send,
source§impl<'a, T> IntoIterator for http::header::map::GetAll<'a, T>
impl<'a, T> IntoIterator for http::header::map::GetAll<'a, T>
source§impl<'a, T> IntoIterator for http::header::map::OccupiedEntry<'a, T>
impl<'a, T> IntoIterator for http::header::map::OccupiedEntry<'a, T>
§impl<'a, T> IntoIterator for OccupiedEntry<'a, T>
impl<'a, T> IntoIterator for OccupiedEntry<'a, T>
§impl<'a, T> IntoIterator for SectionLimited<'a, T>where
T: FromReader<'a>,
impl<'a, T> IntoIterator for SectionLimited<'a, T>where
T: FromReader<'a>,
§impl<'a, T> IntoIterator for SectionLimited<'a, T>where
T: FromReader<'a>,
impl<'a, T> IntoIterator for SectionLimited<'a, T>where
T: FromReader<'a>,
1.0.0 · source§impl<'a, T, A> IntoIterator for &'a gclient::ext::sp_runtime::app_crypto::Vec<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a gclient::ext::sp_runtime::app_crypto::Vec<T, A>where
A: Allocator,
1.0.0 · source§impl<'a, T, A> IntoIterator for &'a BTreeSet<T, A>
impl<'a, T, A> IntoIterator for &'a BTreeSet<T, A>
1.0.0 · source§impl<'a, T, A> IntoIterator for &'a BinaryHeap<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a BinaryHeap<T, A>where
A: Allocator,
1.0.0 · source§impl<'a, T, A> IntoIterator for &'a LinkedList<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a LinkedList<T, A>where
A: Allocator,
1.0.0 · source§impl<'a, T, A> IntoIterator for &'a VecDeque<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a VecDeque<T, A>where
A: Allocator,
§impl<'a, T, A> IntoIterator for &'a HashTable<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a HashTable<T, A>where
A: Allocator,
§impl<'a, T, A> IntoIterator for &'a HashTable<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a HashTable<T, A>where
A: Allocator,
§impl<'a, T, A> IntoIterator for &'a Vec<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a Vec<T, A>where
A: Allocator,
1.0.0 · source§impl<'a, T, A> IntoIterator for &'a mut gclient::ext::sp_runtime::app_crypto::Vec<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a mut gclient::ext::sp_runtime::app_crypto::Vec<T, A>where
A: Allocator,
1.0.0 · source§impl<'a, T, A> IntoIterator for &'a mut LinkedList<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a mut LinkedList<T, A>where
A: Allocator,
1.0.0 · source§impl<'a, T, A> IntoIterator for &'a mut VecDeque<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a mut VecDeque<T, A>where
A: Allocator,
§impl<'a, T, A> IntoIterator for &'a mut HashTable<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a mut HashTable<T, A>where
A: Allocator,
§impl<'a, T, A> IntoIterator for &'a mut HashTable<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a mut HashTable<T, A>where
A: Allocator,
§impl<'a, T, A> IntoIterator for &'a mut Vec<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a mut Vec<T, A>where
A: Allocator,
1.4.0 · source§impl<'a, T, E> IntoIterator for &'a Result<T, E>
impl<'a, T, E> IntoIterator for &'a Result<T, E>
1.4.0 · source§impl<'a, T, E> IntoIterator for &'a mut Result<T, E>
impl<'a, T, E> IntoIterator for &'a mut Result<T, E>
§impl<'a, T, N> IntoIterator for &'a GenericArray<T, N>where
T: 'a,
N: ArrayLength<T>,
impl<'a, T, N> IntoIterator for &'a GenericArray<T, N>where
T: 'a,
N: ArrayLength<T>,
§impl<'a, T, N> IntoIterator for &'a mut GenericArray<T, N>where
T: 'a,
N: ArrayLength<T>,
impl<'a, T, N> IntoIterator for &'a mut GenericArray<T, N>where
T: 'a,
N: ArrayLength<T>,
§impl<'a, T, O> IntoIterator for &'a BitSlice<T, O>where
T: 'a + BitStore,
O: BitOrder,
impl<'a, T, O> IntoIterator for &'a BitSlice<T, O>where
T: 'a + BitStore,
O: BitOrder,
§impl<'a, T, O> IntoIterator for &'a BitVec<T, O>where
O: BitOrder,
T: 'a + BitStore,
impl<'a, T, O> IntoIterator for &'a BitVec<T, O>where
O: BitOrder,
T: 'a + BitStore,
type IntoIter = <&'a BitSlice<T, O> as IntoIterator>::IntoIter
type Item = <&'a BitSlice<T, O> as IntoIterator>::Item
§impl<'a, T, O> IntoIterator for &'a mut BitSlice<T, O>where
T: 'a + BitStore,
O: BitOrder,
impl<'a, T, O> IntoIterator for &'a mut BitSlice<T, O>where
T: 'a + BitStore,
O: BitOrder,
§impl<'a, T, O> IntoIterator for &'a mut BitVec<T, O>where
O: BitOrder,
T: 'a + BitStore,
impl<'a, T, O> IntoIterator for &'a mut BitVec<T, O>where
O: BitOrder,
T: 'a + BitStore,
type IntoIter = <&'a mut BitSlice<T, O> as IntoIterator>::IntoIter
type Item = <&'a mut BitSlice<T, O> as IntoIterator>::Item
§impl<'a, T, S> IntoIterator for &'a BoundedBTreeSet<T, S>
impl<'a, T, S> IntoIterator for &'a BoundedBTreeSet<T, S>
§impl<'a, T, S> IntoIterator for &'a BoundedVec<T, S>
impl<'a, T, S> IntoIterator for &'a BoundedVec<T, S>
§impl<'a, T, S> IntoIterator for &'a WeakBoundedVec<T, S>
impl<'a, T, S> IntoIterator for &'a WeakBoundedVec<T, S>
1.0.0 · source§impl<'a, T, S> IntoIterator for &'a std::collections::hash::set::HashSet<T, S>
impl<'a, T, S> IntoIterator for &'a std::collections::hash::set::HashSet<T, S>
source§impl<'a, T, S> IntoIterator for &'a indexmap::set::IndexSet<T, S>
impl<'a, T, S> IntoIterator for &'a indexmap::set::IndexSet<T, S>
§impl<'a, T, S> IntoIterator for &'a mut BoundedVec<T, S>
impl<'a, T, S> IntoIterator for &'a mut BoundedVec<T, S>
§impl<'a, T, S> IntoIterator for &'a mut WeakBoundedVec<T, S>
impl<'a, T, S> IntoIterator for &'a mut WeakBoundedVec<T, S>
§impl<'a, T, S> IntoIterator for BoundedSlice<'a, T, S>
impl<'a, T, S> IntoIterator for BoundedSlice<'a, T, S>
§impl<'a, T, S, A> IntoIterator for &'a HashSet<T, S, A>where
A: Allocator + Clone,
impl<'a, T, S, A> IntoIterator for &'a HashSet<T, S, A>where
A: Allocator + Clone,
§impl<'a, T, S, A> IntoIterator for &'a HashSet<T, S, A>where
A: Allocator + Clone,
impl<'a, T, S, A> IntoIterator for &'a HashSet<T, S, A>where
A: Allocator + Clone,
§impl<'a, T, S, A> IntoIterator for &'a HashSet<T, S, A>where
A: Allocator,
impl<'a, T, S, A> IntoIterator for &'a HashSet<T, S, A>where
A: Allocator,
§impl<'a, T, S, A> IntoIterator for &'a HashSet<T, S, A>where
A: Allocator,
impl<'a, T, S, A> IntoIterator for &'a HashSet<T, S, A>where
A: Allocator,
source§impl<'a, T, const CAP: usize> IntoIterator for &'a arrayvec::arrayvec::ArrayVec<T, CAP>where
T: 'a,
impl<'a, T, const CAP: usize> IntoIterator for &'a arrayvec::arrayvec::ArrayVec<T, CAP>where
T: 'a,
Iterate the ArrayVec
with references to each element.
use arrayvec::ArrayVec;
let array = ArrayVec::from([1, 2, 3]);
for elt in &array {
// ...
}
source§impl<'a, T, const CAP: usize> IntoIterator for &'a mut arrayvec::arrayvec::ArrayVec<T, CAP>where
T: 'a,
impl<'a, T, const CAP: usize> IntoIterator for &'a mut arrayvec::arrayvec::ArrayVec<T, CAP>where
T: 'a,
Iterate the ArrayVec
with mutable references to each element.
use arrayvec::ArrayVec;
let mut array = ArrayVec::from([1, 2, 3]);
for elt in &mut array {
// ...
}
1.0.0 · source§impl<'a, T, const N: usize> IntoIterator for &'a [T; N]
impl<'a, T, const N: usize> IntoIterator for &'a [T; N]
1.0.0 · source§impl<'a, T, const N: usize> IntoIterator for &'a mut [T; N]
impl<'a, T, const N: usize> IntoIterator for &'a mut [T; N]
§impl<'context, Context> IntoIterator for &'context EventVec<'context, Context>where
Context: Context,
impl<'context, Context> IntoIterator for &'context EventVec<'context, Context>where
Context: Context,
source§impl<A> IntoIterator for RangeFrom<A>where
A: Step,
impl<A> IntoIterator for RangeFrom<A>where
A: Step,
type Item = A
type IntoIter = IterRangeFrom<A>
source§impl<A> IntoIterator for RangeInclusive<A>where
A: Step,
impl<A> IntoIterator for RangeInclusive<A>where
A: Step,
type Item = A
type IntoIter = IterRangeInclusive<A>
§impl<A> IntoIterator for ArrayVec<A>where
A: Array,
impl<A> IntoIterator for ArrayVec<A>where
A: Array,
§impl<A> IntoIterator for SmallVec<A>where
A: Array,
impl<A> IntoIterator for SmallVec<A>where
A: Array,
§impl<A> IntoIterator for TinyVec<A>where
A: Array,
impl<A> IntoIterator for TinyVec<A>where
A: Array,
§impl<A, O> IntoIterator for BitArray<A, O>where
A: BitViewSized,
O: BitOrder,
impl<A, O> IntoIterator for BitArray<A, O>where
A: BitViewSized,
O: BitOrder,
§impl<Fut> IntoIterator for FuturesUnordered<Fut>where
Fut: Unpin,
impl<Fut> IntoIterator for FuturesUnordered<Fut>where
Fut: Unpin,
1.0.0 (const: unstable) · source§impl<I> IntoIterator for Iwhere
I: Iterator,
impl<I> IntoIterator for Iwhere
I: Iterator,
§impl<K, V> IntoIterator for PrimaryMap<K, V>where
K: EntityRef,
impl<K, V> IntoIterator for PrimaryMap<K, V>where
K: EntityRef,
1.0.0 · source§impl<K, V, A> IntoIterator for BTreeMap<K, V, A>
impl<K, V, A> IntoIterator for BTreeMap<K, V, A>
§impl<K, V, S> IntoIterator for BoundedBTreeMap<K, V, S>
impl<K, V, S> IntoIterator for BoundedBTreeMap<K, V, S>
1.0.0 · source§impl<K, V, S> IntoIterator for std::collections::hash::map::HashMap<K, V, S>
impl<K, V, S> IntoIterator for std::collections::hash::map::HashMap<K, V, S>
source§impl<K, V, S> IntoIterator for indexmap::map::IndexMap<K, V, S>
impl<K, V, S> IntoIterator for indexmap::map::IndexMap<K, V, S>
§impl<K, V, S, A> IntoIterator for HashMap<K, V, S, A>where
A: Allocator + Clone,
impl<K, V, S, A> IntoIterator for HashMap<K, V, S, A>where
A: Allocator + Clone,
§impl<K, V, S, A> IntoIterator for HashMap<K, V, S, A>where
A: Allocator + Clone,
impl<K, V, S, A> IntoIterator for HashMap<K, V, S, A>where
A: Allocator + Clone,
§impl<K, V, S, A> IntoIterator for HashMap<K, V, S, A>where
A: Allocator,
impl<K, V, S, A> IntoIterator for HashMap<K, V, S, A>where
A: Allocator,
§impl<K, V, S, A> IntoIterator for HashMap<K, V, S, A>where
A: Allocator,
impl<K, V, S, A> IntoIterator for HashMap<K, V, S, A>where
A: Allocator,
§impl<St> IntoIterator for SelectAll<St>where
St: Stream + Unpin,
impl<St> IntoIterator for SelectAll<St>where
St: Stream + Unpin,
source§impl<T> IntoIterator for http::header::map::HeaderMap<T>
impl<T> IntoIterator for http::header::map::HeaderMap<T>
§impl<T> IntoIterator for CachedThreadLocal<T>where
T: Send,
impl<T> IntoIterator for CachedThreadLocal<T>where
T: Send,
§impl<T> IntoIterator for HeaderMap<T>
impl<T> IntoIterator for HeaderMap<T>
§impl<T> IntoIterator for NonEmpty<T>
impl<T> IntoIterator for NonEmpty<T>
1.0.0 · source§impl<T, A> IntoIterator for gclient::ext::sp_runtime::app_crypto::Vec<T, A>where
A: Allocator,
impl<T, A> IntoIterator for gclient::ext::sp_runtime::app_crypto::Vec<T, A>where
A: Allocator,
1.0.0 · source§impl<T, A> IntoIterator for BTreeSet<T, A>
impl<T, A> IntoIterator for BTreeSet<T, A>
1.0.0 · source§impl<T, A> IntoIterator for BinaryHeap<T, A>where
A: Allocator,
impl<T, A> IntoIterator for BinaryHeap<T, A>where
A: Allocator,
1.0.0 · source§impl<T, A> IntoIterator for LinkedList<T, A>where
A: Allocator,
impl<T, A> IntoIterator for LinkedList<T, A>where
A: Allocator,
1.0.0 · source§impl<T, A> IntoIterator for VecDeque<T, A>where
A: Allocator,
impl<T, A> IntoIterator for VecDeque<T, A>where
A: Allocator,
§impl<T, A> IntoIterator for HashTable<T, A>where
A: Allocator,
impl<T, A> IntoIterator for HashTable<T, A>where
A: Allocator,
§impl<T, A> IntoIterator for HashTable<T, A>where
A: Allocator,
impl<T, A> IntoIterator for HashTable<T, A>where
A: Allocator,
§impl<T, A> IntoIterator for RawTable<T, A>where
A: Allocator + Clone,
impl<T, A> IntoIterator for RawTable<T, A>where
A: Allocator + Clone,
§impl<T, A> IntoIterator for RawTable<T, A>where
A: Allocator + Clone,
impl<T, A> IntoIterator for RawTable<T, A>where
A: Allocator + Clone,
§impl<T, A> IntoIterator for Vec<T, A>where
A: Allocator,
impl<T, A> IntoIterator for Vec<T, A>where
A: Allocator,
§impl<T, N> IntoIterator for GenericArray<T, N>where
N: ArrayLength<T>,
impl<T, N> IntoIterator for GenericArray<T, N>where
N: ArrayLength<T>,
§impl<T, O> IntoIterator for BitBox<T, O>where
T: BitStore,
O: BitOrder,
impl<T, O> IntoIterator for BitBox<T, O>where
T: BitStore,
O: BitOrder,
§impl<T, O> IntoIterator for BitVec<T, O>where
T: BitStore,
O: BitOrder,
impl<T, O> IntoIterator for BitVec<T, O>where
T: BitStore,
O: BitOrder,
§Bit-Vector Iteration
Bit-vectors have the advantage that iteration consumes the whole structure, so they can simply freeze the allocation into a bit-box, then use its iteration and destructor.
§Original
type IntoIter = <BitBox<T, O> as IntoIterator>::IntoIter
type Item = <BitBox<T, O> as IntoIterator>::Item
§impl<T, S> IntoIterator for BoundedBTreeSet<T, S>
impl<T, S> IntoIterator for BoundedBTreeSet<T, S>
§impl<T, S> IntoIterator for BoundedVec<T, S>
impl<T, S> IntoIterator for BoundedVec<T, S>
§impl<T, S> IntoIterator for WeakBoundedVec<T, S>
impl<T, S> IntoIterator for WeakBoundedVec<T, S>
1.0.0 · source§impl<T, S> IntoIterator for std::collections::hash::set::HashSet<T, S>
impl<T, S> IntoIterator for std::collections::hash::set::HashSet<T, S>
source§impl<T, S> IntoIterator for indexmap::set::IndexSet<T, S>
impl<T, S> IntoIterator for indexmap::set::IndexSet<T, S>
§impl<T, S, A> IntoIterator for HashSet<T, S, A>where
A: Allocator + Clone,
impl<T, S, A> IntoIterator for HashSet<T, S, A>where
A: Allocator + Clone,
§impl<T, S, A> IntoIterator for HashSet<T, S, A>where
A: Allocator + Clone,
impl<T, S, A> IntoIterator for HashSet<T, S, A>where
A: Allocator + Clone,
§impl<T, S, A> IntoIterator for HashSet<T, S, A>where
A: Allocator,
impl<T, S, A> IntoIterator for HashSet<T, S, A>where
A: Allocator,
§impl<T, S, A> IntoIterator for HashSet<T, S, A>where
A: Allocator,
impl<T, S, A> IntoIterator for HashSet<T, S, A>where
A: Allocator,
§impl<T, U> IntoIterator for Chain<T, U>where
T: Buf,
U: Buf,
impl<T, U> IntoIterator for Chain<T, U>where
T: Buf,
U: Buf,
source§impl<T, const CAP: usize> IntoIterator for arrayvec::arrayvec::ArrayVec<T, CAP>
impl<T, const CAP: usize> IntoIterator for arrayvec::arrayvec::ArrayVec<T, CAP>
Iterate the ArrayVec
with each element by value.
The vector is consumed by this operation.
use arrayvec::ArrayVec;
for elt in ArrayVec::from([1, 2, 3]) {
// ...
}