Struct rustc_mir::interpret::InitChunkIter [−][src]
Expand description
Yields InitChunks. See InitMask::range_as_init_chunks.
Fields
init_mask: &'a InitMaskis_init: boolWhether the next chunk we will return is initialized. If there are no more chunks, contains some arbitrary value.
start: SizeThe current byte index into init_mask.
end: SizeThe end byte index into init_mask.
Auto Trait Implementations
impl<'a> RefUnwindSafe for InitChunkIter<'a>
impl<'a> Send for InitChunkIter<'a>
impl<'a> Sync for InitChunkIter<'a>
impl<'a> Unpin for InitChunkIter<'a>
impl<'a> UnwindSafe for InitChunkIter<'a>
Blanket Implementations
Mutably borrows from an owned value. Read more
fn interleave<J>(
self,
other: J
) -> Interleave<Self, <J as IntoIterator>::IntoIter> where
J: IntoIterator<Item = Self::Item>,
fn interleave<J>(
self,
other: J
) -> Interleave<Self, <J as IntoIterator>::IntoIter> where
J: IntoIterator<Item = Self::Item>,
Alternate elements from two iterators until both have run out. Read more
fn interleave_shortest<J>(
self,
other: J
) -> InterleaveShortest<Self, <J as IntoIterator>::IntoIter> where
J: IntoIterator<Item = Self::Item>,
fn interleave_shortest<J>(
self,
other: J
) -> InterleaveShortest<Self, <J as IntoIterator>::IntoIter> where
J: IntoIterator<Item = Self::Item>,
Alternate elements from two iterators until at least one of them has run out. Read more
An iterator adaptor to insert a particular value between each element of the adapted iterator. Read more
fn zip_longest<J>(
self,
other: J
) -> ZipLongest<Self, <J as IntoIterator>::IntoIter> where
J: IntoIterator,
fn zip_longest<J>(
self,
other: J
) -> ZipLongest<Self, <J as IntoIterator>::IntoIter> where
J: IntoIterator,
Create an iterator which iterates over both this and the specified iterator simultaneously, yielding pairs of two optional elements. Read more
fn zip_eq<J>(self, other: J) -> ZipEq<Self, <J as IntoIterator>::IntoIter> where
J: IntoIterator,
fn zip_eq<J>(self, other: J) -> ZipEq<Self, <J as IntoIterator>::IntoIter> where
J: IntoIterator,
Create an iterator which iterates over both this and the specified iterator simultaneously, yielding pairs of elements. Read more
A “meta iterator adaptor”. Its closure receives a reference to the iterator and may pick off as many elements as it likes, to produce the next iterator element. Read more
Return an iterable that can group iterator elements. Consecutive elements that map to the same key (“runs”), are assigned to the same group. Read more
Return an iterable that can chunk the iterator. Read more
fn tuple_windows<T>(self) -> TupleWindows<Self, T> where
Self: Iterator<Item = <T as TupleCollect>::Item>,
T: HomogeneousTuple,
<T as TupleCollect>::Item: Clone,
fn tuple_windows<T>(self) -> TupleWindows<Self, T> where
Self: Iterator<Item = <T as TupleCollect>::Item>,
T: HomogeneousTuple,
<T as TupleCollect>::Item: Clone,
Return an iterator over all contiguous windows producing tuples of a specific size (up to 4). Read more
fn tuples<T>(self) -> Tuples<Self, T> where
Self: Iterator<Item = <T as TupleCollect>::Item>,
T: HomogeneousTuple,
fn tuples<T>(self) -> Tuples<Self, T> where
Self: Iterator<Item = <T as TupleCollect>::Item>,
T: HomogeneousTuple,
Return an iterator that groups the items in tuples of a specific size (up to 4). Read more
Split into an iterator pair that both yield all elements from the original iterator. Read more
Use std .step_by() instead
Return an iterator adaptor that steps n elements in the base iterator
for each iteration. Read more
Convert each item of the iterator using the Into trait. Read more
fn map_results<F, T, U, E>(self, f: F) -> MapResults<Self, F> where
Self: Iterator<Item = Result<T, E>>,
F: FnMut(T) -> U,
fn map_results<F, T, U, E>(self, f: F) -> MapResults<Self, F> where
Self: Iterator<Item = Result<T, E>>,
F: FnMut(T) -> U,
Return an iterator adaptor that applies the provided closure
to every Result::Ok value. Result::Err values are
unchanged. Read more
fn merge<J>(
self,
other: J
) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeLte> where
J: IntoIterator<Item = Self::Item>,
Self::Item: PartialOrd<Self::Item>,
fn merge<J>(
self,
other: J
) -> MergeBy<Self, <J as IntoIterator>::IntoIter, MergeLte> where
J: IntoIterator<Item = Self::Item>,
Self::Item: PartialOrd<Self::Item>,
Return an iterator adaptor that merges the two base iterators in ascending order. If both base iterators are sorted (ascending), the result is sorted. Read more
Return an iterator adaptor that merges the two base iterators in order.
This is much like .merge() but allows for a custom ordering. Read more
fn merge_join_by<J, F>(
self,
other: J,
cmp_fn: F
) -> MergeJoinBy<Self, <J as IntoIterator>::IntoIter, F> where
F: FnMut(&Self::Item, &<J as IntoIterator>::Item) -> Ordering,
J: IntoIterator,
fn merge_join_by<J, F>(
self,
other: J,
cmp_fn: F
) -> MergeJoinBy<Self, <J as IntoIterator>::IntoIter, F> where
F: FnMut(&Self::Item, &<J as IntoIterator>::Item) -> Ordering,
J: IntoIterator,
Create an iterator that merges items from both this and the specified iterator in ascending order. Read more
fn kmerge(self) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, KMergeByLt> where
Self::Item: IntoIterator,
<Self::Item as IntoIterator>::Item: PartialOrd<<Self::Item as IntoIterator>::Item>,
fn kmerge(self) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, KMergeByLt> where
Self::Item: IntoIterator,
<Self::Item as IntoIterator>::Item: PartialOrd<<Self::Item as IntoIterator>::Item>,
Return an iterator adaptor that flattens an iterator of iterators by merging them in ascending order. Read more
fn kmerge_by<F>(
self,
first: F
) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, F> where
F: FnMut(&<Self::Item as IntoIterator>::Item, &<Self::Item as IntoIterator>::Item) -> bool,
Self::Item: IntoIterator,
fn kmerge_by<F>(
self,
first: F
) -> KMergeBy<<Self::Item as IntoIterator>::IntoIter, F> where
F: FnMut(&<Self::Item as IntoIterator>::Item, &<Self::Item as IntoIterator>::Item) -> bool,
Self::Item: IntoIterator,
Return an iterator adaptor that flattens an iterator of iterators by merging them according to the given closure. Read more
fn cartesian_product<J>(
self,
other: J
) -> Product<Self, <J as IntoIterator>::IntoIter> where
J: IntoIterator,
Self::Item: Clone,
<J as IntoIterator>::IntoIter: Clone,
fn cartesian_product<J>(
self,
other: J
) -> Product<Self, <J as IntoIterator>::IntoIter> where
J: IntoIterator,
Self::Item: Clone,
<J as IntoIterator>::IntoIter: Clone,
Return an iterator adaptor that iterates over the cartesian product of
the element sets of two iterators self and J. Read more
fn multi_cartesian_product(
self
) -> MultiProduct<<Self::Item as IntoIterator>::IntoIter> where
Self: Iterator,
Self::Item: IntoIterator,
<Self::Item as IntoIterator>::IntoIter: Clone,
<Self::Item as IntoIterator>::Item: Clone,
fn multi_cartesian_product(
self
) -> MultiProduct<<Self::Item as IntoIterator>::IntoIter> where
Self: Iterator,
Self::Item: IntoIterator,
<Self::Item as IntoIterator>::IntoIter: Clone,
<Self::Item as IntoIterator>::Item: Clone,
Return an iterator adaptor that iterates over the cartesian product of
all subiterators returned by meta-iterator self. Read more
Return an iterator adaptor that uses the passed-in closure to optionally merge together consecutive elements. Read more
Remove duplicates from sections of consecutive identical elements. If the iterator is sorted, all elements will be unique. Read more
Remove duplicates from sections of consecutive identical elements, determining equality using a comparison function. If the iterator is sorted, all elements will be unique. Read more
Return an iterator adaptor that filters out elements that have already been produced once during the iteration. Duplicates are detected using hash and equality. Read more
Return an iterator adaptor that filters out elements that have already been produced once during the iteration. Read more
fn peeking_take_while<F>(&mut self, accept: F) -> PeekingTakeWhile<'_, Self, F> where
Self: PeekingNext,
F: FnMut(&Self::Item) -> bool,
fn peeking_take_while<F>(&mut self, accept: F) -> PeekingTakeWhile<'_, Self, F> where
Self: PeekingNext,
F: FnMut(&Self::Item) -> bool,
Return an iterator adaptor that borrows from this iterator and
takes items while the closure accept returns true. Read more
fn take_while_ref<F>(&mut self, accept: F) -> TakeWhileRef<'_, Self, F> where
Self: Clone,
F: FnMut(&Self::Item) -> bool,
fn take_while_ref<F>(&mut self, accept: F) -> TakeWhileRef<'_, Self, F> where
Self: Clone,
F: FnMut(&Self::Item) -> bool,
Return an iterator adaptor that borrows from a Clone-able iterator
to only pick off elements while the predicate accept returns true. Read more
Return an iterator adaptor that filters Option<A> iterator elements
and produces A. Stops on the first None encountered. Read more
fn tuple_combinations<T>(self) -> TupleCombinations<Self, T> where
Self: Clone,
T: HasCombination<Self>,
Self::Item: Clone,
fn tuple_combinations<T>(self) -> TupleCombinations<Self, T> where
Self: Clone,
T: HasCombination<Self>,
Self::Item: Clone,
Return an iterator adaptor that iterates over the combinations of the elements from an iterator. Read more
Return an iterator adaptor that iterates over the k-length combinations of
the elements from an iterator. Read more
fn combinations_with_replacement(
self,
k: usize
) -> CombinationsWithReplacement<Self> where
Self::Item: Clone,
fn combinations_with_replacement(
self,
k: usize
) -> CombinationsWithReplacement<Self> where
Self::Item: Clone,
Return an iterator that iterates over the k-length combinations of
the elements from an iterator, with replacement. Read more
Return an iterator adaptor that iterates over all k-permutations of the elements from an iterator. Read more
Return an iterator adaptor that pads the sequence to a minimum length of
min by filling missing elements using a closure f. Read more
Return an iterator adaptor that wraps each element in a Position to
ease special-case handling of the first or last elements. Read more
Return an iterator adaptor that yields the indices of all elements satisfying a predicate, counted from the start of the iterator. Read more
Return an iterator adaptor that applies a mutating function to each element before yielding it. Read more
fn next_tuple<T>(&mut self) -> Option<T> where
Self: Iterator<Item = <T as TupleCollect>::Item>,
T: HomogeneousTuple,
fn next_tuple<T>(&mut self) -> Option<T> where
Self: Iterator<Item = <T as TupleCollect>::Item>,
T: HomogeneousTuple,
Advances the iterator and returns the next items grouped in a tuple of a specific size (up to 4). Read more
fn collect_tuple<T>(self) -> Option<T> where
Self: Iterator<Item = <T as TupleCollect>::Item>,
T: HomogeneousTuple,
fn collect_tuple<T>(self) -> Option<T> where
Self: Iterator<Item = <T as TupleCollect>::Item>,
T: HomogeneousTuple,
Collects all items from the iterator into a tuple of a specific size (up to 4). Read more
Find the position and value of the first element satisfying a predicate. Read more
Check whether all elements compare equal. Read more
Consume the first n elements from the iterator eagerly,
and return the same iterator again. Read more
Consume the last n elements from the iterator eagerly,
and return the same iterator again. Read more
Use .for_each() instead
Run the closure f eagerly on each element of the iterator. Read more
Combine all an iterator’s elements into one element by using Extend. Read more
.collect_vec() is simply a type specialization of .collect(),
for convenience. Read more
fn try_collect<T, U, E>(self) -> Result<U, E> where
Self: Iterator<Item = Result<T, E>>,
Result<U, E>: FromIterator<Result<T, E>>,
fn try_collect<T, U, E>(self) -> Result<U, E> where
Self: Iterator<Item = Result<T, E>>,
Result<U, E>: FromIterator<Result<T, E>>,
.try_collect() is more convenient way of writing
.collect::<Result<_, _>>() Read more
Assign to each reference in self from the from iterator,
stopping at the shortest of the two iterators. Read more
Combine all iterator elements into one String, separated by sep. Read more
Format all iterator elements, separated by sep. Read more
Format all iterator elements, separated by sep. Read more
Fold Result values from an iterator. Read more
Fold Option values from an iterator. Read more
Accumulator of the elements in the iterator. Read more
Accumulate the elements in the iterator in a tree-like manner. Read more
Use .try_fold() instead
An iterator method that applies a function, producing a single, final value. Read more
Iterate over the entire iterator and add all the elements. Read more
Iterate over the entire iterator and multiply all the elements. Read more
Sort all iterator elements into a new iterator in ascending order. Read more
Sort all iterator elements into a new iterator in ascending order. Read more
Sort all iterator elements into a new iterator in ascending order. Read more
Collect all iterator elements into one of two
partitions. Unlike Iterator::partition, each partition may
have a distinct type. Read more
Return a HashMap of keys mapped to Vecs of values. Keys and values
are taken from (Key, Value) tuple pairs yielded by the input iterator. Read more
Return the minimum and maximum elements in the iterator. Read more
fn minmax_by_key<K, F>(self, key: F) -> MinMaxResult<Self::Item> where
F: FnMut(&Self::Item) -> K,
K: PartialOrd<K>,
fn minmax_by_key<K, F>(self, key: F) -> MinMaxResult<Self::Item> where
F: FnMut(&Self::Item) -> K,
K: PartialOrd<K>,
Return the minimum and maximum element of an iterator, as determined by the specified function. Read more
Return the minimum and maximum element of an iterator, as determined by the specified comparison function. Read more
Return the position of the maximum element in the iterator. Read more
Return the position of the maximum element in the iterator, as determined by the specified function. Read more
Return the position of the maximum element in the iterator, as determined by the specified comparison function. Read more
Return the position of the minimum element in the iterator. Read more
Return the position of the minimum element in the iterator, as determined by the specified function. Read more
Return the position of the minimum element in the iterator, as determined by the specified comparison function. Read more
Return the positions of the minimum and maximum elements in the iterator. Read more
fn position_minmax_by_key<K, F>(self, key: F) -> MinMaxResult<usize> where
F: FnMut(&Self::Item) -> K,
K: PartialOrd<K>,
fn position_minmax_by_key<K, F>(self, key: F) -> MinMaxResult<usize> where
F: FnMut(&Self::Item) -> K,
K: PartialOrd<K>,
Return the postions of the minimum and maximum elements of an iterator, as determined by the specified function. Read more
fn position_minmax_by<F>(self, compare: F) -> MinMaxResult<usize> where
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
fn position_minmax_by<F>(self, compare: F) -> MinMaxResult<usize> where
F: FnMut(&Self::Item, &Self::Item) -> Ordering,
Return the postions of the minimum and maximum elements of an iterator, as determined by the specified comparison function. Read more
If the iterator yields exactly one element, that element will be returned, otherwise an error will be returned containing an iterator that has the same output as the input iterator. Read more
Layout
Note: Most layout information is completely unstable and may be different between compiler versions and platforms. The only exception is types with certain repr(...) attributes. Please see the Rust Reference’s “Type Layout” chapter for details on type layout guarantees.
Size: 32 bytes