3388 lines
1.6 MiB
3388 lines
1.6 MiB
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="`MultiZip` is an iterator that zips up a tuple of parallel iterators to produce tuples of their items."><title>MultiZip in rayon::iter - Rust</title><script>if(window.location.protocol!=="file:")document.head.insertAdjacentHTML("beforeend","SourceSerif4-Regular-6b053e98.ttf.woff2,FiraSans-Italic-81dc35de.woff2,FiraSans-Regular-0fe48ade.woff2,FiraSans-MediumItalic-ccf7e434.woff2,FiraSans-Medium-e1aa3f0a.woff2,SourceCodePro-Regular-8badfe75.ttf.woff2,SourceCodePro-Semibold-aa29a496.ttf.woff2".split(",").map(f=>`<link rel="preload" as="font" type="font/woff2"href="../../static.files/${f}">`).join(""))</script><link rel="stylesheet" href="../../static.files/normalize-9960930a.css"><link rel="stylesheet" href="../../static.files/rustdoc-ca0dd0c4.css"><meta name="rustdoc-vars" data-root-path="../../" data-static-root-path="../../static.files/" data-current-crate="rayon" data-themes="" data-resource-suffix="" data-rustdoc-version="1.93.1 (01f6ddf75 2026-02-11) (Arch Linux rust 1:1.93.1-1)" data-channel="1.93.1" data-search-js="search-9e2438ea.js" data-stringdex-js="stringdex-a3946164.js" data-settings-js="settings-c38705f0.js" ><script src="../../static.files/storage-e2aeef58.js"></script><script defer src="sidebar-items.js"></script><script defer src="../../static.files/main-a410ff4d.js"></script><noscript><link rel="stylesheet" href="../../static.files/noscript-263c88ec.css"></noscript><link rel="alternate icon" type="image/png" href="../../static.files/favicon-32x32-eab170b8.png"><link rel="icon" type="image/svg+xml" href="../../static.files/favicon-044be391.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><rustdoc-topbar><h2><a href="#">MultiZip</a></h2></rustdoc-topbar><nav class="sidebar"><div class="sidebar-crate"><h2><a href="../../rayon/index.html">rayon</a><span class="version">1.11.0</span></h2></div><div class="sidebar-elems"><section id="rustdoc-toc"><h2 class="location"><a href="#">Multi<wbr>Zip</a></h2><h3><a href="#">Sections</a></h3><ul class="block top-toc"><li><a href="#examples" title="Examples">Examples</a></li></ul><h3><a href="#trait-implementations">Trait Implementations</a></h3><ul class="block trait-implementation"><li><a href="#impl-Clone-for-MultiZip%3CT%3E" title="Clone">Clone</a></li><li><a href="#impl-Debug-for-MultiZip%3CT%3E" title="Debug">Debug</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K,+L)%3E" title="IndexedParallelIterator">IndexedParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,)%3E" title="ParallelIterator">ParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B)%3E" title="ParallelIterator">ParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C)%3E" title="ParallelIterator">ParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D)%3E" title="ParallelIterator">ParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E)%3E" title="ParallelIterator">ParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F)%3E" title="ParallelIterator">ParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G)%3E" title="ParallelIterator">ParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H)%3E" title="ParallelIterator">ParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I)%3E" title="ParallelIterator">ParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J)%3E" title="ParallelIterator">ParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K)%3E" title="ParallelIterator">ParallelIterator</a></li><li><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K,+L)%3E" title="ParallelIterator">ParallelIterator</a></li></ul><h3><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><ul class="block synthetic-implementation"><li><a href="#impl-Freeze-for-MultiZip%3CT%3E" title="Freeze">Freeze</a></li><li><a href="#impl-RefUnwindSafe-for-MultiZip%3CT%3E" title="RefUnwindSafe">RefUnwindSafe</a></li><li><a href="#impl-Send-for-MultiZip%3CT%3E" title="Send">Send</a></li><li><a href="#impl-Sync-for-MultiZip%3CT%3E" title="Sync">Sync</a></li><li><a href="#impl-Unpin-for-MultiZip%3CT%3E" title="Unpin">Unpin</a></li><li><a href="#impl-UnwindSafe-for-MultiZip%3CT%3E" title="UnwindSafe">UnwindSafe</a></li></ul><h3><a href="#blanket-implementations">Blanket Implementations</a></h3><ul class="block blanket-implementation"><li><a href="#impl-Any-for-T" title="Any">Any</a></li><li><a href="#impl-Borrow%3CT%3E-for-T" title="Borrow<T>">Borrow<T></a></li><li><a href="#impl-BorrowMut%3CT%3E-for-T" title="BorrowMut<T>">BorrowMut<T></a></li><li><a href="#impl-CloneToUninit-for-T" title="CloneToUninit">CloneToUninit</a></li><li><a href="#impl-From%3CT%3E-for-T" title="From<T>">From<T></a></li><li><a href="#impl-Into%3CU%3E-for-T" title="Into<U>">Into<U></a></li><li><a href="#impl-IntoEither-for-T" title="IntoEither">IntoEither</a></li><li><a href="#impl-IntoParallelIterator-for-T" title="IntoParallelIterator">IntoParallelIterator</a></li><li><a href="#impl-Pointable-for-T" title="Pointable">Pointable</a></li><li><a href="#impl-ToOwned-for-T" title="ToOwned">ToOwned</a></li><li><a href="#impl-TryFrom%3CU%3E-for-T" title="TryFrom<U>">TryFrom<U></a></li><li><a href="#impl-TryInto%3CU%3E-for-T" title="TryInto<U>">TryInto<U></a></li></ul></section><div id="rustdoc-modnav"><h2><a href="index.html">In rayon::<wbr>iter</a></h2></div></div></nav><div class="sidebar-resizer" title="Drag to resize sidebar"></div><main><div class="width-limiter"><section id="main-content" class="content"><div class="main-heading"><div class="rustdoc-breadcrumbs"><a href="../index.html">rayon</a>::<wbr><a href="index.html">iter</a></div><h1>Struct <span class="struct">Multi<wbr>Zip</span> <button id="copy-path" title="Copy item path to clipboard">Copy item path</button></h1><rustdoc-toolbar></rustdoc-toolbar><span class="sub-heading"><a class="src" href="../../src/rayon/iter/multizip.rs.html#79-81">Source</a> </span></div><pre class="rust item-decl"><code>pub struct MultiZip<T> { <span class="comment">/* private fields */</span> }</code></pre><details class="toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p><code>MultiZip</code> is an iterator that zips up a tuple of parallel iterators to
|
||
produce tuples of their items.</p>
|
||
<p>It is created by calling <code>into_par_iter()</code> on a tuple of types that
|
||
implement <code>IntoParallelIterator</code>, or <code>par_iter()</code>/<code>par_iter_mut()</code> with
|
||
types that are iterable by reference.</p>
|
||
<p>The implementation currently support tuples up to length 12.</p>
|
||
<h2 id="examples"><a class="doc-anchor" href="#examples">§</a>Examples</h2>
|
||
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>rayon::prelude::<span class="kw-2">*</span>;
|
||
|
||
<span class="comment">// This will iterate `r` by mutable reference, like `par_iter_mut()`, while
|
||
// ranges are all iterated by value like `into_par_iter()`.
|
||
// Note that the zipped iterator is only as long as the shortest input.
|
||
</span><span class="kw">let </span><span class="kw-2">mut </span>r = <span class="macro">vec!</span>[<span class="number">0</span>; <span class="number">3</span>];
|
||
(<span class="kw-2">&mut </span>r, <span class="number">1</span>..<span class="number">10</span>, <span class="number">10</span>..<span class="number">100</span>, <span class="number">100</span>..<span class="number">1000</span>).into_par_iter()
|
||
.for_each(|(r, x, y, z)| <span class="kw-2">*</span>r = x * y + z);
|
||
|
||
<span class="macro">assert_eq!</span>(<span class="kw-2">&</span>r, <span class="kw-2">&</span>[<span class="number">1 </span>* <span class="number">10 </span>+ <span class="number">100</span>, <span class="number">2 </span>* <span class="number">11 </span>+ <span class="number">101</span>, <span class="number">3 </span>* <span class="number">12 </span>+ <span class="number">102</span>]);</code></pre></div>
|
||
<p>For a group that should all be iterated by reference, you can use a tuple reference.</p>
|
||
|
||
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>rayon::prelude::<span class="kw-2">*</span>;
|
||
|
||
<span class="kw">let </span>xs: Vec<<span class="kw">_</span>> = (<span class="number">1</span>..<span class="number">10</span>).collect();
|
||
<span class="kw">let </span>ys: Vec<<span class="kw">_</span>> = (<span class="number">10</span>..<span class="number">100</span>).collect();
|
||
<span class="kw">let </span>zs: Vec<<span class="kw">_</span>> = (<span class="number">100</span>..<span class="number">1000</span>).collect();
|
||
|
||
<span class="comment">// Reference each input separately with `IntoParallelIterator`:
|
||
</span><span class="kw">let </span>r1: Vec<<span class="kw">_</span>> = (<span class="kw-2">&</span>xs, <span class="kw-2">&</span>ys, <span class="kw-2">&</span>zs).into_par_iter()
|
||
.map(|(x, y, z)| x * y + z)
|
||
.collect();
|
||
|
||
<span class="comment">// Reference them all together with `IntoParallelRefIterator`:
|
||
</span><span class="kw">let </span>r2: Vec<<span class="kw">_</span>> = (xs, ys, zs).par_iter()
|
||
.map(|(x, y, z)| x * y + z)
|
||
.collect();
|
||
|
||
<span class="macro">assert_eq!</span>(r1, r2);</code></pre></div>
|
||
<p>Mutable references to a tuple will work similarly.</p>
|
||
|
||
<div class="example-wrap"><pre class="rust rust-example-rendered"><code><span class="kw">use </span>rayon::prelude::<span class="kw-2">*</span>;
|
||
|
||
<span class="kw">let </span><span class="kw-2">mut </span>xs: Vec<<span class="kw">_</span>> = (<span class="number">1</span>..<span class="number">4</span>).collect();
|
||
<span class="kw">let </span><span class="kw-2">mut </span>ys: Vec<<span class="kw">_</span>> = (-<span class="number">4</span>..-<span class="number">1</span>).collect();
|
||
<span class="kw">let </span><span class="kw-2">mut </span>zs = <span class="macro">vec!</span>[<span class="number">0</span>; <span class="number">3</span>];
|
||
|
||
<span class="comment">// Mutably reference each input separately with `IntoParallelIterator`:
|
||
</span>(<span class="kw-2">&mut </span>xs, <span class="kw-2">&mut </span>ys, <span class="kw-2">&mut </span>zs).into_par_iter().for_each(|(x, y, z)| {
|
||
<span class="kw-2">*</span>z += <span class="kw-2">*</span>x + <span class="kw-2">*</span>y;
|
||
std::mem::swap(x, y);
|
||
});
|
||
|
||
<span class="macro">assert_eq!</span>(xs, (<span class="macro">vec!</span>[-<span class="number">4</span>, -<span class="number">3</span>, -<span class="number">2</span>]));
|
||
<span class="macro">assert_eq!</span>(ys, (<span class="macro">vec!</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>]));
|
||
<span class="macro">assert_eq!</span>(zs, (<span class="macro">vec!</span>[-<span class="number">3</span>, -<span class="number">1</span>, <span class="number">1</span>]));
|
||
|
||
<span class="comment">// Mutably reference them all together with `IntoParallelRefMutIterator`:
|
||
</span><span class="kw">let </span><span class="kw-2">mut </span>tuple = (xs, ys, zs);
|
||
tuple.par_iter_mut().for_each(|(x, y, z)| {
|
||
<span class="kw-2">*</span>z += <span class="kw-2">*</span>x + <span class="kw-2">*</span>y;
|
||
std::mem::swap(x, y);
|
||
});
|
||
|
||
<span class="macro">assert_eq!</span>(tuple, (<span class="macro">vec!</span>[<span class="number">1</span>, <span class="number">2</span>, <span class="number">3</span>], <span class="macro">vec!</span>[-<span class="number">4</span>, -<span class="number">3</span>, -<span class="number">2</span>], <span class="macro">vec!</span>[-<span class="number">6</span>, -<span class="number">2</span>, <span class="number">2</span>]));</code></pre></div></div></details><h2 id="trait-implementations" class="section-header">Trait Implementations<a href="#trait-implementations" class="anchor">§</a></h2><div id="trait-implementations-list"><details class="toggle implementors-toggle" open><summary><section id="impl-Clone-for-MultiZip%3CT%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#78">Source</a><a href="#impl-Clone-for-MultiZip%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><T></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#78">Source</a><a href="#method.clone" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html#tymethod.clone" class="fn">clone</a>(&self) -> <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><T></h4></section></summary><div class='docblock'>Returns a duplicate of the value. <a href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html#tymethod.clone">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_from" class="method trait-impl"><span class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span> · <a class="src" href="https://doc.rust-lang.org/1.93.1/src/core/clone.rs.html#245-247">Source</a></span><a href="#method.clone_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html#method.clone_from" class="fn">clone_from</a>(&mut self, source: &Self)</h4></section></summary><div class='docblock'>Performs copy-assignment from <code>source</code>. <a href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html#method.clone_from">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-Debug-for-MultiZip%3CT%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#78">Source</a><a href="#impl-Debug-for-MultiZip%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a>> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><T></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.fmt" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#78">Source</a><a href="#method.fmt" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/fmt/trait.Debug.html#tymethod.fmt" class="fn">fmt</a>(&self, f: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a><'_>) -> <a class="type" href="https://doc.rust-lang.org/1.93.1/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></section></summary><div class='docblock'>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.93.1/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,)%3E" class="anchor">§</a><h3 class="code-header">impl<A> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A,)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,+B)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G, H> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G, H)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
H: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G, H, I> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G, H, I)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
H: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
I: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G, H, I, J> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G, H, I, J)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
H: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
I: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
J: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G, H, I, J, K> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G, H, I, J, K)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
H: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
I: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
J: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
K: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K,+L)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-IndexedParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K,+L)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G, H, I, J, K, L> <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G, H, I, J, K, L)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
H: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
I: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
J: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
K: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
L: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.drive-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.drive" class="fn">drive</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.Consumer.html" title="trait rayon::iter::plumbing::Consumer">Consumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.drive">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.len-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.len-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.len" class="fn">len</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Produces an exact count of how many items this iterator will
|
||
produce, presuming no panic occurs. <a href="trait.IndexedParallelIterator.html#tymethod.len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_producer-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.with_producer-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#tymethod.with_producer" class="fn">with_producer</a><CB>(self, callback: CB) -> CB::<a class="associatedtype" href="plumbing/trait.ProducerCallback.html#associatedtype.Output" title="type rayon::iter::plumbing::ProducerCallback::Output">Output</a><div class="where">where
|
||
CB: <a class="trait" href="plumbing/trait.ProducerCallback.html" title="trait rayon::iter::plumbing::ProducerCallback">ProducerCallback</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.IndexedParallelIterator.html#tymethod.with_producer">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_exponential_blocks-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2473-2475">Source</a><a href="#method.by_exponential_blocks-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks" class="fn">by_exponential_blocks</a>(self) -> <a class="struct" href="struct.ExponentialBlocks.html" title="struct rayon::iter::ExponentialBlocks">ExponentialBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of exponentially-increasing size. <a href="trait.IndexedParallelIterator.html#method.by_exponential_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.by_uniform_blocks-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2499-2502">Source</a><a href="#method.by_uniform_blocks-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks" class="fn">by_uniform_blocks</a>(self, block_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.UniformBlocks.html" title="struct rayon::iter::UniformBlocks">UniformBlocks</a><Self></h4></section></summary><div class='docblock'>Divides an iterator into sequential blocks of the given size. <a href="trait.IndexedParallelIterator.html#method.by_uniform_blocks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_into_vec-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2522-2524">Source</a><a href="#method.collect_into_vec-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.collect_into_vec" class="fn">collect_into_vec</a>(self, target: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>)</h4></section></summary><div class='docblock'>Collects the results of the iterator into the specified
|
||
vector. The vector is always cleared before execution
|
||
begins. If possible, reusing the vector across calls can lead
|
||
to better performance since it reuses the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.collect_into_vec">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip_into_vecs-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2547-2554">Source</a><a href="#method.unzip_into_vecs-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs" class="fn">unzip_into_vecs</a><A, B>(self, left: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><A>, right: &mut <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><B>)<div class="where">where
|
||
Self: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the results of the iterator into the specified
|
||
vectors. The vectors are always cleared before execution
|
||
begins. If possible, reusing the vectors across calls can lead
|
||
to better performance since they reuse the same backing buffer. <a href="trait.IndexedParallelIterator.html#method.unzip_into_vecs">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2574-2579">Source</a><a href="#method.zip-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip" class="fn">zip</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.Zip.html" title="struct rayon::iter::Zip">Zip</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Iterates over tuples <code>(A, B)</code>, where the items <code>A</code> are from
|
||
this iterator and <code>B</code> are from the iterator given as argument.
|
||
Like the <code>zip</code> method on ordinary iterators, if the two
|
||
iterators are of unequal length, you only get the items they
|
||
have in common. <a href="trait.IndexedParallelIterator.html#method.zip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.zip_eq-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2601-2612">Source</a><a href="#method.zip_eq-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.zip_eq" class="fn">zip_eq</a><Z>(self, zip_op: Z) -> <a class="struct" href="struct.ZipEq.html" title="struct rayon::iter::ZipEq">ZipEq</a><Self, Z::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
Z: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>The same as <code>Zip</code>, but requires that both iterators have the same length. <a href="trait.IndexedParallelIterator.html#method.zip_eq">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2628-2633">Source</a><a href="#method.interleave-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave" class="fn">interleave</a><I>(self, other: I) -> <a class="struct" href="struct.Interleave.html" title="struct rayon::iter::Interleave">Interleave</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator. Alternately yields elements from this iterator and
|
||
the given iterator, until both are exhausted. If one iterator
|
||
is exhausted before the other, the last elements are provided
|
||
from the other. <a href="trait.IndexedParallelIterator.html#method.interleave">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.interleave_shortest-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2646-2651">Source</a><a href="#method.interleave_shortest-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.interleave_shortest" class="fn">interleave_shortest</a><I>(self, other: I) -> <a class="struct" href="struct.InterleaveShortest.html" title="struct rayon::iter::InterleaveShortest">InterleaveShortest</a><Self, I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,</div></h4></section></summary><div class='docblock'>Interleaves elements of this iterator and the other given
|
||
iterator, until one is exhausted. <a href="trait.IndexedParallelIterator.html#method.interleave_shortest">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chunks-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2676-2679">Source</a><a href="#method.chunks-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.chunks" class="fn">chunks</a>(self, chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Chunks.html" title="struct rayon::iter::Chunks">Chunks</a><Self></h4></section></summary><div class='docblock'>Splits an iterator up into fixed-size chunks. <a href="trait.IndexedParallelIterator.html#method.chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2712-2725">Source</a><a href="#method.fold_chunks-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks" class="fn">fold_chunks</a><T, ID, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunks.html" title="struct rayon::iter::FoldChunks">FoldChunks</a><Self, ID, F><div class="where">where
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_chunks_with-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2750-2762">Source</a><a href="#method.fold_chunks_with-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with" class="fn">fold_chunks_with</a><T, F>(
|
||
self,
|
||
chunk_size: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>,
|
||
init: T,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.FoldChunksWith.html" title="struct rayon::iter::FoldChunksWith">FoldChunksWith</a><Self, T, F><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h4></section></summary><div class='docblock'>Splits an iterator into fixed-size chunks, performing a sequential <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.fold" title="trait core::iter::traits::iterator::Iterator"><code>fold()</code></a> on
|
||
each chunk. <a href="trait.IndexedParallelIterator.html#method.fold_chunks_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cmp-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2778-2799">Source</a><a href="#method.cmp-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.cmp" class="fn">cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partial_cmp-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2816-2837">Source</a><a href="#method.partial_cmp-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.partial_cmp" class="fn">partial_cmp</a><I>(self, other: I) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Lexicographically compares the elements of this <code>ParallelIterator</code> with those of
|
||
another. <a href="trait.IndexedParallelIterator.html#method.partial_cmp">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.eq-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2841-2853">Source</a><a href="#method.eq-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.eq" class="fn">eq</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are equal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.ne-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2857-2863">Source</a><a href="#method.ne-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ne" class="fn">ne</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialEq.html" title="trait core::cmp::PartialEq">PartialEq</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are unequal to those of another</div></details><details class="toggle method-toggle" open><summary><section id="method.lt-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2867-2873">Source</a><a href="#method.lt-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.lt" class="fn">lt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically less than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.le-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2877-2884">Source</a><a href="#method.le-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.le" class="fn">le</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are less than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.gt-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2888-2894">Source</a><a href="#method.gt-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.gt" class="fn">gt</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are lexicographically greater than those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.ge-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2898-2905">Source</a><a href="#method.ge-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.ge" class="fn">ge</a><I>(self, other: I) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
I: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Iter: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>>,
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.PartialOrd.html" title="trait core::cmp::PartialOrd">PartialOrd</a><I::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Item" title="type rayon::iter::IntoParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Determines if the elements of this <code>ParallelIterator</code>
|
||
are greater than or equal to those of another.</div></details><details class="toggle method-toggle" open><summary><section id="method.enumerate-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2922-2924">Source</a><a href="#method.enumerate-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.enumerate" class="fn">enumerate</a>(self) -> <a class="struct" href="struct.Enumerate.html" title="struct rayon::iter::Enumerate">Enumerate</a><Self></h4></section></summary><div class='docblock'>Yields an index along with each item. <a href="trait.IndexedParallelIterator.html#method.enumerate">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.step_by-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2941-2943">Source</a><a href="#method.step_by-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.step_by" class="fn">step_by</a>(self, step: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.StepBy.html" title="struct rayon::iter::StepBy">StepBy</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that steps by the given amount <a href="trait.IndexedParallelIterator.html#method.step_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2959-2961">Source</a><a href="#method.skip-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.skip" class="fn">skip</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Skip.html" title="struct rayon::iter::Skip">Skip</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.skip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2977-2979">Source</a><a href="#method.take-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.take" class="fn">take</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.Take.html" title="struct rayon::iter::Take">Take</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields the first <code>n</code> elements. <a href="trait.IndexedParallelIterator.html#method.take">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_any-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2999-3010">Source</a><a href="#method.position_any-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_any" class="fn">position_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and returns its index. Like
|
||
<code>ParallelIterator::find_any</code>, the parallel search will not
|
||
necessarily find the <strong>first</strong> match, and once a match is
|
||
found we’ll attempt to stop processing any more. <a href="trait.IndexedParallelIterator.html#method.position_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_first-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3036-3047">Source</a><a href="#method.position_first-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_first" class="fn">position_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.position_last-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3073-3084">Source</a><a href="#method.position_last-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.position_last" class="fn">position_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate, and returns its index. <a href="trait.IndexedParallelIterator.html#method.position_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.positions-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3116-3121">Source</a><a href="#method.positions-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.positions" class="fn">positions</a><P>(self, predicate: P) -> <a class="struct" href="struct.Positions.html" title="struct rayon::iter::Positions">Positions</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for items in the parallel iterator that match the given
|
||
predicate, and returns their indices. <a href="trait.IndexedParallelIterator.html#method.positions">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.rev-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3138-3140">Source</a><a href="#method.rev-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.rev" class="fn">rev</a>(self) -> <a class="struct" href="struct.Rev.html" title="struct rayon::iter::Rev">Rev</a><Self></h4></section></summary><div class='docblock'>Produces a new iterator with the elements of this iterator in
|
||
reverse order. <a href="trait.IndexedParallelIterator.html#method.rev">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_min_len-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3164-3166">Source</a><a href="#method.with_min_len-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_min_len" class="fn">with_min_len</a>(self, min: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MinLen.html" title="struct rayon::iter::MinLen">MinLen</a><Self></h4></section></summary><div class='docblock'>Sets the minimum length of iterators desired to process in each
|
||
rayon job. Rayon will not split any smaller than this length, but
|
||
of course an iterator could already be smaller to begin with. <a href="trait.IndexedParallelIterator.html#method.with_min_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.with_max_len-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#3192-3194">Source</a><a href="#method.with_max_len-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IndexedParallelIterator.html#method.with_max_len" class="fn">with_max_len</a>(self, max: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.MaxLen.html" title="struct rayon::iter::MaxLen">MaxLen</a><Self></h4></section></summary><div class='docblock'>Sets the maximum length of iterators desired to process in each
|
||
rayon job. Rayon will try to split at least below this length,
|
||
unless that would put it below the length from <code>with_min_len()</code>.
|
||
For example, given min=10 and max=15, a length of 16 will not be
|
||
split any further. <a href="trait.IndexedParallelIterator.html#method.with_max_len">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,)%3E" class="anchor">§</a><h3 class="code-header">impl<A> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A,)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>,)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,+B)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-1" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item-1" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <B as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list-1" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list-1" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,+B,+C)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-2" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item-2" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <B as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <C as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list-2" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list-2" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-3" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item-3" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <B as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <C as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <D as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list-3" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list-3" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-4" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item-4" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <B as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <C as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <D as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <E as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list-4" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list-4" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-5" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item-5" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <B as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <C as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <D as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <E as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <F as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list-5" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list-5" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-6" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item-6" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <B as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <C as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <D as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <E as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <F as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <G as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list-6" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list-6" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G, H> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G, H)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
H: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-7" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item-7" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <B as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <C as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <D as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <E as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <F as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <G as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <H as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list-7" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list-7" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G, H, I> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G, H, I)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
H: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
I: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-8" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item-8" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <B as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <C as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <D as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <E as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <F as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <G as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <H as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <I as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list-8" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list-8" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G, H, I, J> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G, H, I, J)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
H: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
I: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
J: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-9" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item-9" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <B as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <C as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <D as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <E as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <F as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <G as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <H as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <I as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <J as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list-9" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list-9" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G, H, I, J, K> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G, H, I, J, K)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
H: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
I: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
J: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
K: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-10" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item-10" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <B as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <C as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <D as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <E as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <F as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <G as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <H as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <I as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <J as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <K as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list-10" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list-10" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details><details class="toggle implementors-toggle" open><summary><section id="impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K,+L)%3E" class="impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#impl-ParallelIterator-for-MultiZip%3C(A,+B,+C,+D,+E,+F,+G,+H,+I,+J,+K,+L)%3E" class="anchor">§</a><h3 class="code-header">impl<A, B, C, D, E, F, G, H, I, J, K, L> <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B, C, D, E, F, G, H, I, J, K, L)</a>><div class="where">where
|
||
A: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
B: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
C: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
D: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
E: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
F: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
G: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
H: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
I: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
J: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
K: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,
|
||
L: <a class="trait" href="trait.IndexedParallelIterator.html" title="trait rayon::iter::IndexedParallelIterator">IndexedParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Item-11" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#associatedtype.Item-11" class="anchor">§</a><h4 class="code-header">type <a href="trait.ParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = (<A as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <B as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <C as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <D as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <E as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <F as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <G as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <H as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <I as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <J as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <K as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, <L as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>)</h4></section></summary><div class='docblock'>The type of item that this parallel iterator produces.
|
||
For example, if you use the <a href="#method.for_each"><code>for_each</code></a> method, this is the type of
|
||
item that your closure will be invoked with.</div></details><details class="toggle method-toggle" open><summary><section id="method.drive_unindexed-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.drive_unindexed-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#tymethod.drive_unindexed" class="fn">drive_unindexed</a><CONSUMER>(self, consumer: CONSUMER) -> CONSUMER::<a class="associatedtype" href="plumbing/trait.Consumer.html#associatedtype.Result" title="type rayon::iter::plumbing::Consumer::Result">Result</a><div class="where">where
|
||
CONSUMER: <a class="trait" href="plumbing/trait.UnindexedConsumer.html" title="trait rayon::iter::plumbing::UnindexedConsumer">UnindexedConsumer</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#tymethod.drive_unindexed">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.opt_len-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/multizip.rs.html#232-335">Source</a><a href="#method.opt_len-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.opt_len" class="fn">opt_len</a>(&self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>></h4></section></summary><div class='docblock'>Internal method used to define the behavior of this parallel
|
||
iterator. You should not need to call this directly. <a href="trait.ParallelIterator.html#method.opt_len">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#373-378">Source</a><a href="#method.for_each-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each" class="fn">for_each</a><OP>(self, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_with-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#403-409">Source</a><a href="#method.for_each_with-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_with" class="fn">for_each_with</a><OP, T>(self, init: T, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on the given <code>init</code> value with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.for_each_init-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#437-443">Source</a><a href="#method.for_each_init-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.for_each_init" class="fn">for_each_init</a><OP, INIT, T>(self, init: INIT, op: OP)<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes <code>OP</code> on a value returned by <code>init</code> with each item produced by
|
||
the iterator, in parallel. <a href="trait.ParallelIterator.html#method.for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#465-475">Source</a><a href="#method.try_for_each-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each" class="fn">try_for_each</a><OP, R>(self, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on each item produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_with-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#504-515">Source</a><a href="#method.try_for_each_with-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_with" class="fn">try_for_each_with</a><OP, T, R>(self, init: T, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on the given <code>init</code> value with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_for_each_init-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#546-557">Source</a><a href="#method.try_for_each_init-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_for_each_init" class="fn">try_for_each_init</a><OP, INIT, T, R>(self, init: INIT, op: OP) -> R<div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.unit.html">()</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Executes a fallible <code>OP</code> on a value returned by <code>init</code> with each item
|
||
produced by the iterator, in parallel. <a href="trait.ParallelIterator.html#method.try_for_each_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.count-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#570-576">Source</a><a href="#method.count-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.count" class="fn">count</a>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Counts the number of items in this parallel iterator. <a href="trait.ParallelIterator.html#method.count">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#592-598">Source</a><a href="#method.map-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map" class="fn">map</a><F, R>(self, map_op: F) -> <a class="struct" href="struct.Map.html" title="struct rayon::iter::Map">Map</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator, producing a new
|
||
iterator with the results. <a href="trait.ParallelIterator.html#method.map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_with-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#629-636">Source</a><a href="#method.map_with-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_with" class="fn">map_with</a><F, T, R>(self, init: T, map_op: F) -> <a class="struct" href="struct.MapWith.html" title="struct rayon::iter::MapWith">MapWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.map_init-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#666-673">Source</a><a href="#method.map_init-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.map_init" class="fn">map_init</a><F, INIT, T, R>(
|
||
self,
|
||
init: INIT,
|
||
map_op: F,
|
||
) -> <a class="struct" href="struct.MapInit.html" title="struct rayon::iter::MapInit">MapInit</a><Self, INIT, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(<a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
INIT: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to a value returned by <code>init</code> with each item of this
|
||
iterator, producing a new iterator with the results. <a href="trait.ParallelIterator.html#method.map_init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.cloned-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#696-702">Source</a><a href="#method.cloned-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.cloned" class="fn">cloned</a><'a, T>(self) -> <a class="struct" href="struct.Cloned.html" title="struct rayon::iter::Cloned">Cloned</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which clones all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Clone</code>. See also <a href="#method.copied"><code>copied()</code></a>. <a href="trait.ParallelIterator.html#method.cloned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.copied-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#725-731">Source</a><a href="#method.copied-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.copied" class="fn">copied</a><'a, T>(self) -> <a class="struct" href="struct.Copied.html" title="struct rayon::iter::Copied">Copied</a><Self><div class="where">where
|
||
T: 'a + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Copy.html" title="trait core::marker::Copy">Copy</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a>>,</div></h4></section></summary><div class='docblock'>Creates an iterator which copies all of its elements. This may be
|
||
useful when you have an iterator over <code>&T</code>, but you need <code>T</code>, and
|
||
that type implements <code>Copy</code>. See also <a href="#method.cloned"><code>cloned()</code></a>. <a href="trait.ParallelIterator.html#method.copied">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.inspect-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#762-767">Source</a><a href="#method.inspect-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.inspect" class="fn">inspect</a><OP>(self, inspect_op: OP) -> <a class="struct" href="struct.Inspect.html" title="struct rayon::iter::Inspect">Inspect</a><Self, OP><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>inspect_op</code> to a reference to each item of this iterator,
|
||
producing a new iterator passing through the original items. This is
|
||
often useful for debugging to see what’s happening in iterator stages. <a href="trait.ParallelIterator.html#method.inspect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.update-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#782-787">Source</a><a href="#method.update-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.update" class="fn">update</a><F>(self, update_op: F) -> <a class="struct" href="struct.Update.html" title="struct rayon::iter::Update">Update</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&mut Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Mutates each item of this iterator before yielding it. <a href="trait.ParallelIterator.html#method.update">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#803-808">Source</a><a href="#method.filter-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter" class="fn">filter</a><P>(self, filter_op: P) -> <a class="struct" href="struct.Filter.html" title="struct rayon::iter::Filter">Filter</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator, producing a new
|
||
iterator with only the items that gave <code>true</code> results. <a href="trait.ParallelIterator.html#method.filter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.filter_map-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#828-834">Source</a><a href="#method.filter_map-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.filter_map" class="fn">filter_map</a><P, R>(self, filter_op: P) -> <a class="struct" href="struct.FilterMap.html" title="struct rayon::iter::FilterMap">FilterMap</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies <code>filter_op</code> to each item of this iterator to get an <code>Option</code>,
|
||
producing a new iterator with only the items from <code>Some</code> results. <a href="trait.ParallelIterator.html#method.filter_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#854-860">Source</a><a href="#method.flat_map-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map" class="fn">flat_map</a><F, PI>(self, map_op: F) -> <a class="struct" href="struct.FlatMap.html" title="struct rayon::iter::FlatMap">FlatMap</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> PI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
PI: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested parallel iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flat_map_iter-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#900-906">Source</a><a href="#method.flat_map_iter-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flat_map_iter" class="fn">flat_map_iter</a><F, SI>(self, map_op: F) -> <a class="struct" href="struct.FlatMapIter.html" title="struct rayon::iter::FlatMapIter">FlatMapIter</a><Self, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> SI + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
SI: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>Applies <code>map_op</code> to each item of this iterator to get nested serial iterators,
|
||
producing a new parallel iterator that flattens these back into one. <a href="trait.ParallelIterator.html#method.flat_map_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#922-927">Source</a><a href="#method.flatten-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten" class="fn">flatten</a>(self) -> <a class="struct" href="struct.Flatten.html" title="struct rayon::iter::Flatten">Flatten</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens parallel-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.flatten_iter-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#945-950">Source</a><a href="#method.flatten_iter-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.flatten_iter" class="fn">flatten_iter</a>(self) -> <a class="struct" href="struct.FlattenIter.html" title="struct rayon::iter::FlattenIter">FlattenIter</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/collect/trait.IntoIterator.html" title="trait core::iter::traits::collect::IntoIterator">IntoIterator</a><Item: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>>,</div></h4></section></summary><div class='docblock'>An adaptor that flattens serial-iterable <code>Item</code>s into one large iterator. <a href="trait.ParallelIterator.html#method.flatten_iter">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#982-988">Source</a><a href="#method.reduce-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce" class="fn">reduce</a><OP, ID>(self, identity: ID, op: OP) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
The argument <code>identity</code> should be a closure that can produce
|
||
“identity” value which may be inserted into the sequence as
|
||
needed to create opportunities for parallel execution. So, for
|
||
example, if you are doing a summation, then <code>identity()</code> ought
|
||
to produce something that represents the zero for your type
|
||
(but consider just calling <code>sum()</code> in that case). <a href="trait.ParallelIterator.html#method.reduce">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.reduce_with-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1016-1037">Source</a><a href="#method.reduce_with-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.reduce_with" class="fn">reduce_with</a><OP>(self, op: OP) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
OP: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Reduces the items in the iterator into one item using <code>op</code>.
|
||
If the iterator is empty, <code>None</code> is returned; otherwise,
|
||
<code>Some</code> is returned. <a href="trait.ParallelIterator.html#method.reduce_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1255-1262">Source</a><a href="#method.fold-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold" class="fn">fold</a><T, ID, F>(self, identity: ID, fold_op: F) -> <a class="struct" href="struct.Fold.html" title="struct rayon::iter::Fold">Fold</a><Self, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Parallel fold is similar to sequential fold except that the
|
||
sequence of items may be subdivided before it is
|
||
folded. Consider a list of numbers like <code>22 3 77 89 46</code>. If
|
||
you used sequential fold to add them (<code>fold(0, |a,b| a+b)</code>,
|
||
you would wind up first adding 0 + 22, then 22 + 3, then 25 +
|
||
77, and so forth. The <strong>parallel fold</strong> works similarly except
|
||
that it first breaks up your list into sublists, and hence
|
||
instead of yielding up a single sum at the end, it yields up
|
||
multiple sums. The number of results is nondeterministic, as
|
||
is the point where the breaks occur. <a href="trait.ParallelIterator.html#method.fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.fold_with-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1283-1289">Source</a><a href="#method.fold_with-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.fold_with" class="fn">fold_with</a><F, T>(self, init: T, fold_op: F) -> <a class="struct" href="struct.FoldWith.html" title="struct rayon::iter::FoldWith">FoldWith</a><Self, T, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Applies <code>fold_op</code> to the given <code>init</code> value with each item of this
|
||
iterator, finally producing the value for further use. <a href="trait.ParallelIterator.html#method.fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1316-1323">Source</a><a href="#method.try_fold-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold" class="fn">try_fold</a><T, R, ID, F>(
|
||
self,
|
||
identity: ID,
|
||
fold_op: F,
|
||
) -> <a class="struct" href="struct.TryFold.html" title="struct rayon::iter::TryFold">TryFold</a><Self, R, ID, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
ID: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>() -> T + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold. <a href="trait.ParallelIterator.html#method.try_fold">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.try_fold_with-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1343-1350">Source</a><a href="#method.try_fold_with-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.try_fold_with" class="fn">try_fold_with</a><F, T, R>(self, init: T, fold_op: F) -> <a class="struct" href="struct.TryFoldWith.html" title="struct rayon::iter::TryFoldWith">TryFoldWith</a><Self, R, F><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(T, Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> R + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: Try<Output = T> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Performs a fallible parallel fold with a cloneable <code>init</code> value. <a href="trait.ParallelIterator.html#method.try_fold_with">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.sum-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1376-1381">Source</a><a href="#method.sum-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.sum" class="fn">sum</a><S>(self) -> S<div class="where">where
|
||
S: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Sum.html" title="trait core::iter::traits::accum::Sum">Sum</a><S>,</div></h4></section></summary><div class='docblock'>Sums up the items in the iterator. <a href="trait.ParallelIterator.html#method.sum">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.product-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1409-1414">Source</a><a href="#method.product-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.product" class="fn">product</a><P>(self) -> P<div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/iter/traits/accum/trait.Product.html" title="trait core::iter::traits::accum::Product">Product</a><P>,</div></h4></section></summary><div class='docblock'>Multiplies all the items in the iterator. <a href="trait.ParallelIterator.html#method.product">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1439-1444">Source</a><a href="#method.min-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min" class="fn">min</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(min)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.min">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1463-1475">Source</a><a href="#method.min_by-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by" class="fn">min_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the minimum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(min)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.min_by_key-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1494-1512">Source</a><a href="#method.min_by_key-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.min_by_key" class="fn">min_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the minimum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.min_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1537-1542">Source</a><a href="#method.max-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max" class="fn">max</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator. If the
|
||
iterator is empty, <code>None</code> is returned; otherwise, <code>Some(max)</code>
|
||
is returned. <a href="trait.ParallelIterator.html#method.max">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1561-1573">Source</a><a href="#method.max_by-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by" class="fn">max_by</a><F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>, &Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/cmp/enum.Ordering.html" title="enum core::cmp::Ordering">Ordering</a>,</div></h4></section></summary><div class='docblock'>Computes the maximum of all the items in the iterator with respect to
|
||
the given comparison function. If the iterator is empty, <code>None</code> is
|
||
returned; otherwise, <code>Some(max)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.max_by_key-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1592-1610">Source</a><a href="#method.max_by_key-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.max_by_key" class="fn">max_by_key</a><K, F>(self, f: F) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
K: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/cmp/trait.Ord.html" title="trait core::cmp::Ord">Ord</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> K,</div></h4></section></summary><div class='docblock'>Computes the item that yields the maximum value for the given
|
||
function. If the iterator is empty, <code>None</code> is returned;
|
||
otherwise, <code>Some(item)</code> is returned. <a href="trait.ParallelIterator.html#method.max_by_key">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.chain-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1628-1633">Source</a><a href="#method.chain-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.chain" class="fn">chain</a><C>(self, chain: C) -> <a class="struct" href="struct.Chain.html" title="struct rayon::iter::Chain">Chain</a><Self, C::<a class="associatedtype" href="trait.IntoParallelIterator.html#associatedtype.Iter" title="type rayon::iter::IntoParallelIterator::Iter">Iter</a>><div class="where">where
|
||
C: <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a><Item = Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Takes two iterators and creates a new iterator over both. <a href="trait.ParallelIterator.html#method.chain">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_any-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1658-1663">Source</a><a href="#method.find_any-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_any" class="fn">find_any</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate and returns it. This operation
|
||
is similar to <a href="https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#method.find" title="method core::iter::traits::iterator::Iterator::find"><code>find</code> on sequential iterators</a> but
|
||
the item returned may not be the <strong>first</strong> one in the parallel
|
||
sequence which matches, since we search the entire sequence in parallel. <a href="trait.ParallelIterator.html#method.find_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_first-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1691-1696">Source</a><a href="#method.find_first-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_first" class="fn">find_first</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>first</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_last-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1720-1725">Source</a><a href="#method.find_last-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_last" class="fn">find_last</a><P>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for the sequentially <strong>last</strong> item in the parallel iterator
|
||
that matches the given predicate and returns it. <a href="trait.ParallelIterator.html#method.find_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_any-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1750-1759">Source</a><a href="#method.find_map_any-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_any" class="fn">find_map_any</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator
|
||
and returns <strong>any</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_first-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1784-1793">Source</a><a href="#method.find_map_first-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_first" class="fn">find_map_first</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>first</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_first">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.find_map_last-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1818-1827">Source</a><a href="#method.find_map_last-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.find_map_last" class="fn">find_map_last</a><P, R>(self, predicate: P) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Applies the given predicate to the items in the parallel iterator and
|
||
returns the sequentially <strong>last</strong> non-None result of the map operation. <a href="trait.ParallelIterator.html#method.find_map_last">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.any-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1856-1861">Source</a><a href="#method.any-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.any" class="fn">any</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Searches for <strong>some</strong> item in the parallel iterator that
|
||
matches the given predicate, and if so returns true. Once
|
||
a match is found, we’ll attempt to stop process the rest
|
||
of the items. Proving that there’s no match, returning false,
|
||
does require visiting every item. <a href="trait.ParallelIterator.html#method.any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.all-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1878-1888">Source</a><a href="#method.all-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.all" class="fn">all</a><P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Tests that every item in the parallel iterator matches the given
|
||
predicate, and if so returns true. If a counter-example is found,
|
||
we’ll attempt to stop processing more items, then return false. <a href="trait.ParallelIterator.html#method.all">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.while_some-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1912-1918">Source</a><a href="#method.while_some-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.while_some" class="fn">while_some</a><T>(self) -> <a class="struct" href="struct.WhileSome.html" title="struct rayon::iter::WhileSome">WhileSome</a><Self><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/option/enum.Option.html" title="enum core::option::Option">Option</a><T>>,
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator over the <code>Some</code> items of this iterator, halting
|
||
as soon as any <code>None</code> is found. <a href="trait.ParallelIterator.html#method.while_some">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.panic_fuse-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#1950-1952">Source</a><a href="#method.panic_fuse-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.panic_fuse" class="fn">panic_fuse</a>(self) -> <a class="struct" href="struct.PanicFuse.html" title="struct rayon::iter::PanicFuse">PanicFuse</a><Self></h4></section></summary><div class='docblock'>Wraps an iterator with a fuse in case of panics, to halt all threads
|
||
as soon as possible. <a href="trait.ParallelIterator.html#method.panic_fuse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2053-2058">Source</a><a href="#method.collect-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect" class="fn">collect</a><C>(self) -> C<div class="where">where
|
||
C: <a class="trait" href="trait.FromParallelIterator.html" title="trait rayon::iter::FromParallelIterator">FromParallelIterator</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,</div></h4></section></summary><div class='docblock'>Creates a fresh collection containing all the elements produced
|
||
by this parallel iterator. <a href="trait.ParallelIterator.html#method.collect">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.unzip-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2094-2103">Source</a><a href="#method.unzip-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.unzip" class="fn">unzip</a><A, B, FromA, FromB>(self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(FromA, FromB)</a><div class="where">where
|
||
Self: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a><Item = <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a>>,
|
||
FromA: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><A>,
|
||
FromB: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><B>,
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Unzips the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. <a href="trait.ParallelIterator.html#method.unzip">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2124-2131">Source</a><a href="#method.partition-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition" class="fn">partition</a><A, B, P>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions the items of a parallel iterator into a pair of arbitrary
|
||
<code>ParallelExtend</code> containers. Items for which the <code>predicate</code> returns
|
||
true go into the first container, and the rest go into the second. <a href="trait.ParallelIterator.html#method.partition">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.partition_map-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2176-2185">Source</a><a href="#method.partition_map-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.partition_map" class="fn">partition_map</a><A, B, P, L, R>(self, predicate: P) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.tuple.html">(A, B)</a><div class="where">where
|
||
A: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><L>,
|
||
B: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/default/trait.Default.html" title="trait core::default::Default">Default</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> + <a class="trait" href="trait.ParallelExtend.html" title="trait rayon::iter::ParallelExtend">ParallelExtend</a><R>,
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><L, R> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
L: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,
|
||
R: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Partitions and maps the items of a parallel iterator into a pair of
|
||
arbitrary <code>ParallelExtend</code> containers. <code>Either::Left</code> items go into
|
||
the first container, and <code>Either::Right</code> items go into the second. <a href="trait.ParallelIterator.html#method.partition_map">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.intersperse-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2199-2204">Source</a><a href="#method.intersperse-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.intersperse" class="fn">intersperse</a>(self, element: Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="struct" href="struct.Intersperse.html" title="struct rayon::iter::Intersperse">Intersperse</a><Self><div class="where">where
|
||
Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h4></section></summary><div class='docblock'>Intersperses clones of an element between items of this iterator. <a href="trait.ParallelIterator.html#method.intersperse">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2227-2229">Source</a><a href="#method.take_any-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any" class="fn">take_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.TakeAny.html" title="struct rayon::iter::TakeAny">TakeAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that yields <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.take_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2252-2254">Source</a><a href="#method.skip_any-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any" class="fn">skip_any</a>(self, n: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="struct" href="struct.SkipAny.html" title="struct rayon::iter::SkipAny">SkipAny</a><Self></h4></section></summary><div class='docblock'>Creates an iterator that skips <code>n</code> elements from <em>anywhere</em> in the original iterator. <a href="trait.ParallelIterator.html#method.skip_any">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.take_any_while-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2302-2307">Source</a><a href="#method.take_any_while-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.take_any_while" class="fn">take_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.TakeAnyWhile.html" title="struct rayon::iter::TakeAnyWhile">TakeAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that takes elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.take_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.skip_any_while-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2336-2341">Source</a><a href="#method.skip_any_while-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.skip_any_while" class="fn">skip_any_while</a><P>(self, predicate: P) -> <a class="struct" href="struct.SkipAnyWhile.html" title="struct rayon::iter::SkipAnyWhile">SkipAnyWhile</a><Self, P><div class="where">where
|
||
P: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.Fn.html" title="trait core::ops::function::Fn">Fn</a>(&Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> + <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h4></section></summary><div class='docblock'>Creates an iterator that skips elements from <em>anywhere</em> in the original iterator
|
||
until the given <code>predicate</code> returns <code>false</code>. <a href="trait.ParallelIterator.html#method.skip_any_while">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.collect_vec_list-11" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2375-2386">Source</a><a href="#method.collect_vec_list-11" class="anchor">§</a><h4 class="code-header">fn <a href="trait.ParallelIterator.html#method.collect_vec_list" class="fn">collect_vec_list</a>(self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/collections/linked_list/struct.LinkedList.html" title="struct alloc::collections::linked_list::LinkedList">LinkedList</a><<a class="struct" href="https://doc.rust-lang.org/1.93.1/alloc/vec/struct.Vec.html" title="struct alloc::vec::Vec">Vec</a><Self::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a>>></h4></section></summary><div class='docblock'>Collects this iterator into a linked list of vectors. <a href="trait.ParallelIterator.html#method.collect_vec_list">Read more</a></div></details></div></details></div><h2 id="synthetic-implementations" class="section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor">§</a></h2><div id="synthetic-implementations-list"><section id="impl-Freeze-for-MultiZip%3CT%3E" class="impl"><a href="#impl-Freeze-for-MultiZip%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><T><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Freeze.html" title="trait core::marker::Freeze">Freeze</a>,</div></h3></section><section id="impl-RefUnwindSafe-for-MultiZip%3CT%3E" class="impl"><a href="#impl-RefUnwindSafe-for-MultiZip%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><T><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a>,</div></h3></section><section id="impl-Send-for-MultiZip%3CT%3E" class="impl"><a href="#impl-Send-for-MultiZip%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><T><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a>,</div></h3></section><section id="impl-Sync-for-MultiZip%3CT%3E" class="impl"><a href="#impl-Sync-for-MultiZip%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><T><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a>,</div></h3></section><section id="impl-Unpin-for-MultiZip%3CT%3E" class="impl"><a href="#impl-Unpin-for-MultiZip%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><T><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a>,</div></h3></section><section id="impl-UnwindSafe-for-MultiZip%3CT%3E" class="impl"><a href="#impl-UnwindSafe-for-MultiZip%3CT%3E" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.MultiZip.html" title="struct rayon::iter::MultiZip">MultiZip</a><T><div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a>,</div></h3></section></div><h2 id="blanket-implementations" class="section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor">§</a></h2><div id="blanket-implementations-list"><details class="toggle implementors-toggle"><summary><section id="impl-Any-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/any.rs.html#138">Source</a><a href="#impl-Any-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T<div class="where">where
|
||
T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.type_id" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/any.rs.html#139">Source</a><a href="#method.type_id" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/any/trait.Any.html#tymethod.type_id" class="fn">type_id</a>(&self) -> <a class="struct" href="https://doc.rust-lang.org/1.93.1/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></section></summary><div class='docblock'>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.93.1/core/any/trait.Any.html#tymethod.type_id">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Borrow%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/borrow.rs.html#212">Source</a><a href="#impl-Borrow%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a><T> for T<div class="where">where
|
||
T: ?<a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/borrow.rs.html#214">Source</a><a href="#method.borrow" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/borrow/trait.Borrow.html#tymethod.borrow" class="fn">borrow</a>(&self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&T</a></h4></section></summary><div class='docblock'>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.93.1/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-BorrowMut%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/borrow.rs.html#221">Source</a><a href="#impl-BorrowMut%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a><T> for T<div class="where">where
|
||
T: ?<a class="trait" href="https://doc.rust-lang.org/1.93.1/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.borrow_mut" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/borrow.rs.html#222">Source</a><a href="#method.borrow_mut" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fn">borrow_mut</a>(&mut self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a></h4></section></summary><div class='docblock'>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.93.1/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-CloneToUninit-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/clone.rs.html#547">Source</a><a href="#impl-CloneToUninit-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.CloneToUninit.html" title="trait core::clone::CloneToUninit">CloneToUninit</a> for T<div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.clone_to_uninit" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/clone.rs.html#549">Source</a><a href="#method.clone_to_uninit" class="anchor">§</a><h4 class="code-header">unsafe fn <a href="https://doc.rust-lang.org/1.93.1/core/clone/trait.CloneToUninit.html#tymethod.clone_to_uninit" class="fn">clone_to_uninit</a>(&self, dest: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.pointer.html">*mut </a><a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.u8.html">u8</a>)</h4></section></summary><span class="item-info"><div class="stab unstable"><span class="emoji">🔬</span><span>This is a nightly-only experimental API. (<code>clone_to_uninit</code>)</span></div></span><div class='docblock'>Performs copy-assignment from <code>self</code> to <code>dest</code>. <a href="https://doc.rust-lang.org/1.93.1/core/clone/trait.CloneToUninit.html#tymethod.clone_to_uninit">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-From%3CT%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/convert/mod.rs.html#785">Source</a><a href="#impl-From%3CT%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/convert/mod.rs.html#788">Source</a><a href="#method.from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/convert/trait.From.html#tymethod.from" class="fn">from</a>(t: T) -> T</h4></section></summary><div class="docblock"><p>Returns the argument unchanged.</p>
|
||
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Into%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/convert/mod.rs.html#767-769">Source</a><a href="#impl-Into%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><U> for T<div class="where">where
|
||
U: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.From.html" title="trait core::convert::From">From</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/convert/mod.rs.html#777">Source</a><a href="#method.into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/convert/trait.Into.html#tymethod.into" class="fn">into</a>(self) -> U</h4></section></summary><div class="docblock"><p>Calls <code>U::from(self)</code>.</p>
|
||
<p>That is, this conversion is whatever the implementation of
|
||
<code><a href="https://doc.rust-lang.org/1.93.1/core/convert/trait.From.html" title="trait core::convert::From">From</a><T> for U</code> chooses to do.</p>
|
||
</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-IntoEither-for-T" class="impl"><a class="src rightside" href="../../src/either/into_either.rs.html#64">Source</a><a href="#impl-IntoEither-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../either/into_either/trait.IntoEither.html" title="trait either::into_either::IntoEither">IntoEither</a> for T</h3></section></summary><div class="impl-items"><details class="toggle method-toggle" open><summary><section id="method.into_either" class="method trait-impl"><a class="src rightside" href="../../src/either/into_either.rs.html#29">Source</a><a href="#method.into_either" class="anchor">§</a><h4 class="code-header">fn <a href="../../either/into_either/trait.IntoEither.html#method.into_either" class="fn">into_either</a>(self, into_left: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a>) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><Self, Self> <a href="#" class="tooltip" data-notable-ty="Either<Self, Self>">ⓘ</a></h4></section></summary><div class='docblock'>Converts <code>self</code> into a <a href="enum.Either.html#variant.Left" title="variant rayon::iter::Either::Left"><code>Left</code></a> variant of <a href="enum.Either.html" title="enum rayon::iter::Either"><code>Either<Self, Self></code></a>
|
||
if <code>into_left</code> is <code>true</code>.
|
||
Converts <code>self</code> into a <a href="enum.Either.html#variant.Right" title="variant rayon::iter::Either::Right"><code>Right</code></a> variant of <a href="enum.Either.html" title="enum rayon::iter::Either"><code>Either<Self, Self></code></a>
|
||
otherwise. <a href="../../either/into_either/trait.IntoEither.html#method.into_either">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.into_either_with" class="method trait-impl"><a class="src rightside" href="../../src/either/into_either.rs.html#55-57">Source</a><a href="#method.into_either_with" class="anchor">§</a><h4 class="code-header">fn <a href="../../either/into_either/trait.IntoEither.html#method.into_either_with" class="fn">into_either_with</a><F>(self, into_left: F) -> <a class="enum" href="enum.Either.html" title="enum rayon::iter::Either">Either</a><Self, Self> <a href="#" class="tooltip" data-notable-ty="Either<Self, Self>">ⓘ</a><div class="where">where
|
||
F: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&Self) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.bool.html">bool</a>,</div></h4></section></summary><div class='docblock'>Converts <code>self</code> into a <a href="enum.Either.html#variant.Left" title="variant rayon::iter::Either::Left"><code>Left</code></a> variant of <a href="enum.Either.html" title="enum rayon::iter::Either"><code>Either<Self, Self></code></a>
|
||
if <code>into_left(&self)</code> returns <code>true</code>.
|
||
Converts <code>self</code> into a <a href="enum.Either.html#variant.Right" title="variant rayon::iter::Either::Right"><code>Right</code></a> variant of <a href="enum.Either.html" title="enum rayon::iter::Either"><code>Either<Self, Self></code></a>
|
||
otherwise. <a href="../../either/into_either/trait.IntoEither.html#method.into_either_with">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-IntoParallelIterator-for-T" class="impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2423-2430">Source</a><a href="#impl-IntoParallelIterator-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="trait.IntoParallelIterator.html" title="trait rayon::iter::IntoParallelIterator">IntoParallelIterator</a> for T<div class="where">where
|
||
T: <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Iter" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2424">Source</a><a href="#associatedtype.Iter" class="anchor">§</a><h4 class="code-header">type <a href="trait.IntoParallelIterator.html#associatedtype.Iter" class="associatedtype">Iter</a> = T</h4></section></summary><div class='docblock'>The parallel iterator type that will be created.</div></details><details class="toggle" open><summary><section id="associatedtype.Item-12" class="associatedtype trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2425">Source</a><a href="#associatedtype.Item-12" class="anchor">§</a><h4 class="code-header">type <a href="trait.IntoParallelIterator.html#associatedtype.Item" class="associatedtype">Item</a> = <T as <a class="trait" href="trait.ParallelIterator.html" title="trait rayon::iter::ParallelIterator">ParallelIterator</a>>::<a class="associatedtype" href="trait.ParallelIterator.html#associatedtype.Item" title="type rayon::iter::ParallelIterator::Item">Item</a></h4></section></summary><div class='docblock'>The type of item that the parallel iterator will produce.</div></details><details class="toggle method-toggle" open><summary><section id="method.into_par_iter" class="method trait-impl"><a class="src rightside" href="../../src/rayon/iter/mod.rs.html#2427-2429">Source</a><a href="#method.into_par_iter" class="anchor">§</a><h4 class="code-header">fn <a href="trait.IntoParallelIterator.html#tymethod.into_par_iter" class="fn">into_par_iter</a>(self) -> T</h4></section></summary><div class='docblock'>Converts <code>self</code> into a parallel iterator. <a href="trait.IntoParallelIterator.html#tymethod.into_par_iter">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-Pointable-for-T" class="impl"><a class="src rightside" href="../../src/crossbeam_epoch/atomic.rs.html#194">Source</a><a href="#impl-Pointable-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="../../crossbeam_epoch/atomic/trait.Pointable.html" title="trait crossbeam_epoch::atomic::Pointable">Pointable</a> for T</h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedconstant.ALIGN" class="associatedconstant trait-impl"><a class="src rightside" href="../../src/crossbeam_epoch/atomic.rs.html#195">Source</a><a href="#associatedconstant.ALIGN" class="anchor">§</a><h4 class="code-header">const <a href="../../crossbeam_epoch/atomic/trait.Pointable.html#associatedconstant.ALIGN" class="constant">ALIGN</a>: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>The alignment of pointer.</div></details><details class="toggle" open><summary><section id="associatedtype.Init" class="associatedtype trait-impl"><a class="src rightside" href="../../src/crossbeam_epoch/atomic.rs.html#197">Source</a><a href="#associatedtype.Init" class="anchor">§</a><h4 class="code-header">type <a href="../../crossbeam_epoch/atomic/trait.Pointable.html#associatedtype.Init" class="associatedtype">Init</a> = T</h4></section></summary><div class='docblock'>The type for initializers.</div></details><details class="toggle method-toggle" open><summary><section id="method.init" class="method trait-impl"><a class="src rightside" href="../../src/crossbeam_epoch/atomic.rs.html#199">Source</a><a href="#method.init" class="anchor">§</a><h4 class="code-header">unsafe fn <a href="../../crossbeam_epoch/atomic/trait.Pointable.html#tymethod.init" class="fn">init</a>(init: <T as <a class="trait" href="../../crossbeam_epoch/atomic/trait.Pointable.html" title="trait crossbeam_epoch::atomic::Pointable">Pointable</a>>::<a class="associatedtype" href="../../crossbeam_epoch/atomic/trait.Pointable.html#associatedtype.Init" title="type crossbeam_epoch::atomic::Pointable::Init">Init</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a></h4></section></summary><div class='docblock'>Initializes a with the given initializer. <a href="../../crossbeam_epoch/atomic/trait.Pointable.html#tymethod.init">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.deref" class="method trait-impl"><a class="src rightside" href="../../src/crossbeam_epoch/atomic.rs.html#203">Source</a><a href="#method.deref" class="anchor">§</a><h4 class="code-header">unsafe fn <a href="../../crossbeam_epoch/atomic/trait.Pointable.html#tymethod.deref" class="fn">deref</a><'a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a T</a></h4></section></summary><div class='docblock'>Dereferences the given pointer. <a href="../../crossbeam_epoch/atomic/trait.Pointable.html#tymethod.deref">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.deref_mut" class="method trait-impl"><a class="src rightside" href="../../src/crossbeam_epoch/atomic.rs.html#207">Source</a><a href="#method.deref_mut" class="anchor">§</a><h4 class="code-header">unsafe fn <a href="../../crossbeam_epoch/atomic/trait.Pointable.html#tymethod.deref_mut" class="fn">deref_mut</a><'a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>) -> <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&'a mut T</a></h4></section></summary><div class='docblock'>Mutably dereferences the given pointer. <a href="../../crossbeam_epoch/atomic/trait.Pointable.html#tymethod.deref_mut">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.drop" class="method trait-impl"><a class="src rightside" href="../../src/crossbeam_epoch/atomic.rs.html#211">Source</a><a href="#method.drop" class="anchor">§</a><h4 class="code-header">unsafe fn <a href="../../crossbeam_epoch/atomic/trait.Pointable.html#tymethod.drop" class="fn">drop</a>(ptr: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.usize.html">usize</a>)</h4></section></summary><div class='docblock'>Drops the object pointed to by the given pointer. <a href="../../crossbeam_epoch/atomic/trait.Pointable.html#tymethod.drop">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-ToOwned-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/alloc/borrow.rs.html#85-87">Source</a><a href="#impl-ToOwned-for-T" class="anchor">§</a><h3 class="code-header">impl<T> <a class="trait" href="https://doc.rust-lang.org/1.93.1/alloc/borrow/trait.ToOwned.html" title="trait alloc::borrow::ToOwned">ToOwned</a> for T<div class="where">where
|
||
T: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/clone/trait.Clone.html" title="trait core::clone::Clone">Clone</a>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Owned" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/alloc/borrow.rs.html#89">Source</a><a href="#associatedtype.Owned" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.93.1/alloc/borrow/trait.ToOwned.html#associatedtype.Owned" class="associatedtype">Owned</a> = T</h4></section></summary><div class='docblock'>The resulting type after obtaining ownership.</div></details><details class="toggle method-toggle" open><summary><section id="method.to_owned" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/alloc/borrow.rs.html#90">Source</a><a href="#method.to_owned" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/alloc/borrow/trait.ToOwned.html#tymethod.to_owned" class="fn">to_owned</a>(&self) -> T</h4></section></summary><div class='docblock'>Creates owned data from borrowed data, usually by cloning. <a href="https://doc.rust-lang.org/1.93.1/alloc/borrow/trait.ToOwned.html#tymethod.to_owned">Read more</a></div></details><details class="toggle method-toggle" open><summary><section id="method.clone_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/alloc/borrow.rs.html#94">Source</a><a href="#method.clone_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/alloc/borrow/trait.ToOwned.html#method.clone_into" class="fn">clone_into</a>(&self, target: <a class="primitive" href="https://doc.rust-lang.org/1.93.1/std/primitive.reference.html">&mut T</a>)</h4></section></summary><div class='docblock'>Uses borrowed data to replace owned data, usually by cloning. <a href="https://doc.rust-lang.org/1.93.1/alloc/borrow/trait.ToOwned.html#method.clone_into">Read more</a></div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryFrom%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/convert/mod.rs.html#827-829">Source</a><a href="#impl-TryFrom%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U> for T<div class="where">where
|
||
U: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.Into.html" title="trait core::convert::Into">Into</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error-1" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/convert/mod.rs.html#831">Source</a><a href="#associatedtype.Error-1" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html#associatedtype.Error" class="associatedtype">Error</a> = <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/convert/enum.Infallible.html" title="enum core::convert::Infallible">Infallible</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_from" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/convert/mod.rs.html#834">Source</a><a href="#method.try_from" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html#tymethod.try_from" class="fn">try_from</a>(value: U) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a><T, <T as <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><U>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details><details class="toggle implementors-toggle"><summary><section id="impl-TryInto%3CU%3E-for-T" class="impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/convert/mod.rs.html#811-813">Source</a><a href="#impl-TryInto%3CU%3E-for-T" class="anchor">§</a><h3 class="code-header">impl<T, U> <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryInto.html" title="trait core::convert::TryInto">TryInto</a><U> for T<div class="where">where
|
||
U: <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>,</div></h3></section></summary><div class="impl-items"><details class="toggle" open><summary><section id="associatedtype.Error" class="associatedtype trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/convert/mod.rs.html#815">Source</a><a href="#associatedtype.Error" class="anchor">§</a><h4 class="code-header">type <a href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryInto.html#associatedtype.Error" class="associatedtype">Error</a> = <U as <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a></h4></section></summary><div class='docblock'>The type returned in the event of a conversion error.</div></details><details class="toggle method-toggle" open><summary><section id="method.try_into" class="method trait-impl"><a class="src rightside" href="https://doc.rust-lang.org/1.93.1/src/core/convert/mod.rs.html#818">Source</a><a href="#method.try_into" class="anchor">§</a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryInto.html#tymethod.try_into" class="fn">try_into</a>(self) -> <a class="enum" href="https://doc.rust-lang.org/1.93.1/core/result/enum.Result.html" title="enum core::result::Result">Result</a><U, <U as <a class="trait" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html" title="trait core::convert::TryFrom">TryFrom</a><T>>::<a class="associatedtype" href="https://doc.rust-lang.org/1.93.1/core/convert/trait.TryFrom.html#associatedtype.Error" title="type core::convert::TryFrom::Error">Error</a>></h4></section></summary><div class='docblock'>Performs the conversion.</div></details></div></details></div><script type="text/json" id="notable-traits-data">{"Either<Self, Self>":"<h3>Notable traits for <code><a class=\"enum\" href=\"enum.Either.html\" title=\"enum rayon::iter::Either\">Either</a><L, R></code></h3><pre><code><div class=\"where\">impl<L, R> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a> for <a class=\"enum\" href=\"enum.Either.html\" title=\"enum rayon::iter::Either\">Either</a><L, R><div class=\"where\">where\n L: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a>,\n R: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a><Item = <L as <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a>>::<a class=\"associatedtype\" href=\"https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item\" title=\"type core::iter::traits::iterator::Iterator::Item\">Item</a>>,</div></div><div class=\"where\"> type <a href=\"https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item\" class=\"associatedtype\">Item</a> = <L as <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html\" title=\"trait core::iter::traits::iterator::Iterator\">Iterator</a>>::<a class=\"associatedtype\" href=\"https://doc.rust-lang.org/1.93.1/core/iter/traits/iterator/trait.Iterator.html#associatedtype.Item\" title=\"type core::iter::traits::iterator::Iterator::Item\">Item</a>;</div><div class=\"where\">impl<L, R> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/core/future/future/trait.Future.html\" title=\"trait core::future::future::Future\">Future</a> for <a class=\"enum\" href=\"enum.Either.html\" title=\"enum rayon::iter::Either\">Either</a><L, R><div class=\"where\">where\n L: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/core/future/future/trait.Future.html\" title=\"trait core::future::future::Future\">Future</a>,\n R: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/core/future/future/trait.Future.html\" title=\"trait core::future::future::Future\">Future</a><Output = <L as <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/core/future/future/trait.Future.html\" title=\"trait core::future::future::Future\">Future</a>>::<a class=\"associatedtype\" href=\"https://doc.rust-lang.org/1.93.1/core/future/future/trait.Future.html#associatedtype.Output\" title=\"type core::future::future::Future::Output\">Output</a>>,</div></div><div class=\"where\"> type <a href=\"https://doc.rust-lang.org/1.93.1/core/future/future/trait.Future.html#associatedtype.Output\" class=\"associatedtype\">Output</a> = <L as <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/core/future/future/trait.Future.html\" title=\"trait core::future::future::Future\">Future</a>>::<a class=\"associatedtype\" href=\"https://doc.rust-lang.org/1.93.1/core/future/future/trait.Future.html#associatedtype.Output\" title=\"type core::future::future::Future::Output\">Output</a>;</div><div class=\"where\">impl<L, R> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a> for <a class=\"enum\" href=\"enum.Either.html\" title=\"enum rayon::iter::Either\">Either</a><L, R><div class=\"where\">where\n L: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a>,\n R: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/std/io/trait.Read.html\" title=\"trait std::io::Read\">Read</a>,</div></div><div class=\"where\">impl<L, R> <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a> for <a class=\"enum\" href=\"enum.Either.html\" title=\"enum rayon::iter::Either\">Either</a><L, R><div class=\"where\">where\n L: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a>,\n R: <a class=\"trait\" href=\"https://doc.rust-lang.org/1.93.1/std/io/trait.Write.html\" title=\"trait std::io::Write\">Write</a>,</div></div>"}</script></section></div></main></body></html> |