Rollup merge of #69500 - cuviper:par_for_each_in-item, r=Mark-Simulacrum
Simplify the signature of par_for_each_in Given `T: IntoIterator`/`IntoParallelIterator`, `T::Item` is unambiguous, so we don't need the explicit trait casting.
This commit is contained in:
commit
7824a9d47d
@ -203,11 +203,7 @@ pub fn par_iter<T: IntoIterator>(t: T) -> T::IntoIter {
|
||||
t.into_iter()
|
||||
}
|
||||
|
||||
pub fn par_for_each_in<T: IntoIterator>(
|
||||
t: T,
|
||||
for_each:
|
||||
impl Fn(<<T as IntoIterator>::IntoIter as Iterator>::Item) + Sync + Send
|
||||
) {
|
||||
pub fn par_for_each_in<T: IntoIterator>(t: T, for_each: impl Fn(T::Item) + Sync + Send) {
|
||||
// We catch panics here ensuring that all the loop iterations execute.
|
||||
// This makes behavior consistent with the parallel compiler.
|
||||
let mut panic = None;
|
||||
@ -397,9 +393,7 @@ pub fn par_iter<T: IntoParallelIterator>(t: T) -> T::Iter {
|
||||
|
||||
pub fn par_for_each_in<T: IntoParallelIterator>(
|
||||
t: T,
|
||||
for_each: impl Fn(
|
||||
<<T as IntoParallelIterator>::Iter as ParallelIterator>::Item
|
||||
) + Sync + Send
|
||||
for_each: impl Fn(T::Item) + Sync + Send,
|
||||
) {
|
||||
t.into_par_iter().for_each(for_each)
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user