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 (const: unstable) · 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
Source§impl IntoIterator for bytes::bytes::Bytes
impl IntoIterator for bytes::bytes::Bytes
Source§impl IntoIterator for Value
impl IntoIterator for Value
Source§impl IntoIterator for EventMask
impl IntoIterator for EventMask
Source§impl IntoIterator for WatchMask
impl IntoIterator for WatchMask
Source§impl IntoIterator for EventKindMask
impl IntoIterator for EventKindMask
type Item = EventKindMask
type IntoIter = Iter<EventKindMask>
Source§impl IntoIterator for CipherCtxFlags
impl IntoIterator for CipherCtxFlags
type Item = CipherCtxFlags
type IntoIter = Iter<CipherCtxFlags>
Source§impl IntoIterator for CMSOptions
impl IntoIterator for CMSOptions
type Item = CMSOptions
type IntoIter = Iter<CMSOptions>
Source§impl IntoIterator for OcspFlag
impl IntoIterator for OcspFlag
Source§impl IntoIterator for Pkcs7Flags
impl IntoIterator for Pkcs7Flags
type Item = Pkcs7Flags
type IntoIter = Iter<Pkcs7Flags>
Source§impl IntoIterator for ExtensionContext
impl IntoIterator for ExtensionContext
type Item = ExtensionContext
type IntoIter = Iter<ExtensionContext>
Source§impl IntoIterator for ShutdownState
impl IntoIterator for ShutdownState
type Item = ShutdownState
type IntoIter = Iter<ShutdownState>
Source§impl IntoIterator for SslOptions
impl IntoIterator for SslOptions
type Item = SslOptions
type IntoIter = Iter<SslOptions>
Source§impl IntoIterator for SslSessionCacheMode
impl IntoIterator for SslSessionCacheMode
type Item = SslSessionCacheMode
type IntoIter = Iter<SslSessionCacheMode>
Source§impl IntoIterator for SslVerifyMode
impl IntoIterator for SslVerifyMode
type Item = SslVerifyMode
type IntoIter = Iter<SslVerifyMode>
Source§impl IntoIterator for X509CheckFlags
impl IntoIterator for X509CheckFlags
type Item = X509CheckFlags
type IntoIter = Iter<X509CheckFlags>
Source§impl IntoIterator for X509VerifyFlags
impl IntoIterator for X509VerifyFlags
type Item = X509VerifyFlags
type IntoIter = Iter<X509VerifyFlags>
Source§impl IntoIterator for regex::regexset::bytes::SetMatches
impl IntoIterator for regex::regexset::bytes::SetMatches
Source§impl IntoIterator for regex::regexset::string::SetMatches
impl IntoIterator for regex::regexset::string::SetMatches
Source§impl IntoIterator for rustix::backend::event::epoll::CreateFlags
impl IntoIterator for rustix::backend::event::epoll::CreateFlags
type Item = CreateFlags
type IntoIter = Iter<CreateFlags>
Source§impl IntoIterator for EventFlags
impl IntoIterator for EventFlags
type Item = EventFlags
type IntoIter = Iter<EventFlags>
Source§impl IntoIterator for PollFlags
impl IntoIterator for PollFlags
Source§impl IntoIterator for EventfdFlags
impl IntoIterator for EventfdFlags
type Item = EventfdFlags
type IntoIter = Iter<EventfdFlags>
Source§impl IntoIterator for rustix::backend::fs::inotify::CreateFlags
impl IntoIterator for rustix::backend::fs::inotify::CreateFlags
type Item = CreateFlags
type IntoIter = Iter<CreateFlags>
Source§impl IntoIterator for ReadFlags
impl IntoIterator for ReadFlags
Source§impl IntoIterator for WatchFlags
impl IntoIterator for WatchFlags
type Item = WatchFlags
type IntoIter = Iter<WatchFlags>
Source§impl IntoIterator for FallocateFlags
impl IntoIterator for FallocateFlags
type Item = FallocateFlags
type IntoIter = Iter<FallocateFlags>
Source§impl IntoIterator for MemfdFlags
impl IntoIterator for MemfdFlags
type Item = MemfdFlags
type IntoIter = Iter<MemfdFlags>
Source§impl IntoIterator for RenameFlags
impl IntoIterator for RenameFlags
type Item = RenameFlags
type IntoIter = Iter<RenameFlags>
Source§impl IntoIterator for ResolveFlags
impl IntoIterator for ResolveFlags
type Item = ResolveFlags
type IntoIter = Iter<ResolveFlags>
Source§impl IntoIterator for SealFlags
impl IntoIterator for SealFlags
Source§impl IntoIterator for StatVfsMountFlags
impl IntoIterator for StatVfsMountFlags
type Item = StatVfsMountFlags
type IntoIter = Iter<StatVfsMountFlags>
Source§impl IntoIterator for DupFlags
impl IntoIterator for DupFlags
Source§impl IntoIterator for ReadWriteFlags
impl IntoIterator for ReadWriteFlags
type Item = ReadWriteFlags
type IntoIter = Iter<ReadWriteFlags>
Source§impl IntoIterator for RecvFlags
impl IntoIterator for RecvFlags
Source§impl IntoIterator for ReturnFlags
impl IntoIterator for ReturnFlags
type Item = ReturnFlags
type IntoIter = Iter<ReturnFlags>
Source§impl IntoIterator for SendFlags
impl IntoIterator for SendFlags
Source§impl IntoIterator for PipeFlags
impl IntoIterator for PipeFlags
Source§impl IntoIterator for SpliceFlags
impl IntoIterator for SpliceFlags
type Item = SpliceFlags
type IntoIter = Iter<SpliceFlags>
Source§impl IntoIterator for TimerfdFlags
impl IntoIterator for TimerfdFlags
type Item = TimerfdFlags
type IntoIter = Iter<TimerfdFlags>
Source§impl IntoIterator for TimerfdTimerFlags
impl IntoIterator for TimerfdTimerFlags
type Item = TimerfdTimerFlags
type IntoIter = Iter<TimerfdTimerFlags>
Source§impl IntoIterator for StatxAttributes
impl IntoIterator for StatxAttributes
type Item = StatxAttributes
type IntoIter = Iter<StatxAttributes>
Source§impl IntoIterator for StatxFlags
impl IntoIterator for StatxFlags
type Item = StatxFlags
type IntoIter = Iter<StatxFlags>
Source§impl IntoIterator for XattrFlags
impl IntoIterator for XattrFlags
type Item = XattrFlags
type IntoIter = Iter<XattrFlags>
Source§impl IntoIterator for SocketFlags
impl IntoIterator for SocketFlags
type Item = SocketFlags
type IntoIter = Iter<SocketFlags>
Source§impl IntoIterator for TxTimeFlags
impl IntoIterator for TxTimeFlags
type Item = TxTimeFlags
type IntoIter = Iter<TxTimeFlags>
Source§impl IntoIterator for SocketAddrXdpFlags
impl IntoIterator for SocketAddrXdpFlags
type Item = SocketAddrXdpFlags
type IntoIter = Iter<SocketAddrXdpFlags>
Source§impl IntoIterator for XdpDescOptions
impl IntoIterator for XdpDescOptions
type Item = XdpDescOptions
type IntoIter = Iter<XdpDescOptions>
Source§impl IntoIterator for XdpOptionsFlags
impl IntoIterator for XdpOptionsFlags
type Item = XdpOptionsFlags
type IntoIter = Iter<XdpOptionsFlags>
Source§impl IntoIterator for XdpRingFlags
impl IntoIterator for XdpRingFlags
type Item = XdpRingFlags
type IntoIter = Iter<XdpRingFlags>
Source§impl IntoIterator for XdpUmemRegFlags
impl IntoIterator for XdpUmemRegFlags
type Item = XdpUmemRegFlags
type IntoIter = Iter<XdpUmemRegFlags>
Source§impl IntoIterator for PidfdFlags
impl IntoIterator for PidfdFlags
type Item = PidfdFlags
type IntoIter = Iter<PidfdFlags>
Source§impl IntoIterator for PidfdGetfdFlags
impl IntoIterator for PidfdGetfdFlags
type Item = PidfdGetfdFlags
type IntoIter = Iter<PidfdGetfdFlags>
Source§impl IntoIterator for WaitIdOptions
impl IntoIterator for WaitIdOptions
type Item = WaitIdOptions
type IntoIter = Iter<WaitIdOptions>
Source§impl IntoIterator for WaitOptions
impl IntoIterator for WaitOptions
type Item = WaitOptions
type IntoIter = Iter<WaitOptions>
Source§impl IntoIterator for ControlModes
impl IntoIterator for ControlModes
type Item = ControlModes
type IntoIter = Iter<ControlModes>
Source§impl IntoIterator for InputModes
impl IntoIterator for InputModes
type Item = InputModes
type IntoIter = Iter<InputModes>
Source§impl IntoIterator for LocalModes
impl IntoIterator for LocalModes
type Item = LocalModes
type IntoIter = Iter<LocalModes>
Source§impl IntoIterator for OutputModes
impl IntoIterator for OutputModes
type Item = OutputModes
type IntoIter = Iter<OutputModes>
Source§impl IntoIterator for ByteBuf
impl IntoIterator for ByteBuf
Source§impl IntoIterator for toml_edit::array::Array
impl IntoIterator for toml_edit::array::Array
Source§impl IntoIterator for ArrayOfTables
impl IntoIterator for ArrayOfTables
Source§impl IntoIterator for InlineTable
impl IntoIterator for InlineTable
Source§impl IntoIterator for Table
impl IntoIterator for Table
Source§impl IntoIterator for BeginFlags
impl IntoIterator for BeginFlags
type Item = BeginFlags
type IntoIter = Iter<BeginFlags>
Source§impl IntoIterator for WalkDir
impl IntoIterator for WalkDir
Source§impl<'a> IntoIterator for &'a Utf8Sequence
impl<'a> IntoIterator for &'a Utf8Sequence
Source§impl<'a> IntoIterator for &'a AsciiStr
Produces references for compatibility with [u8].
impl<'a> IntoIterator for &'a AsciiStr
Produces references for compatibility with [u8].
(str doesn’t implement IntoIterator for its references,
so there is no compatibility to lose.)
Source§impl<'a> IntoIterator for &'a async_std::path::path::Path
impl<'a> IntoIterator for &'a async_std::path::path::Path
Source§impl<'a> IntoIterator for &'a async_std::path::pathbuf::PathBuf
impl<'a> IntoIterator for &'a async_std::path::pathbuf::PathBuf
Source§impl<'a> IntoIterator for &'a bytes::bytes::Bytes
impl<'a> IntoIterator for &'a bytes::bytes::Bytes
Source§impl<'a> IntoIterator for &'a BytesMut
impl<'a> IntoIterator for &'a BytesMut
Source§impl<'a> IntoIterator for &'a Events
impl<'a> IntoIterator for &'a Events
Source§impl<'a> IntoIterator for &'a regex::regexset::bytes::SetMatches
impl<'a> IntoIterator for &'a regex::regexset::bytes::SetMatches
Source§impl<'a> IntoIterator for &'a regex::regexset::string::SetMatches
impl<'a> IntoIterator for &'a regex::regexset::string::SetMatches
Source§impl<'a> IntoIterator for &'a ByteBuf
impl<'a> IntoIterator for &'a ByteBuf
Source§impl<'a> IntoIterator for &'a serde_bytes::bytes::Bytes
impl<'a> IntoIterator for &'a serde_bytes::bytes::Bytes
Source§impl<'a> IntoIterator for &'a BorrowedCertRevocationList<'a>
impl<'a> IntoIterator for &'a BorrowedCertRevocationList<'a>
type Item = Result<BorrowedRevokedCert<'a>, Error>
type IntoIter = DerIterator<'a, BorrowedRevokedCert<'a>>
1.6.0 · Source§impl<'a> IntoIterator for &'a tor_hsservice::internal_prelude::Path
impl<'a> IntoIterator for &'a tor_hsservice::internal_prelude::Path
1.6.0 · Source§impl<'a> IntoIterator for &'a tor_hsservice::internal_prelude::PathBuf
impl<'a> IntoIterator for &'a tor_hsservice::internal_prelude::PathBuf
1.10.0 · Source§impl<'a> IntoIterator for &'a UnixListener
impl<'a> IntoIterator for &'a UnixListener
Source§impl<'a> IntoIterator for &'a mut AsciiStr
impl<'a> IntoIterator for &'a mut AsciiStr
Source§impl<'a> IntoIterator for &'a mut ByteBuf
impl<'a> IntoIterator for &'a mut ByteBuf
Source§impl<'a> IntoIterator for &'a mut serde_bytes::bytes::Bytes
impl<'a> IntoIterator for &'a mut serde_bytes::bytes::Bytes
Source§impl<'a> IntoIterator for BerObject<'a>
impl<'a> IntoIterator for BerObject<'a>
Source§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,
Source§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 OccupiedEntry<'a, T>where
'b: 'a,
impl<'a, 'b, T> IntoIterator for &'b mut OccupiedEntry<'a, T>where
'b: 'a,
Source§impl<'a, 'i> IntoIterator for &'a DeArray<'i>
impl<'a, 'i> IntoIterator for &'a DeArray<'i>
Source§impl<'a, A> IntoIterator for &'a SmallVec<A>where
A: Array,
impl<'a, A> IntoIterator for &'a SmallVec<A>where
A: Array,
Source§impl<'a, A> IntoIterator for &'a mut SmallVec<A>where
A: Array,
impl<'a, A> IntoIterator for &'a mut SmallVec<A>where
A: Array,
Source§impl<'a, A, O> IntoIterator for &'a BitArray<A, O>where
O: BitOrder,
A: 'a + BitViewSized,
Available on non-tarpaulin_include only.
impl<'a, A, O> IntoIterator for &'a BitArray<A, O>where
O: BitOrder,
A: 'a + BitViewSized,
tarpaulin_include only.Source§impl<'a, A, O> IntoIterator for &'a mut BitArray<A, O>where
O: BitOrder,
A: 'a + BitViewSized,
Available on non-tarpaulin_include only.
impl<'a, A, O> IntoIterator for &'a mut BitArray<A, O>where
O: BitOrder,
A: 'a + BitViewSized,
tarpaulin_include only.Source§impl<'a, Fut> IntoIterator for &'a FuturesUnordered<Fut>where
Fut: Unpin,
impl<'a, Fut> IntoIterator for &'a FuturesUnordered<Fut>where
Fut: Unpin,
Source§impl<'a, Fut> IntoIterator for &'a mut FuturesUnordered<Fut>where
Fut: Unpin,
impl<'a, Fut> IntoIterator for &'a mut FuturesUnordered<Fut>where
Fut: Unpin,
Source§impl<'a, I> IntoIterator for &'a IntoChunks<I>
impl<'a, I> IntoIterator for &'a IntoChunks<I>
Source§impl<'a, I, P, H> IntoIterator for &'a DoublePriorityQueue<I, P, H>
impl<'a, I, P, H> IntoIterator for &'a DoublePriorityQueue<I, P, H>
Source§impl<'a, I, P, H> IntoIterator for &'a PriorityQueue<I, P, H>
impl<'a, I, P, H> IntoIterator for &'a PriorityQueue<I, P, H>
Source§impl<'a, I, P, H> IntoIterator for &'a mut DoublePriorityQueue<I, P, H>
impl<'a, I, P, H> IntoIterator for &'a mut DoublePriorityQueue<I, P, H>
Source§impl<'a, I, P, H> IntoIterator for &'a mut PriorityQueue<I, P, H>
impl<'a, I, P, H> IntoIterator for &'a mut PriorityQueue<I, P, H>
Source§impl<'a, K, I, F> IntoIterator for &'a ChunkBy<K, I, F>
impl<'a, K, I, F> IntoIterator for &'a ChunkBy<K, I, F>
Source§impl<'a, K, V> IntoIterator for &'a EnumMap<K, V>where
K: EnumArray<V>,
impl<'a, K, V> IntoIterator for &'a EnumMap<K, V>where
K: EnumArray<V>,
Source§impl<'a, K, V> IntoIterator for &'a indexmap::map::slice::Slice<K, V>
impl<'a, K, V> IntoIterator for &'a indexmap::map::slice::Slice<K, V>
Source§impl<'a, K, V> IntoIterator for &'a phf::map::Map<K, V>
impl<'a, K, V> IntoIterator for &'a phf::map::Map<K, V>
Source§impl<'a, K, V> IntoIterator for &'a OrderedMap<K, V>
impl<'a, K, V> IntoIterator for &'a OrderedMap<K, V>
Source§impl<'a, K, V> IntoIterator for &'a SlotMap<K, V>where
K: Key,
impl<'a, K, V> IntoIterator for &'a SlotMap<K, V>where
K: Key,
Source§impl<'a, K, V> IntoIterator for &'a DenseSlotMap<K, V>where
K: 'a + Key,
impl<'a, K, V> IntoIterator for &'a DenseSlotMap<K, V>where
K: 'a + Key,
Source§impl<'a, K, V> IntoIterator for &'a HopSlotMap<K, V>where
K: Key,
impl<'a, K, V> IntoIterator for &'a HopSlotMap<K, V>where
K: Key,
Source§impl<'a, K, V> IntoIterator for &'a SecondaryMap<K, V>where
K: Key,
impl<'a, K, V> IntoIterator for &'a SecondaryMap<K, V>where
K: Key,
Source§impl<'a, K, V> IntoIterator for &'a toml::map::Map<K, V>
impl<'a, K, V> IntoIterator for &'a toml::map::Map<K, V>
Source§impl<'a, K, V> IntoIterator for &'a TiSlice<K, V>
impl<'a, K, V> IntoIterator for &'a TiSlice<K, V>
Source§impl<'a, K, V> IntoIterator for &'a TiVec<K, V>
impl<'a, K, V> IntoIterator for &'a TiVec<K, V>
Source§impl<'a, K, V> IntoIterator for &'a mut EnumMap<K, V>where
K: EnumArray<V>,
impl<'a, K, V> IntoIterator for &'a mut EnumMap<K, V>where
K: EnumArray<V>,
Source§impl<'a, K, V> IntoIterator for &'a mut indexmap::map::slice::Slice<K, V>
impl<'a, K, V> IntoIterator for &'a mut indexmap::map::slice::Slice<K, V>
Source§impl<'a, K, V> IntoIterator for &'a mut SlotMap<K, V>where
K: Key,
impl<'a, K, V> IntoIterator for &'a mut SlotMap<K, V>where
K: Key,
Source§impl<'a, K, V> IntoIterator for &'a mut DenseSlotMap<K, V>where
K: 'a + Key,
impl<'a, K, V> IntoIterator for &'a mut DenseSlotMap<K, V>where
K: 'a + Key,
Source§impl<'a, K, V> IntoIterator for &'a mut HopSlotMap<K, V>where
K: Key,
impl<'a, K, V> IntoIterator for &'a mut HopSlotMap<K, V>where
K: Key,
Source§impl<'a, K, V> IntoIterator for &'a mut SecondaryMap<K, V>where
K: Key,
impl<'a, K, V> IntoIterator for &'a mut SecondaryMap<K, V>where
K: Key,
Source§impl<'a, K, V> IntoIterator for &'a mut toml::map::Map<K, V>
impl<'a, K, V> IntoIterator for &'a mut toml::map::Map<K, V>
Source§impl<'a, K, V> IntoIterator for &'a mut TiSlice<K, V>
impl<'a, K, V> IntoIterator for &'a mut TiSlice<K, V>
Source§impl<'a, K, V> IntoIterator for &'a mut TiVec<K, V>
impl<'a, K, V> IntoIterator for &'a mut TiVec<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>
Source§impl<'a, K, V, S> IntoIterator for &'a IndexMap<K, V, S>
impl<'a, K, V, S> IntoIterator for &'a IndexMap<K, V, S>
Source§impl<'a, K, V, S> IntoIterator for &'a LiteMap<K, V, S>where
S: StoreIterable<'a, K, V>,
impl<'a, K, V, S> IntoIterator for &'a LiteMap<K, V, S>where
S: StoreIterable<'a, K, V>,
type Item = (&'a K, &'a V)
type IntoIter = <S as StoreIterable<'a, K, V>>::KeyValueIter
Source§impl<'a, K, V, S> IntoIterator for &'a SparseSecondaryMap<K, V, S>where
K: Key,
S: BuildHasher,
impl<'a, K, V, S> IntoIterator for &'a SparseSecondaryMap<K, V, S>where
K: Key,
S: BuildHasher,
Source§impl<'a, K, V, S> IntoIterator for &'a PtrWeakKeyHashMap<K, V, S>where
K: WeakElement,
impl<'a, K, V, S> IntoIterator for &'a PtrWeakKeyHashMap<K, V, S>where
K: WeakElement,
Source§impl<'a, K, V, S> IntoIterator for &'a PtrWeakWeakHashMap<K, V, S>where
K: WeakElement,
V: WeakElement,
impl<'a, K, V, S> IntoIterator for &'a PtrWeakWeakHashMap<K, V, S>where
K: WeakElement,
V: WeakElement,
Source§impl<'a, K, V, S> IntoIterator for &'a WeakKeyHashMap<K, V, S>where
K: WeakElement,
impl<'a, K, V, S> IntoIterator for &'a WeakKeyHashMap<K, V, S>where
K: WeakElement,
Source§impl<'a, K, V, S> IntoIterator for &'a WeakValueHashMap<K, V, S>where
V: WeakElement,
impl<'a, K, V, S> IntoIterator for &'a WeakValueHashMap<K, V, S>where
V: WeakElement,
Source§impl<'a, K, V, S> IntoIterator for &'a WeakWeakHashMap<K, V, S>where
K: WeakElement,
V: WeakElement,
impl<'a, K, V, S> IntoIterator for &'a WeakWeakHashMap<K, V, S>where
K: WeakElement,
V: WeakElement,
Source§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>
Source§impl<'a, K, V, S> IntoIterator for &'a mut LiteMap<K, V, S>where
S: StoreIterableMut<'a, K, V>,
impl<'a, K, V, S> IntoIterator for &'a mut LiteMap<K, V, S>where
S: StoreIterableMut<'a, K, V>,
type Item = (&'a K, &'a mut V)
type IntoIter = <S as StoreIterableMut<'a, K, V>>::KeyValueIterMut
Source§impl<'a, K, V, S> IntoIterator for &'a mut SparseSecondaryMap<K, V, S>where
K: Key,
S: BuildHasher,
impl<'a, K, V, S> IntoIterator for &'a mut SparseSecondaryMap<K, V, S>where
K: Key,
S: BuildHasher,
Source§impl<'a, K, V, S> IntoIterator for &'a mut PtrWeakKeyHashMap<K, V, S>where
K: WeakElement,
impl<'a, K, V, S> IntoIterator for &'a mut PtrWeakKeyHashMap<K, V, S>where
K: WeakElement,
Source§impl<'a, K, V, S> IntoIterator for &'a mut WeakKeyHashMap<K, V, S>where
K: WeakElement,
impl<'a, K, V, S> IntoIterator for &'a mut WeakKeyHashMap<K, V, S>where
K: WeakElement,
Source§impl<'a, K, V, S, A> IntoIterator for &'a hashbrown::map::HashMap<K, V, S, A>where
A: Allocator,
impl<'a, K, V, S, A> IntoIterator for &'a hashbrown::map::HashMap<K, V, S, A>where
A: Allocator,
1.0.0 · Source§impl<'a, K, V, S, A> IntoIterator for &'a tor_hsservice::internal_prelude::HashMap<K, V, S, A>where
A: Allocator,
impl<'a, K, V, S, A> IntoIterator for &'a tor_hsservice::internal_prelude::HashMap<K, V, S, A>where
A: Allocator,
Source§impl<'a, K, V, S, A> IntoIterator for &'a mut hashbrown::map::HashMap<K, V, S, A>where
A: Allocator,
impl<'a, K, V, S, A> IntoIterator for &'a mut hashbrown::map::HashMap<K, V, S, A>where
A: Allocator,
1.0.0 · Source§impl<'a, K, V, S, A> IntoIterator for &'a mut tor_hsservice::internal_prelude::HashMap<K, V, S, A>where
A: Allocator,
impl<'a, K, V, S, A> IntoIterator for &'a mut tor_hsservice::internal_prelude::HashMap<K, V, S, A>where
A: Allocator,
Source§impl<'a, St> IntoIterator for &'a SelectAll<St>
impl<'a, St> IntoIterator for &'a SelectAll<St>
Source§impl<'a, St> IntoIterator for &'a mut SelectAll<St>
impl<'a, St> IntoIterator for &'a mut SelectAll<St>
1.4.0 · Source§impl<'a, T> IntoIterator for &'a Option<T>
impl<'a, T> IntoIterator for &'a Option<T>
1.0.0 · Source§impl<'a, T> IntoIterator for &'a [T]
impl<'a, T> IntoIterator for &'a [T]
Source§impl<'a, T> IntoIterator for &'a HeaderMap<T>
impl<'a, T> IntoIterator for &'a HeaderMap<T>
Source§impl<'a, T> IntoIterator for &'a indexmap::set::slice::Slice<T>
impl<'a, T> IntoIterator for &'a indexmap::set::slice::Slice<T>
Source§impl<'a, T> IntoIterator for &'a Stack<T>where
T: Stackable,
impl<'a, T> IntoIterator for &'a Stack<T>where
T: Stackable,
Source§impl<'a, T> IntoIterator for &'a StackRef<T>where
T: Stackable,
impl<'a, T> IntoIterator for &'a StackRef<T>where
T: Stackable,
Source§impl<'a, T> IntoIterator for &'a OrderedSet<T>
impl<'a, T> IntoIterator for &'a OrderedSet<T>
Source§impl<'a, T> IntoIterator for &'a Set<T>
impl<'a, T> IntoIterator for &'a Set<T>
Source§impl<'a, T> IntoIterator for &'a Slab<T>
impl<'a, T> IntoIterator for &'a Slab<T>
Source§impl<'a, T> IntoIterator for &'a std::sync::mpmc::Receiver<T>
impl<'a, T> IntoIterator for &'a std::sync::mpmc::Receiver<T>
1.1.0 · Source§impl<'a, T> IntoIterator for &'a std::sync::mpsc::Receiver<T>
impl<'a, T> IntoIterator for &'a std::sync::mpsc::Receiver<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 HeaderMap<T>
impl<'a, T> IntoIterator for &'a mut HeaderMap<T>
Source§impl<'a, T> IntoIterator for &'a mut Stack<T>where
T: Stackable,
impl<'a, T> IntoIterator for &'a mut Stack<T>where
T: Stackable,
Source§impl<'a, T> IntoIterator for &'a mut StackRef<T>where
T: Stackable,
impl<'a, T> IntoIterator for &'a mut StackRef<T>where
T: Stackable,
Source§impl<'a, T> IntoIterator for &'a mut Slab<T>
impl<'a, T> IntoIterator for &'a mut Slab<T>
Source§impl<'a, T> IntoIterator for GetAll<'a, T>
impl<'a, T> IntoIterator for GetAll<'a, T>
Source§impl<'a, T> IntoIterator for OccupiedEntry<'a, T>
impl<'a, T> IntoIterator for OccupiedEntry<'a, T>
Source§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,
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 VecDeque<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a VecDeque<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 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 Vec<T, A>where
A: Allocator,
impl<'a, T, A> IntoIterator for &'a Vec<T, A>where
A: Allocator,
Source§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,
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,
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 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>
Source§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>,
Source§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>,
Source§impl<'a, T, O> IntoIterator for &'a BitSlice<T, O>
Available on non-tarpaulin_include only.
impl<'a, T, O> IntoIterator for &'a BitSlice<T, O>
tarpaulin_include only.Source§impl<'a, T, O> IntoIterator for &'a BitVec<T, O>
Available on non-tarpaulin_include only.
impl<'a, T, O> IntoIterator for &'a BitVec<T, O>
tarpaulin_include only.Source§impl<'a, T, O> IntoIterator for &'a mut BitSlice<T, O>
Available on non-tarpaulin_include only.
impl<'a, T, O> IntoIterator for &'a mut BitSlice<T, O>
tarpaulin_include only.Source§impl<'a, T, O> IntoIterator for &'a mut BitVec<T, O>
Available on non-tarpaulin_include only.
impl<'a, T, O> IntoIterator for &'a mut BitVec<T, O>
tarpaulin_include only.Source§impl<'a, T, S> IntoIterator for &'a IndexSet<T, S>
impl<'a, T, S> IntoIterator for &'a IndexSet<T, S>
Source§impl<'a, T, S> IntoIterator for &'a PtrWeakHashSet<T, S>
impl<'a, T, S> IntoIterator for &'a PtrWeakHashSet<T, S>
Source§impl<'a, T, S> IntoIterator for &'a WeakHashSet<T, S>where
T: WeakKey,
impl<'a, T, S> IntoIterator for &'a WeakHashSet<T, S>where
T: WeakKey,
Source§impl<'a, T, S, A> IntoIterator for &'a hashbrown::set::HashSet<T, S, A>where
A: Allocator,
impl<'a, T, S, A> IntoIterator for &'a hashbrown::set::HashSet<T, S, A>where
A: Allocator,
1.0.0 · Source§impl<'a, T, S, A> IntoIterator for &'a tor_hsservice::internal_prelude::HashSet<T, S, A>where
A: Allocator,
impl<'a, T, S, A> IntoIterator for &'a tor_hsservice::internal_prelude::HashSet<T, S, A>where
A: Allocator,
Source§impl<'a, T, U> IntoIterator for &'a hybrid_array::Array<T, U>where
U: ArraySize,
impl<'a, T, U> IntoIterator for &'a hybrid_array::Array<T, U>where
U: ArraySize,
Source§impl<'a, T, U> IntoIterator for &'a mut hybrid_array::Array<T, U>where
U: ArraySize,
impl<'a, T, U> IntoIterator for &'a mut hybrid_array::Array<T, U>where
U: ArraySize,
Source§impl<'a, T, const CAP: usize> IntoIterator for &'a ArrayVec<T, CAP>where
T: 'a,
Iterate the ArrayVec with references to each element.
impl<'a, T, const CAP: usize> IntoIterator for &'a 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<T, CAP>where
T: 'a,
Iterate the ArrayVec with mutable references to each element.
impl<'a, T, const CAP: usize> IntoIterator for &'a mut 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]
Source§impl<'a, const N: usize> IntoIterator for &'a ByteArray<N>
impl<'a, const N: usize> IntoIterator for &'a ByteArray<N>
Source§impl<'a, const N: usize> IntoIterator for &'a mut ByteArray<N>
impl<'a, const N: usize> IntoIterator for &'a mut ByteArray<N>
Source§impl<'i> IntoIterator for DeArray<'i>
impl<'i> IntoIterator for DeArray<'i>
Source§impl<'inp, 'out, T> IntoIterator for InOutBuf<'inp, 'out, T>
impl<'inp, 'out, T> IntoIterator for InOutBuf<'inp, 'out, T>
Source§impl<'s> IntoIterator for &'s toml_edit::array::Array
impl<'s> IntoIterator for &'s toml_edit::array::Array
Source§impl<'s> IntoIterator for &'s ArrayOfTables
impl<'s> IntoIterator for &'s ArrayOfTables
Source§impl<'s> IntoIterator for &'s InlineTable
impl<'s> IntoIterator for &'s InlineTable
Source§impl<'s> IntoIterator for &'s Table
impl<'s> IntoIterator for &'s Table
Source§impl<A> IntoIterator for SmallVec<A>where
A: Array,
impl<A> IntoIterator for SmallVec<A>where
A: Array,
1.96.0 · Source§impl<A> IntoIterator for Range<A>where
A: Step,
impl<A> IntoIterator for Range<A>where
A: Step,
1.96.0 · Source§impl<A> IntoIterator for RangeFrom<A>where
A: Step,
impl<A> IntoIterator for RangeFrom<A>where
A: Step,
1.95.0 · Source§impl<A> IntoIterator for RangeInclusive<A>where
A: Step,
impl<A> IntoIterator for RangeInclusive<A>where
A: Step,
Source§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,
Source§impl<Fut> IntoIterator for FuturesUnordered<Fut>where
Fut: Unpin,
impl<Fut> IntoIterator for FuturesUnordered<Fut>where
Fut: Unpin,
Source§impl<I> IntoIterator for &RcIter<I>where
I: Iterator,
Return an iterator from &RcIter<I> (by simply cloning it).
impl<I> IntoIterator for &RcIter<I>where
I: Iterator,
Return an iterator from &RcIter<I> (by simply cloning it).
1.0.0 (const: unstable) · Source§impl<I> IntoIterator for Iwhere
I: Iterator,
impl<I> IntoIterator for Iwhere
I: Iterator,
Source§impl<I, P, H> IntoIterator for DoublePriorityQueue<I, P, H>
impl<I, P, H> IntoIterator for DoublePriorityQueue<I, P, H>
Source§impl<I, P, H> IntoIterator for PriorityQueue<I, P, H>
impl<I, P, H> IntoIterator for PriorityQueue<I, P, H>
Source§impl<K, V> IntoIterator for EnumMap<K, V>where
K: EnumArray<V>,
impl<K, V> IntoIterator for EnumMap<K, V>where
K: EnumArray<V>,
Source§impl<K, V> IntoIterator for SlotMap<K, V>where
K: Key,
impl<K, V> IntoIterator for SlotMap<K, V>where
K: Key,
Source§impl<K, V> IntoIterator for DenseSlotMap<K, V>where
K: Key,
impl<K, V> IntoIterator for DenseSlotMap<K, V>where
K: Key,
Source§impl<K, V> IntoIterator for HopSlotMap<K, V>where
K: Key,
impl<K, V> IntoIterator for HopSlotMap<K, V>where
K: Key,
Source§impl<K, V> IntoIterator for SecondaryMap<K, V>where
K: Key,
impl<K, V> IntoIterator for SecondaryMap<K, V>where
K: Key,
Source§impl<K, V> IntoIterator for toml::map::Map<K, V>
impl<K, V> IntoIterator for toml::map::Map<K, V>
Source§impl<K, V> IntoIterator for TiVec<K, V>
impl<K, V> IntoIterator for TiVec<K, V>
Source§impl<K, V> IntoIterator for Box<Slice<K, V>>
impl<K, V> IntoIterator for Box<Slice<K, V>>
Source§impl<K, V> IntoIterator for Box<TiSlice<K, V>>
impl<K, V> IntoIterator for Box<TiSlice<K, V>>
1.0.0 · Source§impl<K, V, A> IntoIterator for BTreeMap<K, V, A>
impl<K, V, A> IntoIterator for BTreeMap<K, V, A>
Source§impl<K, V, S> IntoIterator for IndexMap<K, V, S>
impl<K, V, S> IntoIterator for IndexMap<K, V, S>
Source§impl<K, V, S> IntoIterator for LiteMap<K, V, S>where
S: StoreIntoIterator<K, V>,
impl<K, V, S> IntoIterator for LiteMap<K, V, S>where
S: StoreIntoIterator<K, V>,
type Item = (K, V)
type IntoIter = <S as StoreIntoIterator<K, V>>::KeyValueIntoIter
Source§impl<K, V, S> IntoIterator for SparseSecondaryMap<K, V, S>where
K: Key,
S: BuildHasher,
impl<K, V, S> IntoIterator for SparseSecondaryMap<K, V, S>where
K: Key,
S: BuildHasher,
Source§impl<K, V, S> IntoIterator for PtrWeakKeyHashMap<K, V, S>where
K: WeakElement,
impl<K, V, S> IntoIterator for PtrWeakKeyHashMap<K, V, S>where
K: WeakElement,
Source§impl<K, V, S> IntoIterator for PtrWeakWeakHashMap<K, V, S>where
K: WeakElement,
V: WeakElement,
impl<K, V, S> IntoIterator for PtrWeakWeakHashMap<K, V, S>where
K: WeakElement,
V: WeakElement,
Source§impl<K, V, S> IntoIterator for WeakKeyHashMap<K, V, S>where
K: WeakElement,
impl<K, V, S> IntoIterator for WeakKeyHashMap<K, V, S>where
K: WeakElement,
Source§impl<K, V, S> IntoIterator for WeakValueHashMap<K, V, S>where
V: WeakElement,
impl<K, V, S> IntoIterator for WeakValueHashMap<K, V, S>where
V: WeakElement,
Source§impl<K, V, S> IntoIterator for WeakWeakHashMap<K, V, S>where
K: WeakElement,
V: WeakElement,
impl<K, V, S> IntoIterator for WeakWeakHashMap<K, V, S>where
K: WeakElement,
V: WeakElement,
Source§impl<K, V, S, A> IntoIterator for hashbrown::map::HashMap<K, V, S, A>where
A: Allocator,
impl<K, V, S, A> IntoIterator for hashbrown::map::HashMap<K, V, S, A>where
A: Allocator,
1.0.0 · Source§impl<K, V, S, A> IntoIterator for tor_hsservice::internal_prelude::HashMap<K, V, S, A>where
A: Allocator,
impl<K, V, S, A> IntoIterator for tor_hsservice::internal_prelude::HashMap<K, V, S, A>where
A: Allocator,
Source§impl<St> IntoIterator for SelectAll<St>
impl<St> IntoIterator for SelectAll<St>
1.0.0 (const: unstable) · Source§impl<T> IntoIterator for Option<T>
impl<T> IntoIterator for Option<T>
Source§impl<T> IntoIterator for EnumSet<T>where
T: EnumSetType,
impl<T> IntoIterator for EnumSet<T>where
T: EnumSetType,
Source§impl<T> IntoIterator for HeaderMap<T>
impl<T> IntoIterator for HeaderMap<T>
Source§impl<T> IntoIterator for Stack<T>where
T: Stackable,
impl<T> IntoIterator for Stack<T>where
T: Stackable,
Source§impl<T> IntoIterator for Slab<T>
impl<T> IntoIterator for Slab<T>
Source§impl<T> IntoIterator for std::sync::mpmc::Receiver<T>
impl<T> IntoIterator for std::sync::mpmc::Receiver<T>
1.1.0 · Source§impl<T> IntoIterator for std::sync::mpsc::Receiver<T>
impl<T> IntoIterator for std::sync::mpsc::Receiver<T>
Source§impl<T, A> IntoIterator for HashTable<T, A>where
A: Allocator,
impl<T, A> IntoIterator for HashTable<T, A>where
A: Allocator,
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 VecDeque<T, A>where
A: Allocator,
impl<T, A> IntoIterator for VecDeque<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 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 Vec<T, A>where
A: Allocator,
impl<T, A> IntoIterator for Vec<T, A>where
A: Allocator,
1.0.0 · Source§impl<T, E> IntoIterator for Result<T, E>
impl<T, E> IntoIterator for Result<T, E>
Source§impl<T, N> IntoIterator for GenericArray<T, N>where
N: ArrayLength<T>,
impl<T, N> IntoIterator for GenericArray<T, N>where
N: ArrayLength<T>,
Source§impl<T, O> IntoIterator for BitBox<T, O>
impl<T, O> IntoIterator for BitBox<T, O>
Source§impl<T, O> IntoIterator for BitVec<T, O>
§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.
impl<T, O> IntoIterator for BitVec<T, O>
§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
Source§impl<T, S> IntoIterator for IndexSet<T, S>
impl<T, S> IntoIterator for IndexSet<T, S>
Source§impl<T, S> IntoIterator for PtrWeakHashSet<T, S>where
T: WeakElement,
impl<T, S> IntoIterator for PtrWeakHashSet<T, S>where
T: WeakElement,
Source§impl<T, S> IntoIterator for WeakHashSet<T, S>where
T: WeakKey,
impl<T, S> IntoIterator for WeakHashSet<T, S>where
T: WeakKey,
Source§impl<T, S, A> IntoIterator for hashbrown::set::HashSet<T, S, A>where
A: Allocator,
impl<T, S, A> IntoIterator for hashbrown::set::HashSet<T, S, A>where
A: Allocator,
1.0.0 · Source§impl<T, S, A> IntoIterator for tor_hsservice::internal_prelude::HashSet<T, S, A>where
A: Allocator,
impl<T, S, A> IntoIterator for tor_hsservice::internal_prelude::HashSet<T, S, A>where
A: Allocator,
Source§impl<T, U> IntoIterator for Chain<T, U>
impl<T, U> IntoIterator for Chain<T, U>
Source§impl<T, U> IntoIterator for hybrid_array::Array<T, U>where
U: ArraySize,
impl<T, U> IntoIterator for hybrid_array::Array<T, U>where
U: ArraySize,
Source§impl<T, const CAP: usize> IntoIterator for ArrayVec<T, CAP>
Iterate the ArrayVec with each element by value.
impl<T, const CAP: usize> IntoIterator for 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]) {
// ...
}